isomorfeus-preact 10.5.1 → 10.5.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1080) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +29 -0
  3. data/lib/isomorfeus/preact/config.rb +19 -33
  4. data/lib/isomorfeus/preact/imports.rb +30 -0
  5. data/lib/isomorfeus/preact_view_helper.rb +26 -34
  6. data/lib/isomorfeus-preact.rb +6 -4
  7. data/lib/lucid_app/context.rb +9 -9
  8. data/lib/preact/version.rb +1 -1
  9. data/node_modules/.bin/loose-envify +12 -0
  10. data/node_modules/.bin/loose-envify.cmd +17 -0
  11. data/node_modules/.bin/loose-envify.ps1 +28 -0
  12. data/node_modules/.package-lock.json +278 -0
  13. data/node_modules/@babel/runtime/LICENSE +22 -0
  14. data/node_modules/@babel/runtime/README.md +19 -0
  15. data/node_modules/@babel/runtime/helpers/AsyncGenerator.js +99 -0
  16. data/node_modules/@babel/runtime/helpers/AwaitValue.js +6 -0
  17. data/node_modules/@babel/runtime/helpers/applyDecoratedDescriptor.js +31 -0
  18. data/node_modules/@babel/runtime/helpers/arrayLikeToArray.js +12 -0
  19. data/node_modules/@babel/runtime/helpers/arrayWithHoles.js +6 -0
  20. data/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js +8 -0
  21. data/node_modules/@babel/runtime/helpers/assertThisInitialized.js +10 -0
  22. data/node_modules/@babel/runtime/helpers/asyncGeneratorDelegate.js +57 -0
  23. data/node_modules/@babel/runtime/helpers/asyncIterator.js +16 -0
  24. data/node_modules/@babel/runtime/helpers/asyncToGenerator.js +38 -0
  25. data/node_modules/@babel/runtime/helpers/awaitAsyncGenerator.js +8 -0
  26. data/node_modules/@babel/runtime/helpers/checkPrivateRedeclaration.js +8 -0
  27. data/node_modules/@babel/runtime/helpers/classApplyDescriptorDestructureSet.js +23 -0
  28. data/node_modules/@babel/runtime/helpers/classApplyDescriptorGet.js +10 -0
  29. data/node_modules/@babel/runtime/helpers/classApplyDescriptorSet.js +14 -0
  30. data/node_modules/@babel/runtime/helpers/classCallCheck.js +8 -0
  31. data/node_modules/@babel/runtime/helpers/classCheckPrivateStaticAccess.js +8 -0
  32. data/node_modules/@babel/runtime/helpers/classCheckPrivateStaticFieldDescriptor.js +8 -0
  33. data/node_modules/@babel/runtime/helpers/classExtractFieldDescriptor.js +10 -0
  34. data/node_modules/@babel/runtime/helpers/classNameTDZError.js +6 -0
  35. data/node_modules/@babel/runtime/helpers/classPrivateFieldDestructureSet.js +11 -0
  36. data/node_modules/@babel/runtime/helpers/classPrivateFieldGet.js +11 -0
  37. data/node_modules/@babel/runtime/helpers/classPrivateFieldInitSpec.js +9 -0
  38. data/node_modules/@babel/runtime/helpers/classPrivateFieldLooseBase.js +10 -0
  39. data/node_modules/@babel/runtime/helpers/classPrivateFieldLooseKey.js +8 -0
  40. data/node_modules/@babel/runtime/helpers/classPrivateFieldSet.js +12 -0
  41. data/node_modules/@babel/runtime/helpers/classPrivateMethodGet.js +10 -0
  42. data/node_modules/@babel/runtime/helpers/classPrivateMethodInitSpec.js +9 -0
  43. data/node_modules/@babel/runtime/helpers/classPrivateMethodSet.js +6 -0
  44. data/node_modules/@babel/runtime/helpers/classStaticPrivateFieldDestructureSet.js +14 -0
  45. data/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecGet.js +14 -0
  46. data/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecSet.js +15 -0
  47. data/node_modules/@babel/runtime/helpers/classStaticPrivateMethodGet.js +9 -0
  48. data/node_modules/@babel/runtime/helpers/classStaticPrivateMethodSet.js +6 -0
  49. data/node_modules/@babel/runtime/helpers/construct.js +26 -0
  50. data/node_modules/@babel/runtime/helpers/createClass.js +18 -0
  51. data/node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js +61 -0
  52. data/node_modules/@babel/runtime/helpers/createForOfIteratorHelperLoose.js +25 -0
  53. data/node_modules/@babel/runtime/helpers/createSuper.js +25 -0
  54. data/node_modules/@babel/runtime/helpers/decorate.js +401 -0
  55. data/node_modules/@babel/runtime/helpers/defaults.js +17 -0
  56. data/node_modules/@babel/runtime/helpers/defineEnumerableProperties.js +25 -0
  57. data/node_modules/@babel/runtime/helpers/defineProperty.js +17 -0
  58. data/node_modules/@babel/runtime/helpers/esm/AsyncGenerator.js +95 -0
  59. data/node_modules/@babel/runtime/helpers/esm/AwaitValue.js +3 -0
  60. data/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js +28 -0
  61. data/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js +9 -0
  62. data/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js +3 -0
  63. data/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js +4 -0
  64. data/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js +7 -0
  65. data/node_modules/@babel/runtime/helpers/esm/asyncGeneratorDelegate.js +54 -0
  66. data/node_modules/@babel/runtime/helpers/esm/asyncIterator.js +13 -0
  67. data/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js +35 -0
  68. data/node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js +4 -0
  69. data/node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js +5 -0
  70. data/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorDestructureSet.js +20 -0
  71. data/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorGet.js +7 -0
  72. data/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorSet.js +11 -0
  73. data/node_modules/@babel/runtime/helpers/esm/classCallCheck.js +5 -0
  74. data/node_modules/@babel/runtime/helpers/esm/classCheckPrivateStaticAccess.js +5 -0
  75. data/node_modules/@babel/runtime/helpers/esm/classCheckPrivateStaticFieldDescriptor.js +5 -0
  76. data/node_modules/@babel/runtime/helpers/esm/classExtractFieldDescriptor.js +7 -0
  77. data/node_modules/@babel/runtime/helpers/esm/classNameTDZError.js +3 -0
  78. data/node_modules/@babel/runtime/helpers/esm/classPrivateFieldDestructureSet.js +6 -0
  79. data/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet.js +6 -0
  80. data/node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js +5 -0
  81. data/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js +7 -0
  82. data/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js +4 -0
  83. data/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet.js +7 -0
  84. data/node_modules/@babel/runtime/helpers/esm/classPrivateMethodGet.js +7 -0
  85. data/node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js +5 -0
  86. data/node_modules/@babel/runtime/helpers/esm/classPrivateMethodSet.js +3 -0
  87. data/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldDestructureSet.js +8 -0
  88. data/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecGet.js +8 -0
  89. data/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecSet.js +9 -0
  90. data/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodGet.js +5 -0
  91. data/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodSet.js +3 -0
  92. data/node_modules/@babel/runtime/helpers/esm/construct.js +18 -0
  93. data/node_modules/@babel/runtime/helpers/esm/createClass.js +15 -0
  94. data/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js +57 -0
  95. data/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelperLoose.js +21 -0
  96. data/node_modules/@babel/runtime/helpers/esm/createSuper.js +19 -0
  97. data/node_modules/@babel/runtime/helpers/esm/decorate.js +396 -0
  98. data/node_modules/@babel/runtime/helpers/esm/defaults.js +14 -0
  99. data/node_modules/@babel/runtime/helpers/esm/defineEnumerableProperties.js +22 -0
  100. data/node_modules/@babel/runtime/helpers/esm/defineProperty.js +14 -0
  101. data/node_modules/@babel/runtime/helpers/esm/extends.js +17 -0
  102. data/node_modules/@babel/runtime/helpers/esm/get.js +20 -0
  103. data/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js +6 -0
  104. data/node_modules/@babel/runtime/helpers/esm/inherits.js +15 -0
  105. data/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js +6 -0
  106. data/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js +9 -0
  107. data/node_modules/@babel/runtime/helpers/esm/initializerWarningHelper.js +3 -0
  108. data/node_modules/@babel/runtime/helpers/esm/instanceof.js +7 -0
  109. data/node_modules/@babel/runtime/helpers/esm/interopRequireDefault.js +5 -0
  110. data/node_modules/@babel/runtime/helpers/esm/interopRequireWildcard.js +51 -0
  111. data/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js +3 -0
  112. data/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js +12 -0
  113. data/node_modules/@babel/runtime/helpers/esm/iterableToArray.js +3 -0
  114. data/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js +29 -0
  115. data/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimitLoose.js +14 -0
  116. data/node_modules/@babel/runtime/helpers/esm/jsx.js +46 -0
  117. data/node_modules/@babel/runtime/helpers/esm/maybeArrayLike.js +9 -0
  118. data/node_modules/@babel/runtime/helpers/esm/newArrowCheck.js +5 -0
  119. data/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js +3 -0
  120. data/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js +3 -0
  121. data/node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js +3 -0
  122. data/node_modules/@babel/runtime/helpers/esm/objectSpread.js +19 -0
  123. data/node_modules/@babel/runtime/helpers/esm/objectSpread2.js +39 -0
  124. data/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js +19 -0
  125. data/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +14 -0
  126. data/node_modules/@babel/runtime/helpers/esm/package.json +3 -0
  127. data/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js +11 -0
  128. data/node_modules/@babel/runtime/helpers/esm/readOnlyError.js +3 -0
  129. data/node_modules/@babel/runtime/helpers/esm/set.js +51 -0
  130. data/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +8 -0
  131. data/node_modules/@babel/runtime/helpers/esm/skipFirstGeneratorNext.js +7 -0
  132. data/node_modules/@babel/runtime/helpers/esm/slicedToArray.js +7 -0
  133. data/node_modules/@babel/runtime/helpers/esm/slicedToArrayLoose.js +7 -0
  134. data/node_modules/@babel/runtime/helpers/esm/superPropBase.js +9 -0
  135. data/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js +11 -0
  136. data/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteralLoose.js +8 -0
  137. data/node_modules/@babel/runtime/helpers/esm/tdz.js +3 -0
  138. data/node_modules/@babel/runtime/helpers/esm/temporalRef.js +5 -0
  139. data/node_modules/@babel/runtime/helpers/esm/temporalUndefined.js +1 -0
  140. data/node_modules/@babel/runtime/helpers/esm/toArray.js +7 -0
  141. data/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js +7 -0
  142. data/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +13 -0
  143. data/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +6 -0
  144. data/node_modules/@babel/runtime/helpers/esm/typeof.js +15 -0
  145. data/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js +9 -0
  146. data/node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js +6 -0
  147. data/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js +37 -0
  148. data/node_modules/@babel/runtime/helpers/esm/wrapRegExp.js +65 -0
  149. data/node_modules/@babel/runtime/helpers/esm/writeOnlyError.js +3 -0
  150. data/node_modules/@babel/runtime/helpers/extends.js +21 -0
  151. data/node_modules/@babel/runtime/helpers/get.js +27 -0
  152. data/node_modules/@babel/runtime/helpers/getPrototypeOf.js +10 -0
  153. data/node_modules/@babel/runtime/helpers/inherits.js +19 -0
  154. data/node_modules/@babel/runtime/helpers/inheritsLoose.js +10 -0
  155. data/node_modules/@babel/runtime/helpers/initializerDefineProperty.js +12 -0
  156. data/node_modules/@babel/runtime/helpers/initializerWarningHelper.js +6 -0
  157. data/node_modules/@babel/runtime/helpers/instanceof.js +10 -0
  158. data/node_modules/@babel/runtime/helpers/interopRequireDefault.js +8 -0
  159. data/node_modules/@babel/runtime/helpers/interopRequireWildcard.js +54 -0
  160. data/node_modules/@babel/runtime/helpers/isNativeFunction.js +6 -0
  161. data/node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js +15 -0
  162. data/node_modules/@babel/runtime/helpers/iterableToArray.js +6 -0
  163. data/node_modules/@babel/runtime/helpers/iterableToArrayLimit.js +32 -0
  164. data/node_modules/@babel/runtime/helpers/iterableToArrayLimitLoose.js +17 -0
  165. data/node_modules/@babel/runtime/helpers/jsx.js +50 -0
  166. data/node_modules/@babel/runtime/helpers/maybeArrayLike.js +13 -0
  167. data/node_modules/@babel/runtime/helpers/newArrowCheck.js +8 -0
  168. data/node_modules/@babel/runtime/helpers/nonIterableRest.js +6 -0
  169. data/node_modules/@babel/runtime/helpers/nonIterableSpread.js +6 -0
  170. data/node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js +6 -0
  171. data/node_modules/@babel/runtime/helpers/objectSpread.js +23 -0
  172. data/node_modules/@babel/runtime/helpers/objectSpread2.js +42 -0
  173. data/node_modules/@babel/runtime/helpers/objectWithoutProperties.js +23 -0
  174. data/node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js +17 -0
  175. data/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js +16 -0
  176. data/node_modules/@babel/runtime/helpers/readOnlyError.js +6 -0
  177. data/node_modules/@babel/runtime/helpers/set.js +55 -0
  178. data/node_modules/@babel/runtime/helpers/setPrototypeOf.js +12 -0
  179. data/node_modules/@babel/runtime/helpers/skipFirstGeneratorNext.js +10 -0
  180. data/node_modules/@babel/runtime/helpers/slicedToArray.js +14 -0
  181. data/node_modules/@babel/runtime/helpers/slicedToArrayLoose.js +14 -0
  182. data/node_modules/@babel/runtime/helpers/superPropBase.js +13 -0
  183. data/node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js +14 -0
  184. data/node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js +11 -0
  185. data/node_modules/@babel/runtime/helpers/tdz.js +6 -0
  186. data/node_modules/@babel/runtime/helpers/temporalRef.js +10 -0
  187. data/node_modules/@babel/runtime/helpers/temporalUndefined.js +4 -0
  188. data/node_modules/@babel/runtime/helpers/toArray.js +14 -0
  189. data/node_modules/@babel/runtime/helpers/toConsumableArray.js +14 -0
  190. data/node_modules/@babel/runtime/helpers/toPrimitive.js +17 -0
  191. data/node_modules/@babel/runtime/helpers/toPropertyKey.js +11 -0
  192. data/node_modules/@babel/runtime/helpers/typeof.js +22 -0
  193. data/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js +13 -0
  194. data/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js +10 -0
  195. data/node_modules/@babel/runtime/helpers/wrapNativeSuper.js +45 -0
  196. data/node_modules/@babel/runtime/helpers/wrapRegExp.js +72 -0
  197. data/node_modules/@babel/runtime/helpers/writeOnlyError.js +6 -0
  198. data/node_modules/@babel/runtime/package.json +848 -0
  199. data/node_modules/@babel/runtime/regenerator/index.js +1 -0
  200. data/node_modules/css-in-js-utils/Changelog.md +16 -0
  201. data/node_modules/css-in-js-utils/LICENSE +21 -0
  202. data/node_modules/css-in-js-utils/README.md +241 -0
  203. data/node_modules/css-in-js-utils/lib/__tests__/assignStyle-test.js +117 -0
  204. data/node_modules/css-in-js-utils/lib/__tests__/camelCaseProperty-test.js +15 -0
  205. data/node_modules/css-in-js-utils/lib/__tests__/cssifyDeclaration-test.js +15 -0
  206. data/node_modules/css-in-js-utils/lib/__tests__/cssifyObject-test.js +31 -0
  207. data/node_modules/css-in-js-utils/lib/__tests__/isPrefixedProperty-test.js +19 -0
  208. data/node_modules/css-in-js-utils/lib/__tests__/isPrefixedValue-test.js +19 -0
  209. data/node_modules/css-in-js-utils/lib/__tests__/isUnitlessProperty-test.js +43 -0
  210. data/node_modules/css-in-js-utils/lib/__tests__/normalizeProperty-test.js +21 -0
  211. data/node_modules/css-in-js-utils/lib/__tests__/resolveArrayValue-test.js +17 -0
  212. data/node_modules/css-in-js-utils/lib/__tests__/unprefixProperty-test.js +19 -0
  213. data/node_modules/css-in-js-utils/lib/__tests__/unprefixValue-test.js +20 -0
  214. data/node_modules/css-in-js-utils/lib/assignStyle.js +37 -0
  215. data/node_modules/css-in-js-utils/lib/camelCaseProperty.js +15 -0
  216. data/node_modules/css-in-js-utils/lib/cssifyDeclaration.js +17 -0
  217. data/node_modules/css-in-js-utils/lib/cssifyObject.js +34 -0
  218. data/node_modules/css-in-js-utils/lib/hyphenateProperty.js +17 -0
  219. data/node_modules/css-in-js-utils/lib/index.js +71 -0
  220. data/node_modules/css-in-js-utils/lib/isPrefixedProperty.js +12 -0
  221. data/node_modules/css-in-js-utils/lib/isPrefixedValue.js +12 -0
  222. data/node_modules/css-in-js-utils/lib/isUnitlessProperty.js +64 -0
  223. data/node_modules/css-in-js-utils/lib/normalizeProperty.js +21 -0
  224. data/node_modules/css-in-js-utils/lib/resolveArrayValue.js +19 -0
  225. data/node_modules/css-in-js-utils/lib/unprefixProperty.js +13 -0
  226. data/node_modules/css-in-js-utils/lib/unprefixValue.js +16 -0
  227. data/node_modules/css-in-js-utils/package.json +56 -0
  228. data/node_modules/css-tree/CHANGELOG.md +590 -0
  229. data/node_modules/css-tree/LICENSE +19 -0
  230. data/node_modules/css-tree/README.md +130 -0
  231. data/node_modules/css-tree/data/index.js +103 -0
  232. data/node_modules/css-tree/data/patch.json +721 -0
  233. data/node_modules/css-tree/dist/csstree.js +12606 -0
  234. data/node_modules/css-tree/dist/csstree.min.js +1 -0
  235. data/node_modules/css-tree/lib/common/List.js +576 -0
  236. data/node_modules/css-tree/lib/common/OffsetToLocation.js +91 -0
  237. data/node_modules/css-tree/lib/common/SyntaxError.js +82 -0
  238. data/node_modules/css-tree/lib/common/TokenStream.js +219 -0
  239. data/node_modules/css-tree/lib/common/adopt-buffer.js +10 -0
  240. data/node_modules/css-tree/lib/convertor/create.js +28 -0
  241. data/node_modules/css-tree/lib/convertor/index.js +3 -0
  242. data/node_modules/css-tree/lib/definition-syntax/SyntaxError.js +14 -0
  243. data/node_modules/css-tree/lib/definition-syntax/generate.js +129 -0
  244. data/node_modules/css-tree/lib/definition-syntax/index.js +6 -0
  245. data/node_modules/css-tree/lib/definition-syntax/parse.js +568 -0
  246. data/node_modules/css-tree/lib/definition-syntax/tokenizer.js +55 -0
  247. data/node_modules/css-tree/lib/definition-syntax/walk.js +52 -0
  248. data/node_modules/css-tree/lib/generator/create.js +66 -0
  249. data/node_modules/css-tree/lib/generator/index.js +4 -0
  250. data/node_modules/css-tree/lib/generator/sourceMap.js +95 -0
  251. data/node_modules/css-tree/lib/index.js +1 -0
  252. data/node_modules/css-tree/lib/lexer/Lexer.js +466 -0
  253. data/node_modules/css-tree/lib/lexer/error.js +127 -0
  254. data/node_modules/css-tree/lib/lexer/generic-an-plus-b.js +236 -0
  255. data/node_modules/css-tree/lib/lexer/generic-urange.js +159 -0
  256. data/node_modules/css-tree/lib/lexer/generic.js +585 -0
  257. data/node_modules/css-tree/lib/lexer/index.js +3 -0
  258. data/node_modules/css-tree/lib/lexer/match-graph.js +455 -0
  259. data/node_modules/css-tree/lib/lexer/match.js +639 -0
  260. data/node_modules/css-tree/lib/lexer/prepare-tokens.js +73 -0
  261. data/node_modules/css-tree/lib/lexer/search.js +65 -0
  262. data/node_modules/css-tree/lib/lexer/structure.js +163 -0
  263. data/node_modules/css-tree/lib/lexer/trace.js +79 -0
  264. data/node_modules/css-tree/lib/parser/create.js +304 -0
  265. data/node_modules/css-tree/lib/parser/index.js +4 -0
  266. data/node_modules/css-tree/lib/parser/sequence.js +54 -0
  267. data/node_modules/css-tree/lib/syntax/atrule/font-face.js +8 -0
  268. data/node_modules/css-tree/lib/syntax/atrule/import.js +40 -0
  269. data/node_modules/css-tree/lib/syntax/atrule/index.js +7 -0
  270. data/node_modules/css-tree/lib/syntax/atrule/media.js +12 -0
  271. data/node_modules/css-tree/lib/syntax/atrule/page.js +12 -0
  272. data/node_modules/css-tree/lib/syntax/atrule/supports.js +89 -0
  273. data/node_modules/css-tree/lib/syntax/config/lexer.js +9 -0
  274. data/node_modules/css-tree/lib/syntax/config/mix.js +140 -0
  275. data/node_modules/css-tree/lib/syntax/config/parser.js +25 -0
  276. data/node_modules/css-tree/lib/syntax/config/walker.js +3 -0
  277. data/node_modules/css-tree/lib/syntax/create.js +77 -0
  278. data/node_modules/css-tree/lib/syntax/function/expression.js +7 -0
  279. data/node_modules/css-tree/lib/syntax/function/var.js +43 -0
  280. data/node_modules/css-tree/lib/syntax/index.js +21 -0
  281. data/node_modules/css-tree/lib/syntax/node/AnPlusB.js +297 -0
  282. data/node_modules/css-tree/lib/syntax/node/Atrule.js +107 -0
  283. data/node_modules/css-tree/lib/syntax/node/AtrulePrelude.js +51 -0
  284. data/node_modules/css-tree/lib/syntax/node/AttributeSelector.js +165 -0
  285. data/node_modules/css-tree/lib/syntax/node/Block.js +91 -0
  286. data/node_modules/css-tree/lib/syntax/node/Brackets.js +34 -0
  287. data/node_modules/css-tree/lib/syntax/node/CDC.js +19 -0
  288. data/node_modules/css-tree/lib/syntax/node/CDO.js +19 -0
  289. data/node_modules/css-tree/lib/syntax/node/ClassSelector.js +29 -0
  290. data/node_modules/css-tree/lib/syntax/node/Combinator.js +55 -0
  291. data/node_modules/css-tree/lib/syntax/node/Comment.js +36 -0
  292. data/node_modules/css-tree/lib/syntax/node/Declaration.js +169 -0
  293. data/node_modules/css-tree/lib/syntax/node/DeclarationList.js +49 -0
  294. data/node_modules/css-tree/lib/syntax/node/Dimension.js +29 -0
  295. data/node_modules/css-tree/lib/syntax/node/Function.js +40 -0
  296. data/node_modules/css-tree/lib/syntax/node/Hash.js +26 -0
  297. data/node_modules/css-tree/lib/syntax/node/IdSelector.js +27 -0
  298. data/node_modules/css-tree/lib/syntax/node/Identifier.js +20 -0
  299. data/node_modules/css-tree/lib/syntax/node/MediaFeature.js +76 -0
  300. data/node_modules/css-tree/lib/syntax/node/MediaQuery.js +68 -0
  301. data/node_modules/css-tree/lib/syntax/node/MediaQueryList.js +36 -0
  302. data/node_modules/css-tree/lib/syntax/node/Nth.js +51 -0
  303. data/node_modules/css-tree/lib/syntax/node/Number.js +18 -0
  304. data/node_modules/css-tree/lib/syntax/node/Operator.js +21 -0
  305. data/node_modules/css-tree/lib/syntax/node/Parentheses.js +34 -0
  306. data/node_modules/css-tree/lib/syntax/node/Percentage.js +27 -0
  307. data/node_modules/css-tree/lib/syntax/node/PseudoClassSelector.js +61 -0
  308. data/node_modules/css-tree/lib/syntax/node/PseudoElementSelector.js +62 -0
  309. data/node_modules/css-tree/lib/syntax/node/Ratio.js +66 -0
  310. data/node_modules/css-tree/lib/syntax/node/Raw.js +87 -0
  311. data/node_modules/css-tree/lib/syntax/node/Rule.js +54 -0
  312. data/node_modules/css-tree/lib/syntax/node/Selector.js +32 -0
  313. data/node_modules/css-tree/lib/syntax/node/SelectorList.js +39 -0
  314. data/node_modules/css-tree/lib/syntax/node/String.js +18 -0
  315. data/node_modules/css-tree/lib/syntax/node/StyleSheet.js +81 -0
  316. data/node_modules/css-tree/lib/syntax/node/TypeSelector.js +53 -0
  317. data/node_modules/css-tree/lib/syntax/node/UnicodeRange.js +173 -0
  318. data/node_modules/css-tree/lib/syntax/node/Url.js +69 -0
  319. data/node_modules/css-tree/lib/syntax/node/Value.js +19 -0
  320. data/node_modules/css-tree/lib/syntax/node/WhiteSpace.js +26 -0
  321. data/node_modules/css-tree/lib/syntax/node/index.js +42 -0
  322. data/node_modules/css-tree/lib/syntax/pseudo/common/nth.js +9 -0
  323. data/node_modules/css-tree/lib/syntax/pseudo/common/nthWithOfClause.js +9 -0
  324. data/node_modules/css-tree/lib/syntax/pseudo/common/selectorList.js +7 -0
  325. data/node_modules/css-tree/lib/syntax/pseudo/dir.js +7 -0
  326. data/node_modules/css-tree/lib/syntax/pseudo/has.js +7 -0
  327. data/node_modules/css-tree/lib/syntax/pseudo/index.js +12 -0
  328. data/node_modules/css-tree/lib/syntax/pseudo/lang.js +7 -0
  329. data/node_modules/css-tree/lib/syntax/pseudo/matches.js +1 -0
  330. data/node_modules/css-tree/lib/syntax/pseudo/not.js +1 -0
  331. data/node_modules/css-tree/lib/syntax/pseudo/nth-child.js +1 -0
  332. data/node_modules/css-tree/lib/syntax/pseudo/nth-last-child.js +1 -0
  333. data/node_modules/css-tree/lib/syntax/pseudo/nth-last-of-type.js +1 -0
  334. data/node_modules/css-tree/lib/syntax/pseudo/nth-of-type.js +1 -0
  335. data/node_modules/css-tree/lib/syntax/pseudo/slotted.js +7 -0
  336. data/node_modules/css-tree/lib/syntax/scope/atrulePrelude.js +3 -0
  337. data/node_modules/css-tree/lib/syntax/scope/default.js +87 -0
  338. data/node_modules/css-tree/lib/syntax/scope/index.js +5 -0
  339. data/node_modules/css-tree/lib/syntax/scope/selector.js +80 -0
  340. data/node_modules/css-tree/lib/syntax/scope/value.js +5 -0
  341. data/node_modules/css-tree/lib/tokenizer/char-code-definitions.js +249 -0
  342. data/node_modules/css-tree/lib/tokenizer/const.js +40 -0
  343. data/node_modules/css-tree/lib/tokenizer/index.js +591 -0
  344. data/node_modules/css-tree/lib/tokenizer/utils.js +243 -0
  345. data/node_modules/css-tree/lib/utils/clone.js +21 -0
  346. data/node_modules/css-tree/lib/utils/createCustomError.js +17 -0
  347. data/node_modules/css-tree/lib/utils/names.js +104 -0
  348. data/node_modules/css-tree/lib/walker/create.js +284 -0
  349. data/node_modules/css-tree/lib/walker/index.js +4 -0
  350. data/node_modules/css-tree/package.json +60 -0
  351. data/node_modules/csstype/LICENSE +19 -0
  352. data/node_modules/csstype/README.md +273 -0
  353. data/node_modules/csstype/index.d.ts +20553 -0
  354. data/node_modules/csstype/index.js.flow +6278 -0
  355. data/node_modules/csstype/package.json +62 -0
  356. data/node_modules/error-stack-parser/CHANGELOG.md +53 -0
  357. data/node_modules/error-stack-parser/LICENSE +19 -0
  358. data/node_modules/error-stack-parser/README.md +44 -0
  359. data/node_modules/error-stack-parser/dist/error-stack-parser.js +202 -0
  360. data/node_modules/error-stack-parser/dist/error-stack-parser.min.js +2 -0
  361. data/node_modules/error-stack-parser/dist/error-stack-parser.min.js.map +1 -0
  362. data/node_modules/error-stack-parser/error-stack-parser.d.ts +66 -0
  363. data/node_modules/error-stack-parser/error-stack-parser.js +202 -0
  364. data/node_modules/error-stack-parser/package.json +63 -0
  365. data/node_modules/fastest-stable-stringify/.eslintrc.yml +26 -0
  366. data/node_modules/fastest-stable-stringify/.travis.yml +7 -0
  367. data/node_modules/fastest-stable-stringify/LICENSE +18 -0
  368. data/node_modules/fastest-stable-stringify/README.md +44 -0
  369. data/node_modules/fastest-stable-stringify/benchmark/index.js +32 -0
  370. data/node_modules/fastest-stable-stringify/benchmark/test.json +215 -0
  371. data/node_modules/fastest-stable-stringify/example/key_cmp.js +7 -0
  372. data/node_modules/fastest-stable-stringify/example/nested.js +3 -0
  373. data/node_modules/fastest-stable-stringify/example/str.js +3 -0
  374. data/node_modules/fastest-stable-stringify/example/value_cmp.js +7 -0
  375. data/node_modules/fastest-stable-stringify/index.js +60 -0
  376. data/node_modules/fastest-stable-stringify/package.json +54 -0
  377. data/node_modules/fastest-stable-stringify/test/bench.js +20 -0
  378. data/node_modules/fastest-stable-stringify/test/nested.js +24 -0
  379. data/node_modules/fastest-stable-stringify/test/str.js +52 -0
  380. data/node_modules/fastest-stable-stringify/test/to-json.js +22 -0
  381. data/node_modules/hyphenate-style-name/LICENSE +28 -0
  382. data/node_modules/hyphenate-style-name/README.md +28 -0
  383. data/node_modules/hyphenate-style-name/index.cjs.js +21 -0
  384. data/node_modules/hyphenate-style-name/index.js +19 -0
  385. data/node_modules/hyphenate-style-name/package.json +42 -0
  386. data/node_modules/inline-style-prefixer/CHANGELOG.md +195 -0
  387. data/node_modules/inline-style-prefixer/LICENSE +22 -0
  388. data/node_modules/inline-style-prefixer/README.md +100 -0
  389. data/node_modules/inline-style-prefixer/es/createPrefixer.js +47 -0
  390. data/node_modules/inline-style-prefixer/es/data.js +12 -0
  391. data/node_modules/inline-style-prefixer/es/generator/generatePluginList.js +21 -0
  392. data/node_modules/inline-style-prefixer/es/generator/generatePrefixMap.js +75 -0
  393. data/node_modules/inline-style-prefixer/es/generator/index.js +69 -0
  394. data/node_modules/inline-style-prefixer/es/generator/maps/pluginMap.js +108 -0
  395. data/node_modules/inline-style-prefixer/es/generator/maps/propertyMap.js +38 -0
  396. data/node_modules/inline-style-prefixer/es/index.js +26 -0
  397. data/node_modules/inline-style-prefixer/es/plugins/backgroundClip.js +7 -0
  398. data/node_modules/inline-style-prefixer/es/plugins/calc.js +11 -0
  399. data/node_modules/inline-style-prefixer/es/plugins/crossFade.js +12 -0
  400. data/node_modules/inline-style-prefixer/es/plugins/cursor.js +16 -0
  401. data/node_modules/inline-style-prefixer/es/plugins/filter.js +12 -0
  402. data/node_modules/inline-style-prefixer/es/plugins/flex.js +10 -0
  403. data/node_modules/inline-style-prefixer/es/plugins/flexboxIE.js +67 -0
  404. data/node_modules/inline-style-prefixer/es/plugins/flexboxOld.js +33 -0
  405. data/node_modules/inline-style-prefixer/es/plugins/gradient.js +14 -0
  406. data/node_modules/inline-style-prefixer/es/plugins/grid.js +129 -0
  407. data/node_modules/inline-style-prefixer/es/plugins/imageSet.js +12 -0
  408. data/node_modules/inline-style-prefixer/es/plugins/index.js +17 -0
  409. data/node_modules/inline-style-prefixer/es/plugins/logical.js +35 -0
  410. data/node_modules/inline-style-prefixer/es/plugins/position.js +5 -0
  411. data/node_modules/inline-style-prefixer/es/plugins/sizing.js +26 -0
  412. data/node_modules/inline-style-prefixer/es/plugins/transition.js +75 -0
  413. data/node_modules/inline-style-prefixer/es/utils/addNewValuesOnly.js +15 -0
  414. data/node_modules/inline-style-prefixer/es/utils/capitalizeString.js +3 -0
  415. data/node_modules/inline-style-prefixer/es/utils/isObject.js +3 -0
  416. data/node_modules/inline-style-prefixer/es/utils/prefixProperty.js +22 -0
  417. data/node_modules/inline-style-prefixer/es/utils/prefixValue.js +11 -0
  418. data/node_modules/inline-style-prefixer/lib/createPrefixer.js +66 -0
  419. data/node_modules/inline-style-prefixer/lib/data.js +17 -0
  420. data/node_modules/inline-style-prefixer/lib/generator/generatePluginList.js +32 -0
  421. data/node_modules/inline-style-prefixer/lib/generator/generatePrefixMap.js +86 -0
  422. data/node_modules/inline-style-prefixer/lib/generator/index.js +85 -0
  423. data/node_modules/inline-style-prefixer/lib/generator/maps/pluginMap.js +113 -0
  424. data/node_modules/inline-style-prefixer/lib/generator/maps/propertyMap.js +43 -0
  425. data/node_modules/inline-style-prefixer/lib/index.js +78 -0
  426. data/node_modules/inline-style-prefixer/lib/plugins/backgroundClip.js +13 -0
  427. data/node_modules/inline-style-prefixer/lib/plugins/calc.js +21 -0
  428. data/node_modules/inline-style-prefixer/lib/plugins/crossFade.js +22 -0
  429. data/node_modules/inline-style-prefixer/lib/plugins/cursor.js +22 -0
  430. data/node_modules/inline-style-prefixer/lib/plugins/filter.js +22 -0
  431. data/node_modules/inline-style-prefixer/lib/plugins/flex.js +16 -0
  432. data/node_modules/inline-style-prefixer/lib/plugins/flexboxIE.js +73 -0
  433. data/node_modules/inline-style-prefixer/lib/plugins/flexboxOld.js +39 -0
  434. data/node_modules/inline-style-prefixer/lib/plugins/gradient.js +26 -0
  435. data/node_modules/inline-style-prefixer/lib/plugins/grid.js +136 -0
  436. data/node_modules/inline-style-prefixer/lib/plugins/imageSet.js +22 -0
  437. data/node_modules/inline-style-prefixer/lib/plugins/index.js +69 -0
  438. data/node_modules/inline-style-prefixer/lib/plugins/logical.js +41 -0
  439. data/node_modules/inline-style-prefixer/lib/plugins/position.js +11 -0
  440. data/node_modules/inline-style-prefixer/lib/plugins/sizing.js +32 -0
  441. data/node_modules/inline-style-prefixer/lib/plugins/transition.js +92 -0
  442. data/node_modules/inline-style-prefixer/lib/utils/addNewValuesOnly.js +21 -0
  443. data/node_modules/inline-style-prefixer/lib/utils/capitalizeString.js +9 -0
  444. data/node_modules/inline-style-prefixer/lib/utils/isObject.js +9 -0
  445. data/node_modules/inline-style-prefixer/lib/utils/prefixProperty.js +32 -0
  446. data/node_modules/inline-style-prefixer/lib/utils/prefixValue.js +17 -0
  447. data/node_modules/inline-style-prefixer/package.json +79 -0
  448. data/node_modules/isobject/LICENSE +21 -0
  449. data/node_modules/isobject/README.md +122 -0
  450. data/node_modules/isobject/index.d.ts +5 -0
  451. data/node_modules/isobject/index.js +12 -0
  452. data/node_modules/isobject/package.json +74 -0
  453. data/node_modules/js-tokens/CHANGELOG.md +151 -0
  454. data/node_modules/js-tokens/LICENSE +21 -0
  455. data/node_modules/js-tokens/README.md +240 -0
  456. data/node_modules/js-tokens/index.js +23 -0
  457. data/node_modules/js-tokens/package.json +30 -0
  458. data/node_modules/loose-envify/LICENSE +21 -0
  459. data/node_modules/loose-envify/README.md +45 -0
  460. data/node_modules/loose-envify/cli.js +16 -0
  461. data/node_modules/loose-envify/custom.js +4 -0
  462. data/node_modules/loose-envify/index.js +3 -0
  463. data/node_modules/loose-envify/loose-envify.js +36 -0
  464. data/node_modules/loose-envify/package.json +36 -0
  465. data/node_modules/loose-envify/replace.js +65 -0
  466. data/node_modules/mdn-data/LICENSE +116 -0
  467. data/node_modules/mdn-data/README.md +56 -0
  468. data/node_modules/mdn-data/api/index.js +3 -0
  469. data/node_modules/mdn-data/api/inheritance.json +2681 -0
  470. data/node_modules/mdn-data/api/inheritance.schema.json +31 -0
  471. data/node_modules/mdn-data/css/at-rules.json +560 -0
  472. data/node_modules/mdn-data/css/at-rules.schema.json +132 -0
  473. data/node_modules/mdn-data/css/definitions.json +77 -0
  474. data/node_modules/mdn-data/css/index.js +8 -0
  475. data/node_modules/mdn-data/css/properties.json +9163 -0
  476. data/node_modules/mdn-data/css/properties.schema.json +402 -0
  477. data/node_modules/mdn-data/css/selectors.json +927 -0
  478. data/node_modules/mdn-data/css/selectors.schema.json +36 -0
  479. data/node_modules/mdn-data/css/syntaxes.json +761 -0
  480. data/node_modules/mdn-data/css/syntaxes.schema.json +15 -0
  481. data/node_modules/mdn-data/css/types.json +265 -0
  482. data/node_modules/mdn-data/css/types.schema.json +32 -0
  483. data/node_modules/mdn-data/css/units.json +199 -0
  484. data/node_modules/mdn-data/css/units.schema.json +28 -0
  485. data/node_modules/mdn-data/index.js +5 -0
  486. data/node_modules/mdn-data/l10n/css.json +1567 -0
  487. data/node_modules/mdn-data/l10n/index.js +3 -0
  488. data/node_modules/mdn-data/package.json +39 -0
  489. data/node_modules/nano-css/.circleci/config.yml +85 -0
  490. data/node_modules/nano-css/.eslintrc.yml +27 -0
  491. data/node_modules/nano-css/.github/FUNDING.yml +3 -0
  492. data/node_modules/nano-css/.github/workflows/nodejs.yml +23 -0
  493. data/node_modules/nano-css/CHANGELOG.md +362 -0
  494. data/node_modules/nano-css/LICENSE +24 -0
  495. data/node_modules/nano-css/README.md +70 -0
  496. data/node_modules/nano-css/addon/__dev__/warnOnMissingDependencies.js +25 -0
  497. data/node_modules/nano-css/addon/__tests__/__snapshots__/reset.test.js.snap +407 -0
  498. data/node_modules/nano-css/addon/__tests__/__snapshots__/tachyons.test.js.snap +43 -0
  499. data/node_modules/nano-css/addon/__tests__/amp.server.dev.test.js +6 -0
  500. data/node_modules/nano-css/addon/__tests__/amp.server.test.js +223 -0
  501. data/node_modules/nano-css/addon/__tests__/atoms.dev.test.js +5 -0
  502. data/node_modules/nano-css/addon/__tests__/atoms.server.dev.test.js +8 -0
  503. data/node_modules/nano-css/addon/__tests__/atoms.server.test.js +6 -0
  504. data/node_modules/nano-css/addon/__tests__/atoms.test.js +49 -0
  505. data/node_modules/nano-css/addon/__tests__/cssom.server.test.js +12 -0
  506. data/node_modules/nano-css/addon/__tests__/emmet/emmet.dev.test.js +5 -0
  507. data/node_modules/nano-css/addon/__tests__/emmet/emmet.server.dev.test.js +8 -0
  508. data/node_modules/nano-css/addon/__tests__/emmet/emmet.server.test.js +6 -0
  509. data/node_modules/nano-css/addon/__tests__/emmet/emmet.test.js +219 -0
  510. data/node_modules/nano-css/addon/__tests__/env.js +6 -0
  511. data/node_modules/nano-css/addon/__tests__/extract.server.test.js +159 -0
  512. data/node_modules/nano-css/addon/__tests__/index.server.dev.test.js +6 -0
  513. data/node_modules/nano-css/addon/__tests__/index.server.test.js +4 -0
  514. data/node_modules/nano-css/addon/__tests__/index.test.js +257 -0
  515. data/node_modules/nano-css/addon/__tests__/jsx.dev.test.js +5 -0
  516. data/node_modules/nano-css/addon/__tests__/jsx.server.dev.test.js +6 -0
  517. data/node_modules/nano-css/addon/__tests__/jsx.server.test.js +4 -0
  518. data/node_modules/nano-css/addon/__tests__/jsx.test.js +33 -0
  519. data/node_modules/nano-css/addon/__tests__/keyframes.dev.test.js +5 -0
  520. data/node_modules/nano-css/addon/__tests__/keyframes.server.dev.test.js +6 -0
  521. data/node_modules/nano-css/addon/__tests__/keyframes.server.test.js +4 -0
  522. data/node_modules/nano-css/addon/__tests__/keyframes.test.js +131 -0
  523. data/node_modules/nano-css/addon/__tests__/limit.server.test.js +54 -0
  524. data/node_modules/nano-css/addon/__tests__/nesting.test.js +85 -0
  525. data/node_modules/nano-css/addon/__tests__/prefixer.test.js +121 -0
  526. data/node_modules/nano-css/addon/__tests__/put.dev.test.js +5 -0
  527. data/node_modules/nano-css/addon/__tests__/put.server.dev.test.js +6 -0
  528. data/node_modules/nano-css/addon/__tests__/put.server.test.js +4 -0
  529. data/node_modules/nano-css/addon/__tests__/put.test.js +75 -0
  530. data/node_modules/nano-css/addon/__tests__/reset.test.js +38 -0
  531. data/node_modules/nano-css/addon/__tests__/rule.dev.test.js +5 -0
  532. data/node_modules/nano-css/addon/__tests__/rule.server.dev.test.js +7 -0
  533. data/node_modules/nano-css/addon/__tests__/rule.server.test.js +5 -0
  534. data/node_modules/nano-css/addon/__tests__/rule.test.js +57 -0
  535. data/node_modules/nano-css/addon/__tests__/setup.js +7 -0
  536. data/node_modules/nano-css/addon/__tests__/sheet.test.js +74 -0
  537. data/node_modules/nano-css/addon/__tests__/snake.test.js +124 -0
  538. data/node_modules/nano-css/addon/__tests__/tachyons.test.js +45 -0
  539. data/node_modules/nano-css/addon/__tests__/units.dev.test.js +5 -0
  540. data/node_modules/nano-css/addon/__tests__/units.server.dev.test.js +6 -0
  541. data/node_modules/nano-css/addon/__tests__/units.server.test.js +4 -0
  542. data/node_modules/nano-css/addon/__tests__/units.test.js +41 -0
  543. data/node_modules/nano-css/addon/__tests__/validate.dev.test.js +5 -0
  544. data/node_modules/nano-css/addon/__tests__/validate.test.js +69 -0
  545. data/node_modules/nano-css/addon/__tests__/vcssom.server.test.js +14 -0
  546. data/node_modules/nano-css/addon/__tests__/virtual.dev.test.js +5 -0
  547. data/node_modules/nano-css/addon/__tests__/virtual.server.dev.test.js +6 -0
  548. data/node_modules/nano-css/addon/__tests__/virtual.server.test.js +4 -0
  549. data/node_modules/nano-css/addon/__tests__/virtual.test.js +225 -0
  550. data/node_modules/nano-css/addon/amp.d.ts +5 -0
  551. data/node_modules/nano-css/addon/amp.js +156 -0
  552. data/node_modules/nano-css/addon/animate/fadeIn.js +22 -0
  553. data/node_modules/nano-css/addon/animate/fadeInDown.js +25 -0
  554. data/node_modules/nano-css/addon/animate/fadeInScale.js +25 -0
  555. data/node_modules/nano-css/addon/animate/fadeOut.js +23 -0
  556. data/node_modules/nano-css/addon/animate/fadeOutScale.js +21 -0
  557. data/node_modules/nano-css/addon/array.d.ts +5 -0
  558. data/node_modules/nano-css/addon/array.js +33 -0
  559. data/node_modules/nano-css/addon/atoms.d.ts +243 -0
  560. data/node_modules/nano-css/addon/atoms.js +63 -0
  561. data/node_modules/nano-css/addon/cache.d.ts +8 -0
  562. data/node_modules/nano-css/addon/cache.js +17 -0
  563. data/node_modules/nano-css/addon/component.d.ts +7 -0
  564. data/node_modules/nano-css/addon/component.js +26 -0
  565. data/node_modules/nano-css/addon/cssom.d.ts +17 -0
  566. data/node_modules/nano-css/addon/cssom.js +36 -0
  567. data/node_modules/nano-css/addon/decorator.d.ts +7 -0
  568. data/node_modules/nano-css/addon/decorator.js +43 -0
  569. data/node_modules/nano-css/addon/drule.d.ts +8 -0
  570. data/node_modules/nano-css/addon/drule.js +27 -0
  571. data/node_modules/nano-css/addon/dsheet.d.ts +8 -0
  572. data/node_modules/nano-css/addon/dsheet.js +36 -0
  573. data/node_modules/nano-css/addon/emmet.d.ts +614 -0
  574. data/node_modules/nano-css/addon/emmet.js +177 -0
  575. data/node_modules/nano-css/addon/extract.d.ts +5 -0
  576. data/node_modules/nano-css/addon/extract.js +59 -0
  577. data/node_modules/nano-css/addon/global.d.ts +8 -0
  578. data/node_modules/nano-css/addon/global.js +19 -0
  579. data/node_modules/nano-css/addon/googleFont.d.ts +8 -0
  580. data/node_modules/nano-css/addon/googleFont.js +43 -0
  581. data/node_modules/nano-css/addon/hydrate.d.ts +7 -0
  582. data/node_modules/nano-css/addon/hydrate.js +28 -0
  583. data/node_modules/nano-css/addon/hyperstyle.js +27 -0
  584. data/node_modules/nano-css/addon/important.js +38 -0
  585. data/node_modules/nano-css/addon/jsx.js +60 -0
  586. data/node_modules/nano-css/addon/keyframes.d.ts +34 -0
  587. data/node_modules/nano-css/addon/keyframes.js +61 -0
  588. data/node_modules/nano-css/addon/limit.js +26 -0
  589. data/node_modules/nano-css/addon/nesting.js +37 -0
  590. data/node_modules/nano-css/addon/pipe.js +57 -0
  591. data/node_modules/nano-css/addon/prefixer.js +79 -0
  592. data/node_modules/nano-css/addon/ref.js +87 -0
  593. data/node_modules/nano-css/addon/reset/EricMeyer.js +48 -0
  594. data/node_modules/nano-css/addon/reset/EricMeyerCondensed.js +44 -0
  595. data/node_modules/nano-css/addon/reset/Minimalistic.js +16 -0
  596. data/node_modules/nano-css/addon/reset/Minimalistic2.js +17 -0
  597. data/node_modules/nano-css/addon/reset/Minimalistic3.js +18 -0
  598. data/node_modules/nano-css/addon/reset/Normalize.js +83 -0
  599. data/node_modules/nano-css/addon/reset/PoorMan.js +25 -0
  600. data/node_modules/nano-css/addon/reset/ShaunInman.js +42 -0
  601. data/node_modules/nano-css/addon/reset/Siolon.js +34 -0
  602. data/node_modules/nano-css/addon/reset/Tantek.js +31 -0
  603. data/node_modules/nano-css/addon/reset/Tripoli.js +75 -0
  604. data/node_modules/nano-css/addon/reset/Universal.js +23 -0
  605. data/node_modules/nano-css/addon/reset/Yahoo.js +43 -0
  606. data/node_modules/nano-css/addon/reset-font.js +24 -0
  607. data/node_modules/nano-css/addon/rtl.js +15 -0
  608. data/node_modules/nano-css/addon/rule.d.ts +26 -0
  609. data/node_modules/nano-css/addon/rule.js +39 -0
  610. data/node_modules/nano-css/addon/sheet.d.ts +22 -0
  611. data/node_modules/nano-css/addon/sheet.js +45 -0
  612. data/node_modules/nano-css/addon/snake.js +141 -0
  613. data/node_modules/nano-css/addon/sourcemaps.js +96 -0
  614. data/node_modules/nano-css/addon/spread.js +23 -0
  615. data/node_modules/nano-css/addon/stable.js +7 -0
  616. data/node_modules/nano-css/addon/style.js +33 -0
  617. data/node_modules/nano-css/addon/styled.js +161 -0
  618. data/node_modules/nano-css/addon/stylis/plugin-onRule.js +43 -0
  619. data/node_modules/nano-css/addon/stylis.js +28 -0
  620. data/node_modules/nano-css/addon/tachyons.js +215 -0
  621. data/node_modules/nano-css/addon/unitless.js +78 -0
  622. data/node_modules/nano-css/addon/units.d.ts +89 -0
  623. data/node_modules/nano-css/addon/units.js +27 -0
  624. data/node_modules/nano-css/addon/useStyles.js +24 -0
  625. data/node_modules/nano-css/addon/util/cloneElement.js +11 -0
  626. data/node_modules/nano-css/addon/util/transformComponentDynamic.js +50 -0
  627. data/node_modules/nano-css/addon/util/transformComponentStatic.js +26 -0
  628. data/node_modules/nano-css/addon/validate.js +82 -0
  629. data/node_modules/nano-css/addon/vcssom/__tests__/cssToTree.test.js +159 -0
  630. data/node_modules/nano-css/addon/vcssom/cssToTree.d.ts +15 -0
  631. data/node_modules/nano-css/addon/vcssom/cssToTree.js +42 -0
  632. data/node_modules/nano-css/addon/vcssom/removeRule.d.ts +3 -0
  633. data/node_modules/nano-css/addon/vcssom/removeRule.js +15 -0
  634. data/node_modules/nano-css/addon/vcssom.d.ts +72 -0
  635. data/node_modules/nano-css/addon/vcssom.js +97 -0
  636. data/node_modules/nano-css/addon/virtual.js +107 -0
  637. data/node_modules/nano-css/addon/withStyles.js +32 -0
  638. data/node_modules/nano-css/index.d.ts +4 -0
  639. data/node_modules/nano-css/index.js +138 -0
  640. data/node_modules/nano-css/package.json +145 -0
  641. data/node_modules/nano-css/preset/react.js +43 -0
  642. data/node_modules/nano-css/preset/sheet.d.ts +5 -0
  643. data/node_modules/nano-css/preset/sheet.js +27 -0
  644. data/node_modules/nano-css/preset/vdom.js +40 -0
  645. data/node_modules/nano-css/prettier.config.js +13 -0
  646. data/node_modules/nano-css/renovate.json +3 -0
  647. data/node_modules/nano-css/types/common.d.ts +14 -0
  648. data/node_modules/nano-css/types/demo.ts +7 -0
  649. data/node_modules/nano-css/types/nano.d.ts +171 -0
  650. data/node_modules/object-assign/index.js +90 -0
  651. data/node_modules/object-assign/license +21 -0
  652. data/node_modules/object-assign/package.json +42 -0
  653. data/node_modules/object-assign/readme.md +61 -0
  654. data/node_modules/preact/LICENSE +21 -0
  655. data/node_modules/preact/README.md +187 -0
  656. data/node_modules/preact/compat/LICENSE +21 -0
  657. data/node_modules/preact/compat/dist/compat.js +2 -0
  658. data/node_modules/preact/compat/dist/compat.js.map +1 -0
  659. data/node_modules/preact/compat/dist/compat.mjs +2 -0
  660. data/node_modules/preact/compat/dist/compat.mjs.map +1 -0
  661. data/node_modules/preact/compat/dist/compat.modern.js +2 -0
  662. data/node_modules/preact/compat/dist/compat.modern.js.map +1 -0
  663. data/node_modules/preact/compat/dist/compat.module.js +2 -0
  664. data/node_modules/preact/compat/dist/compat.module.js.map +1 -0
  665. data/node_modules/preact/compat/dist/compat.umd.js +2 -0
  666. data/node_modules/preact/compat/dist/compat.umd.js.map +1 -0
  667. data/node_modules/preact/compat/jsx-dev-runtime.js +1 -0
  668. data/node_modules/preact/compat/jsx-dev-runtime.mjs +1 -0
  669. data/node_modules/preact/compat/jsx-runtime.js +1 -0
  670. data/node_modules/preact/compat/jsx-runtime.mjs +1 -0
  671. data/node_modules/preact/compat/package.json +19 -0
  672. data/node_modules/preact/compat/scheduler.js +15 -0
  673. data/node_modules/preact/compat/scheduler.mjs +23 -0
  674. data/node_modules/preact/compat/server.js +15 -0
  675. data/node_modules/preact/compat/server.mjs +4 -0
  676. data/node_modules/preact/compat/src/Children.js +21 -0
  677. data/node_modules/preact/compat/src/PureComponent.js +15 -0
  678. data/node_modules/preact/compat/src/forwardRef.js +51 -0
  679. data/node_modules/preact/compat/src/index.d.ts +140 -0
  680. data/node_modules/preact/compat/src/index.js +187 -0
  681. data/node_modules/preact/compat/src/internal.d.ts +47 -0
  682. data/node_modules/preact/compat/src/memo.js +34 -0
  683. data/node_modules/preact/compat/src/portals.js +80 -0
  684. data/node_modules/preact/compat/src/render.js +219 -0
  685. data/node_modules/preact/compat/src/suspense-list.d.ts +14 -0
  686. data/node_modules/preact/compat/src/suspense-list.js +126 -0
  687. data/node_modules/preact/compat/src/suspense.d.ts +15 -0
  688. data/node_modules/preact/compat/src/suspense.js +270 -0
  689. data/node_modules/preact/compat/src/util.js +28 -0
  690. data/node_modules/preact/compat/test-utils.js +1 -0
  691. data/node_modules/preact/debug/LICENSE +21 -0
  692. data/node_modules/preact/debug/dist/debug.js +2 -0
  693. data/node_modules/preact/debug/dist/debug.js.map +1 -0
  694. data/node_modules/preact/debug/dist/debug.mjs +2 -0
  695. data/node_modules/preact/debug/dist/debug.mjs.map +1 -0
  696. data/node_modules/preact/debug/dist/debug.modern.js +2 -0
  697. data/node_modules/preact/debug/dist/debug.modern.js.map +1 -0
  698. data/node_modules/preact/debug/dist/debug.module.js +2 -0
  699. data/node_modules/preact/debug/dist/debug.module.js.map +1 -0
  700. data/node_modules/preact/debug/dist/debug.umd.js +2 -0
  701. data/node_modules/preact/debug/dist/debug.umd.js.map +1 -0
  702. data/node_modules/preact/debug/package.json +18 -0
  703. data/node_modules/preact/debug/src/check-props.js +54 -0
  704. data/node_modules/preact/debug/src/component-stack.js +146 -0
  705. data/node_modules/preact/debug/src/constants.js +3 -0
  706. data/node_modules/preact/debug/src/debug.js +442 -0
  707. data/node_modules/preact/debug/src/index.js +6 -0
  708. data/node_modules/preact/debug/src/internal.d.ts +82 -0
  709. data/node_modules/preact/debug/src/util.js +11 -0
  710. data/node_modules/preact/devtools/LICENSE +21 -0
  711. data/node_modules/preact/devtools/dist/devtools.js +2 -0
  712. data/node_modules/preact/devtools/dist/devtools.js.map +1 -0
  713. data/node_modules/preact/devtools/dist/devtools.mjs +2 -0
  714. data/node_modules/preact/devtools/dist/devtools.mjs.map +1 -0
  715. data/node_modules/preact/devtools/dist/devtools.modern.js +2 -0
  716. data/node_modules/preact/devtools/dist/devtools.modern.js.map +1 -0
  717. data/node_modules/preact/devtools/dist/devtools.module.js +2 -0
  718. data/node_modules/preact/devtools/dist/devtools.module.js.map +1 -0
  719. data/node_modules/preact/devtools/dist/devtools.umd.js +2 -0
  720. data/node_modules/preact/devtools/dist/devtools.umd.js.map +1 -0
  721. data/node_modules/preact/devtools/package.json +16 -0
  722. data/node_modules/preact/devtools/src/devtools.js +10 -0
  723. data/node_modules/preact/devtools/src/index.d.ts +8 -0
  724. data/node_modules/preact/devtools/src/index.js +15 -0
  725. data/node_modules/preact/dist/preact.js +2 -0
  726. data/node_modules/preact/dist/preact.js.map +1 -0
  727. data/node_modules/preact/dist/preact.min.js +2 -0
  728. data/node_modules/preact/dist/preact.min.js.map +1 -0
  729. data/node_modules/preact/dist/preact.mjs +2 -0
  730. data/node_modules/preact/dist/preact.mjs.map +1 -0
  731. data/node_modules/preact/dist/preact.module.js +2 -0
  732. data/node_modules/preact/dist/preact.module.js.map +1 -0
  733. data/node_modules/preact/dist/preact.umd.js +2 -0
  734. data/node_modules/preact/dist/preact.umd.js.map +1 -0
  735. data/node_modules/preact/hooks/LICENSE +21 -0
  736. data/node_modules/preact/hooks/dist/hooks.js +2 -0
  737. data/node_modules/preact/hooks/dist/hooks.js.map +1 -0
  738. data/node_modules/preact/hooks/dist/hooks.mjs +2 -0
  739. data/node_modules/preact/hooks/dist/hooks.mjs.map +1 -0
  740. data/node_modules/preact/hooks/dist/hooks.modern.js +2 -0
  741. data/node_modules/preact/hooks/dist/hooks.modern.js.map +1 -0
  742. data/node_modules/preact/hooks/dist/hooks.module.js +2 -0
  743. data/node_modules/preact/hooks/dist/hooks.module.js.map +1 -0
  744. data/node_modules/preact/hooks/dist/hooks.umd.js +2 -0
  745. data/node_modules/preact/hooks/dist/hooks.umd.js.map +1 -0
  746. data/node_modules/preact/hooks/package.json +26 -0
  747. data/node_modules/preact/hooks/src/index.d.ts +133 -0
  748. data/node_modules/preact/hooks/src/index.js +386 -0
  749. data/node_modules/preact/hooks/src/internal.d.ts +75 -0
  750. data/node_modules/preact/jsx-runtime/LICENSE +21 -0
  751. data/node_modules/preact/jsx-runtime/dist/jsxRuntime.js +2 -0
  752. data/node_modules/preact/jsx-runtime/dist/jsxRuntime.js.map +1 -0
  753. data/node_modules/preact/jsx-runtime/dist/jsxRuntime.mjs +2 -0
  754. data/node_modules/preact/jsx-runtime/dist/jsxRuntime.modern.js +2 -0
  755. data/node_modules/preact/jsx-runtime/dist/jsxRuntime.modern.js.map +1 -0
  756. data/node_modules/preact/jsx-runtime/dist/jsxRuntime.module.js +2 -0
  757. data/node_modules/preact/jsx-runtime/dist/jsxRuntime.module.js.map +1 -0
  758. data/node_modules/preact/jsx-runtime/dist/jsxRuntime.umd.js +2 -0
  759. data/node_modules/preact/jsx-runtime/dist/jsxRuntime.umd.js.map +1 -0
  760. data/node_modules/preact/jsx-runtime/package.json +19 -0
  761. data/node_modules/preact/jsx-runtime/src/index.d.ts +50 -0
  762. data/node_modules/preact/jsx-runtime/src/index.js +77 -0
  763. data/node_modules/preact/package.json +270 -0
  764. data/node_modules/preact/src/cjs.js +3 -0
  765. data/node_modules/preact/src/clone-element.js +34 -0
  766. data/node_modules/preact/src/component.js +225 -0
  767. data/node_modules/preact/src/constants.js +3 -0
  768. data/node_modules/preact/src/create-context.js +68 -0
  769. data/node_modules/preact/src/create-element.js +97 -0
  770. data/node_modules/preact/src/diff/catch-error.js +38 -0
  771. data/node_modules/preact/src/diff/children.js +347 -0
  772. data/node_modules/preact/src/diff/index.js +514 -0
  773. data/node_modules/preact/src/diff/props.js +158 -0
  774. data/node_modules/preact/src/index.d.ts +310 -0
  775. data/node_modules/preact/src/index.js +13 -0
  776. data/node_modules/preact/src/internal.d.ts +146 -0
  777. data/node_modules/preact/src/jsx.d.ts +962 -0
  778. data/node_modules/preact/src/options.js +16 -0
  779. data/node_modules/preact/src/render.js +75 -0
  780. data/node_modules/preact/src/util.js +27 -0
  781. data/node_modules/preact/test-utils/dist/testUtils.js +2 -0
  782. data/node_modules/preact/test-utils/dist/testUtils.js.map +1 -0
  783. data/node_modules/preact/test-utils/dist/testUtils.mjs +2 -0
  784. data/node_modules/preact/test-utils/dist/testUtils.mjs.map +1 -0
  785. data/node_modules/preact/test-utils/dist/testUtils.modern.js +2 -0
  786. data/node_modules/preact/test-utils/dist/testUtils.modern.js.map +1 -0
  787. data/node_modules/preact/test-utils/dist/testUtils.module.js +2 -0
  788. data/node_modules/preact/test-utils/dist/testUtils.module.js.map +1 -0
  789. data/node_modules/preact/test-utils/dist/testUtils.umd.js +2 -0
  790. data/node_modules/preact/test-utils/dist/testUtils.umd.js.map +1 -0
  791. data/node_modules/preact/test-utils/package.json +19 -0
  792. data/node_modules/preact/test-utils/src/index.d.ts +3 -0
  793. data/node_modules/preact/test-utils/src/index.js +117 -0
  794. data/node_modules/preact-deep-force-update/.babelrc +8 -0
  795. data/node_modules/preact-deep-force-update/.eslintrc +66 -0
  796. data/node_modules/preact-deep-force-update/.npmignore +2 -0
  797. data/node_modules/preact-deep-force-update/.travis.yml +3 -0
  798. data/node_modules/preact-deep-force-update/LICENSE +21 -0
  799. data/node_modules/preact-deep-force-update/README.md +53 -0
  800. data/node_modules/preact-deep-force-update/dist/deep-force-update.js +36 -0
  801. data/node_modules/preact-deep-force-update/dist/deep-force-update.js.map +1 -0
  802. data/node_modules/preact-deep-force-update/dist/deep-force-update.min.js +2 -0
  803. data/node_modules/preact-deep-force-update/dist/deep-force-update.min.js.map +1 -0
  804. data/node_modules/preact-deep-force-update/karma.conf.js +32 -0
  805. data/node_modules/preact-deep-force-update/package.json +80 -0
  806. data/node_modules/preact-deep-force-update/rollup.config.js +17 -0
  807. data/node_modules/preact-deep-force-update/src/index.js +27 -0
  808. data/node_modules/preact-deep-force-update/test/index.js +50 -0
  809. data/node_modules/preact-render-to-string/LICENSE +21 -0
  810. data/node_modules/preact-render-to-string/README.md +102 -0
  811. data/node_modules/preact-render-to-string/dist/commonjs.js +2 -0
  812. data/node_modules/preact-render-to-string/dist/commonjs.js.map +1 -0
  813. data/node_modules/preact-render-to-string/dist/index.d.ts +16 -0
  814. data/node_modules/preact-render-to-string/dist/index.js +1 -0
  815. data/node_modules/preact-render-to-string/dist/index.js.map +1 -0
  816. data/node_modules/preact-render-to-string/dist/index.mjs +2 -0
  817. data/node_modules/preact-render-to-string/dist/index.module.js +2 -0
  818. data/node_modules/preact-render-to-string/dist/index.module.js.map +1 -0
  819. data/node_modules/preact-render-to-string/dist/jsx-entry.js +2 -0
  820. data/node_modules/preact-render-to-string/dist/jsx-entry.js.map +1 -0
  821. data/node_modules/preact-render-to-string/dist/jsx.d.ts +13 -0
  822. data/node_modules/preact-render-to-string/dist/jsx.js +1 -0
  823. data/node_modules/preact-render-to-string/dist/jsx.js.map +1 -0
  824. data/node_modules/preact-render-to-string/dist/jsx.mjs +2 -0
  825. data/node_modules/preact-render-to-string/dist/jsx.modern.js +2 -0
  826. data/node_modules/preact-render-to-string/dist/jsx.modern.js.map +1 -0
  827. data/node_modules/preact-render-to-string/dist/jsx.module.js +2 -0
  828. data/node_modules/preact-render-to-string/dist/jsx.module.js.map +1 -0
  829. data/node_modules/preact-render-to-string/dist/preact-render-to-string-tests.d.ts +1 -0
  830. data/node_modules/preact-render-to-string/jsx.js +1 -0
  831. data/node_modules/preact-render-to-string/package.json +139 -0
  832. data/node_modules/preact-render-to-string/src/index.d.ts +16 -0
  833. data/node_modules/preact-render-to-string/src/index.js +438 -0
  834. data/node_modules/preact-render-to-string/src/jsx.d.ts +13 -0
  835. data/node_modules/preact-render-to-string/src/jsx.js +76 -0
  836. data/node_modules/preact-render-to-string/src/polyfills.js +8 -0
  837. data/node_modules/preact-render-to-string/src/preact-render-to-string-tests.d.ts +1 -0
  838. data/node_modules/preact-render-to-string/src/util.js +78 -0
  839. data/node_modules/preact-render-to-string/typings.json +5 -0
  840. data/node_modules/pretty-format/.npmignore +3 -0
  841. data/node_modules/pretty-format/LICENSE.md +15 -0
  842. data/node_modules/pretty-format/README.md +94 -0
  843. data/node_modules/pretty-format/index.js +343 -0
  844. data/node_modules/pretty-format/package.json +26 -0
  845. data/node_modules/pretty-format/plugins/ReactElement.js +74 -0
  846. data/node_modules/pretty-format/plugins/ReactTestComponent.js +58 -0
  847. data/node_modules/pretty-format/printString.js +7 -0
  848. data/node_modules/react/LICENSE +21 -0
  849. data/node_modules/react/README.md +13 -0
  850. data/node_modules/react/build-info.json +8 -0
  851. data/node_modules/react/cjs/react-jsx-dev-runtime.development.js +1203 -0
  852. data/node_modules/react/cjs/react-jsx-dev-runtime.production.min.js +9 -0
  853. data/node_modules/react/cjs/react-jsx-dev-runtime.profiling.min.js +9 -0
  854. data/node_modules/react/cjs/react-jsx-runtime.development.js +1221 -0
  855. data/node_modules/react/cjs/react-jsx-runtime.production.min.js +10 -0
  856. data/node_modules/react/cjs/react-jsx-runtime.profiling.min.js +10 -0
  857. data/node_modules/react/cjs/react.development.js +2333 -0
  858. data/node_modules/react/cjs/react.production.min.js +23 -0
  859. data/node_modules/react/index.js +7 -0
  860. data/node_modules/react/jsx-dev-runtime.js +7 -0
  861. data/node_modules/react/jsx-runtime.js +7 -0
  862. data/node_modules/react/package.json +39 -0
  863. data/node_modules/react/umd/react.development.js +3357 -0
  864. data/node_modules/react/umd/react.production.min.js +31 -0
  865. data/node_modules/react/umd/react.profiling.min.js +36 -0
  866. data/node_modules/react-dom/LICENSE +21 -0
  867. data/node_modules/react-dom/README.md +54 -0
  868. data/node_modules/react-dom/build-info.json +8 -0
  869. data/node_modules/react-dom/cjs/react-dom-server.browser.development.js +4342 -0
  870. data/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js +51 -0
  871. data/node_modules/react-dom/cjs/react-dom-server.node.development.js +4383 -0
  872. data/node_modules/react-dom/cjs/react-dom-server.node.production.min.js +52 -0
  873. data/node_modules/react-dom/cjs/react-dom-test-utils.development.js +2118 -0
  874. data/node_modules/react-dom/cjs/react-dom-test-utils.production.min.js +43 -0
  875. data/node_modules/react-dom/cjs/react-dom.development.js +26262 -0
  876. data/node_modules/react-dom/cjs/react-dom.production.min.js +297 -0
  877. data/node_modules/react-dom/cjs/react-dom.profiling.min.js +310 -0
  878. data/node_modules/react-dom/index.js +38 -0
  879. data/node_modules/react-dom/package.json +49 -0
  880. data/node_modules/react-dom/profiling.js +38 -0
  881. data/node_modules/react-dom/server.browser.js +7 -0
  882. data/node_modules/react-dom/server.js +3 -0
  883. data/node_modules/react-dom/server.node.js +7 -0
  884. data/node_modules/react-dom/test-utils.js +7 -0
  885. data/node_modules/react-dom/umd/react-dom-server.browser.development.js +4341 -0
  886. data/node_modules/react-dom/umd/react-dom-server.browser.production.min.js +46 -0
  887. data/node_modules/react-dom/umd/react-dom-test-utils.development.js +2136 -0
  888. data/node_modules/react-dom/umd/react-dom-test-utils.production.min.js +35 -0
  889. data/node_modules/react-dom/umd/react-dom.development.js +26292 -0
  890. data/node_modules/react-dom/umd/react-dom.production.min.js +245 -0
  891. data/node_modules/react-dom/umd/react-dom.profiling.min.js +252 -0
  892. data/node_modules/regenerator-runtime/LICENSE +21 -0
  893. data/node_modules/regenerator-runtime/README.md +31 -0
  894. data/node_modules/regenerator-runtime/package.json +19 -0
  895. data/node_modules/regenerator-runtime/path.js +11 -0
  896. data/node_modules/regenerator-runtime/runtime.js +754 -0
  897. data/node_modules/rtl-css-js/CHANGELOG.md +5 -0
  898. data/node_modules/rtl-css-js/LICENSE +20 -0
  899. data/node_modules/rtl-css-js/README.md +205 -0
  900. data/node_modules/rtl-css-js/core/package.json +6 -0
  901. data/node_modules/rtl-css-js/core.d.ts +163 -0
  902. data/node_modules/rtl-css-js/core.esm.d.ts +1 -0
  903. data/node_modules/rtl-css-js/core.esm.js +9 -0
  904. data/node_modules/rtl-css-js/dist/cjs/convert-a10c80e3.js +509 -0
  905. data/node_modules/rtl-css-js/dist/cjs/core.js +30 -0
  906. data/node_modules/rtl-css-js/dist/cjs/index.js +7 -0
  907. data/node_modules/rtl-css-js/dist/esm/convert-09159978.js +487 -0
  908. data/node_modules/rtl-css-js/dist/esm/core.js +1 -0
  909. data/node_modules/rtl-css-js/dist/esm/index.js +5 -0
  910. data/node_modules/rtl-css-js/dist/rtl-css-js.core.umd.js +519 -0
  911. data/node_modules/rtl-css-js/dist/rtl-css-js.core.umd.js.map +1 -0
  912. data/node_modules/rtl-css-js/dist/rtl-css-js.core.umd.min.js +2 -0
  913. data/node_modules/rtl-css-js/dist/rtl-css-js.core.umd.min.js.map +1 -0
  914. data/node_modules/rtl-css-js/dist/rtl-css-js.umd.js +496 -0
  915. data/node_modules/rtl-css-js/dist/rtl-css-js.umd.js.map +1 -0
  916. data/node_modules/rtl-css-js/dist/rtl-css-js.umd.min.js +2 -0
  917. data/node_modules/rtl-css-js/dist/rtl-css-js.umd.min.js.map +1 -0
  918. data/node_modules/rtl-css-js/package.json +66 -0
  919. data/node_modules/rtl-css-js/types.d.ts +8 -0
  920. data/node_modules/scheduler/LICENSE +21 -0
  921. data/node_modules/scheduler/README.md +9 -0
  922. data/node_modules/scheduler/build-info.json +8 -0
  923. data/node_modules/scheduler/cjs/scheduler-tracing.development.js +347 -0
  924. data/node_modules/scheduler/cjs/scheduler-tracing.production.min.js +9 -0
  925. data/node_modules/scheduler/cjs/scheduler-tracing.profiling.min.js +16 -0
  926. data/node_modules/scheduler/cjs/scheduler-unstable_mock.development.js +665 -0
  927. data/node_modules/scheduler/cjs/scheduler-unstable_mock.production.min.js +19 -0
  928. data/node_modules/scheduler/cjs/scheduler-unstable_post_task.development.js +206 -0
  929. data/node_modules/scheduler/cjs/scheduler-unstable_post_task.production.min.js +13 -0
  930. data/node_modules/scheduler/cjs/scheduler.development.js +646 -0
  931. data/node_modules/scheduler/cjs/scheduler.production.min.js +20 -0
  932. data/node_modules/scheduler/index.js +7 -0
  933. data/node_modules/scheduler/package.json +40 -0
  934. data/node_modules/scheduler/tracing-profiling.js +7 -0
  935. data/node_modules/scheduler/tracing.js +7 -0
  936. data/node_modules/scheduler/umd/scheduler-tracing.development.js +80 -0
  937. data/node_modules/scheduler/umd/scheduler-tracing.production.min.js +80 -0
  938. data/node_modules/scheduler/umd/scheduler-tracing.profiling.min.js +80 -0
  939. data/node_modules/scheduler/umd/scheduler-unstable_mock.development.js +664 -0
  940. data/node_modules/scheduler/umd/scheduler-unstable_mock.production.min.js +18 -0
  941. data/node_modules/scheduler/umd/scheduler.development.js +152 -0
  942. data/node_modules/scheduler/umd/scheduler.production.min.js +146 -0
  943. data/node_modules/scheduler/umd/scheduler.profiling.min.js +146 -0
  944. data/node_modules/scheduler/unstable_mock.js +7 -0
  945. data/node_modules/scheduler/unstable_post_task.js +7 -0
  946. data/node_modules/source-map/CHANGELOG.md +301 -0
  947. data/node_modules/source-map/LICENSE +28 -0
  948. data/node_modules/source-map/README.md +742 -0
  949. data/node_modules/source-map/dist/source-map.debug.js +3234 -0
  950. data/node_modules/source-map/dist/source-map.js +3233 -0
  951. data/node_modules/source-map/dist/source-map.min.js +2 -0
  952. data/node_modules/source-map/dist/source-map.min.js.map +1 -0
  953. data/node_modules/source-map/lib/array-set.js +121 -0
  954. data/node_modules/source-map/lib/base64-vlq.js +140 -0
  955. data/node_modules/source-map/lib/base64.js +67 -0
  956. data/node_modules/source-map/lib/binary-search.js +111 -0
  957. data/node_modules/source-map/lib/mapping-list.js +79 -0
  958. data/node_modules/source-map/lib/quick-sort.js +114 -0
  959. data/node_modules/source-map/lib/source-map-consumer.js +1145 -0
  960. data/node_modules/source-map/lib/source-map-generator.js +425 -0
  961. data/node_modules/source-map/lib/source-node.js +413 -0
  962. data/node_modules/source-map/lib/util.js +488 -0
  963. data/node_modules/source-map/package.json +73 -0
  964. data/node_modules/source-map/source-map.d.ts +98 -0
  965. data/node_modules/source-map/source-map.js +8 -0
  966. data/node_modules/sourcemap-codec/CHANGELOG.md +64 -0
  967. data/node_modules/sourcemap-codec/LICENSE +21 -0
  968. data/node_modules/sourcemap-codec/README.md +63 -0
  969. data/node_modules/sourcemap-codec/dist/sourcemap-codec.es.js +124 -0
  970. data/node_modules/sourcemap-codec/dist/sourcemap-codec.es.js.map +1 -0
  971. data/node_modules/sourcemap-codec/dist/sourcemap-codec.umd.js +135 -0
  972. data/node_modules/sourcemap-codec/dist/sourcemap-codec.umd.js.map +1 -0
  973. data/node_modules/sourcemap-codec/dist/types/sourcemap-codec.d.ts +5 -0
  974. data/node_modules/sourcemap-codec/package.json +53 -0
  975. data/node_modules/stack-generator/.eslintrc.yml +32 -0
  976. data/node_modules/stack-generator/CHANGELOG.md +18 -0
  977. data/node_modules/stack-generator/CONTRIBUTING.md +27 -0
  978. data/node_modules/stack-generator/LICENSE +19 -0
  979. data/node_modules/stack-generator/README.md +28 -0
  980. data/node_modules/stack-generator/bower.json +33 -0
  981. data/node_modules/stack-generator/component.json +17 -0
  982. data/node_modules/stack-generator/dist/stack-generator.js +45 -0
  983. data/node_modules/stack-generator/dist/stack-generator.min.js +2 -0
  984. data/node_modules/stack-generator/dist/stack-generator.min.js.map +1 -0
  985. data/node_modules/stack-generator/karma.conf.ci.js +108 -0
  986. data/node_modules/stack-generator/karma.conf.js +26 -0
  987. data/node_modules/stack-generator/package.json +53 -0
  988. data/node_modules/stack-generator/stack-generator.js +45 -0
  989. data/node_modules/stackframe/.eslintrc.yml +29 -0
  990. data/node_modules/stackframe/CHANGELOG.md +39 -0
  991. data/node_modules/stackframe/CONTRIBUTING.md +28 -0
  992. data/node_modules/stackframe/LICENSE +19 -0
  993. data/node_modules/stackframe/README.md +78 -0
  994. data/node_modules/stackframe/bower.json +31 -0
  995. data/node_modules/stackframe/component.json +16 -0
  996. data/node_modules/stackframe/dist/stackframe.js +143 -0
  997. data/node_modules/stackframe/dist/stackframe.min.js +2 -0
  998. data/node_modules/stackframe/dist/stackframe.min.js.map +1 -0
  999. data/node_modules/stackframe/karma.conf.ci.js +105 -0
  1000. data/node_modules/stackframe/karma.conf.js +23 -0
  1001. data/node_modules/stackframe/package.json +51 -0
  1002. data/node_modules/stackframe/stackframe-tests.ts +47 -0
  1003. data/node_modules/stackframe/stackframe.d.ts +74 -0
  1004. data/node_modules/stackframe/stackframe.js +143 -0
  1005. data/node_modules/stacktrace-gps/CHANGELOG.md +60 -0
  1006. data/node_modules/stacktrace-gps/LICENSE +19 -0
  1007. data/node_modules/stacktrace-gps/README.md +89 -0
  1008. data/node_modules/stacktrace-gps/dist/polyfills.js +5 -0
  1009. data/node_modules/stacktrace-gps/dist/stacktrace-gps-with-polyfills.min.js +2 -0
  1010. data/node_modules/stacktrace-gps/dist/stacktrace-gps-with-polyfills.min.js.map +1 -0
  1011. data/node_modules/stacktrace-gps/dist/stacktrace-gps.js +342 -0
  1012. data/node_modules/stacktrace-gps/dist/stacktrace-gps.min.js +2 -0
  1013. data/node_modules/stacktrace-gps/dist/stacktrace-gps.min.js.map +1 -0
  1014. data/node_modules/stacktrace-gps/node_modules/source-map/CHANGELOG.md +301 -0
  1015. data/node_modules/stacktrace-gps/node_modules/source-map/LICENSE +28 -0
  1016. data/node_modules/stacktrace-gps/node_modules/source-map/README.md +729 -0
  1017. data/node_modules/stacktrace-gps/node_modules/source-map/dist/source-map.debug.js +3056 -0
  1018. data/node_modules/stacktrace-gps/node_modules/source-map/dist/source-map.js +3055 -0
  1019. data/node_modules/stacktrace-gps/node_modules/source-map/dist/source-map.min.js +2 -0
  1020. data/node_modules/stacktrace-gps/node_modules/source-map/dist/source-map.min.js.map +1 -0
  1021. data/node_modules/stacktrace-gps/node_modules/source-map/lib/array-set.js +104 -0
  1022. data/node_modules/stacktrace-gps/node_modules/source-map/lib/base64-vlq.js +140 -0
  1023. data/node_modules/stacktrace-gps/node_modules/source-map/lib/base64.js +67 -0
  1024. data/node_modules/stacktrace-gps/node_modules/source-map/lib/binary-search.js +111 -0
  1025. data/node_modules/stacktrace-gps/node_modules/source-map/lib/mapping-list.js +79 -0
  1026. data/node_modules/stacktrace-gps/node_modules/source-map/lib/quick-sort.js +114 -0
  1027. data/node_modules/stacktrace-gps/node_modules/source-map/lib/source-map-consumer.js +1082 -0
  1028. data/node_modules/stacktrace-gps/node_modules/source-map/lib/source-map-generator.js +404 -0
  1029. data/node_modules/stacktrace-gps/node_modules/source-map/lib/source-node.js +407 -0
  1030. data/node_modules/stacktrace-gps/node_modules/source-map/lib/util.js +417 -0
  1031. data/node_modules/stacktrace-gps/node_modules/source-map/package.json +71 -0
  1032. data/node_modules/stacktrace-gps/node_modules/source-map/source-map.js +8 -0
  1033. data/node_modules/stacktrace-gps/package.json +66 -0
  1034. data/node_modules/stacktrace-gps/stacktrace-gps.js +342 -0
  1035. data/node_modules/stacktrace-js/CHANGELOG.md +97 -0
  1036. data/node_modules/stacktrace-js/LICENSE +19 -0
  1037. data/node_modules/stacktrace-js/README.md +186 -0
  1038. data/node_modules/stacktrace-js/dist/stacktrace-with-promises-and-json-polyfills.js +5405 -0
  1039. data/node_modules/stacktrace-js/dist/stacktrace-with-promises-and-json-polyfills.min.js +3 -0
  1040. data/node_modules/stacktrace-js/dist/stacktrace-with-promises-and-json-polyfills.min.js.map +1 -0
  1041. data/node_modules/stacktrace-js/dist/stacktrace.js +3025 -0
  1042. data/node_modules/stacktrace-js/dist/stacktrace.min.js +2 -0
  1043. data/node_modules/stacktrace-js/dist/stacktrace.min.js.map +1 -0
  1044. data/node_modules/stacktrace-js/package.json +82 -0
  1045. data/node_modules/stacktrace-js/stacktrace-js.d.ts +134 -0
  1046. data/node_modules/stacktrace-js/stacktrace.js +227 -0
  1047. data/node_modules/stylis/LICENSE +21 -0
  1048. data/node_modules/stylis/README.md +152 -0
  1049. data/node_modules/stylis/dist/stylis.mjs +2 -0
  1050. data/node_modules/stylis/dist/stylis.mjs.map +1 -0
  1051. data/node_modules/stylis/dist/umd/package.json +1 -0
  1052. data/node_modules/stylis/dist/umd/stylis.js +2 -0
  1053. data/node_modules/stylis/dist/umd/stylis.js.map +1 -0
  1054. data/node_modules/stylis/index.js +7 -0
  1055. data/node_modules/stylis/package.json +164 -0
  1056. data/node_modules/stylis/src/Enum.js +20 -0
  1057. data/node_modules/stylis/src/Middleware.js +107 -0
  1058. data/node_modules/stylis/src/Parser.js +184 -0
  1059. data/node_modules/stylis/src/Prefixer.js +119 -0
  1060. data/node_modules/stylis/src/Serializer.js +34 -0
  1061. data/node_modules/stylis/src/Tokenizer.js +244 -0
  1062. data/node_modules/stylis/src/Utility.js +109 -0
  1063. data/node_modules/wouter-preact/cjs/index.js +180 -0
  1064. data/node_modules/wouter-preact/cjs/matcher.js +72 -0
  1065. data/node_modules/wouter-preact/cjs/package.json +1 -0
  1066. data/node_modules/wouter-preact/cjs/react-deps.js +75 -0
  1067. data/node_modules/wouter-preact/cjs/static-location.js +21 -0
  1068. data/node_modules/wouter-preact/cjs/use-location.js +94 -0
  1069. data/node_modules/wouter-preact/index.d.ts +110 -0
  1070. data/node_modules/wouter-preact/index.js +178 -0
  1071. data/node_modules/wouter-preact/matcher.d.ts +30 -0
  1072. data/node_modules/wouter-preact/matcher.js +66 -0
  1073. data/node_modules/wouter-preact/package.json +33 -0
  1074. data/node_modules/wouter-preact/react-deps.js +15 -0
  1075. data/node_modules/wouter-preact/static-location.d.ts +16 -0
  1076. data/node_modules/wouter-preact/static-location.js +17 -0
  1077. data/node_modules/wouter-preact/use-location.d.ts +43 -0
  1078. data/node_modules/wouter-preact/use-location.js +86 -0
  1079. data/package.json +10 -0
  1080. metadata +1093 -20
@@ -0,0 +1,2 @@
1
+ var n=require("preact/hooks"),t=require("preact");function e(n,t){for(var e in t)n[e]=t[e];return n}function r(n,t){for(var e in n)if("__source"!==e&&!(e in t))return!0;for(var r in t)if("__source"!==r&&n[r]!==t[r])return!0;return!1}function u(n){this.props=n}function o(n,e){function u(n){var t=this.props.ref,u=t==n.ref;return!u&&t&&(t.call?t(null):t.current=null),e?!e(this.props,n)||!u:r(this.props,n)}function o(e){return this.shouldComponentUpdate=u,t.createElement(n,e)}return o.displayName="Memo("+(n.displayName||n.name)+")",o.prototype.isReactComponent=!0,o.__f=!0,o}(u.prototype=new t.Component).isPureReactComponent=!0,u.prototype.shouldComponentUpdate=function(n,t){return r(this.props,n)||r(this.state,t)};var i=t.options.__b;t.options.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),i&&i(n)};var l="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function c(n){function t(t,r){var u=e({},t);return delete u.ref,n(u,(r=t.ref||r)&&("object"!=typeof r||"current"in r)?r:null)}return t.$$typeof=l,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(n.displayName||n.name)+")",t}var f=function(n,e){return null==n?null:t.toChildArray(t.toChildArray(n).map(e))},a={map:f,forEach:f,count:function(n){return n?t.toChildArray(n).length:0},only:function(n){var e=t.toChildArray(n);if(1!==e.length)throw"Children.only";return e[0]},toArray:t.toChildArray},s=t.options.__e;t.options.__e=function(n,t,e){if(n.then)for(var r,u=t;u=u.__;)if((r=u.__c)&&r.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),r.__c(n,t);s(n,t,e)};var p=t.options.unmount;function h(){this.__u=0,this.t=null,this.__b=null}function v(n){var t=n.__.__c;return t&&t.__e&&t.__e(n)}function d(n){var e,r,u;function o(o){if(e||(e=n()).then(function(n){r=n.default||n},function(n){u=n}),u)throw u;if(!r)throw e;return t.createElement(r,o)}return o.displayName="Lazy",o.__f=!0,o}function x(){this.u=null,this.o=null}t.options.unmount=function(n){var t=n.__c;t&&t.__R&&t.__R(),t&&!0===n.__h&&(n.type=null),p&&p(n)},(h.prototype=new t.Component).__c=function(n,t){var e=t.__c,r=this;null==r.t&&(r.t=[]),r.t.push(e);var u=v(r.__v),o=!1,i=function(){o||(o=!0,e.__R=null,u?u(l):l())};e.__R=i;var l=function(){if(!--r.__u){if(r.state.__e){var n=r.state.__e;r.__v.__k[0]=function n(t,e,r){return t&&(t.__v=null,t.__k=t.__k&&t.__k.map(function(t){return n(t,e,r)}),t.__c&&t.__c.__P===e&&(t.__e&&r.insertBefore(t.__e,t.__d),t.__c.__e=!0,t.__c.__P=r)),t}(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__e:r.__b=null});t=r.t.pop();)t.forceUpdate()}},c=!0===t.__h;r.__u++||c||r.setState({__e:r.__b=r.__v.__k[0]}),n.then(i,i)},h.prototype.componentWillUnmount=function(){this.t=[]},h.prototype.render=function(n,r){if(this.__b){if(this.__v.__k){var u=document.createElement("div"),o=this.__v.__k[0].__c;this.__v.__k[0]=function n(t,r,u){return t&&(t.__c&&t.__c.__H&&(t.__c.__H.__.forEach(function(n){"function"==typeof n.__c&&n.__c()}),t.__c.__H=null),null!=(t=e({},t)).__c&&(t.__c.__P===u&&(t.__c.__P=r),t.__c=null),t.__k=t.__k&&t.__k.map(function(t){return n(t,r,u)})),t}(this.__b,u,o.__O=o.__P)}this.__b=null}var i=r.__e&&t.createElement(t.Fragment,null,n.fallback);return i&&(i.__h=null),[t.createElement(t.Fragment,null,r.__e?null:n.children),i]};var m=function(n,t,e){if(++e[1]===e[0]&&n.o.delete(t),n.props.revealOrder&&("t"!==n.props.revealOrder[0]||!n.o.size))for(e=n.u;e;){for(;e.length>3;)e.pop()();if(e[1]<e[0])break;n.u=e=e[2]}};function y(n){return this.getChildContext=function(){return n.context},n.children}function b(n){var e=this,r=n.i;e.componentWillUnmount=function(){t.render(null,e.l),e.l=null,e.i=null},e.i&&e.i!==r&&e.componentWillUnmount(),n.__v?(e.l||(e.i=r,e.l={nodeType:1,parentNode:r,childNodes:[],appendChild:function(n){this.childNodes.push(n),e.i.appendChild(n)},insertBefore:function(n,t){this.childNodes.push(n),e.i.appendChild(n)},removeChild:function(n){this.childNodes.splice(this.childNodes.indexOf(n)>>>1,1),e.i.removeChild(n)}}),t.render(t.createElement(y,{context:e.context},n.__v),e.l)):e.l&&e.componentWillUnmount()}function _(n,e){return t.createElement(b,{__v:n,i:e})}(x.prototype=new t.Component).__e=function(n){var t=this,e=v(t.__v),r=t.o.get(n);return r[0]++,function(u){var o=function(){t.props.revealOrder?(r.push(u),m(t,n,r)):u()};e?e(o):o()}},x.prototype.render=function(n){this.u=null,this.o=new Map;var e=t.toChildArray(n.children);n.revealOrder&&"b"===n.revealOrder[0]&&e.reverse();for(var r=e.length;r--;)this.o.set(e[r],this.u=[1,0,this.u]);return n.children},x.prototype.componentDidUpdate=x.prototype.componentDidMount=function(){var n=this;this.o.forEach(function(t,e){m(n,e,t)})};var S="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,w=/^(?: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]/,C=function(n){return("undefined"!=typeof Symbol&&"symbol"==typeof Symbol()?/fil|che|rad/i:/fil|che|ra/i).test(n)};function g(n,e,r){return null==e.__k&&(e.textContent=""),t.render(n,e),"function"==typeof r&&r(),n?n.__c:null}function E(n,e,r){return t.hydrate(n,e),"function"==typeof r&&r(),n?n.__c:null}t.Component.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(n){Object.defineProperty(t.Component.prototype,n,{configurable:!0,get:function(){return this["UNSAFE_"+n]},set:function(t){Object.defineProperty(this,n,{configurable:!0,writable:!0,value:t})}})});var R=t.options.event;function N(){}function O(){return this.cancelBubble}function k(){return this.defaultPrevented}t.options.event=function(n){return R&&(n=R(n)),n.persist=N,n.isPropagationStopped=O,n.isDefaultPrevented=k,n.nativeEvent=n};var A,L={configurable:!0,get:function(){return this.class}},U=t.options.vnode;t.options.vnode=function(n){var e=n.type,r=n.props,u=r;if("string"==typeof e){for(var o in u={},r){var i=r[o];"value"===o&&"defaultValue"in r&&null==i||("defaultValue"===o&&"value"in r&&null==r.value?o="value":"download"===o&&!0===i?i="":/ondoubleclick/i.test(o)?o="ondblclick":/^onchange(textarea|input)/i.test(o+e)&&!C(r.type)?o="oninput":/^on(Ani|Tra|Tou|BeforeInp)/.test(o)?o=o.toLowerCase():w.test(o)?o=o.replace(/[A-Z0-9]/,"-$&").toLowerCase():null===i&&(i=void 0),u[o]=i)}"select"==e&&u.multiple&&Array.isArray(u.value)&&(u.value=t.toChildArray(r.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),"select"==e&&null!=u.defaultValue&&(u.value=t.toChildArray(r.children).forEach(function(n){n.props.selected=u.multiple?-1!=u.defaultValue.indexOf(n.props.value):u.defaultValue==n.props.value})),n.props=u}e&&r.class!=r.className&&(L.enumerable="className"in r,null!=r.className&&(u.class=r.className),Object.defineProperty(u,"className",L)),n.$$typeof=S,U&&U(n)};var M=t.options.__r;t.options.__r=function(n){M&&M(n),A=n.__c};var T={ReactCurrentDispatcher:{current:{readContext:function(n){return A.__n[n.__c].props.value}}}};function j(n){return t.createElement.bind(null,n)}function D(n){return!!n&&n.$$typeof===S}function F(n){return D(n)?t.cloneElement.apply(null,arguments):n}function I(n){return!!n.__k&&(t.render(null,n),!0)}function W(n){return n&&(n.base||1===n.nodeType&&n)||null}var P=function(n,t){return n(t)},V=function(n,t){return n(t)},z=t.Fragment,B={useState:n.useState,useReducer:n.useReducer,useEffect:n.useEffect,useLayoutEffect:n.useLayoutEffect,useRef:n.useRef,useImperativeHandle:n.useImperativeHandle,useMemo:n.useMemo,useCallback:n.useCallback,useContext:n.useContext,useDebugValue:n.useDebugValue,version:"17.0.2",Children:a,render:g,hydrate:E,unmountComponentAtNode:I,createPortal:_,createElement:t.createElement,createContext:t.createContext,createFactory:j,cloneElement:F,createRef:t.createRef,Fragment:t.Fragment,isValidElement:D,findDOMNode:W,Component:t.Component,PureComponent:u,memo:o,forwardRef:c,flushSync:V,unstable_batchedUpdates:P,StrictMode:z,Suspense:h,SuspenseList:x,lazy:d,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:T};Object.keys(n).forEach(function(t){exports[t]=n[t]}),exports.createElement=t.createElement,exports.createContext=t.createContext,exports.createRef=t.createRef,exports.Fragment=t.Fragment,exports.Component=t.Component,exports.version="17.0.2",exports.Children=a,exports.render=g,exports.hydrate=E,exports.unmountComponentAtNode=I,exports.createPortal=_,exports.createFactory=j,exports.cloneElement=F,exports.isValidElement=D,exports.findDOMNode=W,exports.PureComponent=u,exports.memo=o,exports.forwardRef=c,exports.flushSync=V,exports.unstable_batchedUpdates=P,exports.StrictMode=z,exports.Suspense=h,exports.SuspenseList=x,exports.lazy=d,exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=T,exports.default=B;
2
+ //# sourceMappingURL=compat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compat.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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"}
@@ -0,0 +1,2 @@
1
+ import{useState as n,useReducer as t,useEffect as e,useLayoutEffect as r,useRef as u,useImperativeHandle as o,useMemo as i,useCallback as l,useContext as f,useDebugValue as c}from"preact/hooks";export*from"preact/hooks";import{Component as a,createElement as s,options as h,toChildArray as v,Fragment as d,render as p,hydrate as m,cloneElement as y,createRef as b,createContext as _}from"preact";export{createElement,createContext,createRef,Fragment,Component}from"preact";function S(n,t){for(var e in t)n[e]=t[e];return n}function C(n,t){for(var e in n)if("__source"!==e&&!(e in t))return!0;for(var r in t)if("__source"!==r&&n[r]!==t[r])return!0;return!1}function E(n){this.props=n}function g(n,t){function e(n){var e=this.props.ref,r=e==n.ref;return!r&&e&&(e.call?e(null):e.current=null),t?!t(this.props,n)||!r:C(this.props,n)}function r(t){return this.shouldComponentUpdate=e,s(n,t)}return r.displayName="Memo("+(n.displayName||n.name)+")",r.prototype.isReactComponent=!0,r.__f=!0,r}(E.prototype=new a).isPureReactComponent=!0,E.prototype.shouldComponentUpdate=function(n,t){return C(this.props,n)||C(this.state,t)};var w=h.__b;h.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),w&&w(n)};var R="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function x(n){function t(t,e){var r=S({},t);return delete r.ref,n(r,(e=t.ref||e)&&("object"!=typeof e||"current"in e)?e:null)}return t.$$typeof=R,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(n.displayName||n.name)+")",t}var N=function(n,t){return null==n?null:v(v(n).map(t))},k={map:N,forEach:N,count:function(n){return n?v(n).length:0},only:function(n){var t=v(n);if(1!==t.length)throw"Children.only";return t[0]},toArray:v},A=h.__e;h.__e=function(n,t,e){if(n.then)for(var r,u=t;u=u.__;)if((r=u.__c)&&r.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),r.__c(n,t);A(n,t,e)};var O=h.unmount;function L(){this.__u=0,this.t=null,this.__b=null}function U(n){var t=n.__.__c;return t&&t.__e&&t.__e(n)}function F(n){var t,e,r;function u(u){if(t||(t=n()).then(function(n){e=n.default||n},function(n){r=n}),r)throw r;if(!e)throw t;return s(e,u)}return u.displayName="Lazy",u.__f=!0,u}function M(){this.u=null,this.o=null}h.unmount=function(n){var t=n.__c;t&&t.__R&&t.__R(),t&&!0===n.__h&&(n.type=null),O&&O(n)},(L.prototype=new a).__c=function(n,t){var e=t.__c,r=this;null==r.t&&(r.t=[]),r.t.push(e);var u=U(r.__v),o=!1,i=function(){o||(o=!0,e.__R=null,u?u(l):l())};e.__R=i;var l=function(){if(!--r.__u){if(r.state.__e){var n=r.state.__e;r.__v.__k[0]=function n(t,e,r){return t&&(t.__v=null,t.__k=t.__k&&t.__k.map(function(t){return n(t,e,r)}),t.__c&&t.__c.__P===e&&(t.__e&&r.insertBefore(t.__e,t.__d),t.__c.__e=!0,t.__c.__P=r)),t}(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__e:r.__b=null});t=r.t.pop();)t.forceUpdate()}},f=!0===t.__h;r.__u++||f||r.setState({__e:r.__b=r.__v.__k[0]}),n.then(i,i)},L.prototype.componentWillUnmount=function(){this.t=[]},L.prototype.render=function(n,t){if(this.__b){if(this.__v.__k){var e=document.createElement("div"),r=this.__v.__k[0].__c;this.__v.__k[0]=function n(t,e,r){return t&&(t.__c&&t.__c.__H&&(t.__c.__H.__.forEach(function(n){"function"==typeof n.__c&&n.__c()}),t.__c.__H=null),null!=(t=S({},t)).__c&&(t.__c.__P===r&&(t.__c.__P=e),t.__c=null),t.__k=t.__k&&t.__k.map(function(t){return n(t,e,r)})),t}(this.__b,e,r.__O=r.__P)}this.__b=null}var u=t.__e&&s(d,null,n.fallback);return u&&(u.__h=null),[s(d,null,t.__e?null:n.children),u]};var T=function(n,t,e){if(++e[1]===e[0]&&n.o.delete(t),n.props.revealOrder&&("t"!==n.props.revealOrder[0]||!n.o.size))for(e=n.u;e;){for(;e.length>3;)e.pop()();if(e[1]<e[0])break;n.u=e=e[2]}};function D(n){return this.getChildContext=function(){return n.context},n.children}function I(n){var t=this,e=n.i;t.componentWillUnmount=function(){p(null,t.l),t.l=null,t.i=null},t.i&&t.i!==e&&t.componentWillUnmount(),n.__v?(t.l||(t.i=e,t.l={nodeType:1,parentNode:e,childNodes:[],appendChild:function(n){this.childNodes.push(n),t.i.appendChild(n)},insertBefore:function(n,e){this.childNodes.push(n),t.i.appendChild(n)},removeChild:function(n){this.childNodes.splice(this.childNodes.indexOf(n)>>>1,1),t.i.removeChild(n)}}),p(s(D,{context:t.context},n.__v),t.l)):t.l&&t.componentWillUnmount()}function W(n,t){return s(I,{__v:n,i:t})}(M.prototype=new a).__e=function(n){var t=this,e=U(t.__v),r=t.o.get(n);return r[0]++,function(u){var o=function(){t.props.revealOrder?(r.push(u),T(t,n,r)):u()};e?e(o):o()}},M.prototype.render=function(n){this.u=null,this.o=new Map;var t=v(n.children);n.revealOrder&&"b"===n.revealOrder[0]&&t.reverse();for(var e=t.length;e--;)this.o.set(t[e],this.u=[1,0,this.u]);return n.children},M.prototype.componentDidUpdate=M.prototype.componentDidMount=function(){var n=this;this.o.forEach(function(t,e){T(n,e,t)})};var j="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,P=/^(?: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]/,V=function(n){return("undefined"!=typeof Symbol&&"symbol"==typeof Symbol()?/fil|che|rad/i:/fil|che|ra/i).test(n)};function z(n,t,e){return null==t.__k&&(t.textContent=""),p(n,t),"function"==typeof e&&e(),n?n.__c:null}function B(n,t,e){return m(n,t),"function"==typeof e&&e(),n?n.__c:null}a.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(n){Object.defineProperty(a.prototype,n,{configurable:!0,get:function(){return this["UNSAFE_"+n]},set:function(t){Object.defineProperty(this,n,{configurable:!0,writable:!0,value:t})}})});var H=h.event;function Z(){}function Y(){return this.cancelBubble}function $(){return this.defaultPrevented}h.event=function(n){return H&&(n=H(n)),n.persist=Z,n.isPropagationStopped=Y,n.isDefaultPrevented=$,n.nativeEvent=n};var q,G={configurable:!0,get:function(){return this.class}},J=h.vnode;h.vnode=function(n){var t=n.type,e=n.props,r=e;if("string"==typeof t){for(var u in r={},e){var o=e[u];"value"===u&&"defaultValue"in e&&null==o||("defaultValue"===u&&"value"in e&&null==e.value?u="value":"download"===u&&!0===o?o="":/ondoubleclick/i.test(u)?u="ondblclick":/^onchange(textarea|input)/i.test(u+t)&&!V(e.type)?u="oninput":/^on(Ani|Tra|Tou|BeforeInp)/.test(u)?u=u.toLowerCase():P.test(u)?u=u.replace(/[A-Z0-9]/,"-$&").toLowerCase():null===o&&(o=void 0),r[u]=o)}"select"==t&&r.multiple&&Array.isArray(r.value)&&(r.value=v(e.children).forEach(function(n){n.props.selected=-1!=r.value.indexOf(n.props.value)})),"select"==t&&null!=r.defaultValue&&(r.value=v(e.children).forEach(function(n){n.props.selected=r.multiple?-1!=r.defaultValue.indexOf(n.props.value):r.defaultValue==n.props.value})),n.props=r}t&&e.class!=e.className&&(G.enumerable="className"in e,null!=e.className&&(r.class=e.className),Object.defineProperty(r,"className",G)),n.$$typeof=j,J&&J(n)};var K=h.__r;h.__r=function(n){K&&K(n),q=n.__c};var Q={ReactCurrentDispatcher:{current:{readContext:function(n){return q.__n[n.__c].props.value}}}},X="17.0.2";function nn(n){return s.bind(null,n)}function tn(n){return!!n&&n.$$typeof===j}function en(n){return tn(n)?y.apply(null,arguments):n}function rn(n){return!!n.__k&&(p(null,n),!0)}function un(n){return n&&(n.base||1===n.nodeType&&n)||null}var on=function(n,t){return n(t)},ln=function(n,t){return n(t)},fn=d;export default{useState:n,useReducer:t,useEffect:e,useLayoutEffect:r,useRef:u,useImperativeHandle:o,useMemo:i,useCallback:l,useContext:f,useDebugValue:c,version:"17.0.2",Children:k,render:z,hydrate:B,unmountComponentAtNode:rn,createPortal:W,createElement:s,createContext:_,createFactory:nn,cloneElement:en,createRef:b,Fragment:d,isValidElement:tn,findDOMNode:un,Component:a,PureComponent:E,memo:g,forwardRef:x,flushSync:ln,unstable_batchedUpdates:on,StrictMode:d,Suspense:L,SuspenseList:M,lazy:F,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:Q};export{X as version,k as Children,z as render,B as hydrate,rn as unmountComponentAtNode,W as createPortal,nn as createFactory,en as cloneElement,tn as isValidElement,un as findDOMNode,E as PureComponent,g as memo,x as forwardRef,ln as flushSync,on as unstable_batchedUpdates,fn as StrictMode,L as Suspense,M as SuspenseList,F as lazy,Q as __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED};
2
+ //# sourceMappingURL=compat.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compat.module.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/events.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","import { Component } from 'preact';\nimport { shallowDiffers } from './util';\n\n/**\n * Component class with a predefined `shouldComponentUpdate` implementation\n */\nexport class PureComponent extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\t// Some third-party libraries check if this property is present\n\t\tthis.isPureReactComponent = true;\n\t}\n\n\tshouldComponentUpdate(props, state) {\n\t\treturn (\n\t\t\tshallowDiffers(this.props, props) || shallowDiffers(this.state, state)\n\t\t);\n\t}\n}\n","import { createElement } from 'preact';\nimport { shallowDiffers, assign } 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').FunctionalComponent} c functional component\n * @param {(prev: object, next: object) => boolean} [comparer] Custom equality function\n * @returns {import('./internal').FunctionalComponent}\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, assign({}, props));\n\t}\n\tMemoed.prototype.isReactComponent = true;\n\tMemoed.displayName = 'Memo(' + (c.displayName || c.name) + ')';\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\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').FunctionalComponent}\n */\nexport function forwardRef(fn) {\n\tfunction Forwarded(props) {\n\t\tlet clone = assign({}, props);\n\t\tdelete clone.ref;\n\t\treturn fn(clone, props.ref);\n\t}\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) return null;\n\treturn toChildArray(children).reduce(\n\t\t(acc, value, index) => acc.concat(fn(value, index)),\n\t\t[]\n\t);\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\tchildren = toChildArray(children);\n\t\tif (children.length !== 1) {\n\t\t\tthrow new Error('Children.only() expects only one child.');\n\t\t}\n\t\treturn children[0];\n\t},\n\ttoArray: toChildArray\n};\n","import { Component, createElement, options } 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\t// Don't call oldCatchError if we found a Suspense\n\t\t\t\treturn component._childDidSuspend(error, newVNode._component);\n\t\t\t}\n\t\t}\n\t}\n\toldCatchError(error, newVNode, oldVNode);\n};\n\nfunction detachedClone(vnode) {\n\tif (vnode) {\n\t\tvnode = assign({}, vnode);\n\t\tvnode._component = null;\n\t\tvnode._children = vnode._children && vnode._children.map(detachedClone);\n\t}\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 * @param {Promise} promise The thrown promise\n * @param {Component<any, any>} suspendingComponent The suspending component\n */\nSuspense.prototype._childDidSuspend = function(promise, suspendingComponent) {\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\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._suspendedComponentWillUnmount =\n\t\tsuspendingComponent.componentWillUnmount;\n\tsuspendingComponent.componentWillUnmount = () => {\n\t\tonResolved();\n\n\t\tif (suspendingComponent._suspendedComponentWillUnmount) {\n\t\t\tsuspendingComponent._suspendedComponentWillUnmount();\n\t\t}\n\t};\n\n\tconst onSuspensionComplete = () => {\n\t\tif (!--c._pendingSuspensionCount) {\n\t\t\tc._vnode._children[0] = c.state._suspended;\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\tif (!c._pendingSuspensionCount++) {\n\t\tc.setState({ _suspended: (c._detachOnNextRender = c._vnode._children[0]) });\n\t}\n\tpromise.then(onResolved, onResolved);\n};\n\nSuspense.prototype.render = function(props, state) {\n\tif (this._detachOnNextRender) {\n\t\tthis._vnode._children[0] = detachedClone(this._detachOnNextRender);\n\t\tthis._detachOnNextRender = null;\n\t}\n\n\treturn [\n\t\tcreateElement(Component, null, state._suspended ? null : props.children),\n\t\tstate._suspended && props.fallback\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('../src/internal').VNode} vnode\n * @returns {((unsuspend: () => void) => void)?}\n */\nexport function suspended(vnode) {\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\tconst list = this;\n\tlist._map.forEach((node, child) => {\n\t\tresolve(list, child, node);\n\t});\n};\n","import { createElement, hydrate, render, _unmount } from 'preact';\n\nclass ContextProvider {\n\tgetChildContext() {\n\t\treturn this.props.context;\n\t}\n\trender(props) {\n\t\treturn props.children;\n\t}\n}\n\n/**\n * Portal component\n * @param {object | null | undefined} props\n */\nfunction Portal(props) {\n\tlet _this = this;\n\tlet container = props.container;\n\tlet wrap = createElement(\n\t\tContextProvider,\n\t\t{ context: _this.context },\n\t\tprops.vnode\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\tif (_this._temp.parentNode) _this._container.removeChild(_this._temp);\n\t\t_unmount(_this._wrap);\n\t\t_this._hasMounted = false;\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._hasMounted) {\n\t\t\t// Create a placeholder that we can use to insert into.\n\t\t\t_this._temp = document.createTextNode('');\n\t\t\t// Hydrate existing nodes to keep the dom intact, when rendering\n\t\t\t// wrap into the container.\n\t\t\thydrate('', container);\n\t\t\t// Append to the container (this matches React's behavior)\n\t\t\tcontainer.appendChild(_this._temp);\n\t\t\t// At this point we have mounted and should set our container.\n\t\t\t_this._hasMounted = true;\n\t\t\t_this._container = container;\n\t\t\t// Render our wrapping element into temp.\n\t\t\trender(wrap, container, _this._temp);\n\t\t\t_this._children = _this._temp._children;\n\t\t} else {\n\t\t\t// When we have mounted and the vnode is present it means the\n\t\t\t// props have changed or a parent is triggering a rerender.\n\t\t\t// This implies we only need to call render. But we need to keep\n\t\t\t// the old tree around, otherwise will treat the vnodes as new and\n\t\t\t// will wrongly call `componentDidMount` on them\n\t\t\tcontainer._children = _this._children;\n\t\t\trender(wrap, container);\n\t\t\t_this._children = container._children;\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._hasMounted) {\n\t\tif (_this._temp.parentNode) _this._container.removeChild(_this._temp);\n\t\t_unmount(_this._wrap);\n\t}\n\t// Set the wrapping element for future unmounting.\n\t_this._wrap = wrap;\n\n\t_this.componentWillUnmount = () => {\n\t\tif (_this._temp.parentNode) _this._container.removeChild(_this._temp);\n\t\t_unmount(_this._wrap);\n\t};\n\n\treturn null;\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, container });\n}\n","import {\n\trender as preactRender,\n\thydrate as preactHydrate,\n\toptions,\n\ttoChildArray,\n\tComponent\n} from 'preact';\nimport { applyEventNormalization } from './events';\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// Some libraries like `react-virtualized` explicitly check for this.\nComponent.prototype.isReactComponent = {};\n\nexport const REACT_ELEMENT_TYPE =\n\t(typeof Symbol != 'undefined' && Symbol.for && Symbol.for('react.element')) ||\n\t0xeac7;\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\twhile (parent.firstChild) {\n\t\t\tparent.removeChild(parent.firstChild);\n\t\t}\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 = () => {};\n\tlet stoppedPropagating = false,\n\t\tdefaultPrevented = false;\n\n\tconst origStopPropagation = e.stopPropagation;\n\te.stopPropagation = () => {\n\t\torigStopPropagation.call(e);\n\t\tstoppedPropagating = true;\n\t};\n\n\tconst origPreventDefault = e.preventDefault;\n\te.preventDefault = () => {\n\t\torigPreventDefault.call(e);\n\t\tdefaultPrevented = true;\n\t};\n\n\te.isPropagationStopped = () => stoppedPropagating;\n\te.isDefaultPrevented = () => defaultPrevented;\n\treturn (e.nativeEvent = e);\n};\n\n// Patch in `UNSAFE_*` lifecycle hooks\nfunction setSafeDescriptor(proto, key) {\n\tif (proto['UNSAFE_' + key] && !proto[key]) {\n\t\tObject.defineProperty(proto, key, {\n\t\t\tconfigurable: false,\n\t\t\tget() {\n\t\t\t\treturn this['UNSAFE_' + key];\n\t\t\t},\n\t\t\t// This `set` is only used if a user sets a lifecycle like cWU\n\t\t\t// after setting a lifecycle like UNSAFE_cWU. I doubt anyone\n\t\t\t// actually does this in practice so not testing it\n\t\t\t/* istanbul ignore next */\n\t\t\tset(v) {\n\t\t\t\tthis['UNSAFE_' + key] = v;\n\t\t\t}\n\t\t});\n\t}\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\tvnode.$$typeof = REACT_ELEMENT_TYPE;\n\n\tlet type = vnode.type;\n\tlet props = vnode.props;\n\n\tif (type) {\n\t\t// Alias `class` prop to `className` if available\n\t\tif (props.class != props.className) {\n\t\t\tclassNameDescriptor.enumerable = 'className' in props;\n\t\t\tif (props.className != null) props.class = props.className;\n\t\t\tObject.defineProperty(props, 'className', classNameDescriptor);\n\t\t}\n\n\t\t// Apply DOM VNode compat\n\t\tif (typeof type != 'function') {\n\t\t\t// Apply defaultValue to value\n\t\t\tif (props.defaultValue && props.value !== undefined) {\n\t\t\t\tif (!props.value && props.value !== 0) {\n\t\t\t\t\tprops.value = props.defaultValue;\n\t\t\t\t}\n\t\t\t\tdelete props.defaultValue;\n\t\t\t}\n\n\t\t\t// Add support for array select values: <select value={[]} />\n\t\t\tif (Array.isArray(props.value) && props.multiple && type === 'select') {\n\t\t\t\ttoChildArray(props.children).forEach(child => {\n\t\t\t\t\tif (props.value.indexOf(child.props.value) != -1) {\n\t\t\t\t\t\tchild.props.selected = true;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tdelete props.value;\n\t\t\t}\n\n\t\t\t// Normalize DOM vnode properties.\n\t\t\tlet shouldSanitize, attrs, i;\n\t\t\tfor (i in props) if ((shouldSanitize = CAMEL_PROPS.test(i))) break;\n\t\t\tif (shouldSanitize) {\n\t\t\t\tattrs = vnode.props = {};\n\t\t\t\tfor (i in props) {\n\t\t\t\t\tattrs[\n\t\t\t\t\t\tCAMEL_PROPS.test(i) ? i.replace(/[A-Z0-9]/, '-$&').toLowerCase() : i\n\t\t\t\t\t] = props[i];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Events\n\t\tapplyEventNormalization(vnode);\n\n\t\t// Component base class compat\n\t\t// We can't just patch the base component class, because components that use\n\t\t// inheritance and are transpiled down to ES5 will overwrite our patched\n\t\t// getters and setters. See #1941\n\t\tif (\n\t\t\ttypeof type == 'function' &&\n\t\t\t!type._patchedLifecycles &&\n\t\t\ttype.prototype\n\t\t) {\n\t\t\tsetSafeDescriptor(type.prototype, 'componentWillMount');\n\t\t\tsetSafeDescriptor(type.prototype, 'componentWillReceiveProps');\n\t\t\tsetSafeDescriptor(type.prototype, 'componentWillUpdate');\n\t\t\ttype._patchedLifecycles = true;\n\t\t}\n\t}\n\n\tif (oldVNodeHook) oldVNodeHook(vnode);\n};\n","/**\n * Normalize event handlers like react does. Most famously it uses `onChange` for any input element.\n * @param {import('./internal').VNode} vnode The vnode to normalize events on\n */\nexport function applyEventNormalization({ type, props }) {\n\tif (!props || typeof type != 'string') return;\n\tlet newProps = {};\n\n\tfor (let i in props) {\n\t\tif (/^on(Ani|Tra|Tou)/.test(i)) {\n\t\t\tprops[i.toLowerCase()] = props[i];\n\t\t\tdelete props[i];\n\t\t}\n\t\tnewProps[i.toLowerCase()] = i;\n\t}\n\tif (newProps.ondoubleclick) {\n\t\tprops.ondblclick = props[newProps.ondoubleclick];\n\t\tdelete props[newProps.ondoubleclick];\n\t}\n\tif (newProps.onbeforeinput) {\n\t\tprops.onbeforeinput = props[newProps.onbeforeinput];\n\t\tdelete props[newProps.onbeforeinput];\n\t}\n\t// for *textual inputs* (incl textarea), normalize `onChange` -> `onInput`:\n\tif (\n\t\tnewProps.onchange &&\n\t\t(type === 'textarea' ||\n\t\t\t(type.toLowerCase() === 'input' && !/^fil|che|ra/i.test(props.type)))\n\t) {\n\t\tlet normalized = newProps.oninput || 'oninput';\n\t\tif (!props[normalized]) {\n\t\t\tprops[normalized] = props[newProps.onchange];\n\t\t\tdelete props[newProps.onchange];\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 { hydrate, render, REACT_ELEMENT_TYPE } from './render';\n\nconst version = '16.8.0'; // 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\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\t// eslint-disable-next-line camelcase\n\tunstable_batchedUpdates,\n\tSuspense,\n\tSuspenseList,\n\tlazy\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: render,\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\tunstable_batchedUpdates,\n\tSuspense,\n\tSuspenseList,\n\tlazy\n};\n"],"names":["assign","obj","props","i","shallowDiffers","a","b","PureComponent","isPureReactComponent","shouldComponentUpdate","state","this","Component","memo","c","comparer","shouldUpdate","nextProps","ref","updateRef","call","current","Memoed","createElement","prototype","isReactComponent","displayName","name","_forwarded","oldDiffHook","options","_diff","forwardRef","fn","Forwarded","clone","vnode","type","mapFn","children","toChildArray","reduce","acc","value","index","concat","Children","map","forEach","count","length","only","Error","toArray","oldCatchError","_catchError","detachedClone","_component","_children","Suspense","_pendingSuspensionCount","_suspenders","_detachOnNextRender","suspended","component","_parent","_suspended","lazy","loader","prom","error","Lazy","then","exports","default","e","SuspenseList","_next","_map","newVNode","oldVNode","_childDidSuspend","promise","suspendingComponent","push","resolve","_vnode","resolved","onResolved","onSuspensionComplete","_suspendedComponentWillUnmount","componentWillUnmount","setState","pop","forceUpdate","render","fallback","list","child","node","delete","revealOrder","size","delegated","get","unsuspend","wrappedUnsuspend","Map","reverse","set","componentDidUpdate","componentDidMount","ContextProvider","getChildContext","context","Portal","_this","container","wrap","_container","_temp","parentNode","removeChild","_unmount","_wrap","_hasMounted","document","createTextNode","hydrate","appendChild","createPortal","CAMEL_PROPS","REACT_ELEMENT_TYPE","Symbol","for","parent","callback","firstChild","preactRender","preactHydrate","oldEventHook","event","setSafeDescriptor","proto","key","Object","defineProperty","configurable","v","persist","stoppedPropagating","defaultPrevented","origStopPropagation","stopPropagation","origPreventDefault","preventDefault","isPropagationStopped","isDefaultPrevented","nativeEvent","classNameDescriptor","class","oldVNodeHook","$$typeof","className","enumerable","shouldSanitize","attrs","defaultValue","undefined","Array","isArray","multiple","indexOf","selected","test","replace","toLowerCase","newProps","ondoubleclick","ondblclick","onbeforeinput","onchange","normalized","oninput","applyEventNormalization","_patchedLifecycles","version","createFactory","bind","isValidElement","element","cloneElement","preactCloneElement","apply","arguments","unmountComponentAtNode","findDOMNode","base","nodeType","unstable_batchedUpdates","arg","useState","useReducer","useEffect","useLayoutEffect","useRef","useImperativeHandle","useMemo","useCallback","useContext","useDebugValue","createContext","createRef","Fragment"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{Component as t,createElement as n,options as e,toChildArray as o,Fragment as r,render as l,hydrate as u,createContext as i,createRef as c,cloneElement as f}from"preact";export{Component,Fragment,createContext,createElement,createRef}from"preact";import{useState as s,useReducer as a,useEffect as h,useLayoutEffect as p,useRef as m,useImperativeHandle as d,useMemo as y,useCallback as b,useContext as _,useDebugValue as S}from"preact/hooks";export*from"preact/hooks";function E(t,n){for(let e in t)if("__source"!==e&&!(e in n))return!0;for(let e in n)if("__source"!==e&&t[e]!==n[e])return!0;return!1}function g(t){this.props=t}function v(t,e){function o(t){let n=this.props.ref,o=n==t.ref;return!o&&n&&(n.call?n(null):n.current=null),e?!e(this.props,t)||!o:E(this.props,t)}function r(e){return this.shouldComponentUpdate=o,n(t,e)}return r.displayName="Memo("+(t.displayName||t.name)+")",r.prototype.isReactComponent=!0,r.__f=!0,r}(g.prototype=new t).isPureReactComponent=!0,g.prototype.shouldComponentUpdate=function(t,n){return E(this.props,t)||E(this.state,n)};let w=e.__b;e.__b=(t,n)=>{t.type&&t.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null,t.ref=null),w&&w(t,n)};const C="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function R(t){function n(n,e){let o=Object.assign({},n);return delete o.ref,t(o,!(e=n.ref||e)||"object"==typeof e&&!("current"in e)?null:e)}return n.$$typeof=C,n.render=n,n.prototype.isReactComponent=n.__f=!0,n.displayName="ForwardRef("+(t.displayName||t.name)+")",n}const x=(t,n)=>null==t?null:o(o(t).map(n)),k={map:x,forEach:x,count:t=>t?o(t).length:0,only(t){const n=o(t);if(1!==n.length)throw"Children.only";return n[0]},toArray:o},O=t=>28&t.__f&&(!(16&t.__f)||t.props.__P==N(t.__));function A(t,n){if(null==t.__k)return null;for(n=n||0;n<t.__k.length;n++){let e=t.__k[n];if(null!=e){if(3&e.__f)return e.__e;if(O(e)){let t=A(e);if(t)return t}}}return null}function N(t){let n=16&t.__f?t.props.__P:null,e=t.__;for(;null==n&&e;)16&e.__f?n=e.props.__P:2&e.__f&&(n=e.__e),e=e.__;return n}function L(t){return t.children}function U(t,e){return n(L,{__P:e},t)}const j=e.__e;e.__e=function(t,n){if(t.then){let e,o=n;for(;o=o.__;)if((e=o.__c)&&e.__c)return e.__c(t,n)}j(t,n)};const D=e.unmount;function F(){this.__u=0,this.t=null,this.__P=null,this.o=0}function M(t){let n=t.__.__c;return n&&n.__e&&n.__e(t)}function I(t){let e,o,r;function l(l){if(e||(e=t(),e.then(t=>{o=t.default||t},t=>{r=t})),r)throw r;if(!o)throw e;return n(o,l)}return l.displayName="Lazy",l.__f=!0,l}function P(){this.l=null,this.u=null}e.unmount=function(t){const n=t.__c;n&&n.__R&&n.__R(),n&&32==(32&t.__f)&&(t.__f|=2),D&&D(t)},(F.prototype=new t).__c=function(t,n){const e=n.__c;if(null!=e.__R)return;const o=this;null==o.t&&(o.t=[]),o.t.push(e);const r=M(o.__i);let l=!1;const u=()=>{l||(l=!0,e.__R=null,r?r(i):i())};e.__R=u;const i=()=>{if(!--o.__u){let t;for(this.__P=null,o.setState({__e:!1});t=o.t.pop();)t.forceUpdate()}},c=32==(32&n.__f);o.__u++||c||(this.__P=document.createElement("div"),o.setState({__e:!0})),t.then(u,u)},F.prototype.componentWillUnmount=function(){this.t=[],this.__P=null},F.prototype.render=function(t,e){null==this.__P&&(this.__P=N(this.__i));const o=e.__e&&n(r,null,t.fallback),l=U(t.children,this.__P);return e.__e?l.__v=this.o:this.o=l.__v,[l,o]};const T=(t,n,e)=>{if(++e[1]===e[0]&&t.u.delete(n),t.props.revealOrder&&("t"!==t.props.revealOrder[0]||!t.u.size))for(e=t.l;e;){for(;e.length>3;)e.pop()();if(e[1]<e[0])break;t.l=e=e[2]}};(P.prototype=new t).__e=function(t){const n=this,e=M(n.__i);let o=n.u.get(t);return o[0]++,r=>{const l=()=>{n.props.revealOrder?(o.push(r),T(n,t,o)):r()};e?e(l):l()}},P.prototype.render=function(t){this.l=null,this.u=new Map;const n=o(t.children);t.revealOrder&&"b"===t.revealOrder[0]&&n.reverse();for(let t=n.length;t--;)this.u.set(n[t],this.l=[1,0,this.l]);return t.children},P.prototype.componentDidUpdate=P.prototype.componentDidMount=function(){this.u.forEach((t,n)=>{T(this,n,t)})};const W="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,V=/^(?: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]/,z=t=>("undefined"!=typeof Symbol&&"symbol"==typeof Symbol()?/fil|che|rad/i:/fil|che|ra/i).test(t);function B(t,n,e){null==n.__k&&(n.textContent=""),l(t,n),"function"==typeof e&&e();const o=n.__k.__k[0];return o?o.__c:null}function H(t,n,e){return u(t,n),"function"==typeof e&&e(),t?t.__c:null}t.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(n=>{Object.defineProperty(t.prototype,n,{configurable:!0,get(){return this["UNSAFE_"+n]},set(t){Object.defineProperty(this,n,{configurable:!0,writable:!0,value:t})}})});let Z=e.event;function Y(){}function $(){return this.cancelBubble}function q(){return this.defaultPrevented}e.event=t=>(Z&&(t=Z(t)),t.persist=Y,t.isPropagationStopped=$,t.isDefaultPrevented=q,t.nativeEvent=t);let G,J={configurable:!0,get(){return this.class}},K=e.vnode;e.vnode=t=>{let n=t.type,e=t.props,r=e;if("string"==typeof n){r={};for(let t in e){let o=e[t];"value"===t&&"defaultValue"in e&&null==o||("defaultValue"===t&&"value"in e&&null==e.value?t="value":"download"===t&&!0===o?o="":/ondoubleclick/i.test(t)?t="ondblclick":/^onchange(textarea|input)/i.test(t+n)&&!z(e.type)?t="oninput":/^on(Ani|Tra|Tou|BeforeInp)/.test(t)?t=t.toLowerCase():V.test(t)?t=t.replace(/[A-Z0-9]/,"-$&").toLowerCase():null===o&&(o=void 0),r[t]=o)}"select"==n&&r.multiple&&Array.isArray(r.value)&&(r.value=o(e.children).forEach(t=>{t.props.selected=-1!=r.value.indexOf(t.props.value)})),"select"==n&&null!=r.defaultValue&&(r.value=o(e.children).forEach(t=>{t.props.selected=r.multiple?-1!=r.defaultValue.indexOf(t.props.value):r.defaultValue==t.props.value})),t.props=r}n&&e.class!=e.className&&(J.enumerable="className"in e,null!=e.className&&(r.class=e.className),Object.defineProperty(r,"className",J)),t.$$typeof=W,K&&K(t)};const Q=e.__r;e.__r=function(t){Q&&Q(t),G=t.__c};const X={ReactCurrentDispatcher:{current:{readContext:t=>G.__n[t.__c].props.value}}},tt=1,nt=2,et=3,ot=4,rt=5;function lt(t,n){return n()}const ut="object"==typeof performance&&"function"==typeof performance.now?performance.now.bind(performance):()=>Date.now(),it="16.8.0";function ct(t){return n.bind(null,t)}function ft(t){return!!t&&t.$$typeof===W}function st(t){return ft(t)?f.apply(null,arguments):t}function at(t){return!!t.__k&&(l(null,t),!0)}function ht(t){return null==t?null:1==t.nodeType?t:A(t.__i)}const pt=(t,n)=>t(n),mt=r;var dt={useState:s,useReducer:a,useEffect:h,useLayoutEffect:p,useRef:m,useImperativeHandle:d,useMemo:y,useCallback:b,useContext:_,useDebugValue:S,version:"16.8.0",Children:k,render:B,hydrate:H,unmountComponentAtNode:at,createPortal:U,createElement:n,createContext:i,createFactory:ct,cloneElement:st,createRef:c,Fragment:r,isValidElement:ft,findDOMNode:ht,Component:t,PureComponent:g,memo:v,forwardRef:R,unstable_batchedUpdates:pt,StrictMode:mt,Suspense:F,SuspenseList:P,lazy:I,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:X};export default dt;export{k as Children,g as PureComponent,mt as StrictMode,F as Suspense,P as SuspenseList,X as __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,st as cloneElement,ct as createFactory,U as createPortal,ht as findDOMNode,R as forwardRef,H as hydrate,ft as isValidElement,I as lazy,v as memo,B as render,at as unmountComponentAtNode,rt as unstable_IdlePriority,tt as unstable_ImmediatePriority,ot as unstable_LowPriority,et as unstable_NormalPriority,nt as unstable_UserBlockingPriority,pt as unstable_batchedUpdates,ut as unstable_now,lt as unstable_runWithPriority,it as version};
2
+ //# sourceMappingURL=compat.modern.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compat.modern.js","sources":["../src/util.js","../src/PureComponent.js","../src/memo.js","../src/forwardRef.js","../src/Children.js","../../src/tree.js","../../src/constants.js","../src/portals.js","../src/suspense.js","../src/suspense-list.js","../src/render.js","../src/scheduler.js","../src/index.js"],"sourcesContent":["/**\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';\n\nlet oldDiffHook = options._diff;\noptions._diff = (internal, vnode) => {\n\tif (internal.type && internal.type._forwarded && vnode.ref) {\n\t\tvnode.props.ref = vnode.ref;\n\t\tvnode.ref = null;\n\t\tinternal.ref = null;\n\t}\n\tif (oldDiffHook) oldDiffHook(internal, 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 = Object.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 options from './options';\nimport {\n\tTYPE_FUNCTION,\n\tTYPE_ELEMENT,\n\tTYPE_TEXT,\n\tTYPE_CLASS,\n\tTYPE_ROOT,\n\tINHERITED_MODES,\n\tTYPE_COMPONENT,\n\tTYPE_DOM,\n\tMODE_SVG\n} from './constants';\n\n/**\n * Create an internal tree node\n * @param {import('./internal').VNode | string} vnode\n * @param {import('./internal').Internal} [parentInternal]\n * @returns {import('./internal').Internal}\n */\nexport function createInternal(vnode, parentInternal) {\n\tlet type = null,\n\t\tprops,\n\t\tkey,\n\t\tref;\n\n\t/** @type {number} */\n\tlet flags = parentInternal ? parentInternal._flags & INHERITED_MODES : 0;\n\n\t// Text VNodes/Internals use NaN as an ID so that two are never equal.\n\tlet vnodeId = NaN;\n\n\tif (typeof vnode === 'string') {\n\t\t// type = null;\n\t\tflags |= TYPE_TEXT;\n\t\tprops = vnode;\n\t} else if (vnode.constructor !== undefined) {\n\t\tflags |= TYPE_TEXT;\n\t\tprops = '';\n\t} else {\n\t\ttype = vnode.type;\n\t\tprops = vnode.props || {};\n\t\tkey = vnode.key;\n\t\tref = vnode.ref;\n\t\tvnodeId = vnode._vnodeId;\n\n\t\t// @TODO re-enable this when we stop removing key+ref from VNode props\n\t\t// if (props) {\n\t\t// \tif ((key = props.key) != null) {\n\t\t// \t\tprops.key = undefined;\n\t\t// \t}\n\t\t// \tif (typeof type !== 'function' && (ref = props.ref) != null) {\n\t\t// \t\tprops.ref = undefined;\n\t\t// \t}\n\t\t// } else {\n\t\t// \tprops = {};\n\t\t// }\n\n\t\t// flags = typeof type === 'function' ? COMPONENT_NODE : ELEMENT_NODE;\n\t\tflags |=\n\t\t\ttypeof type === 'function'\n\t\t\t\t? type.prototype && 'render' in type.prototype\n\t\t\t\t\t? TYPE_CLASS\n\t\t\t\t\t: props._parentDom\n\t\t\t\t\t? TYPE_ROOT\n\t\t\t\t\t: TYPE_FUNCTION\n\t\t\t\t: TYPE_ELEMENT;\n\n\t\tif (flags & TYPE_ELEMENT && type === 'svg') {\n\t\t\tflags |= MODE_SVG;\n\t\t} else if (\n\t\t\tparentInternal &&\n\t\t\tparentInternal._flags & MODE_SVG &&\n\t\t\tparentInternal.type === 'foreignObject'\n\t\t) {\n\t\t\tflags &= ~MODE_SVG;\n\t\t}\n\t}\n\n\t/** @type {import('./internal').Internal} */\n\tconst internal = {\n\t\ttype,\n\t\tprops,\n\t\tkey,\n\t\tref,\n\t\t_children: null,\n\t\t_parent: parentInternal,\n\t\t_vnodeId: vnodeId,\n\t\t_dom: null,\n\t\t_component: null,\n\t\t_flags: flags,\n\t\t_depth: parentInternal ? parentInternal._depth + 1 : 0\n\t};\n\n\tif (options._internal) options._internal(internal, vnode);\n\n\treturn internal;\n}\n\nconst shouldSearchComponent = internal =>\n\tinternal._flags & TYPE_COMPONENT &&\n\t(!(internal._flags & TYPE_ROOT) ||\n\t\tinternal.props._parentDom == getParentDom(internal._parent));\n\n/**\n * @param {import('./internal').Internal} internal\n * @param {number | null} [childIndex]\n * @returns {import('./internal').PreactNode}\n */\nexport function getDomSibling(internal, childIndex) {\n\tif (childIndex == null) {\n\t\t// Use childIndex==null as a signal to resume the search from the vnode's sibling\n\t\treturn getDomSibling(\n\t\t\tinternal._parent,\n\t\t\tinternal._parent._children.indexOf(internal) + 1\n\t\t);\n\t}\n\n\tlet childDom = getChildDom(internal, childIndex);\n\tif (childDom) {\n\t\treturn childDom;\n\t}\n\n\t// If we get here, we have not found a DOM node in this vnode's children. We\n\t// must resume from this vnode's sibling (in it's parent _children array).\n\t// Only climb up and search the parent if we aren't searching through a DOM\n\t// VNode (meaning we reached the DOM parent of the original vnode that began\n\t// the search). Note, the top of the tree has _parent == null so avoiding that\n\t// here.\n\treturn internal._parent && shouldSearchComponent(internal)\n\t\t? getDomSibling(internal)\n\t\t: null;\n}\n\n/**\n * @param {import('./internal').Internal} internal\n * @param {number} [i]\n * @returns {import('./internal').PreactElement}\n */\nexport function getChildDom(internal, i) {\n\tif (internal._children == null) {\n\t\treturn null;\n\t}\n\n\tfor (i = i || 0; i < internal._children.length; i++) {\n\t\tlet child = internal._children[i];\n\t\tif (child != null) {\n\t\t\tif (child._flags & TYPE_DOM) {\n\t\t\t\treturn child._dom;\n\t\t\t}\n\n\t\t\tif (shouldSearchComponent(child)) {\n\t\t\t\tlet childDom = getChildDom(child);\n\t\t\t\tif (childDom) {\n\t\t\t\t\treturn childDom;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn null;\n}\n\n/**\n * @param {import('./internal').Internal} internal\n * @returns {import('./internal').PreactElement}\n */\nexport function getParentDom(internal) {\n\tlet parentDom =\n\t\tinternal._flags & TYPE_ROOT ? internal.props._parentDom : null;\n\n\tlet parent = internal._parent;\n\twhile (parentDom == null && parent) {\n\t\tif (parent._flags & TYPE_ROOT) {\n\t\t\tparentDom = parent.props._parentDom;\n\t\t} else if (parent._flags & TYPE_ELEMENT) {\n\t\t\tparentDom = parent._dom;\n\t\t}\n\n\t\tparent = parent._parent;\n\t}\n\n\treturn parentDom;\n}\n","// Internal._flags bitfield constants\nexport const TYPE_TEXT = 1 << 0;\nexport const TYPE_ELEMENT = 1 << 1;\nexport const TYPE_CLASS = 1 << 2;\nexport const TYPE_FUNCTION = 1 << 3;\n/** Signals this internal has a _parentDom prop that should change the parent\n * DOM node of it's children */\nexport const TYPE_ROOT = 1 << 4;\n\n/** Any type of internal representing DOM */\nexport const TYPE_DOM = TYPE_TEXT | TYPE_ELEMENT;\n/** Any type of component */\nexport const TYPE_COMPONENT = TYPE_CLASS | TYPE_FUNCTION | TYPE_ROOT;\n\n// Modes of rendering\n/** Normal hydration that attaches to a DOM tree but does not diff it. */\nexport const MODE_HYDRATE = 1 << 5;\n/** Top level render unspecified behaviour (old replaceNode parameter to render) */\nexport const MODE_MUTATIVE_HYDRATE = 1 << 6;\n/** Signifies this VNode suspended on the previous render */\nexport const MODE_SUSPENDED = 1 << 7;\n/** Signifies this VNode errored on the previous render */\nexport const MODE_ERRORED = 1 << 8;\n/** Signifies an error has been thrown and this component will be attempting to\n * handle & rerender the error on next render. In other words, on the next\n * render of this component, unset this mode and set the MODE_RERENDERING_ERROR.\n * This flag is distinct from MODE_RERENDERING_ERROR so that a component can\n * catch multiple errors thrown by its children in one render pass (see test\n * \"should handle double child throws\").\n */\nexport const MODE_PENDING_ERROR = 1 << 9;\n/** Signifies this Internal is attempting to \"handle\" an error and is\n * rerendering. This mode tracks that a component's last rerender was trying to\n * handle an error. As such, if another error is thrown while a component has\n * this flag set, it should not handle the newly thrown error since it failed to\n * successfully rerender the original error. This prevents error handling\n * infinite render loops */\nexport const MODE_RERENDERING_ERROR = 1 << 10;\n/** Signals this internal has been unmounted */\nexport const MODE_UNMOUNTING = 1 << 11;\n/** This Internal is rendered in an SVG tree */\nexport const MODE_SVG = 1 << 12;\n\n/** Signifies that bailout checks will be bypassed */\nexport const FORCE_UPDATE = 1 << 13;\n/** Signifies that a node needs to be updated */\nexport const DIRTY_BIT = 1 << 14;\n\n/** Reset all mode flags */\nexport const RESET_MODE = ~(\n\tMODE_HYDRATE |\n\tMODE_MUTATIVE_HYDRATE |\n\tMODE_SUSPENDED |\n\tMODE_ERRORED |\n\tMODE_RERENDERING_ERROR |\n\tFORCE_UPDATE\n);\n\n/** Modes a child internal inherits from their parent */\nexport const INHERITED_MODES = MODE_HYDRATE | MODE_MUTATIVE_HYDRATE | MODE_SVG;\n\nexport const EMPTY_ARR = [];\n\nexport const IS_NON_DIMENSIONAL = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\n","import { createElement } from 'preact';\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\treturn props.children;\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\t// Note: We can't use Fragment here because a component that returned a Portal\n\t// (e.g. `const App = () => createPortal(...)`) wouldn't work. Our diff\n\t// collapses Fragments without keys that are returned directly from components\n\t// into just an array and sets that as the children array of the component.\n\t//\n\t// We also can't use keyed Fragments here cuz it might lead to weird edge\n\t// cases when toggling between two sibling portals if we use a shared keyed or\n\t// lead to unnecessary re-mounts if trying to generate a new key on each call.\n\t//\n\t// So the simplest solution seems to be just to use an unique type for Portal\n\t// to skip the Fragment collapsing logic when diffing components\n\treturn createElement(Portal, { _parentDom: container }, vnode);\n}\n","import { Component, createElement, options, Fragment } from 'preact';\nimport { TYPE_ELEMENT, MODE_HYDRATE } from '../../src/constants';\nimport { getParentDom } from '../../src/tree';\nimport { createPortal } from './portals';\n\nconst oldCatchError = options._catchError;\n/** @type {(error: any, internal: import('./internal').Internal) => void} */\noptions._catchError = function(error, internal) {\n\tif (error.then) {\n\t\t/** @type {import('./internal').Component} */\n\t\tlet component;\n\t\tlet handler = internal;\n\n\t\tfor (; (handler = handler._parent); ) {\n\t\t\tif ((component = handler._component) && component._childDidSuspend) {\n\t\t\t\t// Don't call oldCatchError if we found a Suspense\n\t\t\t\treturn component._childDidSuspend(error, internal);\n\t\t\t}\n\t\t}\n\t}\n\toldCatchError(error, internal);\n};\n\nconst oldUnmount = options.unmount;\n/** @type {(internal: import('./internal').Internal) => void} */\noptions.unmount = function(internal) {\n\t/** @type {import('./internal').Component} */\n\tconst component = internal._component;\n\tif (component && component._onResolve) {\n\t\tcomponent._onResolve();\n\t}\n\n\t// If a component suspended while it was hydrating and is now being unmounted,\n\t// update it's _flags so it appears to be of TYPE_ELEMENT, causing `unmount`\n\t// to remove the DOM nodes that were awaiting hydration (which are stored on\n\t// this internal's _dom property).\n\tconst wasHydrating = (internal._flags & MODE_HYDRATE) === MODE_HYDRATE;\n\tif (component && wasHydrating) {\n\t\tinternal._flags |= TYPE_ELEMENT;\n\t}\n\n\tif (oldUnmount) oldUnmount(internal);\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\t/** @type {Array<import('./internal').Internal>} */\n\tthis._suspenders = null;\n\t/** @type {import('./internal').PreactElement} */\n\tthis._parentDom = null;\n\t/** @type {number} */\n\tthis._portalVNodeId = 0;\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').Internal} suspendingInternal The suspending component\n */\nSuspense.prototype._childDidSuspend = function(promise, suspendingInternal) {\n\tconst suspendingComponent = suspendingInternal._component;\n\tif (suspendingComponent._onResolve != null) {\n\t\t// This component has already been handled by a Suspense component. Do\n\t\t// nothing\n\t\treturn;\n\t}\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._internal);\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\tthis._parentDom = null;\n\t\t\tc.setState({ _suspended: false });\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 occur.\n\t */\n\tconst wasHydrating =\n\t\t(suspendingInternal._flags & MODE_HYDRATE) === MODE_HYDRATE;\n\n\tif (!c._pendingSuspensionCount++ && !wasHydrating) {\n\t\tthis._parentDom = document.createElement('div');\n\t\tc.setState({ _suspended: true });\n\t}\n\n\tpromise.then(onResolved, onResolved);\n};\n\nSuspense.prototype.componentWillUnmount = function() {\n\tthis._suspenders = [];\n\tthis._parentDom = null;\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._parentDom == null) {\n\t\tthis._parentDom = getParentDom(this._internal);\n\t}\n\n\t// Wrap fallback tree in a VNode that prevents itself from being marked as aborting mid-hydration:\n\tconst fallback =\n\t\tstate._suspended && createElement(Fragment, null, props.fallback);\n\n\tconst portal = createPortal(props.children, this._parentDom);\n\tif (state._suspended) {\n\t\t// If we are suspended, don't rerender all of the portal's children. Instead\n\t\t// just reorder the Portal's children\n\t\tportal._vnodeId = this._portalVNodeId;\n\t} else {\n\t\tthis._portalVNodeId = portal._vnodeId;\n\t}\n\n\treturn [portal, fallback];\n};\n\n/**\n * Checks and calls the parent component's _suspended method, passing in the\n * suspended Internal. This is a way for a parent (e.g. SuspenseList) to get\n * notified 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. Moreover, the callback\n * gets function `unsuspend` as a parameter. The resolved child descendant will\n * not actually get unsuspended until `unsuspend` gets called. This is a way for\n * the parent to delay unsuspending.\n *\n * If the parent does not return a callback then the resolved Internal gets\n * unsuspended immediately when it resolves.\n *\n * @param {import('./internal').Internal} internal\n * @returns {((unsuspend: () => void) => void)?}\n */\nexport function suspended(internal) {\n\tlet component = internal._parent._component;\n\treturn component && component._suspended && component._suspended(internal);\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._internal);\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 {\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\tconst internal = parent._children._children[0];\n\treturn internal ? internal._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\t/** @type {any} */\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(internal) {\n\tif (oldBeforeRender) {\n\t\toldBeforeRender(internal);\n\t}\n\tcurrentComponent = internal._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","// This file includes experimental React APIs exported from the \"scheduler\"\n// npm package. Despite being explicitely marked as unstable some libraries\n// already make use of them. This file is not a full replacement for the\n// scheduler package, but includes the necessary shims to make those libraries\n// work with Preact.\n\nexport const unstable_ImmediatePriority = 1;\nexport const unstable_UserBlockingPriority = 2;\nexport const unstable_NormalPriority = 3;\nexport const unstable_LowPriority = 4;\nexport const unstable_IdlePriority = 5;\n\n/**\n * @param {number} priority\n * @param {() => void} callback\n */\nexport function unstable_runWithPriority(priority, callback) {\n\treturn callback();\n}\n\nexport const unstable_now =\n\ttypeof performance === 'object' && typeof performance.now === 'function'\n\t\t? performance.now.bind(performance)\n\t\t: () => Date.now();\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';\nimport { getChildDom } from '../../src/tree';\nexport * from './scheduler';\n\nconst version = '16.8.0'; // 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\tif (component == null) {\n\t\treturn null;\n\t} else if (component.nodeType == 1) {\n\t\treturn component;\n\t}\n\n\treturn getChildDom(component._internal);\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 * 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\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\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":["shallowDiffers","a","b","i","PureComponent","p","this","props","memo","c","comparer","shouldUpdate","nextProps","ref","updateRef","call","current","Memoed","shouldComponentUpdate","createElement","displayName","name","prototype","isReactComponent","Component","isPureReactComponent","state","oldDiffHook","options","internal","vnode","type","REACT_FORWARD_SYMBOL","Symbol","for","forwardRef","fn","Forwarded","clone","Object","assign","$$typeof","render","mapFn","children","toChildArray","map","Children","forEach","count","length","only","normalized","toArray","shouldSearchComponent","TYPE_CLASS","getParentDom","getChildDom","child","TYPE_TEXT","childDom","parentDom","parent","Portal","createPortal","container","__P","oldCatchError","error","then","component","handler","oldUnmount","unmount","Suspense","_suspenders","_portalVNodeId","suspended","lazy","loader","prom","Lazy","exports","default","e","SuspenseList","_next","_map","promise","suspendingInternal","suspendingComponent","push","resolve","resolved","onResolved","onSuspensionComplete","setState","__e","pop","forceUpdate","wasHydrating","document","componentWillUnmount","fallback","Fragment","portal","list","node","delete","revealOrder","size","delegated","get","unsuspend","wrappedUnsuspend","Map","reverse","set","componentDidUpdate","componentDidMount","REACT_ELEMENT_TYPE","CAMEL_PROPS","onChangeInputType","test","callback","textContent","preactRender","hydrate","preactHydrate","key","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","indexOf","defaultValue","className","enumerable","oldBeforeRender","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentDispatcher","readContext","context","unstable_ImmediatePriority","unstable_UserBlockingPriority","unstable_NormalPriority","unstable_LowPriority","unstable_IdlePriority","unstable_runWithPriority","priority","unstable_now","performance","now","bind","Date","version","createFactory","isValidElement","element","cloneElement","preactCloneElement","apply","arguments","unmountComponentAtNode","findDOMNode","nodeType","unstable_batchedUpdates","arg","StrictMode","useState","useReducer","useEffect","useLayoutEffect","useRef","useImperativeHandle","useMemo","useCallback","useContext","useDebugValue","createContext","createRef"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{useState as n,useReducer as t,useEffect as e,useLayoutEffect as r,useRef as u,useImperativeHandle as o,useMemo as i,useCallback as l,useContext as f,useDebugValue as c}from"preact/hooks";export*from"preact/hooks";import{Component as a,createElement as s,options as h,toChildArray as v,Fragment as d,render as p,hydrate as m,cloneElement as y,createRef as b,createContext as _}from"preact";export{createElement,createContext,createRef,Fragment,Component}from"preact";function S(n,t){for(var e in t)n[e]=t[e];return n}function C(n,t){for(var e in n)if("__source"!==e&&!(e in t))return!0;for(var r in t)if("__source"!==r&&n[r]!==t[r])return!0;return!1}function E(n){this.props=n}function g(n,t){function e(n){var e=this.props.ref,r=e==n.ref;return!r&&e&&(e.call?e(null):e.current=null),t?!t(this.props,n)||!r:C(this.props,n)}function r(t){return this.shouldComponentUpdate=e,s(n,t)}return r.displayName="Memo("+(n.displayName||n.name)+")",r.prototype.isReactComponent=!0,r.__f=!0,r}(E.prototype=new a).isPureReactComponent=!0,E.prototype.shouldComponentUpdate=function(n,t){return C(this.props,n)||C(this.state,t)};var w=h.__b;h.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),w&&w(n)};var R="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function x(n){function t(t,e){var r=S({},t);return delete r.ref,n(r,(e=t.ref||e)&&("object"!=typeof e||"current"in e)?e:null)}return t.$$typeof=R,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(n.displayName||n.name)+")",t}var N=function(n,t){return null==n?null:v(v(n).map(t))},k={map:N,forEach:N,count:function(n){return n?v(n).length:0},only:function(n){var t=v(n);if(1!==t.length)throw"Children.only";return t[0]},toArray:v},A=h.__e;h.__e=function(n,t,e){if(n.then)for(var r,u=t;u=u.__;)if((r=u.__c)&&r.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),r.__c(n,t);A(n,t,e)};var O=h.unmount;function L(){this.__u=0,this.t=null,this.__b=null}function U(n){var t=n.__.__c;return t&&t.__e&&t.__e(n)}function F(n){var t,e,r;function u(u){if(t||(t=n()).then(function(n){e=n.default||n},function(n){r=n}),r)throw r;if(!e)throw t;return s(e,u)}return u.displayName="Lazy",u.__f=!0,u}function M(){this.u=null,this.o=null}h.unmount=function(n){var t=n.__c;t&&t.__R&&t.__R(),t&&!0===n.__h&&(n.type=null),O&&O(n)},(L.prototype=new a).__c=function(n,t){var e=t.__c,r=this;null==r.t&&(r.t=[]),r.t.push(e);var u=U(r.__v),o=!1,i=function(){o||(o=!0,e.__R=null,u?u(l):l())};e.__R=i;var l=function(){if(!--r.__u){if(r.state.__e){var n=r.state.__e;r.__v.__k[0]=function n(t,e,r){return t&&(t.__v=null,t.__k=t.__k&&t.__k.map(function(t){return n(t,e,r)}),t.__c&&t.__c.__P===e&&(t.__e&&r.insertBefore(t.__e,t.__d),t.__c.__e=!0,t.__c.__P=r)),t}(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__e:r.__b=null});t=r.t.pop();)t.forceUpdate()}},f=!0===t.__h;r.__u++||f||r.setState({__e:r.__b=r.__v.__k[0]}),n.then(i,i)},L.prototype.componentWillUnmount=function(){this.t=[]},L.prototype.render=function(n,t){if(this.__b){if(this.__v.__k){var e=document.createElement("div"),r=this.__v.__k[0].__c;this.__v.__k[0]=function n(t,e,r){return t&&(t.__c&&t.__c.__H&&(t.__c.__H.__.forEach(function(n){"function"==typeof n.__c&&n.__c()}),t.__c.__H=null),null!=(t=S({},t)).__c&&(t.__c.__P===r&&(t.__c.__P=e),t.__c=null),t.__k=t.__k&&t.__k.map(function(t){return n(t,e,r)})),t}(this.__b,e,r.__O=r.__P)}this.__b=null}var u=t.__e&&s(d,null,n.fallback);return u&&(u.__h=null),[s(d,null,t.__e?null:n.children),u]};var T=function(n,t,e){if(++e[1]===e[0]&&n.o.delete(t),n.props.revealOrder&&("t"!==n.props.revealOrder[0]||!n.o.size))for(e=n.u;e;){for(;e.length>3;)e.pop()();if(e[1]<e[0])break;n.u=e=e[2]}};function D(n){return this.getChildContext=function(){return n.context},n.children}function I(n){var t=this,e=n.i;t.componentWillUnmount=function(){p(null,t.l),t.l=null,t.i=null},t.i&&t.i!==e&&t.componentWillUnmount(),n.__v?(t.l||(t.i=e,t.l={nodeType:1,parentNode:e,childNodes:[],appendChild:function(n){this.childNodes.push(n),t.i.appendChild(n)},insertBefore:function(n,e){this.childNodes.push(n),t.i.appendChild(n)},removeChild:function(n){this.childNodes.splice(this.childNodes.indexOf(n)>>>1,1),t.i.removeChild(n)}}),p(s(D,{context:t.context},n.__v),t.l)):t.l&&t.componentWillUnmount()}function W(n,t){return s(I,{__v:n,i:t})}(M.prototype=new a).__e=function(n){var t=this,e=U(t.__v),r=t.o.get(n);return r[0]++,function(u){var o=function(){t.props.revealOrder?(r.push(u),T(t,n,r)):u()};e?e(o):o()}},M.prototype.render=function(n){this.u=null,this.o=new Map;var t=v(n.children);n.revealOrder&&"b"===n.revealOrder[0]&&t.reverse();for(var e=t.length;e--;)this.o.set(t[e],this.u=[1,0,this.u]);return n.children},M.prototype.componentDidUpdate=M.prototype.componentDidMount=function(){var n=this;this.o.forEach(function(t,e){T(n,e,t)})};var j="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,P=/^(?: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]/,V=function(n){return("undefined"!=typeof Symbol&&"symbol"==typeof Symbol()?/fil|che|rad/i:/fil|che|ra/i).test(n)};function z(n,t,e){return null==t.__k&&(t.textContent=""),p(n,t),"function"==typeof e&&e(),n?n.__c:null}function B(n,t,e){return m(n,t),"function"==typeof e&&e(),n?n.__c:null}a.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(n){Object.defineProperty(a.prototype,n,{configurable:!0,get:function(){return this["UNSAFE_"+n]},set:function(t){Object.defineProperty(this,n,{configurable:!0,writable:!0,value:t})}})});var H=h.event;function Z(){}function Y(){return this.cancelBubble}function $(){return this.defaultPrevented}h.event=function(n){return H&&(n=H(n)),n.persist=Z,n.isPropagationStopped=Y,n.isDefaultPrevented=$,n.nativeEvent=n};var q,G={configurable:!0,get:function(){return this.class}},J=h.vnode;h.vnode=function(n){var t=n.type,e=n.props,r=e;if("string"==typeof t){for(var u in r={},e){var o=e[u];"value"===u&&"defaultValue"in e&&null==o||("defaultValue"===u&&"value"in e&&null==e.value?u="value":"download"===u&&!0===o?o="":/ondoubleclick/i.test(u)?u="ondblclick":/^onchange(textarea|input)/i.test(u+t)&&!V(e.type)?u="oninput":/^on(Ani|Tra|Tou|BeforeInp)/.test(u)?u=u.toLowerCase():P.test(u)?u=u.replace(/[A-Z0-9]/,"-$&").toLowerCase():null===o&&(o=void 0),r[u]=o)}"select"==t&&r.multiple&&Array.isArray(r.value)&&(r.value=v(e.children).forEach(function(n){n.props.selected=-1!=r.value.indexOf(n.props.value)})),"select"==t&&null!=r.defaultValue&&(r.value=v(e.children).forEach(function(n){n.props.selected=r.multiple?-1!=r.defaultValue.indexOf(n.props.value):r.defaultValue==n.props.value})),n.props=r}t&&e.class!=e.className&&(G.enumerable="className"in e,null!=e.className&&(r.class=e.className),Object.defineProperty(r,"className",G)),n.$$typeof=j,J&&J(n)};var K=h.__r;h.__r=function(n){K&&K(n),q=n.__c};var Q={ReactCurrentDispatcher:{current:{readContext:function(n){return q.__n[n.__c].props.value}}}},X="17.0.2";function nn(n){return s.bind(null,n)}function tn(n){return!!n&&n.$$typeof===j}function en(n){return tn(n)?y.apply(null,arguments):n}function rn(n){return!!n.__k&&(p(null,n),!0)}function un(n){return n&&(n.base||1===n.nodeType&&n)||null}var on=function(n,t){return n(t)},ln=function(n,t){return n(t)},fn=d;export default{useState:n,useReducer:t,useEffect:e,useLayoutEffect:r,useRef:u,useImperativeHandle:o,useMemo:i,useCallback:l,useContext:f,useDebugValue:c,version:"17.0.2",Children:k,render:z,hydrate:B,unmountComponentAtNode:rn,createPortal:W,createElement:s,createContext:_,createFactory:nn,cloneElement:en,createRef:b,Fragment:d,isValidElement:tn,findDOMNode:un,Component:a,PureComponent:E,memo:g,forwardRef:x,flushSync:ln,unstable_batchedUpdates:on,StrictMode:d,Suspense:L,SuspenseList:M,lazy:F,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:Q};export{X as version,k as Children,z as render,B as hydrate,rn as unmountComponentAtNode,W as createPortal,nn as createFactory,en as cloneElement,tn as isValidElement,un as findDOMNode,E as PureComponent,g as memo,x as forwardRef,ln as flushSync,on as unstable_batchedUpdates,fn as StrictMode,L as Suspense,M as SuspenseList,F as lazy,Q as __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED};
2
+ //# sourceMappingURL=compat.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compat.module.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","version","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","createContext","createRef"],"mappings":"ydAOO,SAASA,EAAOC,EAAKC,OACtB,IAAIC,KAAKD,EAAOD,EAAIE,GAAKD,EAAMC,YAU9B,SAASC,EAAeC,EAAGC,OAC5B,IAAIH,KAAKE,KAAa,aAANF,KAAsBA,KAAKG,GAAI,OAAO,MACtD,IAAIH,KAAKG,KAAa,aAANH,GAAoBE,EAAEF,KAAOG,EAAEH,GAAI,OAAO,SACxD,ECfD,SAASI,EAAcC,QACxBN,MAAQM,ECGP,SAASC,EAAKC,EAAGC,YACdC,EAAaC,OACjBC,EAAMC,KAAKb,MAAMY,IACjBE,EAAYF,GAAOD,EAAUC,WAC5BE,GAAaF,IACjBA,EAAIG,KAAOH,EAAI,MAASA,EAAII,QAAU,MAGlCP,GAIGA,EAASI,KAAKb,MAAOW,KAAeG,EAHpCZ,EAAeW,KAAKb,MAAOW,YAM3BM,EAAOjB,eACVkB,sBAAwBR,EACtBS,EAAcX,EAAGR,UAEzBiB,EAAOG,YAAc,SAAWZ,EAAEY,aAAeZ,EAAEa,MAAQ,IAC3DJ,EAAOK,UAAUC,kBAAmB,EACpCN,OAAoB,EACbA,GDvBRZ,EAAciB,UAAY,IAAIE,GAENC,sBAAuB,EAC/CpB,EAAciB,UAAUJ,sBAAwB,SAASlB,EAAO0B,UACxDxB,EAAeW,KAAKb,MAAOA,IAAUE,EAAeW,KAAKa,MAAOA,IEVxE,IAAIC,EAAcC,MAClBA,MAAgB,SAAAC,GACXA,EAAMC,MAAQD,EAAMC,UAAmBD,EAAMjB,MAChDiB,EAAM7B,MAAMY,IAAMiB,EAAMjB,IACxBiB,EAAMjB,IAAM,MAETe,GAAaA,EAAYE,IAG9B,IAAaE,EACM,oBAAVC,QACPA,OAAOC,KACPD,OAAOC,IAAI,sBACZ,KASM,SAASC,EAAWC,YAIjBC,EAAUpC,EAAOY,OACrByB,EAAQvC,EAAO,GAAIE,iBAChBqC,EAAMzB,IAENuB,EACNE,GAFDzB,EAAMZ,EAAMY,KAAOA,KAGM,iBAARA,GAAsB,YAAaA,GAAeA,EAAP,aAK7DwB,EAAUE,SAAWP,EAKrBK,EAAUG,OAASH,EAEnBA,EAAUd,UAAUC,iBAAmBa,OAAuB,EAC9DA,EAAUhB,YAAc,eAAiBe,EAAGf,aAAee,EAAGd,MAAQ,IAC/De,MC/CFI,EAAQ,SAACC,EAAUN,UACR,MAAZM,EAAyB,KACtBC,EAAaA,EAAaD,GAAUE,IAAIR,KAInCS,EAAW,CACvBD,IAAKH,EACLK,QAASL,EACTM,eAAML,UACEA,EAAWC,EAAaD,GAAUM,OAAS,GAEnDC,cAAKP,OACEQ,EAAaP,EAAaD,MACN,IAAtBQ,EAAWF,OAAc,KAAM,uBAC5BE,EAAW,IAEnBC,QAASR,GChBJS,EAAgBvB,MACtBA,MAAsB,SAASwB,EAAOC,EAAUC,MAC3CF,EAAMG,aAELC,EACA3B,EAAQwB,EAEJxB,EAAQA,UACV2B,EAAY3B,QAAqB2B,aAChB,MAAjBH,QACHA,MAAgBC,MAChBD,MAAqBC,OAGfE,MAA2BJ,EAAOC,GAI5CF,EAAcC,EAAOC,EAAUC,IAGhC,IAAMG,EAAa7B,EAAQ8B,QAuE3B,SAAgBC,aAEgB,OAC1BC,EAAc,cACQ,KAoIrB,SAASC,EAAUhC,OAErB2B,EAAY3B,gBACT2B,GAAaA,OAAwBA,MAAqB3B,GAG3D,SAASiC,EAAKC,OAChBC,EACAR,EACAJ,WAEKa,EAAKjE,MACRgE,IACJA,EAAOD,KACFR,KACJ,SAAAW,GACCV,EAAYU,EAAQC,SAAWD,GAEhC,SAAAE,GACChB,EAAQgB,IAKPhB,QACGA,MAGFI,QACEQ,SAGA7C,EAAcqC,EAAWxD,UAGjCiE,EAAK7C,YAAc,OACnB6C,OAAkB,EACXA,ECnQR,SAAgBI,SACVC,EAAQ,UACRC,EAAO,KDcb3C,EAAQ8B,QAAU,SAAS7B,OAEpB2B,EAAY3B,MACd2B,GAAaA,OAChBA,QAOGA,IAAkC,IAArB3B,QAChBA,EAAMC,KAAO,MAGV2B,GAAYA,EAAW5B,KAiE5B8B,EAASrC,UAAY,IAAIE,OAOa,SAASgD,EAASC,OACjDC,EAAsBD,MAGtBjE,EAAIK,KAEW,MAAjBL,EAAEoD,IACLpD,EAAEoD,EAAc,IAEjBpD,EAAEoD,EAAYe,KAAKD,OAEbE,EAAUf,EAAUrD,OAEtBqE,GAAW,EACTC,EAAa,WACdD,IAEJA,GAAW,EACXH,MAAiC,KAE7BE,EACHA,EAAQG,GAERA,MAIFL,MAAiCI,MAE3BC,EAAuB,iBACrBvE,MAA2B,IAG7BA,EAAEkB,UAAkB,KACjBsD,EAAiBxE,EAAEkB,UACzBlB,UAAmB,GA5EvB,SAASyE,EAAepD,EAAOqD,EAAgBC,UAC1CtD,IACHA,MAAkB,KAClBA,MACCA,OACAA,MAAgBc,IAAI,SAAAyC,UACnBH,EAAeG,EAAOF,EAAgBC,KAGpCtD,OACCA,YAAgCqD,IAC/BrD,OACHsD,EAAeE,aAAaxD,MAAYA,OAEzCA,WAA0B,EAC1BA,UAA8BsD,IAK1BtD,EAwDoBoD,CACvBD,EACAA,UACAA,eAMEnB,MAFJrD,EAAE8E,SAAS,KAAe9E,MAAwB,OAG1CqD,EAAYrD,EAAEoD,EAAY2B,OACjC1B,EAAU2B,gBAUPC,GAA8C,IAA/BhB,MAChBjE,SAAgCiF,GACpCjF,EAAE8E,SAAS,KAAe9E,MAAwBA,UAAmB,KAEtEgE,EAAQjB,KAAKuB,EAAYA,IAG1BnB,EAASrC,UAAUoE,qBAAuB,gBACpC9B,EAAc,IAQpBD,EAASrC,UAAUiB,OAAS,SAASvC,EAAO0B,MACvCb,SAA0B,IAIzBA,aAAuB,KACpBqE,EAAiBS,SAASxE,cAAc,OACxCyE,EAAoB/E,aAAsB,oBAC1B,GArJzB,SAASgF,EAAchE,EAAOqD,EAAgBY,UACzCjE,IACCA,OAAoBA,YACvBA,aAA+BgB,QAAQ,SAAAkD,GACR,mBAAnBA,OAA+BA,UAG3ClE,UAA2B,MAIJ,OADxBA,EAAQ/B,EAAO,GAAI+B,UAEdA,YAAgCiE,IACnCjE,UAA8BqD,GAE/BrD,MAAmB,MAGpBA,MACCA,OACAA,MAAgBc,IAAI,SAAAyC,UACnBS,EAAcT,EAAOF,EAAgBY,MAIjCjE,EA4HsBgE,CAC1BhF,SACAqE,EACCU,MAAuCA,gBAIf,SAKtBI,EACLtE,OAAoBP,EAAc8E,EAAU,KAAMjG,EAAMgG,iBACrDA,IAAUA,MAAsB,MAE7B,CACN7E,EAAc8E,EAAU,KAAMvE,MAAmB,KAAO1B,EAAMyC,UAC9DuD,IChMF,IAAMpB,EAAU,SAACsB,EAAMd,EAAOe,QACvBA,EAdgB,KAcSA,EAfR,IAqBtBD,EAAK3B,EAAK6B,OAAOhB,GAQhBc,EAAKlG,MAAMqG,cACmB,MAA9BH,EAAKlG,MAAMqG,YAAY,KAAcH,EAAK3B,EAAK+B,UAQjDH,EAAOD,EAAK5B,EACL6B,GAAM,MACLA,EAAKpD,OAAS,GACpBoD,EAAKZ,KAALY,MAEGA,EA1CiB,GA0CMA,EA3CL,SA8CtBD,EAAK5B,EAAQ6B,EAAOA,EA5CJ,KCDlB,SAASI,EAAgBvG,eACnBwG,gBAAkB,kBAAMxG,EAAMyG,SAC5BzG,EAAMyC,SAUd,SAASiE,EAAO1G,OACT2G,EAAQ9F,KACV+F,EAAY5G,EAAM6G,EAEtBF,EAAMjB,qBAAuB,WAC5BnD,EAAO,KAAMoE,EAAMG,GACnBH,EAAMG,EAAQ,KACdH,EAAME,EAAa,MAKhBF,EAAME,GAAcF,EAAME,IAAeD,GAC5CD,EAAMjB,uBAKH1F,OACE2G,EAAMG,IACVH,EAAME,EAAaD,EAGnBD,EAAMG,EAAQ,CACbC,SAAU,EACVC,WAAYJ,EACZK,WAAY,GACZC,qBAAY9B,QACN6B,WAAWtC,KAAKS,GACrBuB,EAAME,EAAWK,YAAY9B,IAE9BC,sBAAaD,EAAO+B,QACdF,WAAWtC,KAAKS,GACrBuB,EAAME,EAAWK,YAAY9B,IAE9BgC,qBAAYhC,QACN6B,WAAWI,OAAOxG,KAAKoG,WAAWK,QAAQlC,KAAW,EAAG,GAC7DuB,EAAME,EAAWO,YAAYhC,MAMhC7C,EACCpB,EAAcoF,EAAiB,CAAEE,QAASE,EAAMF,SAAWzG,OAC3D2G,EAAMG,IAKCH,EAAMG,GACdH,EAAMjB,uBASD,SAAS6B,EAAa1F,EAAO+E,UAC5BzF,EAAcuF,EAAQ,KAAU7E,EAAOgF,EAAYD,KDrB3DvC,EAAa/C,UAAY,IAAIE,OAEO,SAAS4D,OACtCc,EAAOrF,KACP2G,EAAY3D,EAAUqC,OAExBC,EAAOD,EAAK3B,EAAKkD,IAAIrC,UACzBe,EA5DuB,KA8DhB,SAAAuB,OACAC,EAAmB,WACnBzB,EAAKlG,MAAMqG,aAKfF,EAAKxB,KAAK+C,GACV9C,EAAQsB,EAAMd,EAAOe,IAHrBuB,KAMEF,EACHA,EAAUG,GAEVA,MAKHtD,EAAa/C,UAAUiB,OAAS,SAASvC,QACnCsE,EAAQ,UACRC,EAAO,IAAIqD,QAEVnF,EAAWC,EAAa1C,EAAMyC,UAChCzC,EAAMqG,aAAwC,MAAzBrG,EAAMqG,YAAY,IAI1C5D,EAASoF,cAIL,IAAI5H,EAAIwC,EAASM,OAAQ9C,UAYxBsE,EAAKuD,IAAIrF,EAASxC,GAAKY,KAAKyD,EAAQ,CAAC,EAAG,EAAGzD,KAAKyD,WAE/CtE,EAAMyC,UAGd4B,EAAa/C,UAAUyG,mBAAqB1D,EAAa/C,UAAU0G,kBAAoB,2BAOjFzD,EAAK1B,QAAQ,SAACsD,EAAMf,GACxBR,EAAQ+B,EAAMvB,EAAOe,UEnHV8B,EACM,oBAAVjG,QAAyBA,OAAOC,KAAOD,OAAOC,IAAI,kBAC1D,MAEKiG,EAAc,mOAKdC,EAAoB,SAAArG,UACP,oBAAVE,QAA4C,iBAAZA,SACrC,eACA,eACDoG,KAAKtG,IAuCR,SAAgBS,EAAOV,EAAOwG,EAAQC,UAGb,MAApBD,QACHA,EAAOE,YAAc,IAGtBC,EAAa3G,EAAOwG,GACG,mBAAZC,GAAwBA,IAE5BzG,EAAQA,MAAmB,KAGnC,SAAgB4G,EAAQ5G,EAAOwG,EAAQC,UACtCI,EAAc7G,EAAOwG,GACE,mBAAZC,GAAwBA,IAE5BzG,EAAQA,MAAmB,KArDnCL,EAAUF,UAAUC,iBAAmB,GASvC,CACC,qBACA,4BACA,uBACCsB,QAAQ,SAAA8F,GACTC,OAAOC,eAAerH,EAAUF,UAAWqH,EAAK,CAC/CG,cAAc,EACdrB,sBACQ5G,KAAK,UAAY8H,IAEzBb,aAAIiB,GACHH,OAAOC,eAAehI,KAAM8H,EAAK,CAChCG,cAAc,EACdE,UAAU,EACVC,MAAOF,SAiCX,IAAIG,EAAetH,EAAQuH,MAS3B,SAASC,KAET,SAASC,WACDxI,KAAKyI,aAGb,SAASC,WACD1I,KAAK2I,iBAfb5H,EAAQuH,MAAQ,SAAA/E,UACX8E,IAAc9E,EAAI8E,EAAa9E,IACnCA,EAAEqF,QAAUL,EACZhF,EAAEiF,qBAAuBA,EACzBjF,EAAEmF,mBAAqBA,EACfnF,EAAEsF,YAActF,GAazB,IAkGIuF,EAlGAC,EAAsB,CACzBd,cAAc,EACdrB,sBACQ5G,KAAKgJ,QAIVC,EAAelI,EAAQC,MAC3BD,EAAQC,MAAQ,SAAAA,OACXC,EAAOD,EAAMC,KACb9B,EAAQ6B,EAAM7B,MACd+J,EAAkB/J,KAGF,iBAAT8B,EAAmB,KAGxB,IAAI7B,KAFT8J,EAAkB,GAEJ/J,EAAO,KAChBiJ,EAAQjJ,EAAMC,GAER,UAANA,GAAiB,iBAAkBD,GAAkB,MAATiJ,IAKzC,iBAANhJ,GACA,UAAWD,GACI,MAAfA,EAAMiJ,MAINhJ,EAAI,QACY,aAANA,IAA8B,IAAVgJ,EAM9BA,EAAQ,GACE,iBAAiBb,KAAKnI,GAChCA,EAAI,aAEJ,6BAA6BmI,KAAKnI,EAAI6B,KACrCqG,EAAkBnI,EAAM8B,MAEzB7B,EAAI,UACM,6BAA6BmI,KAAKnI,GAC5CA,EAAIA,EAAE+J,cACI9B,EAAYE,KAAKnI,GAC3BA,EAAIA,EAAEgK,QAAQ,WAAY,OAAOD,cACb,OAAVf,IACVA,OAAQiB,GAGTH,EAAgB9J,GAAKgJ,GAKb,UAARnH,GACAiI,EAAgBI,UAChBC,MAAMC,QAAQN,EAAgBd,SAG9Bc,EAAgBd,MAAQvG,EAAa1C,EAAMyC,UAAUI,QAAQ,SAAAuC,GAC5DA,EAAMpF,MAAMsK,UAC0C,GAArDP,EAAgBd,MAAM3B,QAAQlC,EAAMpF,MAAMiJ,UAKjC,UAARnH,GAAoD,MAAhCiI,EAAgBQ,eACvCR,EAAgBd,MAAQvG,EAAa1C,EAAMyC,UAAUI,QAAQ,SAAAuC,GAE3DA,EAAMpF,MAAMsK,SADTP,EAAgBI,UAE0C,GAA5DJ,EAAgBQ,aAAajD,QAAQlC,EAAMpF,MAAMiJ,OAGjDc,EAAgBQ,cAAgBnF,EAAMpF,MAAMiJ,SAKhDpH,EAAM7B,MAAQ+J,EAGXjI,GAAQ9B,EAAM6J,OAAS7J,EAAMwK,YAChCZ,EAAoBa,WAAa,cAAezK,EACzB,MAAnBA,EAAMwK,YAAmBT,EAAgBF,MAAQ7J,EAAMwK,WAC3D5B,OAAOC,eAAekB,EAAiB,YAAaH,IAGrD/H,EAAMS,SAAW2F,EAEb6B,GAAcA,EAAajI,IAKhC,IAAM6I,EAAkB9I,MACxBA,MAAkB,SAASC,GACtB6I,GACHA,EAAgB7I,GAEjB8H,EAAmB9H,OAOpB,IAAa8I,EAAqD,CACjEC,uBAAwB,CACvB5J,QAAS,CACR6J,qBAAYpE,UACJkD,MAAgClD,OAAazG,MAAMiJ,UCnLxD6B,EAAU,SAMhB,SAASC,GAAcjJ,UACfX,EAAc6J,KAAK,KAAMlJ,GAQjC,SAASmJ,GAAeC,WACdA,GAAWA,EAAQ5I,WAAa2F,EAU1C,SAASkD,GAAaD,UAChBD,GAAeC,GACbE,EAAmBC,MAAM,KAAMC,WADDJ,EAStC,SAASK,GAAuB3E,WAC3BA,QACH4B,EAAa,KAAM5B,IACZ,GAUT,SAAS4E,GAAYhI,UAElBA,IACCA,EAAUiI,MAAgC,IAAvBjI,EAAUuD,UAAkBvD,IACjD,KAYF,IAAMkI,GAA0B,SAACpD,EAAUqD,UAAQrD,EAASqD,IAWtDC,GAAY,SAACtD,EAAUqD,UAAQrD,EAASqD,IAMxCE,GAAa5F,gBAiCJ,CACd6F,SAAAA,EACAC,WAAAA,EACAC,UAAAA,EACAC,gBAAAA,EACAC,OAAAA,EACAC,oBAAAA,EACAC,QAAAA,EACAC,YAAAA,EACAC,WAAAA,EACAC,cAAAA,EACAzB,QA9He,SA+HflI,SAAAA,EACAL,OAAAA,EACAkG,QAAAA,EACA8C,uBAAAA,GACAhE,aAAAA,EACApG,cAAAA,EACAqL,cAAAA,EACAzB,cAAAA,GACAI,aAAAA,GACAsB,UAAAA,EACAxG,SAAAA,EACAgF,eAAAA,GACAO,YAAAA,GACAhK,UAAAA,EACAnB,cAAAA,EACAE,KAAAA,EACA2B,WAAAA,EACA0J,UAAAA,GACAF,wBAAAA,GACAG,WAhEkB5F,EAiElBtC,SAAAA,EACAU,aAAAA,EACAP,KAAAA,EACA6G,mDAAAA"}
@@ -0,0 +1,2 @@
1
+ !function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("preact/hooks"),require("preact")):"function"==typeof define&&define.amd?define(["exports","preact/hooks","preact"],t):t(n.preactCompat={},n.preactHooks,n.preact)}(this,function(n,t,e){function r(n,t){for(var e in t)n[e]=t[e];return n}function u(n,t){for(var e in n)if("__source"!==e&&!(e in t))return!0;for(var r in t)if("__source"!==r&&n[r]!==t[r])return!0;return!1}function i(n){this.props=n}function o(n,t){function r(n){var e=this.props.ref,r=e==n.ref;return!r&&e&&(e.call?e(null):e.current=null),t?!t(this.props,n)||!r:u(this.props,n)}function i(t){return this.shouldComponentUpdate=r,e.createElement(n,t)}return i.displayName="Memo("+(n.displayName||n.name)+")",i.prototype.isReactComponent=!0,i.__f=!0,i}(i.prototype=new e.Component).isPureReactComponent=!0,i.prototype.shouldComponentUpdate=function(n,t){return u(this.props,n)||u(this.state,t)};var l=e.options.__b;e.options.__b=function(n){n.type&&n.type.__f&&n.ref&&(n.props.ref=n.ref,n.ref=null),l&&l(n)};var f="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function c(n){function t(t,e){var u=r({},t);return delete u.ref,n(u,(e=t.ref||e)&&("object"!=typeof e||"current"in e)?e:null)}return t.$$typeof=f,t.render=t,t.prototype.isReactComponent=t.__f=!0,t.displayName="ForwardRef("+(n.displayName||n.name)+")",t}var a=function(n,t){return null==n?null:e.toChildArray(e.toChildArray(n).map(t))},s={map:a,forEach:a,count:function(n){return n?e.toChildArray(n).length:0},only:function(n){var t=e.toChildArray(n);if(1!==t.length)throw"Children.only";return t[0]},toArray:e.toChildArray},h=e.options.__e;e.options.__e=function(n,t,e){if(n.then)for(var r,u=t;u=u.__;)if((r=u.__c)&&r.__c)return null==t.__e&&(t.__e=e.__e,t.__k=e.__k),r.__c(n,t);h(n,t,e)};var d=e.options.unmount;function v(){this.__u=0,this.t=null,this.__b=null}function p(n){var t=n.__.__c;return t&&t.__e&&t.__e(n)}function m(n){var t,r,u;function i(i){if(t||(t=n()).then(function(n){r=n.default||n},function(n){u=n}),u)throw u;if(!r)throw t;return e.createElement(r,i)}return i.displayName="Lazy",i.__f=!0,i}function y(){this.u=null,this.i=null}e.options.unmount=function(n){var t=n.__c;t&&t.__R&&t.__R(),t&&!0===n.__h&&(n.type=null),d&&d(n)},(v.prototype=new e.Component).__c=function(n,t){var e=t.__c,r=this;null==r.t&&(r.t=[]),r.t.push(e);var u=p(r.__v),i=!1,o=function(){i||(i=!0,e.__R=null,u?u(l):l())};e.__R=o;var l=function(){if(!--r.__u){if(r.state.__e){var n=r.state.__e;r.__v.__k[0]=function n(t,e,r){return t&&(t.__v=null,t.__k=t.__k&&t.__k.map(function(t){return n(t,e,r)}),t.__c&&t.__c.__P===e&&(t.__e&&r.insertBefore(t.__e,t.__d),t.__c.__e=!0,t.__c.__P=r)),t}(n,n.__c.__P,n.__c.__O)}var t;for(r.setState({__e:r.__b=null});t=r.t.pop();)t.forceUpdate()}},f=!0===t.__h;r.__u++||f||r.setState({__e:r.__b=r.__v.__k[0]}),n.then(o,o)},v.prototype.componentWillUnmount=function(){this.t=[]},v.prototype.render=function(n,t){if(this.__b){if(this.__v.__k){var u=document.createElement("div"),i=this.__v.__k[0].__c;this.__v.__k[0]=function n(t,e,u){return t&&(t.__c&&t.__c.__H&&(t.__c.__H.__.forEach(function(n){"function"==typeof n.__c&&n.__c()}),t.__c.__H=null),null!=(t=r({},t)).__c&&(t.__c.__P===u&&(t.__c.__P=e),t.__c=null),t.__k=t.__k&&t.__k.map(function(t){return n(t,e,u)})),t}(this.__b,u,i.__O=i.__P)}this.__b=null}var o=t.__e&&e.createElement(e.Fragment,null,n.fallback);return o&&(o.__h=null),[e.createElement(e.Fragment,null,t.__e?null:n.children),o]};var b=function(n,t,e){if(++e[1]===e[0]&&n.i.delete(t),n.props.revealOrder&&("t"!==n.props.revealOrder[0]||!n.i.size))for(e=n.u;e;){for(;e.length>3;)e.pop()();if(e[1]<e[0])break;n.u=e=e[2]}};function _(n){return this.getChildContext=function(){return n.context},n.children}function S(n){var t=this,r=n.o;t.componentWillUnmount=function(){e.render(null,t.l),t.l=null,t.o=null},t.o&&t.o!==r&&t.componentWillUnmount(),n.__v?(t.l||(t.o=r,t.l={nodeType:1,parentNode:r,childNodes:[],appendChild:function(n){this.childNodes.push(n),t.o.appendChild(n)},insertBefore:function(n,e){this.childNodes.push(n),t.o.appendChild(n)},removeChild:function(n){this.childNodes.splice(this.childNodes.indexOf(n)>>>1,1),t.o.removeChild(n)}}),e.render(e.createElement(_,{context:t.context},n.__v),t.l)):t.l&&t.componentWillUnmount()}function w(n,t){return e.createElement(S,{__v:n,o:t})}(y.prototype=new e.Component).__e=function(n){var t=this,e=p(t.__v),r=t.i.get(n);return r[0]++,function(u){var i=function(){t.props.revealOrder?(r.push(u),b(t,n,r)):u()};e?e(i):i()}},y.prototype.render=function(n){this.u=null,this.i=new Map;var t=e.toChildArray(n.children);n.revealOrder&&"b"===n.revealOrder[0]&&t.reverse();for(var r=t.length;r--;)this.i.set(t[r],this.u=[1,0,this.u]);return n.children},y.prototype.componentDidUpdate=y.prototype.componentDidMount=function(){var n=this;this.i.forEach(function(t,e){b(n,e,t)})};var C="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103,g=/^(?: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]/,E=function(n){return("undefined"!=typeof Symbol&&"symbol"==typeof Symbol()?/fil|che|rad/i:/fil|che|ra/i).test(n)};function R(n,t,r){return null==t.__k&&(t.textContent=""),e.render(n,t),"function"==typeof r&&r(),n?n.__c:null}function x(n,t,r){return e.hydrate(n,t),"function"==typeof r&&r(),n?n.__c:null}e.Component.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(n){Object.defineProperty(e.Component.prototype,n,{configurable:!0,get:function(){return this["UNSAFE_"+n]},set:function(t){Object.defineProperty(this,n,{configurable:!0,writable:!0,value:t})}})});var N=e.options.event;function k(){}function O(){return this.cancelBubble}function A(){return this.defaultPrevented}e.options.event=function(n){return N&&(n=N(n)),n.persist=k,n.isPropagationStopped=O,n.isDefaultPrevented=A,n.nativeEvent=n};var L,U={configurable:!0,get:function(){return this.class}},j=e.options.vnode;e.options.vnode=function(n){var t=n.type,r=n.props,u=r;if("string"==typeof t){for(var i in u={},r){var o=r[i];"value"===i&&"defaultValue"in r&&null==o||("defaultValue"===i&&"value"in r&&null==r.value?i="value":"download"===i&&!0===o?o="":/ondoubleclick/i.test(i)?i="ondblclick":/^onchange(textarea|input)/i.test(i+t)&&!E(r.type)?i="oninput":/^on(Ani|Tra|Tou|BeforeInp)/.test(i)?i=i.toLowerCase():g.test(i)?i=i.replace(/[A-Z0-9]/,"-$&").toLowerCase():null===o&&(o=void 0),u[i]=o)}"select"==t&&u.multiple&&Array.isArray(u.value)&&(u.value=e.toChildArray(r.children).forEach(function(n){n.props.selected=-1!=u.value.indexOf(n.props.value)})),"select"==t&&null!=u.defaultValue&&(u.value=e.toChildArray(r.children).forEach(function(n){n.props.selected=u.multiple?-1!=u.defaultValue.indexOf(n.props.value):u.defaultValue==n.props.value})),n.props=u}t&&r.class!=r.className&&(U.enumerable="className"in r,null!=r.className&&(u.class=r.className),Object.defineProperty(u,"className",U)),n.$$typeof=C,j&&j(n)};var M=e.options.__r;e.options.__r=function(n){M&&M(n),L=n.__c};var T={ReactCurrentDispatcher:{current:{readContext:function(n){return L.__n[n.__c].props.value}}}};function D(n){return e.createElement.bind(null,n)}function F(n){return!!n&&n.$$typeof===C}function I(n){return F(n)?e.cloneElement.apply(null,arguments):n}function W(n){return!!n.__k&&(e.render(null,n),!0)}function P(n){return n&&(n.base||1===n.nodeType&&n)||null}var V=function(n,t){return n(t)},z=function(n,t){return n(t)},B=e.Fragment,q={useState:t.useState,useReducer:t.useReducer,useEffect:t.useEffect,useLayoutEffect:t.useLayoutEffect,useRef:t.useRef,useImperativeHandle:t.useImperativeHandle,useMemo:t.useMemo,useCallback:t.useCallback,useContext:t.useContext,useDebugValue:t.useDebugValue,version:"17.0.2",Children:s,render:R,hydrate:x,unmountComponentAtNode:W,createPortal:w,createElement:e.createElement,createContext:e.createContext,createFactory:D,cloneElement:I,createRef:e.createRef,Fragment:e.Fragment,isValidElement:F,findDOMNode:P,Component:e.Component,PureComponent:i,memo:o,forwardRef:c,flushSync:z,unstable_batchedUpdates:V,StrictMode:B,Suspense:v,SuspenseList:y,lazy:m,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:T};Object.keys(t).forEach(function(e){n[e]=t[e]}),n.createElement=e.createElement,n.createContext=e.createContext,n.createRef=e.createRef,n.Fragment=e.Fragment,n.Component=e.Component,n.version="17.0.2",n.Children=s,n.render=R,n.hydrate=x,n.unmountComponentAtNode=W,n.createPortal=w,n.createFactory=D,n.cloneElement=I,n.isValidElement=F,n.findDOMNode=P,n.PureComponent=i,n.memo=o,n.forwardRef=c,n.flushSync=z,n.unstable_batchedUpdates=V,n.StrictMode=B,n.Suspense=v,n.SuspenseList=y,n.lazy=m,n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=T,n.default=q});
2
+ //# sourceMappingURL=compat.umd.js.map
@@ -0,0 +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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"}
@@ -0,0 +1 @@
1
+ module.exports = require('preact/jsx-runtime');
@@ -0,0 +1 @@
1
+ export * from 'preact/jsx-runtime';
@@ -0,0 +1 @@
1
+ module.exports = require('preact/jsx-runtime');
@@ -0,0 +1 @@
1
+ export * from 'preact/jsx-runtime';
@@ -0,0 +1,19 @@
1
+ {
2
+ "name": "preact-compat",
3
+ "amdName": "preactCompat",
4
+ "version": "4.0.0",
5
+ "private": true,
6
+ "description": "A React compatibility layer for Preact",
7
+ "main": "dist/compat.js",
8
+ "module": "dist/compat.module.js",
9
+ "umd:main": "dist/compat.umd.js",
10
+ "source": "src/index.js",
11
+ "types": "src/index.d.ts",
12
+ "license": "MIT",
13
+ "mangle": {
14
+ "regex": "^_"
15
+ },
16
+ "peerDependencies": {
17
+ "preact": "^10.0.0"
18
+ }
19
+ }
@@ -0,0 +1,15 @@
1
+ // see scheduler.mjs
2
+
3
+ function unstable_runWithPriority(priority, callback) {
4
+ return callback();
5
+ }
6
+
7
+ module.exports = {
8
+ unstable_ImmediatePriority: 1,
9
+ unstable_UserBlockingPriority: 2,
10
+ unstable_NormalPriority: 3,
11
+ unstable_LowPriority: 4,
12
+ unstable_IdlePriority: 5,
13
+ unstable_runWithPriority,
14
+ unstable_now: performance.now.bind(performance)
15
+ };
@@ -0,0 +1,23 @@
1
+ /* eslint-disable */
2
+
3
+ // This file includes experimental React APIs exported from the "scheduler"
4
+ // npm package. Despite being explicitely marked as unstable some libraries
5
+ // already make use of them. This file is not a full replacement for the
6
+ // scheduler package, but includes the necessary shims to make those libraries
7
+ // work with Preact.
8
+
9
+ export var unstable_ImmediatePriority = 1;
10
+ export var unstable_UserBlockingPriority = 2;
11
+ export var unstable_NormalPriority = 3;
12
+ export var unstable_LowPriority = 4;
13
+ export var unstable_IdlePriority = 5;
14
+
15
+ /**
16
+ * @param {number} priority
17
+ * @param {() => void} callback
18
+ */
19
+ export function unstable_runWithPriority(priority, callback) {
20
+ return callback();
21
+ }
22
+
23
+ export var unstable_now = performance.now.bind(performance);
@@ -0,0 +1,15 @@
1
+ /* eslint-disable */
2
+ var renderToString;
3
+ try {
4
+ const mod = require('preact-render-to-string');
5
+ renderToString = mod.default || mod.renderToString || mod;
6
+ } catch (e) {
7
+ throw Error(
8
+ 'renderToString() error: missing "preact-render-to-string" dependency.'
9
+ );
10
+ }
11
+
12
+ module.exports = {
13
+ renderToString: renderToString,
14
+ renderToStaticMarkup: renderToString
15
+ };
@@ -0,0 +1,4 @@
1
+ export {
2
+ renderToString,
3
+ renderToString as renderToStaticMarkup
4
+ } from 'preact-render-to-string';
@@ -0,0 +1,21 @@
1
+ import { toChildArray } from 'preact';
2
+
3
+ const mapFn = (children, fn) => {
4
+ if (children == null) return null;
5
+ return toChildArray(toChildArray(children).map(fn));
6
+ };
7
+
8
+ // This API is completely unnecessary for Preact, so it's basically passthrough.
9
+ export const Children = {
10
+ map: mapFn,
11
+ forEach: mapFn,
12
+ count(children) {
13
+ return children ? toChildArray(children).length : 0;
14
+ },
15
+ only(children) {
16
+ const normalized = toChildArray(children);
17
+ if (normalized.length !== 1) throw 'Children.only';
18
+ return normalized[0];
19
+ },
20
+ toArray: toChildArray
21
+ };
@@ -0,0 +1,15 @@
1
+ import { Component } from 'preact';
2
+ import { shallowDiffers } from './util';
3
+
4
+ /**
5
+ * Component class with a predefined `shouldComponentUpdate` implementation
6
+ */
7
+ export function PureComponent(p) {
8
+ this.props = p;
9
+ }
10
+ PureComponent.prototype = new Component();
11
+ // Some third-party libraries check if this property is present
12
+ PureComponent.prototype.isPureReactComponent = true;
13
+ PureComponent.prototype.shouldComponentUpdate = function(props, state) {
14
+ return shallowDiffers(this.props, props) || shallowDiffers(this.state, state);
15
+ };
@@ -0,0 +1,51 @@
1
+ import { options } from 'preact';
2
+ import { assign } from './util';
3
+
4
+ let oldDiffHook = options._diff;
5
+ options._diff = vnode => {
6
+ if (vnode.type && vnode.type._forwarded && vnode.ref) {
7
+ vnode.props.ref = vnode.ref;
8
+ vnode.ref = null;
9
+ }
10
+ if (oldDiffHook) oldDiffHook(vnode);
11
+ };
12
+
13
+ export const REACT_FORWARD_SYMBOL =
14
+ (typeof Symbol != 'undefined' &&
15
+ Symbol.for &&
16
+ Symbol.for('react.forward_ref')) ||
17
+ 0xf47;
18
+
19
+ /**
20
+ * Pass ref down to a child. This is mainly used in libraries with HOCs that
21
+ * wrap components. Using `forwardRef` there is an easy way to get a reference
22
+ * of the wrapped component instead of one of the wrapper itself.
23
+ * @param {import('./index').ForwardFn} fn
24
+ * @returns {import('./internal').FunctionComponent}
25
+ */
26
+ export function forwardRef(fn) {
27
+ // We always have ref in props.ref, except for
28
+ // mobx-react. It will call this function directly
29
+ // and always pass ref as the second argument.
30
+ function Forwarded(props, ref) {
31
+ let clone = assign({}, props);
32
+ delete clone.ref;
33
+ ref = props.ref || ref;
34
+ return fn(
35
+ clone,
36
+ !ref || (typeof ref === 'object' && !('current' in ref)) ? null : ref
37
+ );
38
+ }
39
+
40
+ // mobx-react checks for this being present
41
+ Forwarded.$$typeof = REACT_FORWARD_SYMBOL;
42
+ // mobx-react heavily relies on implementation details.
43
+ // It expects an object here with a `render` property,
44
+ // and prototype.render will fail. Without this
45
+ // mobx-react throws.
46
+ Forwarded.render = Forwarded;
47
+
48
+ Forwarded.prototype.isReactComponent = Forwarded._forwarded = true;
49
+ Forwarded.displayName = 'ForwardRef(' + (fn.displayName || fn.name) + ')';
50
+ return Forwarded;
51
+ }
@@ -0,0 +1,140 @@
1
+ import * as _hooks from '../../hooks';
2
+ import * as preact from '../../src';
3
+ import { JSXInternal } from '../../src/jsx';
4
+ import * as _Suspense from './suspense';
5
+ import * as _SuspenseList from './suspense-list';
6
+
7
+ // export default React;
8
+ export = React;
9
+ export as namespace React;
10
+ declare namespace React {
11
+ // Export JSX
12
+ export import JSX = JSXInternal;
13
+
14
+ // Hooks
15
+ export import CreateHandle = _hooks.CreateHandle;
16
+ export import EffectCallback = _hooks.EffectCallback;
17
+ export import Inputs = _hooks.Inputs;
18
+ export import PropRef = _hooks.PropRef;
19
+ export import Reducer = _hooks.Reducer;
20
+ export import Ref = _hooks.Ref;
21
+ export import StateUpdater = _hooks.StateUpdater;
22
+ export import useCallback = _hooks.useCallback;
23
+ export import useContext = _hooks.useContext;
24
+ export import useDebugValue = _hooks.useDebugValue;
25
+ export import useEffect = _hooks.useEffect;
26
+ export import useImperativeHandle = _hooks.useImperativeHandle;
27
+ export import useLayoutEffect = _hooks.useLayoutEffect;
28
+ export import useMemo = _hooks.useMemo;
29
+ export import useReducer = _hooks.useReducer;
30
+ export import useRef = _hooks.useRef;
31
+ export import useState = _hooks.useState;
32
+
33
+ // Preact Defaults
34
+ export import Component = preact.Component;
35
+ export import FunctionComponent = preact.FunctionComponent;
36
+ export import FC = preact.FunctionComponent;
37
+ export import createContext = preact.createContext;
38
+ export import createRef = preact.createRef;
39
+ export import Fragment = preact.Fragment;
40
+ export import createElement = preact.createElement;
41
+ export import cloneElement = preact.cloneElement;
42
+
43
+ // Suspense
44
+ export import Suspense = _Suspense.Suspense;
45
+ export import lazy = _Suspense.lazy;
46
+ export import SuspenseList = _SuspenseList.SuspenseList;
47
+
48
+ // Compat
49
+ export import StrictMode = preact.Fragment;
50
+ export const version: string;
51
+
52
+ export function createPortal(
53
+ vnode: preact.VNode,
54
+ container: Element
55
+ ): preact.VNode<any>;
56
+
57
+ export function render(
58
+ vnode: preact.VNode<any>,
59
+ parent: Element,
60
+ callback?: () => void
61
+ ): Component | null;
62
+
63
+ export function hydrate(
64
+ vnode: preact.VNode<any>,
65
+ parent: Element,
66
+ callback?: () => void
67
+ ): Component | null;
68
+
69
+ export function unmountComponentAtNode(
70
+ container: Element | Document | ShadowRoot | DocumentFragment
71
+ ): boolean;
72
+
73
+ export function createFactory(
74
+ type: preact.VNode<any>['type']
75
+ ): (
76
+ props?: any,
77
+ ...children: preact.ComponentChildren[]
78
+ ) => preact.VNode<any>;
79
+ export function isValidElement(element: any): boolean;
80
+ export function findDOMNode(component: preact.Component): Element | null;
81
+
82
+ export abstract class PureComponent<P = {}, S = {}> extends preact.Component<
83
+ P,
84
+ S
85
+ > {
86
+ isPureReactComponent: boolean;
87
+ }
88
+
89
+ export function memo<P = {}>(
90
+ component: preact.FunctionalComponent<P>,
91
+ comparer?: (prev: P, next: P) => boolean
92
+ ): preact.FunctionComponent<P>;
93
+ export function memo<C extends preact.FunctionalComponent<any>>(
94
+ component: C,
95
+ comparer?: (
96
+ prev: preact.ComponentProps<C>,
97
+ next: preact.ComponentProps<C>
98
+ ) => boolean
99
+ ): C;
100
+
101
+ export interface ForwardFn<P = {}, T = any> {
102
+ (props: P, ref: Ref<T>): preact.ComponentChild;
103
+ displayName?: string;
104
+ }
105
+
106
+ export function forwardRef<R, P = {}>(
107
+ fn: ForwardFn<P, R>
108
+ ): preact.FunctionalComponent<Omit<P, 'ref'> & { ref?: preact.RefObject<R> }>;
109
+
110
+ export function unstable_batchedUpdates(
111
+ callback: (arg?: any) => void,
112
+ arg?: any
113
+ ): void;
114
+
115
+ export const Children: {
116
+ map<T extends preact.ComponentChild, R>(
117
+ children: T | T[],
118
+ fn: (child: T, i: number) => R
119
+ ): R[];
120
+ forEach<T extends preact.ComponentChild>(
121
+ children: T | T[],
122
+ fn: (child: T, i: number) => void
123
+ ): void;
124
+ count: (children: preact.ComponentChildren) => number;
125
+ only: (children: preact.ComponentChildren) => preact.ComponentChild;
126
+ toArray: (children: preact.ComponentChildren) => preact.VNode<{}>[];
127
+ };
128
+
129
+ // scheduler
130
+ export const unstable_ImmediatePriority: number;
131
+ export const unstable_UserBlockingPriority: number;
132
+ export const unstable_NormalPriority: number;
133
+ export const unstable_LowPriority: number;
134
+ export const unstable_IdlePriority: number;
135
+ export function unstable_runWithPriority(
136
+ priority: number,
137
+ callback: () => void
138
+ ): void;
139
+ export const unstable_now: () => number;
140
+ }
@@ -0,0 +1,187 @@
1
+ import {
2
+ createElement,
3
+ render as preactRender,
4
+ cloneElement as preactCloneElement,
5
+ createRef,
6
+ Component,
7
+ createContext,
8
+ Fragment
9
+ } from 'preact';
10
+ import {
11
+ useState,
12
+ useReducer,
13
+ useEffect,
14
+ useLayoutEffect,
15
+ useRef,
16
+ useImperativeHandle,
17
+ useMemo,
18
+ useCallback,
19
+ useContext,
20
+ useDebugValue
21
+ } from 'preact/hooks';
22
+ import { PureComponent } from './PureComponent';
23
+ import { memo } from './memo';
24
+ import { forwardRef } from './forwardRef';
25
+ import { Children } from './Children';
26
+ import { Suspense, lazy } from './suspense';
27
+ import { SuspenseList } from './suspense-list';
28
+ import { createPortal } from './portals';
29
+ import {
30
+ hydrate,
31
+ render,
32
+ REACT_ELEMENT_TYPE,
33
+ __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED
34
+ } from './render';
35
+
36
+ const version = '17.0.2'; // trick libraries to think we are react
37
+
38
+ /**
39
+ * Legacy version of createElement.
40
+ * @param {import('./internal').VNode["type"]} type The node name or Component constructor
41
+ */
42
+ function createFactory(type) {
43
+ return createElement.bind(null, type);
44
+ }
45
+
46
+ /**
47
+ * Check if the passed element is a valid (p)react node.
48
+ * @param {*} element The element to check
49
+ * @returns {boolean}
50
+ */
51
+ function isValidElement(element) {
52
+ return !!element && element.$$typeof === REACT_ELEMENT_TYPE;
53
+ }
54
+
55
+ /**
56
+ * Wrap `cloneElement` to abort if the passed element is not a valid element and apply
57
+ * all vnode normalizations.
58
+ * @param {import('./internal').VNode} element The vnode to clone
59
+ * @param {object} props Props to add when cloning
60
+ * @param {Array<import('./internal').ComponentChildren>} rest Optional component children
61
+ */
62
+ function cloneElement(element) {
63
+ if (!isValidElement(element)) return element;
64
+ return preactCloneElement.apply(null, arguments);
65
+ }
66
+
67
+ /**
68
+ * Remove a component tree from the DOM, including state and event handlers.
69
+ * @param {import('./internal').PreactElement} container
70
+ * @returns {boolean}
71
+ */
72
+ function unmountComponentAtNode(container) {
73
+ if (container._children) {
74
+ preactRender(null, container);
75
+ return true;
76
+ }
77
+ return false;
78
+ }
79
+
80
+ /**
81
+ * Get the matching DOM node for a component
82
+ * @param {import('./internal').Component} component
83
+ * @returns {import('./internal').PreactElement | null}
84
+ */
85
+ function findDOMNode(component) {
86
+ return (
87
+ (component &&
88
+ (component.base || (component.nodeType === 1 && component))) ||
89
+ null
90
+ );
91
+ }
92
+
93
+ /**
94
+ * Deprecated way to control batched rendering inside the reconciler, but we
95
+ * already schedule in batches inside our rendering code
96
+ * @template Arg
97
+ * @param {(arg: Arg) => void} callback function that triggers the updated
98
+ * @param {Arg} [arg] Optional argument that can be passed to the callback
99
+ */
100
+ // eslint-disable-next-line camelcase
101
+ const unstable_batchedUpdates = (callback, arg) => callback(arg);
102
+
103
+ /**
104
+ * In React, `flushSync` flushes the entire tree and forces a rerender. It's
105
+ * implmented here as a no-op.
106
+ * @template Arg
107
+ * @template Result
108
+ * @param {(arg: Arg) => Result} callback function that runs before the flush
109
+ * @param {Arg} [arg] Optional arugment that can be passed to the callback
110
+ * @returns
111
+ */
112
+ const flushSync = (callback, arg) => callback(arg);
113
+
114
+ /**
115
+ * Strict Mode is not implemented in Preact, so we provide a stand-in for it
116
+ * that just renders its children without imposing any restrictions.
117
+ */
118
+ const StrictMode = Fragment;
119
+
120
+ export * from 'preact/hooks';
121
+ export {
122
+ version,
123
+ Children,
124
+ render,
125
+ hydrate,
126
+ unmountComponentAtNode,
127
+ createPortal,
128
+ createElement,
129
+ createContext,
130
+ createFactory,
131
+ cloneElement,
132
+ createRef,
133
+ Fragment,
134
+ isValidElement,
135
+ findDOMNode,
136
+ Component,
137
+ PureComponent,
138
+ memo,
139
+ forwardRef,
140
+ flushSync,
141
+ // eslint-disable-next-line camelcase
142
+ unstable_batchedUpdates,
143
+ StrictMode,
144
+ Suspense,
145
+ SuspenseList,
146
+ lazy,
147
+ __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED
148
+ };
149
+
150
+ // React copies the named exports to the default one.
151
+ export default {
152
+ useState,
153
+ useReducer,
154
+ useEffect,
155
+ useLayoutEffect,
156
+ useRef,
157
+ useImperativeHandle,
158
+ useMemo,
159
+ useCallback,
160
+ useContext,
161
+ useDebugValue,
162
+ version,
163
+ Children,
164
+ render,
165
+ hydrate,
166
+ unmountComponentAtNode,
167
+ createPortal,
168
+ createElement,
169
+ createContext,
170
+ createFactory,
171
+ cloneElement,
172
+ createRef,
173
+ Fragment,
174
+ isValidElement,
175
+ findDOMNode,
176
+ Component,
177
+ PureComponent,
178
+ memo,
179
+ forwardRef,
180
+ flushSync,
181
+ unstable_batchedUpdates,
182
+ StrictMode,
183
+ Suspense,
184
+ SuspenseList,
185
+ lazy,
186
+ __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED
187
+ };