ziko 0.0.18 → 0.0.20

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