ziko 0.0.14 → 0.0.16

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 (291) hide show
  1. package/dist/ziko.cjs +13435 -11825
  2. package/dist/ziko.js +13958 -12406
  3. package/dist/ziko.min.js +2 -2
  4. package/dist/ziko.mjs +13401 -11859
  5. package/package.json +2 -1
  6. package/src/__helpers__/index.js +61 -41
  7. package/src/app/index.js +21 -12
  8. package/src/app/json-style-sheet.js +64 -0
  9. package/src/app/params.js +40 -0
  10. package/src/app/routes.js +58 -0
  11. package/src/app/spa-file-based-routing.js +74 -0
  12. package/src/app/spa.js +55 -0
  13. package/src/app/ziko-app.js +39 -0
  14. package/src/data/api/fetchdom.js +13 -13
  15. package/src/data/api/index.js +3 -3
  16. package/src/data/api/preload.js +10 -10
  17. package/src/data/converter/adoc.js +130 -130
  18. package/src/data/converter/array.js +42 -42
  19. package/src/data/converter/canvas.js +24 -24
  20. package/src/data/converter/css.js +37 -0
  21. package/src/data/converter/csv.js +32 -32
  22. package/src/data/converter/idea.txt +9 -9
  23. package/src/data/converter/index.js +37 -34
  24. package/src/data/converter/json.js +80 -80
  25. package/src/data/converter/markdown.js +95 -95
  26. package/src/data/converter/object.js +69 -69
  27. package/src/data/converter/svg.js +10 -10
  28. package/src/data/index.js +16 -73
  29. package/src/data/parser/index.js +1 -0
  30. package/src/data/parser/xml.js +46 -46
  31. package/src/data/string/patterns.js +11 -11
  32. package/src/data/string/string.js +169 -169
  33. package/src/{app/app.js → global/app/index.js} +45 -45
  34. package/src/{app → global}/component/index.js +38 -38
  35. package/src/global/globals/index.js +20 -0
  36. package/src/global/index.js +12 -0
  37. package/src/{app → global}/params/index.js +39 -39
  38. package/src/{app → global}/router/index.js +66 -66
  39. package/src/{app → global}/seo/index.js +42 -42
  40. package/src/global/style/index.js +1 -0
  41. package/src/{app → global}/themes/dark.js +884 -884
  42. package/src/{app → global}/themes/index.js +10 -10
  43. package/src/{app → global}/themes/light.js +254 -254
  44. package/src/graphics/canvas/canvas.js +188 -188
  45. package/src/graphics/canvas/elements/Basic/arc.js +42 -42
  46. package/src/graphics/canvas/elements/Basic/line.js +25 -25
  47. package/src/graphics/canvas/elements/Basic/points.js +47 -47
  48. package/src/graphics/canvas/elements/Basic/polygon.js +6 -6
  49. package/src/graphics/canvas/elements/Basic/rect.js +45 -45
  50. package/src/graphics/canvas/elements/Chart/scatter.js +2 -2
  51. package/src/graphics/canvas/elements/Element.js +114 -114
  52. package/src/graphics/canvas/elements/index.js +12 -12
  53. package/src/graphics/canvas/index.js +14 -14
  54. package/src/graphics/canvas/utils/color.js +7 -7
  55. package/src/graphics/canvas/utils/floodFill.js +57 -57
  56. package/src/graphics/index.js +68 -68
  57. package/src/graphics/svg/Elements/Basic/circle.js +25 -25
  58. package/src/graphics/svg/Elements/Basic/ellipse.js +20 -20
  59. package/src/graphics/svg/Elements/Basic/foreignObject.js +32 -32
  60. package/src/graphics/svg/Elements/Basic/groupe.js +29 -29
  61. package/src/graphics/svg/Elements/Basic/image.js +32 -32
  62. package/src/graphics/svg/Elements/Basic/line.js +28 -28
  63. package/src/graphics/svg/Elements/Basic/link.js +30 -30
  64. package/src/graphics/svg/Elements/Basic/path.js +58 -58
  65. package/src/graphics/svg/Elements/Basic/polygon.js +31 -31
  66. package/src/graphics/svg/Elements/Basic/polyline.js +3 -3
  67. package/src/graphics/svg/Elements/Basic/rect.js +42 -42
  68. package/src/graphics/svg/Elements/Basic/text.js +25 -25
  69. package/src/graphics/svg/Elements/Derived/grid.js +8 -8
  70. package/src/graphics/svg/Elements/ZikoSvgElement.js +46 -46
  71. package/src/graphics/svg/Elements/index.js +14 -14
  72. package/src/graphics/svg/index.js +1 -1
  73. package/src/graphics/svg/svg.js +114 -114
  74. package/src/index.js +84 -88
  75. package/src/math/calculus/derivation/index.js +7 -0
  76. package/src/math/calculus/index.js +2 -1
  77. package/src/math/calculus/special-functions/bessel.js +30 -30
  78. package/src/math/calculus/special-functions/beta.js +37 -37
  79. package/src/math/calculus/special-functions/gamma.js +29 -29
  80. package/src/math/calculus/special-functions/index.js +4 -4
  81. package/src/math/complex/index.js +202 -202
  82. package/src/math/const.js +2 -2
  83. package/src/math/discret/Combinaison/index.js +33 -33
  84. package/src/math/discret/Conversion/index.js +85 -85
  85. package/src/math/discret/Logic/index.js +45 -45
  86. package/src/math/discret/Permutation/index.js +30 -30
  87. package/src/math/discret/Set/index.js +1 -1
  88. package/src/math/discret/Set/power-set.js +14 -14
  89. package/src/math/discret/Set/sub-set.js +10 -10
  90. package/src/math/discret/index.js +12 -23
  91. package/src/math/functions/helper.js +20 -0
  92. package/src/math/functions/index.js +161 -181
  93. package/src/math/index.js +32 -189
  94. package/src/math/matrix/Decomposition.js +90 -90
  95. package/src/math/matrix/LinearSystem.js +9 -9
  96. package/src/math/matrix/Matrix.js +716 -716
  97. package/src/math/matrix/index.js +2 -2
  98. package/src/math/random/index.js +172 -172
  99. package/src/math/signal/__np.py.txt +39 -39
  100. package/src/math/signal/conv.js +174 -174
  101. package/src/math/signal/fft.js +54 -54
  102. package/src/math/signal/filter.js +38 -38
  103. package/src/math/signal/functions.js +145 -145
  104. package/src/math/signal/index.js +109 -109
  105. package/src/math/statistics/Functions/index.js +99 -99
  106. package/src/math/statistics/index.js +15 -15
  107. package/src/math/utils/arithmetic.js +138 -138
  108. package/src/math/utils/checkers.js +29 -29
  109. package/src/math/utils/conversions.js +19 -19
  110. package/src/math/utils/discret.js +51 -51
  111. package/src/math/utils/index.js +101 -101
  112. package/src/math/utils/mapfun.js +49 -49
  113. package/src/reactivity/events/{Partiel/Input.js → Input.js} +62 -59
  114. package/src/reactivity/events/{Global/Pointer.js → Pointer.js} +232 -234
  115. package/src/reactivity/events/ZikoEvent.js +90 -90
  116. package/src/reactivity/events/{Global/Click.js → click.js} +60 -56
  117. package/src/reactivity/events/{Global/Clipboard.js → clipboard.js} +88 -84
  118. package/src/reactivity/events/{Global/CustomEvent.js → custom-event.js} +57 -53
  119. package/src/reactivity/events/{Global/Drag.js → drag.js} +136 -136
  120. package/src/reactivity/events/{Global/Focus.js → focus.js} +59 -56
  121. package/src/reactivity/events/{Partiel/Hash.js → hash.js} +47 -44
  122. package/src/reactivity/events/index.js +62 -62
  123. package/src/reactivity/events/{Global/Key.js → key.js} +102 -104
  124. package/src/reactivity/events/{Global/Mouse.js → mouse.js} +233 -230
  125. package/src/reactivity/events/{Global/Swipe.js → swipe.js} +149 -147
  126. package/src/reactivity/events/{Global/Wheel.js → wheel.js} +47 -44
  127. package/src/reactivity/hooks/{Contexte → contexte}/useSuccesifKeys.js +13 -13
  128. package/src/reactivity/hooks/{Decorators → decorators}/index.js +6 -6
  129. package/src/reactivity/hooks/{Decorators → decorators}/time.js +16 -16
  130. package/src/reactivity/hooks/{Decorators → decorators}/type.js +87 -87
  131. package/src/reactivity/hooks/head/index.js +5 -0
  132. package/src/reactivity/hooks/{UI → head}/useCssText.js +21 -21
  133. package/src/reactivity/hooks/{UI → head}/useFavIcon.js +37 -37
  134. package/src/reactivity/hooks/head/useHead.js +28 -0
  135. package/src/reactivity/hooks/head/useMeta.js +52 -0
  136. package/src/reactivity/hooks/{UI → head}/useTitle.js +29 -29
  137. package/src/reactivity/hooks/index.js +91 -85
  138. package/src/reactivity/hooks/{Interactions → interactions}/index.js +3 -3
  139. package/src/reactivity/hooks/{Interactions → interactions}/useBluetooth.js +47 -47
  140. package/src/reactivity/hooks/{Interactions → interactions}/useChannel.js +49 -49
  141. package/src/reactivity/hooks/{Interactions → interactions}/useEventEmmiter.js +63 -63
  142. package/src/reactivity/hooks/{Interactions → interactions}/useThread.js +43 -43
  143. package/src/reactivity/hooks/sensors/index.js +2 -0
  144. package/src/reactivity/hooks/{Sensors → sensors}/useBattery.js +35 -35
  145. package/src/reactivity/hooks/{Sensors → sensors}/useGeolocation.js +16 -16
  146. package/src/reactivity/hooks/{Storage → storage}/useStorage.js +72 -72
  147. package/src/reactivity/hooks/todo.md +26 -26
  148. package/src/reactivity/hooks/ui/index.js +5 -0
  149. package/src/reactivity/hooks/{UI → ui}/useMediaQuery.js +43 -43
  150. package/src/reactivity/hooks/{UI → ui}/useStyle.js +79 -79
  151. package/src/reactivity/hooks/{UI → ui}/useTheme.js +61 -61
  152. package/src/reactivity/idea +1 -1
  153. package/src/reactivity/index.js +11 -21
  154. package/src/reactivity/observer/attributes.js +28 -28
  155. package/src/reactivity/observer/children.js +36 -36
  156. package/src/reactivity/observer/index.js +6 -44
  157. package/src/reactivity/observer/intersection.js +43 -43
  158. package/src/reactivity/observer/mutation.js +112 -112
  159. package/src/reactivity/observer/resize.js +46 -46
  160. package/src/reactivity/observer/screen.js +44 -44
  161. package/src/reactivity/observer/screen.js.txt +83 -83
  162. package/src/reactivity/observer/screen.txt +12 -12
  163. package/src/time/animation.js +75 -75
  164. package/src/time/index.js +12 -54
  165. package/src/time/loop.js +87 -87
  166. package/src/time/utils/decorators.js +16 -16
  167. package/src/time/utils/ease.js +143 -143
  168. package/src/time/utils/index.js +17 -17
  169. package/src/time/utils/performance.js +15 -15
  170. package/src/time/utils/ui.js +25 -25
  171. package/src/types.js +73 -71
  172. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/accordion/accordion.js +42 -45
  173. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/accordion/collapsible.js +82 -82
  174. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/accordion/index.js +1 -1
  175. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/alert/alert.js +80 -80
  176. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/alert/palette.js +51 -51
  177. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/carousel/index.js +50 -50
  178. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/code-note/SubElements.js.txt +104 -104
  179. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/code-note/code-cell.js +194 -194
  180. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/code-note/code-note.js +71 -71
  181. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/code-note/index.js +1 -1
  182. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/code-note/sub-elements.js +66 -66
  183. package/src/{user-interface → ui}/elements/derived/elements/Swipper.js +3 -3
  184. package/src/{user-interface → ui}/elements/derived/elements/index.js +9 -9
  185. package/src/{user-interface/elements/derived/Flex.js → ui/elements/derived/flex/index.js} +102 -102
  186. package/src/{user-interface/elements/derived/Grid.js → ui/elements/derived/grid/index.js} +32 -32
  187. package/src/ui/elements/derived/index.js +12 -0
  188. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/menu/menu3d.js +259 -259
  189. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/modal/index.js +91 -91
  190. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/pagination/breadcrumbs.js +53 -53
  191. package/src/ui/elements/derived/slider/__ZikoUISlider__.js +112 -0
  192. package/src/ui/elements/derived/slider/hSlider.js +34 -0
  193. package/src/ui/elements/derived/slider/index.js +12 -0
  194. package/src/ui/elements/derived/slider/vSlider.js +27 -0
  195. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/splitter/__ZikoUISplitter__.js +61 -61
  196. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/splitter/hsplitter.js +39 -39
  197. package/src/ui/elements/derived/splitter/index.js +12 -0
  198. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/splitter/vsplitter.js +39 -39
  199. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/tabs/index.js +179 -179
  200. package/src/{user-interface → ui}/elements/primitives/ZikoUIContainerElement.js +126 -126
  201. package/src/{user-interface → ui}/elements/primitives/ZikoUIElement.js +492 -480
  202. package/src/{user-interface → ui}/elements/primitives/embaded/html.js +19 -20
  203. package/src/{user-interface → ui}/elements/primitives/embaded/index.js +3 -3
  204. package/src/{user-interface → ui}/elements/primitives/embaded/pdf.js +16 -17
  205. package/src/{user-interface → ui}/elements/primitives/embaded/youtube.js +23 -25
  206. package/src/{user-interface → ui}/elements/primitives/index.js +7 -7
  207. package/src/{user-interface → ui}/elements/primitives/io/Form/index.js +41 -41
  208. package/src/{user-interface → ui}/elements/primitives/io/Form/index.js.txt +104 -104
  209. package/src/{user-interface → ui}/elements/primitives/io/Inputs/__helpers__.js +51 -51
  210. package/src/{user-interface → ui}/elements/primitives/io/Inputs/index.js +12 -12
  211. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input/index.js +98 -98
  212. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-camera/index.js +26 -26
  213. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-checkbox/index.js +25 -25
  214. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-color/index.js +15 -15
  215. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-date-time/index.js +2 -2
  216. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-date-time/input-date-time.js +13 -13
  217. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-date-time/input-date.js +13 -13
  218. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-date-time/input-time.js +13 -13
  219. package/src/ui/elements/primitives/io/Inputs/input-email-password/index.js +2 -0
  220. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-email-password/input-email.js +14 -14
  221. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-email-password/input-password.js +13 -13
  222. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-file/input-image.js +42 -42
  223. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-number/index.js +36 -36
  224. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-radio/index.js +25 -25
  225. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-search/index.js +45 -45
  226. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-slider/index.js +34 -34
  227. package/src/{user-interface → ui}/elements/primitives/io/Select/index.js +19 -19
  228. package/src/{user-interface → ui}/elements/primitives/io/Textarea/index.js +17 -17
  229. package/src/{user-interface → ui}/elements/primitives/io/index.js +3 -3
  230. package/src/{user-interface → ui}/elements/primitives/list/index.js +138 -138
  231. package/src/{user-interface → ui}/elements/primitives/media/Audio/index.js +16 -16
  232. package/src/{user-interface → ui}/elements/primitives/media/Image/figure.js +18 -18
  233. package/src/{user-interface → ui}/elements/primitives/media/Image/image.js +36 -36
  234. package/src/ui/elements/primitives/media/Image/index.js +2 -0
  235. package/src/{user-interface → ui}/elements/primitives/media/Video/index.js +26 -26
  236. package/src/{user-interface → ui}/elements/primitives/media/__ZikoUIDynamicMediaELement__.js +46 -46
  237. package/src/{user-interface → ui}/elements/primitives/media/index.js +2 -2
  238. package/src/{user-interface → ui}/elements/primitives/misc/index.js +101 -100
  239. package/src/ui/elements/primitives/misc/xml-wrapper.js +37 -0
  240. package/src/{user-interface → ui}/elements/primitives/semantic/index.js +81 -81
  241. package/src/{user-interface → ui}/elements/primitives/table/elements.js +93 -93
  242. package/src/ui/elements/primitives/table/index.js +3 -0
  243. package/src/{user-interface → ui}/elements/primitives/table/table.js +115 -115
  244. package/src/{user-interface → ui}/elements/primitives/table/utils.js +11 -11
  245. package/src/{user-interface → ui}/elements/primitives/text/__ZikoUIText__.js +71 -71
  246. package/src/{user-interface → ui}/elements/primitives/text/heading.js +35 -35
  247. package/src/{user-interface → ui}/elements/primitives/text/index.js +2 -2
  248. package/src/{user-interface → ui}/elements/primitives/text/p.js +26 -26
  249. package/src/{user-interface → ui}/elements/primitives/text/text.js +80 -80
  250. package/src/ui/index.js +29 -0
  251. package/src/{user-interface → ui}/style/index.js +515 -509
  252. package/src/{user-interface → ui}/utils/index.js +69 -69
  253. package/src/reactivity/events/Global/Touch.js +0 -0
  254. package/src/reactivity/hooks/Sensors/index.js +0 -2
  255. package/src/reactivity/hooks/UI/index.js +0 -5
  256. package/src/user-interface/elements/derived/elements/splitter/index.js +0 -2
  257. package/src/user-interface/elements/derived/index.js +0 -3
  258. package/src/user-interface/elements/primitives/io/Inputs/input-email-password/index.js +0 -2
  259. package/src/user-interface/elements/primitives/media/Image/index.js +0 -2
  260. package/src/user-interface/elements/primitives/table/index.js +0 -3
  261. package/src/user-interface/index.js +0 -190
  262. /package/src/app/{globals/index.js → globals.js} +0 -0
  263. /package/src/reactivity/events/{Partiel/Media.js → media.js} +0 -0
  264. /package/src/{app/accessibility/index.js → reactivity/events/touch.js} +0 -0
  265. /package/src/reactivity/hooks/{Contexte → contexte}/index.js +0 -0
  266. /package/src/reactivity/hooks/{Interactions → interactions}/useSerial.js +0 -0
  267. /package/src/reactivity/hooks/{Interactions → interactions}/useUsb.js +0 -0
  268. /package/src/reactivity/hooks/{Sensors → sensors}/useCamera.js +0 -0
  269. /package/src/reactivity/hooks/{Sensors → sensors}/useMicro.js +0 -0
  270. /package/src/reactivity/hooks/{Sensors → sensors}/useOrientation.js +0 -0
  271. /package/src/reactivity/hooks/{Storage → storage}/index.js +0 -0
  272. /package/src/reactivity/hooks/{Storage → storage}/useCookie.js +0 -0
  273. /package/src/reactivity/hooks/{Storage → storage}/useIndexedDb.js +0 -0
  274. /package/src/reactivity/hooks/{UI → ui}/useCssLink.js +0 -0
  275. /package/src/reactivity/hooks/{UI → ui}/useLinearGradient.js +0 -0
  276. /package/src/reactivity/hooks/{UI → ui}/useRadialGradient.js +0 -0
  277. /package/src/{user-interface/elements/derived/elements → ui/elements/derived}/alert/index.js +0 -0
  278. /package/src/{user-interface → ui}/elements/derived/elements/Notification.js +0 -0
  279. /package/src/{user-interface → ui}/elements/derived/elements/Popover.js +0 -0
  280. /package/src/{user-interface → ui}/elements/derived/elements/Popup.js +0 -0
  281. /package/src/{user-interface → ui}/elements/derived/elements/Timeline.js +0 -0
  282. /package/src/{user-interface → ui}/elements/derived/elements/Toast.js +0 -0
  283. /package/src/{user-interface → ui}/elements/derived/elements/Treeview.js +0 -0
  284. /package/src/{user-interface → ui}/elements/derived/elements/columns.js +0 -0
  285. /package/src/{user-interface → ui}/elements/derived/elements/fab.js +0 -0
  286. /package/src/{user-interface/elements/derived/elements → ui/elements/derived}/menu/index.js +0 -0
  287. /package/src/{user-interface/elements/derived/elements → ui/elements/derived}/pagination/index.js +0 -0
  288. /package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-file/index.js +0 -0
  289. /package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-file/input-file.js +0 -0
  290. /package/src/{user-interface → ui}/elements/primitives/list/elements.js +0 -0
  291. /package/src/{user-interface → ui}/elements/primitives/text/pre.js +0 -0
@@ -1,3 +1,3 @@
1
- export * from "./Matrix.js"
2
- export * from "./Decomposition.js"
1
+ export * from "./Matrix.js"
2
+ export * from "./Decomposition.js"
3
3
  export * from "./LinearSystem.js"
@@ -1,173 +1,173 @@
1
-
2
- import{Complex}from"../complex/index.js"
3
- import { Utils } from "../utils/index.js";
4
- import{Base}from"../discret/index.js"
5
- import { matrix } from "../matrix/index.js";
6
- class Random {
7
- static float(a = 1, b) {
8
- return b ? Math.random() * (b - a) + a : a * Math.random();
9
- }
10
- static int(a, b) {
11
- return Math.floor(this.float(a, b));
12
- }
13
- static char(upperCase){
14
- upperCase=upperCase??this.bool();
15
- const Char=String.fromCharCode(this.int(97,120));
16
- return upperCase?Char.toUpperCase():Char;
17
- }
18
- static bool(){
19
- return [false,true][Math.floor(Math.random()*2)];
20
- }
21
- static string(length,upperCase){
22
- return length instanceof Array?
23
- new Array(this.int(...length)).fill(0).map(() => this.char(upperCase)).join(""):
24
- new Array(length).fill(0).map(() => this.char(upperCase)).join("");
25
- }
26
- static bin() {
27
- return this.int(2);
28
- }
29
- static oct() {
30
- return this.int(8);
31
- }
32
- static dec() {
33
- return this.int(8);
34
- }
35
- static hex() {
36
- return this.int(16);
37
- }
38
- static choice(choices = [1, 2, 3], p = new Array(choices.length).fill(1 / choices.length)) {
39
- let newchoice = new Array(100);
40
- p=Utils.accum(...p).map(n=>n*100)
41
- newchoice.fill(choices[0], 0, p[0]);
42
- for (let i = 1; i < choices.length; i++) newchoice.fill(choices[i], p[i - 1], p[i]);
43
- return newchoice[this.int(newchoice.length - 1)];
44
- }
45
- static shuffleArr(arr){
46
- return arr.sort(()=>0.5-Math.random())
47
- }
48
- static shuffleMatrix(M){
49
- const {rows,cols,arr}=M;
50
- return matrix(rows,cols,arr.flat().sort(()=>0.5-Math.random()))
51
- }
52
- static floats(n, a, b) {
53
- return new Array(n).fill(0).map(() => this.float(a, b));
54
- }
55
- static ints(n, a, b) {
56
- return new Array(n).fill(0).map(() => this.int(a, b));
57
- }
58
- static bools(n){
59
- return new Array(n).fill(0).map(() => this.bool());
60
- }
61
- static bins(n) {
62
- return new Array(n).fill(0).map(() => this.int(2));
63
- }
64
- static octs(n) {
65
- return new Array(n).fill(0).map(() => this.int(8));
66
- }
67
- static decs(n) {
68
- return new Array(n).fill(0).map(() => this.int(10));
69
- }
70
- static hexs(n) {
71
- return new Array(n).fill(0).map(() => this.int(16));
72
- }
73
- static choices(n, choices, p) {
74
- return new Array(n).fill(0).map(() => this.choice(choices, p));
75
- }
76
- static perm(...arr) {
77
- // permutation
78
- return arr.permS[this.int(arr.length)];
79
- }
80
- static color() {
81
- return "#" + Base.dec2hex(this.float(16777216)).padStart(6,0);
82
- }
83
- static colors(n) {
84
- return new Array(n).fill(null).map(()=>this.color());
85
- }
86
- static complex(a = [0,1], b = [0,1]) {
87
- return a instanceof Array?
88
- new Complex(
89
- this.float(a[0], a[1]),
90
- this.float(b[0], b[1])
91
- ):
92
- new Complex(
93
- ...this.floats(2,a,b)
94
- )
95
-
96
- }
97
- static complexInt(a = [0,1], b = [0,1]) {
98
- return new Complex(
99
- this.int(a[0], a[1]),
100
- this.int(b[0], b[1])
101
- );
102
- }
103
- static complexBin() {
104
- return new Complex(...this.bins(2));
105
- }
106
- static complexOct() {
107
- return new Complex(...this.octs(2));
108
- }
109
- static complexDec() {
110
- return new Complex(...this.decs(10));
111
- }
112
- static complexHex() {
113
- return new Complex(...this.octs(2));
114
- }
115
- static complexes(n, a = 0, b = 1) {
116
- return new Array(n).fill(0).map(() => this.complex(a, b));
117
- }
118
- static complexesInt(n, a = 0, b = 1) {
119
- return new Array(n).fill(0).map(() => this.complexInt(a, b));
120
- }
121
- static complexesBin(n) {
122
- return new Array(n).fill(0).map(() => this.complexBin());
123
- }
124
- static complexesOct(n) {
125
- return new Array(n).fill(0).map(() => this.complexOct());
126
- }
127
- static complexesDec(n) {
128
- return new Array(n).fill(0).map(() => this.complexDec());
129
- }
130
- static complexesHex(n) {
131
- return new Array(n).fill(0).map(() => this.complexHex());
132
- }
133
- static matrix(r,c,min,max){
134
- return matrix(r,c,this.floats(r*c,min,max))
135
- }
136
- static matrixInt(r,c,min,max){
137
- return matrix(r,c,this.ints(r*c,min,max))
138
- }
139
- static matrixBin(r,c){
140
- return matrix(r,c,this.bins(r*c))
141
- }
142
- static matrixOct(r,c){
143
- return matrix(r,c,this.octs(r*c))
144
- }
145
- static matrixDec(r,c){
146
- return matrix(r,c,this.decs(r*c))
147
- }
148
- static matrixHex(r,c){
149
- return matrix(r,c,this.hex(r*c))
150
- }
151
- static matrixColor(r,c){
152
- return matrix(r,c,this.colors(r*c))
153
- }
154
- static matrixComplex(r,c,a,b){
155
- return matrix(r,c,this.complexes(r*c,a,b))
156
- }
157
- static matrixComplexInt(r,c,a,b){
158
- return matrix(r,c,this.complexesInt(r*c,a,b))
159
- }
160
- static matrixComplexBin(r,c){
161
- return matrix(r,c,this.complexesBin(r*c))
162
- }
163
- static matrixComplexOct(r,c){
164
- return matrix(r,c,this.complexesBin(r*c))
165
- }
166
- static matrixComplexDec(r,c){
167
- return matrix(r,c,this.complexesBin(r*c))
168
- }
169
- static matrixComplexHex(r,c){
170
- return matrix(r,c,this.complexesBin(r*c))
171
- }
172
- }
1
+
2
+ import{Complex}from"../complex/index.js"
3
+ import { Utils } from "../utils/index.js";
4
+ import{Base}from"../discret/index.js"
5
+ import { matrix } from "../matrix/index.js";
6
+ class Random {
7
+ static float(a = 1, b) {
8
+ return b ? Math.random() * (b - a) + a : a * Math.random();
9
+ }
10
+ static int(a, b) {
11
+ return Math.floor(this.float(a, b));
12
+ }
13
+ static char(upperCase){
14
+ upperCase=upperCase??this.bool();
15
+ const Char=String.fromCharCode(this.int(97,120));
16
+ return upperCase?Char.toUpperCase():Char;
17
+ }
18
+ static bool(){
19
+ return [false,true][Math.floor(Math.random()*2)];
20
+ }
21
+ static string(length,upperCase){
22
+ return length instanceof Array?
23
+ new Array(this.int(...length)).fill(0).map(() => this.char(upperCase)).join(""):
24
+ new Array(length).fill(0).map(() => this.char(upperCase)).join("");
25
+ }
26
+ static bin() {
27
+ return this.int(2);
28
+ }
29
+ static oct() {
30
+ return this.int(8);
31
+ }
32
+ static dec() {
33
+ return this.int(8);
34
+ }
35
+ static hex() {
36
+ return this.int(16);
37
+ }
38
+ static choice(choices = [1, 2, 3], p = new Array(choices.length).fill(1 / choices.length)) {
39
+ let newchoice = new Array(100);
40
+ p=Utils.accum(...p).map(n=>n*100)
41
+ newchoice.fill(choices[0], 0, p[0]);
42
+ for (let i = 1; i < choices.length; i++) newchoice.fill(choices[i], p[i - 1], p[i]);
43
+ return newchoice[this.int(newchoice.length - 1)];
44
+ }
45
+ static shuffleArr(arr){
46
+ return arr.sort(()=>0.5-Math.random())
47
+ }
48
+ static shuffleMatrix(M){
49
+ const {rows,cols,arr}=M;
50
+ return matrix(rows,cols,arr.flat().sort(()=>0.5-Math.random()))
51
+ }
52
+ static floats(n, a, b) {
53
+ return new Array(n).fill(0).map(() => this.float(a, b));
54
+ }
55
+ static ints(n, a, b) {
56
+ return new Array(n).fill(0).map(() => this.int(a, b));
57
+ }
58
+ static bools(n){
59
+ return new Array(n).fill(0).map(() => this.bool());
60
+ }
61
+ static bins(n) {
62
+ return new Array(n).fill(0).map(() => this.int(2));
63
+ }
64
+ static octs(n) {
65
+ return new Array(n).fill(0).map(() => this.int(8));
66
+ }
67
+ static decs(n) {
68
+ return new Array(n).fill(0).map(() => this.int(10));
69
+ }
70
+ static hexs(n) {
71
+ return new Array(n).fill(0).map(() => this.int(16));
72
+ }
73
+ static choices(n, choices, p) {
74
+ return new Array(n).fill(0).map(() => this.choice(choices, p));
75
+ }
76
+ static perm(...arr) {
77
+ // permutation
78
+ return arr.permS[this.int(arr.length)];
79
+ }
80
+ static color() {
81
+ return "#" + Base.dec2hex(this.float(16777216)).padStart(6,0);
82
+ }
83
+ static colors(n) {
84
+ return new Array(n).fill(null).map(()=>this.color());
85
+ }
86
+ static complex(a = [0,1], b = [0,1]) {
87
+ return a instanceof Array?
88
+ new Complex(
89
+ this.float(a[0], a[1]),
90
+ this.float(b[0], b[1])
91
+ ):
92
+ new Complex(
93
+ ...this.floats(2,a,b)
94
+ )
95
+
96
+ }
97
+ static complexInt(a = [0,1], b = [0,1]) {
98
+ return new Complex(
99
+ this.int(a[0], a[1]),
100
+ this.int(b[0], b[1])
101
+ );
102
+ }
103
+ static complexBin() {
104
+ return new Complex(...this.bins(2));
105
+ }
106
+ static complexOct() {
107
+ return new Complex(...this.octs(2));
108
+ }
109
+ static complexDec() {
110
+ return new Complex(...this.decs(10));
111
+ }
112
+ static complexHex() {
113
+ return new Complex(...this.octs(2));
114
+ }
115
+ static complexes(n, a = 0, b = 1) {
116
+ return new Array(n).fill(0).map(() => this.complex(a, b));
117
+ }
118
+ static complexesInt(n, a = 0, b = 1) {
119
+ return new Array(n).fill(0).map(() => this.complexInt(a, b));
120
+ }
121
+ static complexesBin(n) {
122
+ return new Array(n).fill(0).map(() => this.complexBin());
123
+ }
124
+ static complexesOct(n) {
125
+ return new Array(n).fill(0).map(() => this.complexOct());
126
+ }
127
+ static complexesDec(n) {
128
+ return new Array(n).fill(0).map(() => this.complexDec());
129
+ }
130
+ static complexesHex(n) {
131
+ return new Array(n).fill(0).map(() => this.complexHex());
132
+ }
133
+ static matrix(r,c,min,max){
134
+ return matrix(r,c,this.floats(r*c,min,max))
135
+ }
136
+ static matrixInt(r,c,min,max){
137
+ return matrix(r,c,this.ints(r*c,min,max))
138
+ }
139
+ static matrixBin(r,c){
140
+ return matrix(r,c,this.bins(r*c))
141
+ }
142
+ static matrixOct(r,c){
143
+ return matrix(r,c,this.octs(r*c))
144
+ }
145
+ static matrixDec(r,c){
146
+ return matrix(r,c,this.decs(r*c))
147
+ }
148
+ static matrixHex(r,c){
149
+ return matrix(r,c,this.hex(r*c))
150
+ }
151
+ static matrixColor(r,c){
152
+ return matrix(r,c,this.colors(r*c))
153
+ }
154
+ static matrixComplex(r,c,a,b){
155
+ return matrix(r,c,this.complexes(r*c,a,b))
156
+ }
157
+ static matrixComplexInt(r,c,a,b){
158
+ return matrix(r,c,this.complexesInt(r*c,a,b))
159
+ }
160
+ static matrixComplexBin(r,c){
161
+ return matrix(r,c,this.complexesBin(r*c))
162
+ }
163
+ static matrixComplexOct(r,c){
164
+ return matrix(r,c,this.complexesBin(r*c))
165
+ }
166
+ static matrixComplexDec(r,c){
167
+ return matrix(r,c,this.complexesBin(r*c))
168
+ }
169
+ static matrixComplexHex(r,c){
170
+ return matrix(r,c,this.complexesBin(r*c))
171
+ }
172
+ }
173
173
  export{Random}
@@ -1,40 +1,40 @@
1
- import numpy as np
2
- lin_R=np.linspace(1,10,10,)
3
- lin_C=np.linspace(10j+1,10+1j,10)
4
- print("Linspace")
5
- print(lin_R)
6
- print("-"*70)
7
- print(lin_C)
8
- log_R=np.logspace(1,10,10, base = 2)
9
- log_C=np.logspace(10j+1,10+1j,10 , base = 2)
10
- print("-"*70)
11
- print("Logspace")
12
- print(log_R)
13
- print("-"*70)
14
- print(log_C)
15
- geo_R=np.geomspace(1,512,10)
16
- geo_C=np.geomspace(1+1j,512+512j,10)
17
- print("-"*70)
18
- print("geomspace")
19
- print(geo_R)
20
- print("-"*70)
21
- print(geo_C)
22
-
23
-
24
- # // const logspace=(a,b,n=b-a+1,base=E,endpoint=true)=>{
25
- # // if(a instanceof Complex||b instanceof Complex){
26
- # // a=complex(a);
27
- # // b=complex(b);
28
- # // n=n??abs(b.a-a.a)
29
- # // const X=linspace(a.a,b.a,n,base,endpoint);
30
- # // const Y=linspace(a.b,b.b,n,base,endpoint);
31
- # // const Z=new Array(X.length).fill(0)
32
- # // const ZZ=Z.map((n,i) => pow(base,complex(X[i],Y[i])));
33
- # // return ZZ;
34
- # // }
35
- # // const start=base**min(a,b);
36
- # // const stop=base**max(a,b);
37
- # // const y = linspace(ln(start) / ln(base), ln(stop) / ln(base), n, endpoint);
38
- # // const result=y.map(n => pow(base, n));
39
- # // return a<b?result:result.reverse();
1
+ import numpy as np
2
+ lin_R=np.linspace(1,10,10,)
3
+ lin_C=np.linspace(10j+1,10+1j,10)
4
+ print("Linspace")
5
+ print(lin_R)
6
+ print("-"*70)
7
+ print(lin_C)
8
+ log_R=np.logspace(1,10,10, base = 2)
9
+ log_C=np.logspace(10j+1,10+1j,10 , base = 2)
10
+ print("-"*70)
11
+ print("Logspace")
12
+ print(log_R)
13
+ print("-"*70)
14
+ print(log_C)
15
+ geo_R=np.geomspace(1,512,10)
16
+ geo_C=np.geomspace(1+1j,512+512j,10)
17
+ print("-"*70)
18
+ print("geomspace")
19
+ print(geo_R)
20
+ print("-"*70)
21
+ print(geo_C)
22
+
23
+
24
+ # // const logspace=(a,b,n=b-a+1,base=E,endpoint=true)=>{
25
+ # // if(a instanceof Complex||b instanceof Complex){
26
+ # // a=complex(a);
27
+ # // b=complex(b);
28
+ # // n=n??abs(b.a-a.a)
29
+ # // const X=linspace(a.a,b.a,n,base,endpoint);
30
+ # // const Y=linspace(a.b,b.b,n,base,endpoint);
31
+ # // const Z=new Array(X.length).fill(0)
32
+ # // const ZZ=Z.map((n,i) => pow(base,complex(X[i],Y[i])));
33
+ # // return ZZ;
34
+ # // }
35
+ # // const start=base**min(a,b);
36
+ # // const stop=base**max(a,b);
37
+ # // const y = linspace(ln(start) / ln(base), ln(stop) / ln(base), n, endpoint);
38
+ # // const result=y.map(n => pow(base, n));
39
+ # // return a<b?result:result.reverse();
40
40
  # // }