@dxyl/utils 1.3.0 → 1.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (423) hide show
  1. package/dist/index.es.js +7305 -6683
  2. package/dist/index.umd.js +26 -26
  3. package/lib/glslang/glslang.d.ts +14 -14
  4. package/lib/glslang/glslang.js +112 -112
  5. package/lib/twgsl/twgsl.js +53 -53
  6. package/package.json +51 -51
  7. package/types/Disposable.d.ts +25 -0
  8. package/types/PluginService.d.ts +27 -19
  9. package/types/Pool.d.ts +90 -0
  10. package/types/StackCursor.d.ts +6 -0
  11. package/types/Transaction.d.ts +25 -0
  12. package/types/data/alien-signals/index.d.ts +22 -0
  13. package/types/data/alien-signals/system.d.ts +36 -0
  14. package/types/data/immer.d.ts +262 -262
  15. package/types/data/immutable.d.ts +5127 -5127
  16. package/types/data/mobx.d.ts +2 -2
  17. package/types/data/signals.d.ts +36 -17
  18. package/types/events/event_emiter.d.ts +43 -43
  19. package/types/fast-deep-equal.d.ts +1 -1
  20. package/types/index.d.ts +5 -0
  21. package/types/lodash/add.d.ts +2 -1
  22. package/types/lodash/after.d.ts +2 -1
  23. package/types/lodash/array.d.ts +3 -1
  24. package/types/lodash/array.default.d.ts +70 -68
  25. package/types/lodash/ary.d.ts +2 -1
  26. package/types/lodash/assign.d.ts +2 -1
  27. package/types/lodash/assignIn.d.ts +2 -1
  28. package/types/lodash/assignInWith.d.ts +2 -1
  29. package/types/lodash/assignWith.d.ts +2 -1
  30. package/types/lodash/at.d.ts +2 -1
  31. package/types/lodash/attempt.d.ts +2 -1
  32. package/types/lodash/augment.d.ts +2 -2
  33. package/types/lodash/before.d.ts +2 -1
  34. package/types/lodash/bind.d.ts +2 -1
  35. package/types/lodash/bindAll.d.ts +2 -1
  36. package/types/lodash/bindKey.d.ts +2 -1
  37. package/types/lodash/cache.d.ts +14 -14
  38. package/types/lodash/camelCase.d.ts +2 -1
  39. package/types/lodash/capitalize.d.ts +2 -1
  40. package/types/lodash/castArray.d.ts +2 -1
  41. package/types/lodash/ceil.d.ts +2 -1
  42. package/types/lodash/chain.d.ts +2 -1
  43. package/types/lodash/chunk.d.ts +2 -1
  44. package/types/lodash/clamp.d.ts +2 -1
  45. package/types/lodash/clear-animation-frame.d.ts +1 -1
  46. package/types/lodash/clone.d.ts +2 -1
  47. package/types/lodash/cloneDeep.d.ts +2 -1
  48. package/types/lodash/cloneDeepWith.d.ts +2 -1
  49. package/types/lodash/cloneWith.d.ts +2 -1
  50. package/types/lodash/collection.d.ts +3 -1
  51. package/types/lodash/collection.default.d.ts +33 -31
  52. package/types/lodash/compact.d.ts +2 -1
  53. package/types/lodash/concat.d.ts +2 -1
  54. package/types/lodash/cond.d.ts +2 -1
  55. package/types/lodash/conforms.d.ts +2 -1
  56. package/types/lodash/conformsTo.d.ts +2 -1
  57. package/types/lodash/constant.d.ts +2 -1
  58. package/types/lodash/contains.d.ts +2 -2
  59. package/types/lodash/countBy.d.ts +2 -1
  60. package/types/lodash/create.d.ts +2 -1
  61. package/types/lodash/curry.d.ts +2 -1
  62. package/types/lodash/curryRight.d.ts +2 -1
  63. package/types/lodash/date.d.ts +3 -1
  64. package/types/lodash/date.default.d.ts +6 -4
  65. package/types/lodash/debounce.d.ts +4 -2
  66. package/types/lodash/deburr.d.ts +2 -1
  67. package/types/lodash/deep-mix.d.ts +2 -2
  68. package/types/lodash/defaultTo.d.ts +2 -1
  69. package/types/lodash/defaults.d.ts +2 -1
  70. package/types/lodash/defaultsDeep.d.ts +2 -1
  71. package/types/lodash/defer.d.ts +2 -1
  72. package/types/lodash/delay.d.ts +2 -1
  73. package/types/lodash/difference.d.ts +2 -1
  74. package/types/lodash/differenceBy.d.ts +2 -1
  75. package/types/lodash/differenceWith.d.ts +2 -1
  76. package/types/lodash/divide.d.ts +2 -1
  77. package/types/lodash/drop.d.ts +2 -1
  78. package/types/lodash/dropRight.d.ts +2 -1
  79. package/types/lodash/dropRightWhile.d.ts +2 -1
  80. package/types/lodash/dropWhile.d.ts +2 -1
  81. package/types/lodash/each.d.ts +2 -1
  82. package/types/lodash/eachRight.d.ts +2 -1
  83. package/types/lodash/ends-with.d.ts +3 -3
  84. package/types/lodash/endsWith.d.ts +2 -1
  85. package/types/lodash/entries.d.ts +2 -1
  86. package/types/lodash/entriesIn.d.ts +2 -1
  87. package/types/lodash/eq.d.ts +2 -1
  88. package/types/lodash/escape.d.ts +2 -1
  89. package/types/lodash/escapeRegExp.d.ts +2 -1
  90. package/types/lodash/every.d.ts +2 -1
  91. package/types/lodash/extend.d.ts +2 -1
  92. package/types/lodash/extendWith.d.ts +2 -1
  93. package/types/lodash/fill.d.ts +2 -1
  94. package/types/lodash/filter.d.ts +2 -1
  95. package/types/lodash/find-index.d.ts +2 -2
  96. package/types/lodash/find.d.ts +2 -1
  97. package/types/lodash/findIndex.d.ts +2 -1
  98. package/types/lodash/findKey.d.ts +2 -1
  99. package/types/lodash/findLast.d.ts +2 -1
  100. package/types/lodash/findLastIndex.d.ts +2 -1
  101. package/types/lodash/findLastKey.d.ts +2 -1
  102. package/types/lodash/first-value.d.ts +2 -2
  103. package/types/lodash/first.d.ts +2 -1
  104. package/types/lodash/fixed-base.d.ts +2 -2
  105. package/types/lodash/flatMap.d.ts +2 -1
  106. package/types/lodash/flatMapDeep.d.ts +2 -1
  107. package/types/lodash/flatMapDepth.d.ts +2 -1
  108. package/types/lodash/flatten-deep.d.ts +12 -12
  109. package/types/lodash/flatten.d.ts +2 -1
  110. package/types/lodash/flattenDeep.d.ts +2 -1
  111. package/types/lodash/flattenDepth.d.ts +2 -1
  112. package/types/lodash/flip.d.ts +2 -1
  113. package/types/lodash/floor.d.ts +2 -1
  114. package/types/lodash/flow.d.ts +2 -1
  115. package/types/lodash/flowRight.d.ts +2 -1
  116. package/types/lodash/for-in.d.ts +2 -2
  117. package/types/lodash/forEach.d.ts +2 -1
  118. package/types/lodash/forEachRight.d.ts +2 -1
  119. package/types/lodash/forIn.d.ts +2 -1
  120. package/types/lodash/forInRight.d.ts +2 -1
  121. package/types/lodash/forOwn.d.ts +2 -1
  122. package/types/lodash/forOwnRight.d.ts +2 -1
  123. package/types/lodash/fromPairs.d.ts +2 -1
  124. package/types/lodash/function.d.ts +3 -1
  125. package/types/lodash/function.default.d.ts +28 -26
  126. package/types/lodash/functions.d.ts +2 -1
  127. package/types/lodash/functionsIn.d.ts +2 -1
  128. package/types/lodash/get-range.d.ts +6 -6
  129. package/types/lodash/get-type.d.ts +2 -2
  130. package/types/lodash/get-wrap-behavior.d.ts +9 -9
  131. package/types/lodash/get.d.ts +2 -1
  132. package/types/lodash/group-by.d.ts +6 -6
  133. package/types/lodash/group-to-map.d.ts +8 -8
  134. package/types/lodash/group.d.ts +2 -2
  135. package/types/lodash/groupBy.d.ts +2 -1
  136. package/types/lodash/gt.d.ts +2 -1
  137. package/types/lodash/gte.d.ts +2 -1
  138. package/types/lodash/has-key.d.ts +2 -2
  139. package/types/lodash/has-value.d.ts +2 -2
  140. package/types/lodash/has.d.ts +2 -1
  141. package/types/lodash/hasIn.d.ts +2 -1
  142. package/types/lodash/head.d.ts +2 -1
  143. package/types/lodash/identity.d.ts +2 -1
  144. package/types/lodash/inRange.d.ts +2 -1
  145. package/types/lodash/includes.d.ts +2 -1
  146. package/types/lodash/index-of.d.ts +2 -2
  147. package/types/lodash/index.d.ts +304 -304
  148. package/types/lodash/indexOf.d.ts +2 -1
  149. package/types/lodash/initial.d.ts +2 -1
  150. package/types/lodash/intersection.d.ts +2 -1
  151. package/types/lodash/intersectionBy.d.ts +2 -1
  152. package/types/lodash/intersectionWith.d.ts +2 -1
  153. package/types/lodash/invert.d.ts +2 -1
  154. package/types/lodash/invertBy.d.ts +2 -1
  155. package/types/lodash/invoke.d.ts +2 -1
  156. package/types/lodash/invokeMap.d.ts +2 -1
  157. package/types/lodash/is-arguments.d.ts +2 -2
  158. package/types/lodash/is-array-like.d.ts +2 -2
  159. package/types/lodash/is-array.d.ts +2 -2
  160. package/types/lodash/is-boolean.d.ts +2 -2
  161. package/types/lodash/is-date.d.ts +2 -2
  162. package/types/lodash/is-decimal.d.ts +2 -2
  163. package/types/lodash/is-element.d.ts +6 -6
  164. package/types/lodash/is-empty.d.ts +2 -2
  165. package/types/lodash/is-equal-with.d.ts +24 -24
  166. package/types/lodash/is-equal.d.ts +2 -2
  167. package/types/lodash/is-error.d.ts +2 -2
  168. package/types/lodash/is-even.d.ts +2 -2
  169. package/types/lodash/is-finite.d.ts +1 -1
  170. package/types/lodash/is-function.d.ts +2 -2
  171. package/types/lodash/is-integer.d.ts +2 -2
  172. package/types/lodash/is-match.d.ts +2 -2
  173. package/types/lodash/is-negative.d.ts +2 -2
  174. package/types/lodash/is-nil.d.ts +2 -2
  175. package/types/lodash/is-null.d.ts +2 -2
  176. package/types/lodash/is-number-equal.d.ts +1 -1
  177. package/types/lodash/is-number.d.ts +2 -2
  178. package/types/lodash/is-object-like.d.ts +2 -2
  179. package/types/lodash/is-object.d.ts +2 -2
  180. package/types/lodash/is-odd.d.ts +2 -2
  181. package/types/lodash/is-plain-object.d.ts +2 -2
  182. package/types/lodash/is-positive.d.ts +2 -2
  183. package/types/lodash/is-prototype.d.ts +2 -2
  184. package/types/lodash/is-reg-exp.d.ts +2 -2
  185. package/types/lodash/is-segment-equal.d.ts +2 -2
  186. package/types/lodash/is-string.d.ts +2 -2
  187. package/types/lodash/is-type.d.ts +2 -2
  188. package/types/lodash/is-undefined.d.ts +2 -2
  189. package/types/lodash/isArguments.d.ts +2 -1
  190. package/types/lodash/isArray.d.ts +2 -1
  191. package/types/lodash/isArrayBuffer.d.ts +2 -1
  192. package/types/lodash/isArrayLike.d.ts +2 -1
  193. package/types/lodash/isArrayLikeObject.d.ts +2 -1
  194. package/types/lodash/isBoolean.d.ts +2 -1
  195. package/types/lodash/isBuffer.d.ts +2 -1
  196. package/types/lodash/isDate.d.ts +2 -1
  197. package/types/lodash/isElement.d.ts +2 -1
  198. package/types/lodash/isEmpty.d.ts +2 -1
  199. package/types/lodash/isEqual.d.ts +2 -1
  200. package/types/lodash/isEqualWith.d.ts +2 -1
  201. package/types/lodash/isError.d.ts +2 -1
  202. package/types/lodash/isFinite.d.ts +2 -1
  203. package/types/lodash/isFunction.d.ts +2 -1
  204. package/types/lodash/isInteger.d.ts +2 -1
  205. package/types/lodash/isLength.d.ts +2 -1
  206. package/types/lodash/isMap.d.ts +2 -1
  207. package/types/lodash/isMatch.d.ts +2 -1
  208. package/types/lodash/isMatchWith.d.ts +2 -1
  209. package/types/lodash/isNaN.d.ts +2 -1
  210. package/types/lodash/isNative.d.ts +2 -1
  211. package/types/lodash/isNil.d.ts +2 -1
  212. package/types/lodash/isNull.d.ts +2 -1
  213. package/types/lodash/isNumber.d.ts +2 -1
  214. package/types/lodash/isObject.d.ts +2 -1
  215. package/types/lodash/isObjectLike.d.ts +2 -1
  216. package/types/lodash/isPlainObject.d.ts +2 -1
  217. package/types/lodash/isRegExp.d.ts +2 -1
  218. package/types/lodash/isSafeInteger.d.ts +2 -1
  219. package/types/lodash/isSet.d.ts +2 -1
  220. package/types/lodash/isString.d.ts +2 -1
  221. package/types/lodash/isSymbol.d.ts +2 -1
  222. package/types/lodash/isTypedArray.d.ts +2 -1
  223. package/types/lodash/isUndefined.d.ts +2 -1
  224. package/types/lodash/isWeakMap.d.ts +2 -1
  225. package/types/lodash/isWeakSet.d.ts +2 -1
  226. package/types/lodash/iteratee.d.ts +2 -1
  227. package/types/lodash/join.d.ts +2 -1
  228. package/types/lodash/kebabCase.d.ts +2 -1
  229. package/types/lodash/keyBy.d.ts +2 -1
  230. package/types/lodash/keys.d.ts +2 -1
  231. package/types/lodash/keysIn.d.ts +2 -1
  232. package/types/lodash/lang.d.ts +3 -1
  233. package/types/lodash/lang.default.d.ts +61 -59
  234. package/types/lodash/last.d.ts +2 -1
  235. package/types/lodash/lastIndexOf.d.ts +2 -1
  236. package/types/lodash/lower-case.d.ts +2 -2
  237. package/types/lodash/lower-first.d.ts +2 -2
  238. package/types/lodash/lowerCase.d.ts +2 -1
  239. package/types/lodash/lowerFirst.d.ts +2 -1
  240. package/types/lodash/lt.d.ts +2 -1
  241. package/types/lodash/lte.d.ts +2 -1
  242. package/types/lodash/map-values.d.ts +6 -6
  243. package/types/lodash/map.d.ts +2 -1
  244. package/types/lodash/mapKeys.d.ts +2 -1
  245. package/types/lodash/mapValues.d.ts +2 -1
  246. package/types/lodash/matches.d.ts +2 -1
  247. package/types/lodash/matchesProperty.d.ts +2 -1
  248. package/types/lodash/math.d.ts +3 -1
  249. package/types/lodash/math.default.d.ts +20 -18
  250. package/types/lodash/max-by.d.ts +16 -16
  251. package/types/lodash/max.d.ts +2 -1
  252. package/types/lodash/maxBy.d.ts +2 -1
  253. package/types/lodash/mean.d.ts +2 -1
  254. package/types/lodash/meanBy.d.ts +2 -1
  255. package/types/lodash/memoize.d.ts +2 -1
  256. package/types/lodash/merge.d.ts +2 -1
  257. package/types/lodash/mergeWith.d.ts +2 -1
  258. package/types/lodash/method.d.ts +2 -1
  259. package/types/lodash/methodOf.d.ts +2 -1
  260. package/types/lodash/min-by.d.ts +16 -16
  261. package/types/lodash/min.d.ts +2 -1
  262. package/types/lodash/minBy.d.ts +2 -1
  263. package/types/lodash/mix.d.ts +1 -1
  264. package/types/lodash/mixin.d.ts +2 -1
  265. package/types/lodash/mod.d.ts +2 -2
  266. package/types/lodash/multiply.d.ts +2 -1
  267. package/types/lodash/negate.d.ts +2 -1
  268. package/types/lodash/noop.d.ts +2 -1
  269. package/types/lodash/now.d.ts +2 -1
  270. package/types/lodash/nth.d.ts +2 -1
  271. package/types/lodash/nthArg.d.ts +2 -1
  272. package/types/lodash/number.d.ts +3 -1
  273. package/types/lodash/number.default.d.ts +8 -6
  274. package/types/lodash/number2color.d.ts +2 -2
  275. package/types/lodash/object.d.ts +3 -1
  276. package/types/lodash/object.default.d.ts +52 -50
  277. package/types/lodash/omit.d.ts +2 -1
  278. package/types/lodash/omitBy.d.ts +2 -1
  279. package/types/lodash/once.d.ts +2 -1
  280. package/types/lodash/orderBy.d.ts +2 -1
  281. package/types/lodash/over.d.ts +2 -1
  282. package/types/lodash/overArgs.d.ts +2 -1
  283. package/types/lodash/overEvery.d.ts +2 -1
  284. package/types/lodash/overSome.d.ts +2 -1
  285. package/types/lodash/pad.d.ts +2 -1
  286. package/types/lodash/padEnd.d.ts +2 -1
  287. package/types/lodash/padStart.d.ts +2 -1
  288. package/types/lodash/parse-radius.d.ts +9 -9
  289. package/types/lodash/parseInt.d.ts +2 -1
  290. package/types/lodash/partial.d.ts +2 -1
  291. package/types/lodash/partialRight.d.ts +2 -1
  292. package/types/lodash/partition.d.ts +2 -1
  293. package/types/lodash/pick.d.ts +2 -1
  294. package/types/lodash/pickBy.d.ts +2 -1
  295. package/types/lodash/property.d.ts +4 -2
  296. package/types/lodash/propertyOf.d.ts +2 -1
  297. package/types/lodash/pull-at.d.ts +2 -2
  298. package/types/lodash/pull.d.ts +2 -1
  299. package/types/lodash/pullAll.d.ts +2 -1
  300. package/types/lodash/pullAllBy.d.ts +2 -1
  301. package/types/lodash/pullAllWith.d.ts +2 -1
  302. package/types/lodash/pullAt.d.ts +2 -1
  303. package/types/lodash/random.d.ts +2 -1
  304. package/types/lodash/range.d.ts +2 -1
  305. package/types/lodash/rangeRight.d.ts +2 -1
  306. package/types/lodash/rearg.d.ts +2 -1
  307. package/types/lodash/reduce.d.ts +2 -1
  308. package/types/lodash/reduceRight.d.ts +2 -1
  309. package/types/lodash/reject.d.ts +2 -1
  310. package/types/lodash/remove.d.ts +2 -1
  311. package/types/lodash/repeat.d.ts +2 -1
  312. package/types/lodash/replace.d.ts +2 -1
  313. package/types/lodash/request-animation-frame.d.ts +1 -1
  314. package/types/lodash/rest.d.ts +2 -1
  315. package/types/lodash/result.d.ts +2 -1
  316. package/types/lodash/reverse.d.ts +2 -1
  317. package/types/lodash/round.d.ts +2 -1
  318. package/types/lodash/sample.d.ts +2 -1
  319. package/types/lodash/sampleSize.d.ts +2 -1
  320. package/types/lodash/set.d.ts +2 -1
  321. package/types/lodash/setWith.d.ts +2 -1
  322. package/types/lodash/shuffle.d.ts +2 -1
  323. package/types/lodash/size.d.ts +2 -1
  324. package/types/lodash/slice.d.ts +2 -1
  325. package/types/lodash/snakeCase.d.ts +2 -1
  326. package/types/lodash/some.d.ts +2 -1
  327. package/types/lodash/sort-by.d.ts +7 -7
  328. package/types/lodash/sortBy.d.ts +2 -1
  329. package/types/lodash/sortedIndex.d.ts +2 -1
  330. package/types/lodash/sortedIndexBy.d.ts +2 -1
  331. package/types/lodash/sortedIndexOf.d.ts +2 -1
  332. package/types/lodash/sortedLastIndex.d.ts +2 -1
  333. package/types/lodash/sortedLastIndexBy.d.ts +2 -1
  334. package/types/lodash/sortedLastIndexOf.d.ts +2 -1
  335. package/types/lodash/sortedUniq.d.ts +2 -1
  336. package/types/lodash/sortedUniqBy.d.ts +2 -1
  337. package/types/lodash/split.d.ts +2 -1
  338. package/types/lodash/spread.d.ts +2 -1
  339. package/types/lodash/startCase.d.ts +2 -1
  340. package/types/lodash/starts-with.d.ts +3 -3
  341. package/types/lodash/startsWith.d.ts +2 -1
  342. package/types/lodash/string.d.ts +3 -1
  343. package/types/lodash/string.default.d.ts +36 -34
  344. package/types/lodash/stubArray.d.ts +2 -1
  345. package/types/lodash/stubFalse.d.ts +2 -1
  346. package/types/lodash/stubObject.d.ts +2 -1
  347. package/types/lodash/stubString.d.ts +2 -1
  348. package/types/lodash/stubTrue.d.ts +2 -1
  349. package/types/lodash/substitute.d.ts +5 -5
  350. package/types/lodash/subtract.d.ts +2 -1
  351. package/types/lodash/sum.d.ts +2 -1
  352. package/types/lodash/sumBy.d.ts +2 -1
  353. package/types/lodash/tail.d.ts +2 -1
  354. package/types/lodash/take.d.ts +2 -1
  355. package/types/lodash/takeRight.d.ts +2 -1
  356. package/types/lodash/takeRightWhile.d.ts +2 -1
  357. package/types/lodash/takeWhile.d.ts +2 -1
  358. package/types/lodash/tap.d.ts +2 -1
  359. package/types/lodash/template.d.ts +2 -1
  360. package/types/lodash/templateSettings.d.ts +2 -1
  361. package/types/lodash/throttle.d.ts +4 -2
  362. package/types/lodash/thru.d.ts +2 -1
  363. package/types/lodash/times.d.ts +2 -1
  364. package/types/lodash/to-array.d.ts +2 -2
  365. package/types/lodash/to-degree.d.ts +2 -2
  366. package/types/lodash/to-integer.d.ts +1 -1
  367. package/types/lodash/to-radian.d.ts +2 -2
  368. package/types/lodash/to-string.d.ts +2 -2
  369. package/types/lodash/toArray.d.ts +2 -1
  370. package/types/lodash/toFinite.d.ts +2 -1
  371. package/types/lodash/toInteger.d.ts +2 -1
  372. package/types/lodash/toLength.d.ts +2 -1
  373. package/types/lodash/toLower.d.ts +2 -1
  374. package/types/lodash/toNumber.d.ts +2 -1
  375. package/types/lodash/toPairs.d.ts +2 -1
  376. package/types/lodash/toPairsIn.d.ts +2 -1
  377. package/types/lodash/toPath.d.ts +2 -1
  378. package/types/lodash/toPlainObject.d.ts +2 -1
  379. package/types/lodash/toSafeInteger.d.ts +2 -1
  380. package/types/lodash/toString.d.ts +2 -1
  381. package/types/lodash/toUpper.d.ts +2 -1
  382. package/types/lodash/transform.d.ts +2 -1
  383. package/types/lodash/trim.d.ts +2 -1
  384. package/types/lodash/trimEnd.d.ts +2 -1
  385. package/types/lodash/trimStart.d.ts +2 -1
  386. package/types/lodash/truncate.d.ts +2 -1
  387. package/types/lodash/types/index.d.ts +3 -3
  388. package/types/lodash/unary.d.ts +2 -1
  389. package/types/lodash/unescape.d.ts +2 -1
  390. package/types/lodash/union.d.ts +2 -1
  391. package/types/lodash/unionBy.d.ts +2 -1
  392. package/types/lodash/unionWith.d.ts +2 -1
  393. package/types/lodash/uniq.d.ts +2 -1
  394. package/types/lodash/uniqBy.d.ts +2 -1
  395. package/types/lodash/uniqWith.d.ts +2 -1
  396. package/types/lodash/unique-id.d.ts +2 -2
  397. package/types/lodash/uniqueId.d.ts +2 -1
  398. package/types/lodash/unset.d.ts +2 -1
  399. package/types/lodash/unzip.d.ts +2 -1
  400. package/types/lodash/unzipWith.d.ts +2 -1
  401. package/types/lodash/update.d.ts +2 -1
  402. package/types/lodash/updateWith.d.ts +2 -1
  403. package/types/lodash/upper-case.d.ts +2 -2
  404. package/types/lodash/upper-first.d.ts +2 -2
  405. package/types/lodash/upperCase.d.ts +2 -1
  406. package/types/lodash/upperFirst.d.ts +2 -1
  407. package/types/lodash/util.d.ts +3 -1
  408. package/types/lodash/util.default.d.ts +37 -35
  409. package/types/lodash/values-of-key.d.ts +2 -2
  410. package/types/lodash/values.d.ts +2 -1
  411. package/types/lodash/valuesIn.d.ts +2 -1
  412. package/types/lodash/without.d.ts +2 -1
  413. package/types/lodash/words.d.ts +2 -1
  414. package/types/lodash/wrap-behavior.d.ts +9 -9
  415. package/types/lodash/wrap.d.ts +2 -1
  416. package/types/lodash/xor.d.ts +2 -1
  417. package/types/lodash/xorBy.d.ts +2 -1
  418. package/types/lodash/xorWith.d.ts +2 -1
  419. package/types/lodash/zip.d.ts +2 -1
  420. package/types/lodash/zipObject.d.ts +2 -1
  421. package/types/lodash/zipObjectDeep.d.ts +2 -1
  422. package/types/lodash/zipWith.d.ts +2 -1
  423. package/types/stats.module.d.ts +3 -3
@@ -1,17 +1,21 @@
1
- export type PluginObject = {};
2
1
  export type PluginServiceOPtions = {
3
2
  plugins?: IPlugin[];
4
3
  presets?: IPreset[];
5
4
  };
6
- export type PluginContext = {
5
+ export type PluginContext<Ctx = any, HookList extends HookListType = any, HookMethods extends Record<string, IMethod> = any> = {
7
6
  pluginName: string;
8
- register(hook: IHook): void;
9
- registerMethod(name: string, fn?: IMethod): void;
7
+ ctx: Ctx;
8
+ register<K extends keyof HookList>(hook: IHook<K, HookList[K]>): void;
9
+ registerMethod<K extends keyof HookMethods>(name: K, fn?: IMethod<Parameters<HookMethods[K]>, ReturnType<HookMethods[K]>>): void;
10
+ } & PluginMethods<HookMethods> & PluginService<Ctx, HookList, HookMethods>;
11
+ export type PluginMethods<HookMethods extends Record<string, IMethod> = any> = {
12
+ [k in Exclude<keyof HookMethods, 'pluginName' | 'register' | 'registerMethod'>]: IMethod<Parameters<HookMethods[k]>, ReturnType<HookMethods[k]>>;
10
13
  };
11
- export type IPlugin = {
14
+ export type IPlugin<Ctx = any, HookList extends HookListType = any, HookMethods extends Record<string, IMethod> = any> = {
12
15
  name: string;
13
16
  config?: any;
14
- apply: (api: PluginContext, config?: any) => void;
17
+ apply: (api: PluginContext<Ctx, HookList, HookMethods>, config?: any) => void;
18
+ dispose?: (api: PluginContext<Ctx, HookList, HookMethods>) => void;
15
19
  };
16
20
  export type IPreset = Omit<IPlugin, 'apply'> & {
17
21
  apply: (api: PluginContext, config?: any) => ({
@@ -19,10 +23,10 @@ export type IPreset = Omit<IPlugin, 'apply'> & {
19
23
  plugins?: IPlugin[];
20
24
  });
21
25
  };
22
- export type IHook = {
23
- name: string;
26
+ export type IHook<T = any, F = any> = {
27
+ name: T;
24
28
  order?: number;
25
- fn: Function;
29
+ fn: (...args: any[]) => F;
26
30
  };
27
31
  export declare enum HookType {
28
32
  create = "create",
@@ -30,32 +34,36 @@ export declare enum HookType {
30
34
  modify = "modify",
31
35
  event = "event"
32
36
  }
33
- export type HookOpts = {
34
- name: string;
37
+ export type HookOpts<T> = {
38
+ name: T;
35
39
  type?: HookType;
36
40
  initalValue?: any;
37
41
  args?: any;
38
42
  sync?: boolean;
39
43
  };
40
- export type IMethod = (...args: any[]) => void;
41
- export declare class PluginService {
44
+ export type IMethod<T extends any = any, R = any> = (...args: T extends Array<any> ? T : [T]) => R;
45
+ export type HookListType = Record<string, any>;
46
+ export declare class PluginService<Ctx, HookList extends HookListType, HookMethods extends Record<string, IMethod> = any> {
42
47
  config?: PluginServiceOPtions;
43
48
  private hooks;
44
49
  private methods;
45
50
  private plugins;
46
51
  private extraPresets;
47
52
  private extraPlugins;
48
- constructor(config?: PluginServiceOPtions);
53
+ context: Ctx;
54
+ constructor(context: Ctx, config?: PluginServiceOPtions);
49
55
  initPresetsAndPlugins(config: PluginServiceOPtions): void;
50
56
  private resolvePresets;
51
57
  private resolvePlugins;
52
- private applyMethods;
53
- private initPluginContext;
58
+ private getApplyMethods;
59
+ applyMethods<K extends Extract<keyof HookMethods, string>>(name: K, ...args: Parameters<HookMethods[K]> extends Array<any> ? Parameters<HookMethods[K]> : [Parameters<HookMethods[K]>]): ReturnType<HookMethods[K]>;
60
+ private getPluginContext;
54
61
  private initPreset;
55
62
  private initPlugin;
56
63
  registerPlugin(plugin: IPlugin | IPreset): void;
57
64
  register(hook: IHook): void;
58
- registerMethod(name: string, fn?: IMethod): void;
59
- applyPlugins<T = any>(opts: HookOpts): Promise<T | void>;
60
- destroy(): void;
65
+ registerMethod<K>(name: string, fn?: IMethod): void;
66
+ applyPlugins<K extends Extract<keyof HookList, string> = Extract<keyof HookList, string>, T = HookList[K]>(inOpts: HookOpts<K> | K): Promise<Exclude<T, void> extends never ? void : T>;
67
+ uninstallPlugin(plugin: IPlugin | IPreset): void;
68
+ dispose(): void;
61
69
  }
@@ -0,0 +1,90 @@
1
+ /**
2
+ * 对象池配置选项
3
+ */
4
+ interface PoolOptions<T> {
5
+ /** 池子最大容量 */
6
+ maxSize?: number;
7
+ /** 对象创建函数 */
8
+ create: () => T;
9
+ /** 对象重置清理函数 */
10
+ reset?: (obj: T) => void;
11
+ /** 对象验证函数(返回对象是否可用) */
12
+ validate?: (obj: T) => boolean;
13
+ /** 池子初始化时预创建的对象数量 */
14
+ preAllocate?: number;
15
+ }
16
+ /**
17
+ * 通用对象池类
18
+ * 用于管理对象的重用,减少垃圾回收压力
19
+ */
20
+ export declare class Pool<T> {
21
+ private available;
22
+ private inUse;
23
+ private maxSize;
24
+ private create;
25
+ private reset?;
26
+ private validate?;
27
+ private totalCreated;
28
+ constructor(options: PoolOptions<T>);
29
+ /**
30
+ * 从池中获取一个对象
31
+ * @returns 可用的对象
32
+ */
33
+ acquire(): T;
34
+ /**
35
+ * 释放对象回池中
36
+ * @param obj 要释放的对象
37
+ */
38
+ release(obj: T): void;
39
+ /**
40
+ * 批量释放多个对象
41
+ * @param objects 要释放的对象数组
42
+ */
43
+ releaseAll(objects: T[]): void;
44
+ /**
45
+ * 获取池子统计信息
46
+ */
47
+ getStats(): {
48
+ available: number;
49
+ inUse: number;
50
+ totalCreated: number;
51
+ maxSize: number;
52
+ };
53
+ /**
54
+ * 清空池子并释放所有资源
55
+ */
56
+ dispose(): void;
57
+ /**
58
+ * 获取当前可用的对象数量
59
+ */
60
+ get availableCount(): number;
61
+ /**
62
+ * 获取当前正在使用的对象数量
63
+ */
64
+ get inUseCount(): number;
65
+ /**
66
+ * 检查对象是否正在被使用
67
+ */
68
+ isInUse(obj: T): boolean;
69
+ }
70
+ /**
71
+ * 自动释放的包装器,使用 RAII 模式
72
+ */
73
+ declare class AutoRelease<T> {
74
+ private pool;
75
+ private obj;
76
+ constructor(pool: Pool<T>, obj: T);
77
+ get value(): T;
78
+ release(): void;
79
+ [Symbol.dispose](): void;
80
+ }
81
+ /**
82
+ * 扩展的 Pool 类,支持自动释放
83
+ */
84
+ export declare class AutoPool<T> extends Pool<T> {
85
+ /**
86
+ * 获取对象并返回自动释放包装器
87
+ */
88
+ autoAcquire(): AutoRelease<T>;
89
+ }
90
+ export {};
@@ -0,0 +1,6 @@
1
+ export type StackCursor<T> = {
2
+ current: T;
3
+ };
4
+ export declare const createCursor: <T>(defaultValue: T) => StackCursor<T>;
5
+ export declare const push: <T>(cursor: StackCursor<T>, value: T) => void;
6
+ export declare const pop: <T>(cursor: StackCursor<T>) => void;
@@ -0,0 +1,25 @@
1
+ type TransactionWrapper = {
2
+ initialize: () => void;
3
+ close: (initData: any) => void;
4
+ };
5
+ /**
6
+ * 以AOP模式执行,在前置函数与后置函数中间执行
7
+ * 给目标函数添加一系列的前置和后置函数,对目标函数进行功能增强或者代码环境保护。
8
+ * **/
9
+ export declare abstract class Transaction {
10
+ transactionWrappers: TransactionWrapper[];
11
+ wrapperInitData: any[];
12
+ constructor();
13
+ /**
14
+ *@desc 事件包装,事务都创建前置initialize函数和后置close函数
15
+ @abstract
16
+ **/
17
+ abstract getTransactionWrappers(): TransactionWrapper[];
18
+ _isInTransaction: boolean;
19
+ isInTransaction(): boolean;
20
+ reinitializeTransaction(): void;
21
+ perform(method: Function, scope: any, a?: any, b?: any, c?: any, d?: any, e?: any, f?: any): any;
22
+ initializeAll(startIndex: number): void;
23
+ closeAll(startIndex: number): void;
24
+ }
25
+ export {};
@@ -0,0 +1,22 @@
1
+ import { ReactiveNode } from './system';
2
+ export declare function getActiveSub(): ReactiveNode | undefined;
3
+ export declare function setActiveSub(sub?: ReactiveNode): ReactiveNode;
4
+ export declare function getBatchDepth(): number;
5
+ export declare function startBatch(): void;
6
+ export declare function endBatch(): void;
7
+ export declare function isSignal(fn: () => void): boolean;
8
+ export declare function isComputed(fn: () => void): boolean;
9
+ export declare function isEffect(fn: () => void): boolean;
10
+ export declare function isEffectScope(fn: () => void): boolean;
11
+ export declare function signal<T>(): {
12
+ (): T | undefined;
13
+ (value: T | undefined): void;
14
+ };
15
+ export declare function signal<T>(initialValue: T): {
16
+ (): T;
17
+ (value: T): void;
18
+ };
19
+ export declare function computed<T>(getter: (previousValue?: T) => T): () => T;
20
+ export declare function effect(fn: () => void): () => void;
21
+ export declare function effectScope(fn: () => void): () => void;
22
+ export declare function trigger(fn: () => void): void;
@@ -0,0 +1,36 @@
1
+ export interface ReactiveNode {
2
+ deps?: Link;
3
+ depsTail?: Link;
4
+ subs?: Link;
5
+ subsTail?: Link;
6
+ flags: ReactiveFlags;
7
+ }
8
+ export interface Link {
9
+ version: number;
10
+ dep: ReactiveNode;
11
+ sub: ReactiveNode;
12
+ prevSub: Link | undefined;
13
+ nextSub: Link | undefined;
14
+ prevDep: Link | undefined;
15
+ nextDep: Link | undefined;
16
+ }
17
+ export declare const enum ReactiveFlags {
18
+ None = 0,
19
+ Mutable = 1,
20
+ Watching = 2,
21
+ RecursedCheck = 4,
22
+ Recursed = 8,
23
+ Dirty = 16,
24
+ Pending = 32
25
+ }
26
+ export declare function createReactiveSystem({ update, notify, unwatched, }: {
27
+ update(sub: ReactiveNode): boolean;
28
+ notify(sub: ReactiveNode): void;
29
+ unwatched(sub: ReactiveNode): void;
30
+ }): {
31
+ link: (dep: ReactiveNode, sub: ReactiveNode, version: number) => void;
32
+ unlink: (link: Link, sub?: ReactiveNode) => Link | undefined;
33
+ propagate: (link: Link) => void;
34
+ checkDirty: (link: Link, sub: ReactiveNode) => boolean;
35
+ shallowPropagate: (link: Link) => void;
36
+ };