@schukai/monster 1.30.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (364) hide show
  1. package/CHANGELOG +17 -1
  2. package/README.md +55 -58
  3. package/example/constraints/andoperator.mjs +17 -0
  4. package/example/constraints/invalid.mjs +6 -0
  5. package/example/constraints/isarray.mjs +11 -0
  6. package/example/constraints/isobject.mjs +12 -0
  7. package/example/constraints/oroperator.mjs +15 -0
  8. package/example/constraints/valid.mjs +6 -0
  9. package/example/data/buildmap.mjs +67 -0
  10. package/example/data/datasource.mjs +7 -0
  11. package/example/data/diff.mjs +39 -0
  12. package/example/data/pathfinder-1.mjs +23 -0
  13. package/example/data/pathfinder-2.mjs +19 -0
  14. package/example/data/pipe.mjs +14 -0
  15. package/example/data/storage/restapi.mjs +11 -0
  16. package/example/data/transformer.mjs +9 -0
  17. package/example/dom/customelement.mjs +13 -0
  18. package/example/dom/theme.mjs +5 -0
  19. package/example/dom/updater.mjs +23 -0
  20. package/example/i18n/formatter.mjs +10 -0
  21. package/example/i18n/providers/fetch.mjs +5 -0
  22. package/example/i18n/translations.mjs +20 -0
  23. package/example/types/basewithoptions.mjs +10 -0
  24. package/example/types/is-1.mjs +5 -0
  25. package/example/types/is-10.mjs +6 -0
  26. package/example/types/is-2.mjs +4 -0
  27. package/example/types/is-3.mjs +4 -0
  28. package/example/types/is-4.mjs +5 -0
  29. package/example/types/is-5.mjs +4 -0
  30. package/example/types/is-6.mjs +4 -0
  31. package/example/types/is-7.mjs +4 -0
  32. package/example/types/is-8.mjs +4 -0
  33. package/example/types/is-9.mjs +6 -0
  34. package/example/types/noderecursiveiterator.mjs +32 -0
  35. package/example/types/observer.mjs +9 -0
  36. package/example/types/proxyobserver.mjs +25 -0
  37. package/example/types/queue.mjs +20 -0
  38. package/example/types/tokenlist-1.mjs +4 -0
  39. package/example/types/tokenlist-2.mjs +7 -0
  40. package/example/types/tokenlist-3.mjs +5 -0
  41. package/example/types/tokenlist-4.mjs +5 -0
  42. package/example/types/tokenlist-5.mjs +5 -0
  43. package/example/types/typeof.mjs +9 -0
  44. package/example/types/version-1.mjs +6 -0
  45. package/example/types/version-2.mjs +3 -0
  46. package/example/util/comparator.mjs +10 -0
  47. package/example/util/deadmansswitch.mjs +9 -0
  48. package/example/util/processing.mjs +17 -0
  49. package/package.json +5 -59
  50. package/source/{constants.js → constants.mjs} +7 -10
  51. package/source/constraints/{abstract.js → abstract.mjs} +8 -9
  52. package/source/constraints/{abstractoperator.js → abstractoperator.mjs} +11 -8
  53. package/source/constraints/andoperator.mjs +38 -0
  54. package/source/constraints/invalid.mjs +38 -0
  55. package/source/constraints/isarray.mjs +41 -0
  56. package/source/constraints/isobject.mjs +41 -0
  57. package/source/constraints/{namespace.js → namespace.mjs} +3 -8
  58. package/source/constraints/{oroperator.js → oroperator.mjs} +10 -42
  59. package/source/constraints/valid.mjs +38 -0
  60. package/source/data/{buildmap.js → buildmap.mjs} +18 -104
  61. package/source/data/{buildtree.js → buildtree.mjs} +11 -31
  62. package/source/data/datasource/{namespace.js → namespace.mjs} +1 -9
  63. package/source/data/datasource/restapi/namespace.mjs +8 -0
  64. package/source/data/datasource/restapi/{writeerror.js → writeerror.mjs} +8 -9
  65. package/source/data/datasource/{restapi.js → restapi.mjs} +15 -45
  66. package/source/data/datasource/storage/localstorage.mjs +45 -0
  67. package/source/data/datasource/storage/{namespace.js → namespace.mjs} +1 -9
  68. package/source/data/datasource/storage/sessionstorage.mjs +45 -0
  69. package/source/data/datasource/{storage.js → storage.mjs} +12 -35
  70. package/source/data/{datasource.js → datasource.mjs} +17 -45
  71. package/source/data/{diff.js → diff.mjs} +10 -69
  72. package/source/data/{extend.js → extend.mjs} +10 -28
  73. package/source/data/{namespace.js → namespace.mjs} +2 -8
  74. package/source/data/{pathfinder.js → pathfinder.mjs} +18 -77
  75. package/source/data/{pipe.js → pipe.mjs} +14 -46
  76. package/source/data/{transformer.js → transformer.mjs} +18 -43
  77. package/source/dom/{assembler.js → assembler.mjs} +12 -28
  78. package/source/dom/{attributes.js → attributes.mjs} +42 -253
  79. package/source/dom/{constants.js → constants.mjs} +110 -61
  80. package/source/dom/{customcontrol.js → customcontrol.mjs} +10 -17
  81. package/source/dom/{customelement.js → customelement.mjs} +55 -59
  82. package/source/dom/{events.js → events.mjs} +15 -64
  83. package/source/dom/{focusmanager.js → focusmanager.mjs} +13 -34
  84. package/source/dom/{locale.js → locale.mjs} +11 -26
  85. package/source/dom/{namespace.js → namespace.mjs} +1 -8
  86. package/source/dom/ready.mjs +63 -0
  87. package/source/dom/resource/{data.js → data.mjs} +11 -31
  88. package/source/dom/resource/link/namespace.mjs +10 -0
  89. package/source/dom/resource/link/stylesheet.mjs +35 -0
  90. package/source/dom/resource/{link.js → link.mjs} +9 -29
  91. package/source/dom/resource/namespace.mjs +8 -0
  92. package/source/dom/resource/{script.js → script.mjs} +9 -29
  93. package/source/dom/{resource.js → resource.mjs} +19 -39
  94. package/source/dom/{resourcemanager.js → resourcemanager.mjs} +17 -35
  95. package/source/dom/{template.js → template.mjs} +18 -43
  96. package/source/dom/{theme.js → theme.mjs} +14 -36
  97. package/source/dom/{updater.js → updater.mjs} +34 -68
  98. package/source/dom/{util.js → util.mjs} +17 -66
  99. package/source/dom/worker/{factory.js → factory.mjs} +13 -34
  100. package/source/dom/worker/namespace.mjs +8 -0
  101. package/source/i18n/{formatter.js → formatter.mjs} +14 -45
  102. package/source/i18n/{locale.js → locale.mjs} +15 -30
  103. package/source/i18n/{namespace.js → namespace.mjs} +1 -9
  104. package/source/i18n/provider.mjs +40 -0
  105. package/source/i18n/providers/{fetch.js → fetch.mjs} +18 -43
  106. package/source/i18n/providers/namespace.mjs +8 -0
  107. package/source/i18n/{translations.js → translations.mjs} +12 -52
  108. package/source/logging/handler/console.mjs +50 -0
  109. package/source/logging/handler/namespace.mjs +6 -0
  110. package/source/logging/{handler.js → handler.mjs} +13 -30
  111. package/source/logging/logentry.mjs +51 -0
  112. package/source/logging/{logger.js → logger.mjs} +12 -28
  113. package/source/logging/{namespace.js → namespace.mjs} +1 -9
  114. package/source/math/{namespace.js → namespace.mjs} +1 -9
  115. package/source/math/{random.js → random.mjs} +8 -34
  116. package/source/monster.mjs +114 -0
  117. package/source/text/{formatter.js → formatter.mjs} +17 -33
  118. package/source/text/{namespace.js → namespace.mjs} +1 -9
  119. package/source/types/base.mjs +31 -0
  120. package/source/types/{basewithoptions.js → basewithoptions.mjs} +17 -46
  121. package/source/types/{binary.js → binary.mjs} +10 -42
  122. package/source/types/{dataurl.js → dataurl.mjs} +12 -46
  123. package/source/types/{global.js → global.mjs} +20 -12
  124. package/source/types/{id.js → id.mjs} +10 -27
  125. package/source/types/is.mjs +225 -0
  126. package/source/types/{mediatype.js → mediatype.mjs} +13 -29
  127. package/source/types/{namespace.js → namespace.mjs} +1 -8
  128. package/source/types/{node.js → node.mjs} +11 -28
  129. package/source/types/{nodelist.js → nodelist.mjs} +17 -32
  130. package/source/types/{noderecursiveiterator.js → noderecursiveiterator.mjs} +14 -65
  131. package/source/types/{observer.js → observer.mjs} +15 -42
  132. package/source/types/{observerlist.js → observerlist.mjs} +12 -29
  133. package/source/types/{proxyobserver.js → proxyobserver.mjs} +19 -62
  134. package/source/types/{queue.js → queue.mjs} +10 -47
  135. package/source/types/randomid.mjs +45 -0
  136. package/source/types/regex.mjs +27 -0
  137. package/source/types/{stack.js → stack.mjs} +8 -24
  138. package/source/types/{tokenlist.js → tokenlist.mjs} +20 -64
  139. package/source/types/typeof.mjs +37 -0
  140. package/source/types/{uniquequeue.js → uniquequeue.mjs} +11 -27
  141. package/source/types/{uuid.js → uuid.mjs} +15 -33
  142. package/source/types/{validate.js → validate.mjs} +38 -155
  143. package/source/types/{version.js → version.mjs} +19 -62
  144. package/source/util/{clone.js → clone.mjs} +10 -28
  145. package/source/util/{comparator.js → comparator.mjs} +13 -43
  146. package/source/util/{deadmansswitch.js → deadmansswitch.mjs} +15 -40
  147. package/source/util/freeze.mjs +39 -0
  148. package/source/util/{namespace.js → namespace.mjs} +1 -9
  149. package/source/util/{processing.js → processing.mjs} +13 -51
  150. package/source/util/{trimspaces.js → trimspaces.mjs} +14 -21
  151. package/test/cases/constraint/{andoperator.js → andoperator.mjs} +3 -3
  152. package/test/cases/constraint/{invalid.js → invalid.mjs} +1 -1
  153. package/test/cases/constraint/{isarray.js → isarray.mjs} +1 -1
  154. package/test/cases/constraint/{isobject.js → isobject.mjs} +1 -1
  155. package/test/cases/constraint/{oroperator.js → oroperator.mjs} +3 -3
  156. package/test/cases/constraint/{valid.js → valid.mjs} +1 -1
  157. package/test/cases/data/{buildmap.js → buildmap.mjs} +1 -1
  158. package/test/cases/data/{buildtree.js → buildtree.mjs} +2 -2
  159. package/test/cases/data/datasource/{restapi.js → restapi.mjs} +5 -5
  160. package/test/cases/data/datasource/storage/{localstorage.js → localstorage.mjs} +5 -5
  161. package/test/cases/data/datasource/storage/{sessionstorage.js → sessionstorage.mjs} +5 -5
  162. package/test/cases/data/{datasource.js → datasource.mjs} +1 -1
  163. package/test/cases/data/{diff.js → diff.mjs} +2 -2
  164. package/test/cases/data/{extend.js → extend.mjs} +1 -1
  165. package/test/cases/data/{pathfinder.js → pathfinder.mjs} +1 -1
  166. package/test/cases/data/{pipe.js → pipe.mjs} +19 -5
  167. package/test/cases/data/{transformer.js → transformer.mjs} +14 -10
  168. package/test/cases/dom/{assembler.js → assembler.mjs} +2 -2
  169. package/test/cases/dom/{attributes.js → attributes.mjs} +2 -2
  170. package/test/cases/dom/{customcontrol.js → customcontrol.mjs} +6 -6
  171. package/test/cases/dom/{customelement.js → customelement.mjs} +6 -6
  172. package/test/cases/dom/{events.js → events.mjs} +2 -2
  173. package/test/cases/dom/{focusmanager.js → focusmanager.mjs} +3 -3
  174. package/test/cases/dom/{locale.js → locale.mjs} +2 -2
  175. package/test/cases/dom/ready.mjs +42 -0
  176. package/test/cases/dom/resource/{data.js → data.mjs} +9 -9
  177. package/test/cases/dom/resource/link/{stylesheet.js → stylesheet.mjs} +6 -6
  178. package/test/cases/dom/resource/{link.js → link.mjs} +6 -6
  179. package/test/cases/dom/resource/{script.js → script.mjs} +6 -6
  180. package/test/cases/dom/{resourcemanager.js → resourcemanager.mjs} +6 -6
  181. package/test/cases/dom/{template.js → template.mjs} +3 -3
  182. package/test/cases/dom/{theme.js → theme.mjs} +3 -3
  183. package/test/cases/dom/{updater.js → updater.mjs} +6 -6
  184. package/test/cases/dom/{util.js → util.mjs} +2 -2
  185. package/test/cases/dom/worker/{factory.js → factory.mjs} +4 -4
  186. package/test/cases/i18n/{formatter.js → formatter.mjs} +2 -2
  187. package/test/cases/i18n/{locale.js → locale.mjs} +1 -1
  188. package/test/cases/i18n/{provider.js → provider.mjs} +1 -1
  189. package/test/cases/i18n/providers/{fetch.js → fetch.mjs} +3 -3
  190. package/test/cases/i18n/{translations.js → translations.mjs} +2 -2
  191. package/test/cases/logging/handler/{console.js → console.mjs} +3 -3
  192. package/test/cases/logging/{handler.js → handler.mjs} +3 -3
  193. package/test/cases/logging/{logentry.js → logentry.mjs} +1 -1
  194. package/test/cases/logging/{logger.js → logger.mjs} +1 -1
  195. package/test/cases/math/random.mjs +101 -0
  196. package/test/cases/monster.mjs +20 -0
  197. package/test/cases/text/{formatter.js → formatter.mjs} +1 -1
  198. package/test/cases/types/{base.js → base.mjs} +1 -1
  199. package/test/cases/types/{basewithoptions.js → basewithoptions.mjs} +1 -1
  200. package/test/cases/types/{binary.js → binary.mjs} +1 -1
  201. package/test/cases/types/{dataurl.js → dataurl.mjs} +1 -1
  202. package/test/cases/types/{global.js → global.mjs} +1 -1
  203. package/test/cases/types/{id.js → id.mjs} +17 -6
  204. package/test/cases/types/{is.js → is.mjs} +20 -8
  205. package/test/cases/types/{mediatype.js → mediatype.mjs} +1 -1
  206. package/test/cases/types/{node.js → node.mjs} +3 -3
  207. package/test/cases/types/{nodelist.js → nodelist.mjs} +2 -2
  208. package/test/cases/types/{noderecursiveiterator.js → noderecursiveiterator.mjs} +3 -3
  209. package/test/cases/types/{observer.js → observer.mjs} +1 -1
  210. package/test/cases/types/{observerlist.js → observerlist.mjs} +2 -2
  211. package/test/cases/types/{proxyobserver.js → proxyobserver.mjs} +4 -4
  212. package/test/cases/types/{queue.js → queue.mjs} +1 -1
  213. package/test/cases/types/randomid.mjs +39 -0
  214. package/test/cases/types/regex.mjs +46 -0
  215. package/test/cases/types/{stack.js → stack.mjs} +1 -1
  216. package/test/cases/types/{tokenlist.js → tokenlist.mjs} +1 -1
  217. package/test/cases/types/{typeof.js → typeof.mjs} +3 -4
  218. package/test/cases/types/{uniquequeue.js → uniquequeue.mjs} +1 -1
  219. package/test/cases/types/{uuid.js → uuid.mjs} +30 -10
  220. package/test/cases/types/{validate.js → validate.mjs} +3 -4
  221. package/test/cases/types/{version.js → version.mjs} +1 -2
  222. package/test/cases/util/{clone.js → clone.mjs} +1 -1
  223. package/test/cases/util/{comparator.js → comparator.mjs} +1 -1
  224. package/test/cases/util/{deadmansswitch.js → deadmansswitch.mjs} +1 -1
  225. package/test/cases/util/{freeze.js → freeze.mjs} +1 -1
  226. package/test/cases/util/{processing.js → processing.mjs} +1 -1
  227. package/test/cases/util/{trimspaces.js → trimspaces.mjs} +1 -1
  228. package/test/util/{chai-dom.js → chai-dom.mjs} +0 -0
  229. package/test/util/{cleanupdom.js → cleanupdom.mjs} +0 -0
  230. package/test/util/{jsdom.js → jsdom.mjs} +2 -2
  231. package/test/util/{localstorage.js → localstorage.mjs} +0 -0
  232. package/test/web/import.js +77 -77
  233. package/test/web/prepare.js +0 -8
  234. package/test/web/test.html +5 -4
  235. package/test/web/tests.js +25731 -587
  236. package/dist/modules/constants.js +0 -2
  237. package/dist/modules/constraints/abstract.js +0 -2
  238. package/dist/modules/constraints/abstractoperator.js +0 -2
  239. package/dist/modules/constraints/andoperator.js +0 -2
  240. package/dist/modules/constraints/invalid.js +0 -2
  241. package/dist/modules/constraints/isarray.js +0 -2
  242. package/dist/modules/constraints/isobject.js +0 -2
  243. package/dist/modules/constraints/namespace.js +0 -2
  244. package/dist/modules/constraints/oroperator.js +0 -2
  245. package/dist/modules/constraints/valid.js +0 -2
  246. package/dist/modules/data/buildmap.js +0 -2
  247. package/dist/modules/data/buildtree.js +0 -2
  248. package/dist/modules/data/datasource/namespace.js +0 -2
  249. package/dist/modules/data/datasource/restapi/writeerror.js +0 -2
  250. package/dist/modules/data/datasource/restapi.js +0 -2
  251. package/dist/modules/data/datasource/storage/localstorage.js +0 -2
  252. package/dist/modules/data/datasource/storage/namespace.js +0 -2
  253. package/dist/modules/data/datasource/storage/sessionstorage.js +0 -2
  254. package/dist/modules/data/datasource/storage.js +0 -2
  255. package/dist/modules/data/datasource.js +0 -2
  256. package/dist/modules/data/diff.js +0 -2
  257. package/dist/modules/data/extend.js +0 -2
  258. package/dist/modules/data/namespace.js +0 -2
  259. package/dist/modules/data/pathfinder.js +0 -2
  260. package/dist/modules/data/pipe.js +0 -2
  261. package/dist/modules/data/transformer.js +0 -2
  262. package/dist/modules/dom/assembler.js +0 -2
  263. package/dist/modules/dom/attributes.js +0 -2
  264. package/dist/modules/dom/constants.js +0 -2
  265. package/dist/modules/dom/customcontrol.js +0 -2
  266. package/dist/modules/dom/customelement.js +0 -2
  267. package/dist/modules/dom/events.js +0 -2
  268. package/dist/modules/dom/focusmanager.js +0 -2
  269. package/dist/modules/dom/locale.js +0 -2
  270. package/dist/modules/dom/namespace.js +0 -2
  271. package/dist/modules/dom/resource/data.js +0 -2
  272. package/dist/modules/dom/resource/link/stylesheet.js +0 -2
  273. package/dist/modules/dom/resource/link.js +0 -2
  274. package/dist/modules/dom/resource/script.js +0 -2
  275. package/dist/modules/dom/resource.js +0 -2
  276. package/dist/modules/dom/resourcemanager.js +0 -2
  277. package/dist/modules/dom/template.js +0 -2
  278. package/dist/modules/dom/theme.js +0 -2
  279. package/dist/modules/dom/updater.js +0 -2
  280. package/dist/modules/dom/util.js +0 -2
  281. package/dist/modules/dom/worker/factory.js +0 -2
  282. package/dist/modules/i18n/formatter.js +0 -2
  283. package/dist/modules/i18n/locale.js +0 -2
  284. package/dist/modules/i18n/namespace.js +0 -2
  285. package/dist/modules/i18n/provider.js +0 -2
  286. package/dist/modules/i18n/providers/fetch.js +0 -2
  287. package/dist/modules/i18n/providers/namespace.js +0 -2
  288. package/dist/modules/i18n/translations.js +0 -2
  289. package/dist/modules/logging/handler/console.js +0 -2
  290. package/dist/modules/logging/handler/namespace.js +0 -2
  291. package/dist/modules/logging/handler.js +0 -2
  292. package/dist/modules/logging/logentry.js +0 -2
  293. package/dist/modules/logging/logger.js +0 -2
  294. package/dist/modules/logging/namespace.js +0 -2
  295. package/dist/modules/math/namespace.js +0 -2
  296. package/dist/modules/math/random.js +0 -2
  297. package/dist/modules/monster.js +0 -2
  298. package/dist/modules/namespace.js +0 -2
  299. package/dist/modules/text/formatter.js +0 -2
  300. package/dist/modules/text/namespace.js +0 -2
  301. package/dist/modules/types/base.js +0 -2
  302. package/dist/modules/types/basewithoptions.js +0 -2
  303. package/dist/modules/types/binary.js +0 -2
  304. package/dist/modules/types/dataurl.js +0 -2
  305. package/dist/modules/types/global.js +0 -2
  306. package/dist/modules/types/id.js +0 -2
  307. package/dist/modules/types/is.js +0 -2
  308. package/dist/modules/types/mediatype.js +0 -2
  309. package/dist/modules/types/namespace.js +0 -2
  310. package/dist/modules/types/node.js +0 -2
  311. package/dist/modules/types/nodelist.js +0 -2
  312. package/dist/modules/types/noderecursiveiterator.js +0 -2
  313. package/dist/modules/types/observer.js +0 -2
  314. package/dist/modules/types/observerlist.js +0 -2
  315. package/dist/modules/types/proxyobserver.js +0 -2
  316. package/dist/modules/types/queue.js +0 -2
  317. package/dist/modules/types/randomid.js +0 -2
  318. package/dist/modules/types/regex.js +0 -2
  319. package/dist/modules/types/stack.js +0 -2
  320. package/dist/modules/types/tokenlist.js +0 -2
  321. package/dist/modules/types/typeof.js +0 -2
  322. package/dist/modules/types/uniquequeue.js +0 -2
  323. package/dist/modules/types/uuid.js +0 -2
  324. package/dist/modules/types/validate.js +0 -2
  325. package/dist/modules/types/version.js +0 -2
  326. package/dist/modules/util/clone.js +0 -2
  327. package/dist/modules/util/comparator.js +0 -2
  328. package/dist/modules/util/deadmansswitch.js +0 -2
  329. package/dist/modules/util/freeze.js +0 -2
  330. package/dist/modules/util/namespace.js +0 -2
  331. package/dist/modules/util/processing.js +0 -2
  332. package/dist/modules/util/trimspaces.js +0 -2
  333. package/dist/monster.dev.js +0 -15469
  334. package/dist/monster.dev.js.map +0 -1
  335. package/dist/monster.js +0 -2
  336. package/source/constraints/andoperator.js +0 -71
  337. package/source/constraints/invalid.js +0 -63
  338. package/source/constraints/isarray.js +0 -71
  339. package/source/constraints/isobject.js +0 -72
  340. package/source/constraints/valid.js +0 -63
  341. package/source/data/datasource/storage/localstorage.js +0 -64
  342. package/source/data/datasource/storage/sessionstorage.js +0 -61
  343. package/source/dom/resource/link/stylesheet.js +0 -54
  344. package/source/i18n/provider.js +0 -58
  345. package/source/i18n/providers/namespace.js +0 -16
  346. package/source/logging/handler/console.js +0 -66
  347. package/source/logging/handler/namespace.js +0 -14
  348. package/source/logging/logentry.js +0 -68
  349. package/source/monster.js +0 -80
  350. package/source/namespace.js +0 -170
  351. package/source/types/base.js +0 -50
  352. package/source/types/is.js +0 -429
  353. package/source/types/package.d.ts +0 -1
  354. package/source/types/randomid.js +0 -60
  355. package/source/types/regex.js +0 -49
  356. package/source/types/typeof.js +0 -63
  357. package/source/util/freeze.js +0 -57
  358. package/test/cases/math/random.js +0 -82
  359. package/test/cases/monster.js +0 -23
  360. package/test/cases/namespace.js +0 -93
  361. package/test/cases/types/randomid.js +0 -24
  362. package/test/cases/types/regex.js +0 -32
  363. package/test/web/monster-dev.html +0 -22
  364. package/test/web/monster.html +0 -21
@@ -0,0 +1,101 @@
1
+ /** nodejs doesnt support window.crypt */
2
+ import {expect} from "chai"
3
+
4
+ describe('Math', function () {
5
+
6
+ let random = () => {}
7
+
8
+ before(function (done) {
9
+
10
+ let promises = []
11
+ if (!globalThis['crypto']) {
12
+ promises.push(import("@peculiar/webcrypto").then(m => {
13
+ globalThis['crypto'] = new m.Crypto();
14
+ return true;
15
+ }))
16
+ }
17
+
18
+ promises.push(import("../../../../application/source/math/random.mjs").then(m => {
19
+ random = m.random;
20
+ return true;
21
+ }))
22
+
23
+
24
+ Promise.all(promises).then(() => {
25
+ done()
26
+ });
27
+
28
+ });
29
+
30
+ describe('.random()', function () {
31
+
32
+
33
+ it('a greater b should throw error ', function () {
34
+ expect(() => random(10, 2)).to.throw(Error);
35
+ });
36
+
37
+ it(' should return a number ', function () {
38
+ let r = random();
39
+ expect(r).that.is.a('number');
40
+ });
41
+
42
+ it(' should return a number ', function () {
43
+ expect(() => random(5, 6)).to.throw(Error);
44
+ });
45
+
46
+ it(' should throw Error we cannot generate numbers larger than 53 bits.', function () {
47
+ expect(() => random(-999999999, 99999999999999999999)).to.throw(Error);
48
+ });
49
+
50
+ it(' should throw Error we cannot generate numbers larger than 53 bits.', function () {
51
+
52
+ [
53
+ [1, 100],
54
+ [500, 600],
55
+ [100, 1000]
56
+ ].forEach(function (data) {
57
+
58
+ let a = data.shift()
59
+ let b = data.shift()
60
+
61
+ let r = random(a, b);
62
+
63
+ it(r + ' should return value between ' + a + ' ' + b, function () {
64
+ expect(r >= a).to.be.true;
65
+ expect(r <= b).to.be.true;
66
+ });
67
+ });
68
+
69
+ [
70
+ [1, 100],
71
+ [500, 600],
72
+ [100, 1000]
73
+ ].forEach(function (data) {
74
+
75
+ let a = data.shift()
76
+ let b = data.shift()
77
+
78
+ let sum = 0;
79
+ const rounds = 500
80
+
81
+ for (let i = 0, max = rounds; i < max; i++) {
82
+ sum += random(a, b);
83
+ }
84
+
85
+ let avg = sum / rounds;
86
+
87
+ it(avg + ' should between ' + a + ' ' + b, function () {
88
+ expect(avg > a).to.be.true
89
+ expect(avg < b).to.be.true
90
+ })
91
+
92
+
93
+ })
94
+
95
+ })
96
+
97
+
98
+ })
99
+
100
+
101
+ })
@@ -0,0 +1,20 @@
1
+ import {expect} from "chai"
2
+ import {Version, getMonsterVersion} from "../../../application/source/types/version.mjs";
3
+
4
+ describe('Monster', function () {
5
+
6
+ describe('.getMonsterVersion()', function () {
7
+ let monsterVersion
8
+
9
+ /** don´t touch, replaced by make with package.json version */
10
+ monsterVersion = new Version('2.0.0')
11
+
12
+ let m = getMonsterVersion();
13
+
14
+ it('should ' + monsterVersion + ' is ' + m, function () {
15
+ expect(m.compareTo(monsterVersion)).is.equal(0);
16
+ });
17
+
18
+ });
19
+
20
+ });
@@ -1,5 +1,5 @@
1
1
  import {expect} from "chai"
2
- import {Formatter} from "../../../source/text/formatter.js";
2
+ import {Formatter} from "../../../../application/source/text/formatter.mjs";
3
3
 
4
4
 
5
5
  describe('Formatter', function () {
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import {expect} from "chai"
4
- import {Base} from "../../../source/types/base.js";
4
+ import {Base} from "../../../../application/source/types/base.mjs";
5
5
 
6
6
 
7
7
  describe('Base', function () {
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import {expect} from "chai"
4
- import {BaseWithOptions} from "../../../source/types/basewithoptions.js";
4
+ import {BaseWithOptions} from "../../../../application/source/types/basewithoptions.mjs";
5
5
 
6
6
 
7
7
  describe('BaseWithOptions', function () {
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  import {expect} from "chai"
4
- import {fromBinary, toBinary} from "../../../source/types/binary.js";
4
+ import {fromBinary, toBinary} from "../../../../application/source/types/binary.mjs";
5
5
 
6
6
  describe('Binary', function () {
7
7
 
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  import {expect} from "chai"
4
- import {parseDataURL} from "../../../source/types/dataurl.js";
4
+ import {parseDataURL} from "../../../../application/source/types/dataurl.mjs";
5
5
 
6
6
  describe('Dataurl', function () {
7
7
 
@@ -1,4 +1,4 @@
1
- import {getGlobal, getGlobalObject, getGlobalFunction} from "../../../source/types/global.js";
1
+ import {getGlobal, getGlobalObject, getGlobalFunction} from "../../../../application/source/types/global.mjs";
2
2
  import {expect} from "chai"
3
3
 
4
4
  describe('Global', function () {
@@ -1,15 +1,26 @@
1
- import {Monster, ID} from "../../../source/types/id.js";
1
+ import {ID} from "../../../../application/source/types/id.mjs";
2
2
  import {expect} from "chai"
3
+ import {initJSDOM} from "../../util/jsdom.mjs";
3
4
 
4
- import * as Crypto from "@peculiar/webcrypto";
5
+ describe('ID', function () {
5
6
 
6
- if (!global['crypto']) {
7
- global['crypto'] = new Crypto.Crypto();
8
- }
7
+ before(function (done) {
9
8
 
9
+ let promises = []
10
+ if(!globalThis['crypto']) {
11
+ promises.push(import("@peculiar/webcrypto").then(m => {
12
+ globalThis['crypto'] = new m.Crypto();
13
+ return true;
14
+ }))
15
+ }
10
16
 
11
- describe('ID', function () {
12
17
 
18
+ Promise.all(promises).then(() => {
19
+ done()
20
+ });
21
+
22
+ });
23
+
13
24
  describe('.toString()', function () {
14
25
  let id = new ID()
15
26
  let result = id.toString();
@@ -1,5 +1,4 @@
1
1
  import {
2
- Monster,
3
2
  isPrimitive,
4
3
  isBoolean,
5
4
  isString,
@@ -10,20 +9,33 @@ import {
10
9
  isIterable,
11
10
  isInteger,
12
11
  isSymbol
13
- } from "../../../source/types/is.js";
12
+ } from "../../../../application/source/types/is.mjs";
14
13
 
15
14
 
16
- import * as Crypto from "@peculiar/webcrypto";
17
- if(!global['crypto']) {
18
- global['crypto'] = new Crypto.Crypto();
19
- }
20
-
21
- import {ID} from "../../../source/types/id.js"
15
+ import {ID} from "../../../../application/source/types/id.mjs"
22
16
 
23
17
  import {expect} from "chai"
18
+ import {initJSDOM} from "../../util/jsdom.mjs";
24
19
 
25
20
  describe('Is', function () {
26
21
 
22
+ before(function (done) {
23
+
24
+ let promises = []
25
+ if(!globalThis['crypto']) {
26
+ promises.push(import("@peculiar/webcrypto").then(m => {
27
+ globalThis['crypto'] = new m.Crypto();
28
+ return true;
29
+ }))
30
+ }
31
+
32
+
33
+ Promise.all(promises).then(() => {
34
+ done()
35
+ });
36
+
37
+ });
38
+
27
39
  describe('.isPrimitive()', function () {
28
40
 
29
41
  [
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  import {expect} from "chai"
4
- import {MediaType, parseMediaType} from "../../../source/types/mediatype.js";
4
+ import {MediaType, parseMediaType} from "../../../../application/source/types/mediatype.mjs";
5
5
 
6
6
  describe('Dataurl', function () {
7
7
 
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  import {expect} from "chai"
4
- import {Node} from "../../../source/types/node.js";
5
- import {NodeList} from "../../../source/types/nodelist.js";
6
- import {NodeRecursiveIterator} from "../../../source/types/noderecursiveiterator.js";
4
+ import {Node} from "../../../../application/source/types/node.mjs";
5
+ import {NodeList} from "../../../../application/source/types/nodelist.mjs";
6
+ import {NodeRecursiveIterator} from "../../../../application/source/types/noderecursiveiterator.mjs";
7
7
 
8
8
  describe('NodeList', function () {
9
9
  describe('#constructor', function () {
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  import {expect} from "chai"
4
- import {Node} from "../../../source/types/node.js";
5
- import {NodeList} from "../../../source/types/nodelist.js";
4
+ import {Node} from "../../../../application/source/types/node.mjs";
5
+ import {NodeList} from "../../../../application/source/types/nodelist.mjs";
6
6
 
7
7
  describe('NodeList', function () {
8
8
  describe('#constructor', function () {
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  import {expect} from "chai"
4
- import {Node} from "../../../source/types/node.js";
5
- import {NodeList} from "../../../source/types/nodelist.js";
6
- import {NodeRecursiveIterator} from "../../../source/types/noderecursiveiterator.js";
4
+ import {Node} from "../../../../application/source/types/node.mjs";
5
+ import {NodeList} from "../../../../application/source/types/nodelist.mjs";
6
+ import {NodeRecursiveIterator} from "../../../../application/source/types/noderecursiveiterator.mjs";
7
7
 
8
8
  describe('NodeRecursiveIterator', function () {
9
9
 
@@ -1,6 +1,6 @@
1
1
  import {expect} from "chai"
2
2
 
3
- import {Monster, Observer} from "../../../source/types/observer.js";
3
+ import {Observer} from "../../../../application/source/types/observer.mjs";
4
4
 
5
5
 
6
6
  describe('Observer', function () {
@@ -1,5 +1,5 @@
1
- import {Monster, ObserverList} from "../../../source/types/observerlist.js";
2
- import {Observer} from "../../../source/types/observer.js";
1
+ import {ObserverList} from "../../../../application/source/types/observerlist.mjs";
2
+ import {Observer} from "../../../../application/source/types/observer.mjs";
3
3
  import {expect} from "chai"
4
4
 
5
5
  describe('ObserverList', function () {
@@ -1,9 +1,9 @@
1
1
  import {expect} from "chai"
2
- import {extend} from "../../../source/data/extend.js";
3
- import {isObject} from "../../../source/types/is.js";
4
- import {Observer} from "../../../source/types/observer.js";
2
+ import {extend} from "../../../../application/source/data/extend.mjs";
3
+ import {isObject} from "../../../../application/source/types/is.mjs";
4
+ import {Observer} from "../../../../application/source/types/observer.mjs";
5
5
 
6
- import {ProxyObserver} from "../../../source/types/proxyobserver.js";
6
+ import {ProxyObserver} from "../../../../application/source/types/proxyobserver.mjs";
7
7
 
8
8
  describe('ProxyObserver', function () {
9
9
 
@@ -1,5 +1,5 @@
1
1
  import {expect} from "chai"
2
- import {Queue} from "../../../source/types/queue.js";
2
+ import {Queue} from "../../../../application/source/types/queue.mjs";
3
3
 
4
4
  describe('Queue', function () {
5
5
  let queue;
@@ -0,0 +1,39 @@
1
+ import {expect} from "chai"
2
+
3
+ describe('RandomID', function () {
4
+
5
+ class RandomID {}
6
+
7
+ before(function (done) {
8
+
9
+ let promises = []
10
+ if(!globalThis['crypto']) {
11
+ promises.push(import("@peculiar/webcrypto").then(m => {
12
+ globalThis['crypto'] = new m.Crypto();
13
+ return true;
14
+ }))
15
+ }
16
+
17
+ promises.push(import("../../../../application/source/types/randomid.mjs").then(m => {
18
+ RandomID = m.RandomID;
19
+ return true;
20
+ }))
21
+
22
+ Promise.all(promises).then(() => {
23
+ done()
24
+ });
25
+
26
+ });
27
+
28
+ describe('.toString()', function () {
29
+ let id = new RandomID()
30
+ let result = id.toString();
31
+
32
+ it('should return a string', function () {
33
+ expect(result).is.a('string')
34
+ });
35
+
36
+ });
37
+
38
+ });
39
+
@@ -0,0 +1,46 @@
1
+
2
+ import {expect} from "chai"
3
+ import {escapeString} from "../../../../application/source/types/regex.mjs"
4
+ import {initJSDOM} from "../../util/jsdom.mjs";
5
+
6
+
7
+ describe('escapeString', function () {
8
+
9
+ before(function (done) {
10
+
11
+ let promises = []
12
+ promises.push(initJSDOM());
13
+ if(!globalThis['crypto']) {
14
+ promises.push(import("@peculiar/webcrypto").then(m => {
15
+ globalThis['crypto'] = new m.Crypto();
16
+ return true;
17
+ }))
18
+ }
19
+
20
+
21
+ Promise.all(promises).then(() => {
22
+ done()
23
+ });
24
+
25
+ });
26
+
27
+ [
28
+ ['test1', 'test1'],
29
+ ['${', '\\$\\{'],
30
+ ['i18n{', 'i18n\\{'],
31
+ ['//', '//'],
32
+ ['\\', '\\\\'],
33
+
34
+ ].forEach(function (data) {
35
+
36
+ let a = data.shift()
37
+ let b = data.shift()
38
+
39
+ it('escapeString(' + a + ') should return ' + b, function () {
40
+ expect(escapeString(a)).is.equal(b)
41
+ });
42
+ });
43
+
44
+
45
+ });
46
+
@@ -1,5 +1,5 @@
1
1
  import {expect} from "chai"
2
- import {Stack} from "../../../source/types/stack.js";
2
+ import {Stack} from "../../../../application/source/types/stack.mjs";
3
3
 
4
4
 
5
5
  describe('Stack', function () {
@@ -1,5 +1,5 @@
1
1
  import {expect} from "chai"
2
- import {Monster, TokenList} from "../../../source/types/tokenlist.js";
2
+ import {TokenList} from "../../../../application/source/types/tokenlist.mjs";
3
3
 
4
4
 
5
5
  describe('TokenList', function () {
@@ -1,8 +1,7 @@
1
- import {Stack} from "../../../source/types/stack.js";
1
+ import {Stack} from "../../../../application/source/types/stack.mjs";
2
2
  import {
3
- Monster,
4
3
  typeOf
5
- } from "../../../source/types/typeof.js"
4
+ } from "../../../../application/source/types/typeof.mjs"
6
5
 
7
6
  import {expect} from "chai"
8
7
 
@@ -29,7 +28,7 @@ describe('typeOf', function () {
29
28
  [[], 'array'],
30
29
  ['', 'string'],
31
30
  [new Error, 'error'],
32
- [new Stack(), 'stack']
31
+ [new Stack, 'stack']
33
32
 
34
33
  ].forEach(function (data) {
35
34
 
@@ -1,5 +1,5 @@
1
1
  import {expect} from "chai"
2
- import {Monster, UniqueQueue} from "../../../source/types/uniquequeue.js";
2
+ import {UniqueQueue} from "../../../../application/source/types/uniquequeue.mjs";
3
3
 
4
4
 
5
5
  describe('UniqueQueue', function () {
@@ -1,24 +1,44 @@
1
- import * as Crypto from "@peculiar/webcrypto";
2
1
  import {expect} from "chai"
3
- import {UUID} from "../../../source/types/uuid.js";
4
-
5
- if (!global['crypto']) {
6
- global['crypto'] = new Crypto.Crypto();
7
- }
8
-
9
2
 
10
3
  describe('UUID', function () {
11
4
 
12
- describe('.toString()', function () {
13
- let uuid = new UUID()
14
- let result = uuid.toString();
5
+ class UUID {}
6
+
7
+ before(function (done) {
8
+
9
+ let promises = []
10
+
11
+ if(!globalThis['crypto']) {
12
+ promises.push(import("@peculiar/webcrypto").then(m => {
13
+ globalThis['crypto'] = new m.Crypto();
14
+ return true;
15
+ }))
16
+ }
17
+
18
+
19
+ promises.push(import("../../../../application/source/types/uuid.mjs").then(m => {
20
+ UUID = m.UUID;
21
+ return true;
22
+ }))
23
+
24
+ Promise.all(promises).then(() => {
25
+ done()
26
+ });
15
27
 
28
+ });
29
+
30
+ describe('.toString()', function () {
16
31
  it('should return a string', function () {
32
+ let uuid = new UUID()
33
+ let result = uuid.toString();
34
+
17
35
  expect(result).is.a('string')
18
36
  expect(result.length).is.equal(36)
19
37
  });
20
38
 
21
39
  it('test format', function (done) {
40
+ let uuid = new UUID()
41
+ let result = uuid.toString();
22
42
 
23
43
  const regexExp = /^[A-F\d]{8}-[A-F\d]{4}-4[A-F\d]{3}-[89AB][A-F\d]{3}-[A-F\d]{12}$/i;
24
44
 
@@ -1,5 +1,4 @@
1
1
  import {
2
- Monster,
3
2
  validatePrimitive,
4
3
  validateBoolean,
5
4
  validateString,
@@ -10,10 +9,10 @@ import {
10
9
  validateInstance,
11
10
  validateIterable,
12
11
  validateSymbol
13
- } from "../../../source/types/validate.js"
12
+ } from "../../../../application/source/types/validate.mjs"
14
13
 
15
- import {Base} from "../../../source/types/base.js"
16
- import {ID} from "../../../source/types/id.js"
14
+ import {Base} from "../../../../application/source/types/base.mjs"
15
+ import {ID} from "../../../../application/source/types/id.mjs"
17
16
 
18
17
  import {expect} from "chai"
19
18
 
@@ -1,7 +1,6 @@
1
1
  import {
2
- Monster,
3
2
  Version
4
- } from "../../../source/types/version.js"
3
+ } from "../../../../application/source/types/version.mjs"
5
4
 
6
5
  import {expect} from "chai"
7
6
 
@@ -1,4 +1,4 @@
1
- import {clone} from "../../../source/util/clone.js";
1
+ import {clone} from "../../../../application/source/util/clone.mjs";
2
2
  import {expect} from "chai"
3
3
 
4
4
  describe('Clone', function () {
@@ -1,5 +1,5 @@
1
1
  import {expect} from "chai"
2
- import {Comparator} from "../../../source/util/comparator.js";
2
+ import {Comparator} from "../../../../application/source/util/comparator.mjs";
3
3
 
4
4
 
5
5
  describe('Comparator', function () {
@@ -1,4 +1,4 @@
1
- import {DeadMansSwitch} from "../../../source/util/deadmansswitch.js";
1
+ import {DeadMansSwitch} from "../../../../application/source/util/deadmansswitch.mjs";
2
2
 
3
3
 
4
4
  describe('DeadMansSwitch', function () {
@@ -1,5 +1,5 @@
1
1
  import {expect} from "chai"
2
- import {deepFreeze} from "../../../source/util/freeze.js";
2
+ import {deepFreeze} from "../../../../application/source/util/freeze.mjs";
3
3
 
4
4
 
5
5
  describe('deepFreeze', function () {
@@ -1,5 +1,5 @@
1
1
  import {expect} from "chai"
2
- import {Processing} from "../../../source/util/processing.js";
2
+ import {Processing} from "../../../../application/source/util/processing.mjs";
3
3
 
4
4
 
5
5
  describe('Processing', function () {
@@ -1,5 +1,5 @@
1
1
  import {expect} from "chai"
2
- import {trimSpaces} from "../../../source/util/trimspaces.js";
2
+ import {trimSpaces} from "../../../../application/source/util/trimspaces.mjs";
3
3
 
4
4
 
5
5
  describe('trimSpaces', function () {
File without changes
File without changes
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- import {extend} from "../../source/data/extend.js";
4
- import {getGlobal} from "../../source/types/global.js";
3
+ import {extend} from "../../../application/source/data/extend.mjs";
4
+ import {getGlobal} from "../../../application/source/types/global.mjs";
5
5
 
6
6
  export const isBrowser = new Function("try {return this===window;}catch(e){ return false;}");
7
7
 
File without changes