ziko 0.0.13 → 0.0.15

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 (290) hide show
  1. package/dist/ziko.cjs +13310 -11794
  2. package/dist/ziko.js +13868 -12352
  3. package/dist/ziko.min.js +2 -2
  4. package/dist/ziko.mjs +13286 -11774
  5. package/package.json +5 -4
  6. package/src/__helpers__/index.js +61 -41
  7. package/src/app/index.js +20 -12
  8. package/src/app/json-style-sheet.js +64 -0
  9. package/src/app/routes.js +58 -0
  10. package/src/app/spa.js +56 -0
  11. package/src/app/ziko-app.js +39 -0
  12. package/src/data/api/fetchdom.js +13 -13
  13. package/src/data/api/index.js +3 -3
  14. package/src/data/api/preload.js +10 -10
  15. package/src/data/converter/adoc.js +130 -130
  16. package/src/data/converter/array.js +42 -42
  17. package/src/data/converter/canvas.js +24 -24
  18. package/src/data/converter/css.js +37 -0
  19. package/src/data/converter/csv.js +32 -32
  20. package/src/data/converter/idea.txt +9 -9
  21. package/src/data/converter/index.js +37 -34
  22. package/src/data/converter/json.js +80 -80
  23. package/src/data/converter/markdown.js +95 -95
  24. package/src/data/converter/object.js +69 -69
  25. package/src/data/converter/svg.js +10 -10
  26. package/src/data/index.js +16 -73
  27. package/src/data/parser/index.js +1 -0
  28. package/src/data/parser/xml.js +46 -46
  29. package/src/data/string/patterns.js +11 -11
  30. package/src/data/string/string.js +169 -169
  31. package/src/{app/app.js → global/app/index.js} +45 -45
  32. package/src/{app → global}/component/index.js +38 -38
  33. package/src/global/globals/index.js +20 -0
  34. package/src/global/index.js +12 -0
  35. package/src/global/params/index.js +40 -0
  36. package/src/{app → global}/router/index.js +66 -66
  37. package/src/{app → global}/seo/index.js +42 -42
  38. package/src/global/style/index.js +1 -0
  39. package/src/{app → global}/themes/dark.js +884 -884
  40. package/src/{app → global}/themes/index.js +10 -10
  41. package/src/{app → global}/themes/light.js +254 -254
  42. package/src/graphics/canvas/canvas.js +188 -188
  43. package/src/graphics/canvas/elements/Basic/arc.js +42 -42
  44. package/src/graphics/canvas/elements/Basic/line.js +25 -25
  45. package/src/graphics/canvas/elements/Basic/points.js +47 -47
  46. package/src/graphics/canvas/elements/Basic/polygon.js +6 -6
  47. package/src/graphics/canvas/elements/Basic/rect.js +45 -45
  48. package/src/graphics/canvas/elements/Chart/scatter.js +2 -2
  49. package/src/graphics/canvas/elements/Element.js +114 -114
  50. package/src/graphics/canvas/elements/index.js +12 -12
  51. package/src/graphics/canvas/index.js +14 -14
  52. package/src/graphics/canvas/utils/color.js +7 -7
  53. package/src/graphics/canvas/utils/floodFill.js +57 -57
  54. package/src/graphics/index.js +68 -68
  55. package/src/graphics/svg/Elements/Basic/circle.js +25 -25
  56. package/src/graphics/svg/Elements/Basic/ellipse.js +20 -20
  57. package/src/graphics/svg/Elements/Basic/foreignObject.js +32 -32
  58. package/src/graphics/svg/Elements/Basic/groupe.js +29 -29
  59. package/src/graphics/svg/Elements/Basic/image.js +32 -32
  60. package/src/graphics/svg/Elements/Basic/line.js +28 -28
  61. package/src/graphics/svg/Elements/Basic/link.js +30 -30
  62. package/src/graphics/svg/Elements/Basic/path.js +58 -58
  63. package/src/graphics/svg/Elements/Basic/polygon.js +31 -31
  64. package/src/graphics/svg/Elements/Basic/polyline.js +3 -3
  65. package/src/graphics/svg/Elements/Basic/rect.js +42 -42
  66. package/src/graphics/svg/Elements/Basic/text.js +25 -25
  67. package/src/graphics/svg/Elements/Derived/grid.js +8 -8
  68. package/src/graphics/svg/Elements/ZikoSvgElement.js +46 -46
  69. package/src/graphics/svg/Elements/index.js +14 -14
  70. package/src/graphics/svg/index.js +1 -1
  71. package/src/graphics/svg/svg.js +114 -114
  72. package/src/index.js +83 -88
  73. package/src/math/calculus/derivation/index.js +7 -0
  74. package/src/math/calculus/index.js +2 -1
  75. package/src/math/calculus/special-functions/bessel.js +30 -30
  76. package/src/math/calculus/special-functions/beta.js +37 -37
  77. package/src/math/calculus/special-functions/gamma.js +29 -29
  78. package/src/math/calculus/special-functions/index.js +4 -4
  79. package/src/math/complex/index.js +202 -202
  80. package/src/math/const.js +2 -2
  81. package/src/math/discret/Combinaison/index.js +33 -33
  82. package/src/math/discret/Conversion/index.js +85 -85
  83. package/src/math/discret/Logic/index.js +45 -45
  84. package/src/math/discret/Permutation/index.js +30 -30
  85. package/src/math/discret/Set/index.js +1 -1
  86. package/src/math/discret/Set/power-set.js +14 -14
  87. package/src/math/discret/Set/sub-set.js +10 -10
  88. package/src/math/discret/index.js +12 -23
  89. package/src/math/functions/helper.js +20 -0
  90. package/src/math/functions/index.js +161 -181
  91. package/src/math/index.js +32 -189
  92. package/src/math/matrix/Decomposition.js +90 -90
  93. package/src/math/matrix/LinearSystem.js +9 -9
  94. package/src/math/matrix/Matrix.js +716 -716
  95. package/src/math/matrix/index.js +2 -2
  96. package/src/math/random/index.js +172 -172
  97. package/src/math/signal/__np.py.txt +39 -39
  98. package/src/math/signal/conv.js +174 -174
  99. package/src/math/signal/fft.js +54 -54
  100. package/src/math/signal/filter.js +38 -38
  101. package/src/math/signal/functions.js +145 -145
  102. package/src/math/signal/index.js +109 -109
  103. package/src/math/statistics/Functions/index.js +99 -99
  104. package/src/math/statistics/index.js +15 -15
  105. package/src/math/utils/arithmetic.js +138 -138
  106. package/src/math/utils/checkers.js +29 -29
  107. package/src/math/utils/conversions.js +19 -19
  108. package/src/math/utils/discret.js +51 -51
  109. package/src/math/utils/index.js +101 -101
  110. package/src/math/utils/mapfun.js +49 -49
  111. package/src/reactivity/events/{Partiel/Input.js → Input.js} +62 -59
  112. package/src/reactivity/events/{Global/Pointer.js → Pointer.js} +232 -234
  113. package/src/reactivity/events/ZikoEvent.js +90 -90
  114. package/src/reactivity/events/{Global/Click.js → click.js} +60 -56
  115. package/src/reactivity/events/{Global/Clipboard.js → clipboard.js} +88 -84
  116. package/src/reactivity/events/{Global/CustomEvent.js → custom-event.js} +57 -53
  117. package/src/reactivity/events/{Global/Drag.js → drag.js} +136 -136
  118. package/src/reactivity/events/{Global/Focus.js → focus.js} +59 -56
  119. package/src/reactivity/events/{Partiel/Hash.js → hash.js} +47 -44
  120. package/src/reactivity/events/index.js +62 -62
  121. package/src/reactivity/events/{Global/Key.js → key.js} +102 -104
  122. package/src/reactivity/events/{Global/Mouse.js → mouse.js} +233 -230
  123. package/src/reactivity/events/{Global/Swipe.js → swipe.js} +149 -147
  124. package/src/reactivity/events/{Global/Wheel.js → wheel.js} +47 -44
  125. package/src/reactivity/hooks/{Contexte → contexte}/useSuccesifKeys.js +13 -13
  126. package/src/reactivity/hooks/{Decorators → decorators}/index.js +6 -6
  127. package/src/reactivity/hooks/{Decorators → decorators}/time.js +16 -16
  128. package/src/reactivity/hooks/{Decorators → decorators}/type.js +87 -87
  129. package/src/reactivity/hooks/head/index.js +5 -0
  130. package/src/reactivity/hooks/{UI → head}/useCssText.js +21 -21
  131. package/src/reactivity/hooks/{UI → head}/useFavIcon.js +37 -37
  132. package/src/reactivity/hooks/head/useHead.js +28 -0
  133. package/src/reactivity/hooks/head/useMeta.js +52 -0
  134. package/src/reactivity/hooks/{UI → head}/useTitle.js +29 -29
  135. package/src/reactivity/hooks/index.js +91 -85
  136. package/src/reactivity/hooks/{Interactions → interactions}/index.js +3 -3
  137. package/src/reactivity/hooks/{Interactions → interactions}/useBluetooth.js +47 -47
  138. package/src/reactivity/hooks/{Interactions → interactions}/useChannel.js +49 -49
  139. package/src/reactivity/hooks/{Interactions → interactions}/useEventEmmiter.js +63 -63
  140. package/src/reactivity/hooks/{Interactions → interactions}/useThread.js +43 -43
  141. package/src/reactivity/hooks/sensors/index.js +2 -0
  142. package/src/reactivity/hooks/{Sensors → sensors}/useBattery.js +35 -35
  143. package/src/reactivity/hooks/{Sensors → sensors}/useGeolocation.js +16 -16
  144. package/src/reactivity/hooks/{Storage → storage}/useStorage.js +72 -72
  145. package/src/reactivity/hooks/todo.md +26 -26
  146. package/src/reactivity/hooks/ui/index.js +5 -0
  147. package/src/reactivity/hooks/{UI → ui}/useMediaQuery.js +43 -43
  148. package/src/reactivity/hooks/{UI → ui}/useStyle.js +79 -79
  149. package/src/reactivity/hooks/{UI → ui}/useTheme.js +61 -61
  150. package/src/reactivity/idea +1 -1
  151. package/src/reactivity/index.js +11 -21
  152. package/src/reactivity/observer/attributes.js +28 -28
  153. package/src/reactivity/observer/children.js +36 -36
  154. package/src/reactivity/observer/index.js +6 -44
  155. package/src/reactivity/observer/intersection.js +43 -43
  156. package/src/reactivity/observer/mutation.js +112 -112
  157. package/src/reactivity/observer/resize.js +46 -46
  158. package/src/reactivity/observer/screen.js +44 -44
  159. package/src/reactivity/observer/screen.js.txt +83 -83
  160. package/src/reactivity/observer/screen.txt +12 -12
  161. package/src/time/animation.js +75 -75
  162. package/src/time/index.js +12 -54
  163. package/src/time/loop.js +87 -87
  164. package/src/time/utils/decorators.js +16 -16
  165. package/src/time/utils/ease.js +143 -143
  166. package/src/time/utils/index.js +17 -17
  167. package/src/time/utils/performance.js +15 -15
  168. package/src/time/utils/ui.js +25 -25
  169. package/src/types.js +73 -0
  170. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/accordion/accordion.js +42 -45
  171. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/accordion/collapsible.js +82 -82
  172. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/accordion/index.js +1 -1
  173. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/alert/alert.js +80 -80
  174. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/alert/palette.js +51 -51
  175. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/carousel/index.js +50 -49
  176. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/code-note/SubElements.js.txt +104 -104
  177. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/code-note/code-cell.js +194 -194
  178. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/code-note/code-note.js +71 -71
  179. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/code-note/index.js +1 -1
  180. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/code-note/sub-elements.js +66 -66
  181. package/src/{user-interface → ui}/elements/derived/elements/Swipper.js +3 -3
  182. package/src/{user-interface → ui}/elements/derived/elements/index.js +9 -9
  183. package/src/{user-interface/elements/derived/Flex.js → ui/elements/derived/flex/index.js} +102 -102
  184. package/src/{user-interface/elements/derived/Grid.js → ui/elements/derived/grid/index.js} +32 -32
  185. package/src/ui/elements/derived/index.js +12 -0
  186. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/menu/menu3d.js +259 -259
  187. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/modal/index.js +91 -91
  188. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/pagination/breadcrumbs.js +53 -53
  189. package/src/ui/elements/derived/slider/__ZikoUISlider__.js +112 -0
  190. package/src/ui/elements/derived/slider/hSlider.js +34 -0
  191. package/src/ui/elements/derived/slider/index.js +12 -0
  192. package/src/ui/elements/derived/slider/vSlider.js +27 -0
  193. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/splitter/__ZikoUISplitter__.js +61 -61
  194. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/splitter/hsplitter.js +39 -39
  195. package/src/ui/elements/derived/splitter/index.js +12 -0
  196. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/splitter/vsplitter.js +39 -39
  197. package/src/{user-interface/elements/derived/elements → ui/elements/derived}/tabs/index.js +179 -179
  198. package/src/{user-interface → ui}/elements/primitives/ZikoUIContainerElement.js +126 -126
  199. package/src/{user-interface → ui}/elements/primitives/ZikoUIElement.js +492 -478
  200. package/src/ui/elements/primitives/embaded/html.js +20 -0
  201. package/src/ui/elements/primitives/embaded/index.js +3 -0
  202. package/src/ui/elements/primitives/embaded/pdf.js +17 -0
  203. package/src/ui/elements/primitives/embaded/youtube.js +24 -0
  204. package/src/{user-interface → ui}/elements/primitives/index.js +7 -7
  205. package/src/{user-interface → ui}/elements/primitives/io/Form/index.js +41 -41
  206. package/src/{user-interface → ui}/elements/primitives/io/Form/index.js.txt +104 -104
  207. package/src/{user-interface → ui}/elements/primitives/io/Inputs/__helpers__.js +51 -51
  208. package/src/{user-interface → ui}/elements/primitives/io/Inputs/index.js +12 -12
  209. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input/index.js +98 -97
  210. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-camera/index.js +26 -26
  211. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-checkbox/index.js +25 -25
  212. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-color/index.js +15 -15
  213. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-date-time/index.js +2 -2
  214. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-date-time/input-date-time.js +13 -13
  215. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-date-time/input-date.js +13 -13
  216. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-date-time/input-time.js +13 -13
  217. package/src/ui/elements/primitives/io/Inputs/input-email-password/index.js +2 -0
  218. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-email-password/input-email.js +14 -14
  219. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-email-password/input-password.js +13 -13
  220. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-file/input-image.js +42 -42
  221. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-number/index.js +36 -36
  222. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-radio/index.js +25 -25
  223. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-search/index.js +45 -45
  224. package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-slider/index.js +34 -34
  225. package/src/{user-interface → ui}/elements/primitives/io/Select/index.js +19 -19
  226. package/src/{user-interface → ui}/elements/primitives/io/Textarea/index.js +17 -17
  227. package/src/{user-interface → ui}/elements/primitives/io/index.js +3 -3
  228. package/src/{user-interface → ui}/elements/primitives/list/index.js +138 -138
  229. package/src/{user-interface → ui}/elements/primitives/media/Audio/index.js +16 -16
  230. package/src/{user-interface → ui}/elements/primitives/media/Image/figure.js +18 -18
  231. package/src/{user-interface → ui}/elements/primitives/media/Image/image.js +36 -35
  232. package/src/ui/elements/primitives/media/Image/index.js +2 -0
  233. package/src/{user-interface → ui}/elements/primitives/media/Video/index.js +26 -26
  234. package/src/{user-interface → ui}/elements/primitives/media/__ZikoUIDynamicMediaELement__.js +46 -46
  235. package/src/{user-interface → ui}/elements/primitives/media/index.js +2 -2
  236. package/src/{user-interface → ui}/elements/primitives/misc/index.js +100 -99
  237. package/src/{user-interface → ui}/elements/primitives/semantic/index.js +81 -81
  238. package/src/{user-interface → ui}/elements/primitives/table/elements.js +93 -93
  239. package/src/ui/elements/primitives/table/index.js +3 -0
  240. package/src/{user-interface → ui}/elements/primitives/table/table.js +115 -115
  241. package/src/{user-interface → ui}/elements/primitives/table/utils.js +11 -11
  242. package/src/{user-interface → ui}/elements/primitives/text/__ZikoUIText__.js +71 -71
  243. package/src/{user-interface → ui}/elements/primitives/text/heading.js +35 -35
  244. package/src/{user-interface → ui}/elements/primitives/text/index.js +2 -2
  245. package/src/{user-interface → ui}/elements/primitives/text/p.js +26 -26
  246. package/src/{user-interface → ui}/elements/primitives/text/text.js +80 -80
  247. package/src/ui/index.js +29 -0
  248. package/src/{user-interface → ui}/style/index.js +515 -509
  249. package/src/{user-interface → ui}/utils/index.js +69 -69
  250. package/src/reactivity/events/Global/Touch.js +0 -0
  251. package/src/reactivity/hooks/Sensors/index.js +0 -2
  252. package/src/reactivity/hooks/UI/index.js +0 -5
  253. package/src/user-interface/elements/derived/elements/splitter/index.js +0 -2
  254. package/src/user-interface/elements/derived/index.js +0 -3
  255. package/src/user-interface/elements/primitives/embaded/index.js +0 -1
  256. package/src/user-interface/elements/primitives/io/Inputs/input-email-password/index.js +0 -2
  257. package/src/user-interface/elements/primitives/media/Image/index.js +0 -2
  258. package/src/user-interface/elements/primitives/table/index.js +0 -3
  259. package/src/user-interface/index.js +0 -188
  260. /package/src/app/{globals/index.js → globals.js} +0 -0
  261. /package/src/app/{params/index.js → params.js} +0 -0
  262. /package/src/reactivity/events/{Partiel/Media.js → media.js} +0 -0
  263. /package/src/{app/accessibility/index.js → reactivity/events/touch.js} +0 -0
  264. /package/src/reactivity/hooks/{Contexte → contexte}/index.js +0 -0
  265. /package/src/reactivity/hooks/{Interactions → interactions}/useSerial.js +0 -0
  266. /package/src/reactivity/hooks/{Interactions → interactions}/useUsb.js +0 -0
  267. /package/src/reactivity/hooks/{Sensors → sensors}/useCamera.js +0 -0
  268. /package/src/reactivity/hooks/{Sensors → sensors}/useMicro.js +0 -0
  269. /package/src/reactivity/hooks/{Sensors → sensors}/useOrientation.js +0 -0
  270. /package/src/reactivity/hooks/{Storage → storage}/index.js +0 -0
  271. /package/src/reactivity/hooks/{Storage → storage}/useCookie.js +0 -0
  272. /package/src/reactivity/hooks/{Storage → storage}/useIndexedDb.js +0 -0
  273. /package/src/reactivity/hooks/{UI → ui}/useCssLink.js +0 -0
  274. /package/src/reactivity/hooks/{UI → ui}/useLinearGradient.js +0 -0
  275. /package/src/reactivity/hooks/{UI → ui}/useRadialGradient.js +0 -0
  276. /package/src/{user-interface/elements/derived/elements → ui/elements/derived}/alert/index.js +0 -0
  277. /package/src/{user-interface → ui}/elements/derived/elements/Notification.js +0 -0
  278. /package/src/{user-interface → ui}/elements/derived/elements/Popover.js +0 -0
  279. /package/src/{user-interface → ui}/elements/derived/elements/Popup.js +0 -0
  280. /package/src/{user-interface → ui}/elements/derived/elements/Timeline.js +0 -0
  281. /package/src/{user-interface → ui}/elements/derived/elements/Toast.js +0 -0
  282. /package/src/{user-interface → ui}/elements/derived/elements/Treeview.js +0 -0
  283. /package/src/{user-interface → ui}/elements/derived/elements/columns.js +0 -0
  284. /package/src/{user-interface → ui}/elements/derived/elements/fab.js +0 -0
  285. /package/src/{user-interface/elements/derived/elements → ui/elements/derived}/menu/index.js +0 -0
  286. /package/src/{user-interface/elements/derived/elements → ui/elements/derived}/pagination/index.js +0 -0
  287. /package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-file/index.js +0 -0
  288. /package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-file/input-file.js +0 -0
  289. /package/src/{user-interface → ui}/elements/primitives/list/elements.js +0 -0
  290. /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
  # // }