ziko 0.0.14 → 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 (289) hide show
  1. package/dist/ziko.cjs +13347 -11831
  2. package/dist/ziko.js +13867 -12409
  3. package/dist/ziko.min.js +2 -2
  4. package/dist/ziko.mjs +13282 -11828
  5. package/package.json +2 -1
  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 -71
  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 -50
  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 -480
  200. package/src/{user-interface → ui}/elements/primitives/embaded/html.js +19 -20
  201. package/src/{user-interface → ui}/elements/primitives/embaded/index.js +3 -3
  202. package/src/{user-interface → ui}/elements/primitives/embaded/pdf.js +16 -17
  203. package/src/{user-interface → ui}/elements/primitives/embaded/youtube.js +23 -25
  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 -98
  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 -36
  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 -100
  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/io/Inputs/input-email-password/index.js +0 -2
  256. package/src/user-interface/elements/primitives/media/Image/index.js +0 -2
  257. package/src/user-interface/elements/primitives/table/index.js +0 -3
  258. package/src/user-interface/index.js +0 -190
  259. /package/src/app/{globals/index.js → globals.js} +0 -0
  260. /package/src/app/{params/index.js → params.js} +0 -0
  261. /package/src/reactivity/events/{Partiel/Media.js → media.js} +0 -0
  262. /package/src/{app/accessibility/index.js → reactivity/events/touch.js} +0 -0
  263. /package/src/reactivity/hooks/{Contexte → contexte}/index.js +0 -0
  264. /package/src/reactivity/hooks/{Interactions → interactions}/useSerial.js +0 -0
  265. /package/src/reactivity/hooks/{Interactions → interactions}/useUsb.js +0 -0
  266. /package/src/reactivity/hooks/{Sensors → sensors}/useCamera.js +0 -0
  267. /package/src/reactivity/hooks/{Sensors → sensors}/useMicro.js +0 -0
  268. /package/src/reactivity/hooks/{Sensors → sensors}/useOrientation.js +0 -0
  269. /package/src/reactivity/hooks/{Storage → storage}/index.js +0 -0
  270. /package/src/reactivity/hooks/{Storage → storage}/useCookie.js +0 -0
  271. /package/src/reactivity/hooks/{Storage → storage}/useIndexedDb.js +0 -0
  272. /package/src/reactivity/hooks/{UI → ui}/useCssLink.js +0 -0
  273. /package/src/reactivity/hooks/{UI → ui}/useLinearGradient.js +0 -0
  274. /package/src/reactivity/hooks/{UI → ui}/useRadialGradient.js +0 -0
  275. /package/src/{user-interface/elements/derived/elements → ui/elements/derived}/alert/index.js +0 -0
  276. /package/src/{user-interface → ui}/elements/derived/elements/Notification.js +0 -0
  277. /package/src/{user-interface → ui}/elements/derived/elements/Popover.js +0 -0
  278. /package/src/{user-interface → ui}/elements/derived/elements/Popup.js +0 -0
  279. /package/src/{user-interface → ui}/elements/derived/elements/Timeline.js +0 -0
  280. /package/src/{user-interface → ui}/elements/derived/elements/Toast.js +0 -0
  281. /package/src/{user-interface → ui}/elements/derived/elements/Treeview.js +0 -0
  282. /package/src/{user-interface → ui}/elements/derived/elements/columns.js +0 -0
  283. /package/src/{user-interface → ui}/elements/derived/elements/fab.js +0 -0
  284. /package/src/{user-interface/elements/derived/elements → ui/elements/derived}/menu/index.js +0 -0
  285. /package/src/{user-interface/elements/derived/elements → ui/elements/derived}/pagination/index.js +0 -0
  286. /package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-file/index.js +0 -0
  287. /package/src/{user-interface → ui}/elements/primitives/io/Inputs/input-file/input-file.js +0 -0
  288. /package/src/{user-interface → ui}/elements/primitives/list/elements.js +0 -0
  289. /package/src/{user-interface → ui}/elements/primitives/text/pre.js +0 -0
@@ -1,99 +1,99 @@
1
- import ZikoUIElement from "../../../ZikoUIElement.js";
2
- import { useInputEvent } from "../../../../../../reactivity/index.js";
3
- class ZikoUIInput extends ZikoUIElement {
4
- constructor(type, name , value = "", datalist) {
5
- super("input", "input");
6
- Object.assign(this.events, { input: null });
7
- this.setValue(value);
8
- this.setAttr("type", type);
9
- this.setAttr("name", name);
10
- // this.setAttr("tab-index","0")
11
- if (datalist) this.linkDatalist(datalist);
12
- }
13
- get isInput() {
14
- return true;
15
- }
16
- setName(name){
17
- this.setAttr("name", name);
18
- return this;
19
- }
20
- onInput(...callbacks) {
21
- if (!this.events.input) this.events.input = useInputEvent(this);
22
- this.events.input.onInput(...callbacks);
23
- return this;
24
- }
25
- onChange(...callbacks) {
26
- if (!this.events.input) this.events.input = useInputEvent(this);
27
- this.events.input.onChange(...callbacks);
28
- return this;
29
- }
30
- linkDatalist(datalist) {
31
- let id;
32
- if (datalist instanceof ZikoUIInputDatalist) id = datalist.Id;
33
- else if (datalist instanceof Array) {
34
- const Datalist = new ZikoUIInputDatalist(...datalist);
35
- id = Datalist.Id;
36
- console.log(Datalist);
37
- } else id = datalist;
38
- this.element?.setAttribute("list", id);
39
- return this;
40
- }
41
- get value() {
42
- return this.element.value;
43
- }
44
- // _setType(type) {
45
- // this.element.type = type;
46
- // return this;
47
- // }
48
- setValue(value = "") {
49
- this.element.value = value;
50
- return this;
51
- }
52
- useState(state) {
53
- this.setValue(state);
54
- return [{ value: this.value }, (e) => this.setValue(e)];
55
- }
56
- setPlaceholder(value) {
57
- if (value) this.element.placeholder = value;
58
- return this;
59
- }
60
- get isValide() {
61
- return this.element.checkValidity();
62
- }
63
- setRequired(required = true) {
64
- this.element.required = required;
65
- return this;
66
- }
67
- select() {
68
- this.element.select();
69
- return this;
70
- }
71
- copy() {
72
- this.element.select();
73
- document.execCommand("copy");
74
- return this;
75
- }
76
- cut() {
77
- this.element.select();
78
- document.execCommand("cut");
79
- return this;
80
- }
81
- accept(value) {
82
- this.element.accept = value;
83
- return this;
84
- }
85
- }
86
-
87
- const input = (value, datalist) => {
88
- if (value instanceof Object) {
89
- const { datalist, placeholder } = value;
90
- value = value.value ?? "";
91
- return new ZikoUIInput("text", "input", value, datalist).setPlaceholder(placeholder);
92
- }
93
- return new ZikoUIInput("text", "input", value, datalist);
94
- };
95
-
96
- export{
97
- ZikoUIInput,
98
- input
1
+ import ZikoUIElement from "../../../ZikoUIElement.js";
2
+ import { useInputEvent } from "../../../../../../reactivity/index.js";
3
+ class ZikoUIInput extends ZikoUIElement {
4
+ constructor(type, name , value = "", datalist) {
5
+ super("input", "input");
6
+ Object.assign(this.events, { input: null });
7
+ this.setValue(value);
8
+ this.setAttr("type", type);
9
+ this.setAttr("name", name);
10
+ // this.setAttr("tab-index","0")
11
+ if (datalist) this.linkDatalist(datalist);
12
+ }
13
+ get isInput() {
14
+ return true;
15
+ }
16
+ setName(name){
17
+ this.setAttr("name", name);
18
+ return this;
19
+ }
20
+ onInput(...callbacks) {
21
+ if (!this.events.input) this.events.input = useInputEvent(this);
22
+ this.events.input.onInput(...callbacks);
23
+ return this;
24
+ }
25
+ onChange(...callbacks) {
26
+ if (!this.events.input) this.events.input = useInputEvent(this);
27
+ this.events.input.onChange(...callbacks);
28
+ return this;
29
+ }
30
+ linkDatalist(datalist) {
31
+ let id;
32
+ if (datalist instanceof ZikoUIInputDatalist) id = datalist.Id;
33
+ else if (datalist instanceof Array) {
34
+ const Datalist = new ZikoUIInputDatalist(...datalist);
35
+ id = Datalist.Id;
36
+ console.log(Datalist);
37
+ } else id = datalist;
38
+ this.element?.setAttribute("list", id);
39
+ return this;
40
+ }
41
+ get value() {
42
+ return this.element.value;
43
+ }
44
+ // _setType(type) {
45
+ // this.element.type = type;
46
+ // return this;
47
+ // }
48
+ setValue(value = "") {
49
+ this.element.value = value;
50
+ return this;
51
+ }
52
+ useState(state) {
53
+ this.setValue(state);
54
+ return [{ value: this.value }, (e) => this.setValue(e)];
55
+ }
56
+ setPlaceholder(value) {
57
+ if (value) this.element.placeholder = value;
58
+ return this;
59
+ }
60
+ get isValide() {
61
+ return this.element.checkValidity();
62
+ }
63
+ setRequired(required = true) {
64
+ this.element.required = required;
65
+ return this;
66
+ }
67
+ select() {
68
+ this.element.select();
69
+ return this;
70
+ }
71
+ copy() {
72
+ this.element.select();
73
+ document.execCommand("copy");
74
+ return this;
75
+ }
76
+ cut() {
77
+ this.element.select();
78
+ document.execCommand("cut");
79
+ return this;
80
+ }
81
+ accept(value) {
82
+ this.element.accept = value;
83
+ return this;
84
+ }
85
+ }
86
+
87
+ const input = (value, datalist) => {
88
+ if (value instanceof Object) {
89
+ const { datalist, placeholder } = value;
90
+ value = value.value ?? "";
91
+ return new ZikoUIInput("text", "input", value, datalist).setPlaceholder(placeholder);
92
+ }
93
+ return new ZikoUIInput("text", "input", value, datalist);
94
+ };
95
+
96
+ export{
97
+ ZikoUIInput,
98
+ input
99
99
  }
@@ -1,26 +1,26 @@
1
- import { ZikoUIVideo } from "../../../media";
2
- class ZikoUIWebcame extends ZikoUIVideo{
3
- constructor(){
4
- super()
5
- this.element?.setAttribute("src", "");
6
- this.constraints = { audio: true, video: { width: 1280, height: 720 } };
7
- //this.video=this.element
8
- }
9
- get isInputCamera(){
10
- return true;
11
- }
12
- start(){
13
- navigator.mediaDevices.getUserMedia(this.constraints).then((mediaStream)=>{
14
- this.element.srcObject = mediaStream;
15
- this.element.onloadedmetadata = () =>{
16
- this.element.play();
17
- };
18
- })
19
- .catch(function(err) { console.log(err.name + ": " + err.message); });
20
- return this;
21
- }
22
- }
23
- const inputCamera=()=>new ZikoUIWebcame();
24
- export{
25
- inputCamera
26
- }
1
+ import { ZikoUIVideo } from "../../../media";
2
+ class ZikoUIWebcame extends ZikoUIVideo{
3
+ constructor(){
4
+ super()
5
+ this.element?.setAttribute("src", "");
6
+ this.constraints = { audio: true, video: { width: 1280, height: 720 } };
7
+ //this.video=this.element
8
+ }
9
+ get isInputCamera(){
10
+ return true;
11
+ }
12
+ start(){
13
+ navigator.mediaDevices.getUserMedia(this.constraints).then((mediaStream)=>{
14
+ this.element.srcObject = mediaStream;
15
+ this.element.onloadedmetadata = () =>{
16
+ this.element.play();
17
+ };
18
+ })
19
+ .catch(function(err) { console.log(err.name + ": " + err.message); });
20
+ return this;
21
+ }
22
+ }
23
+ const inputCamera=()=>new ZikoUIWebcame();
24
+ export{
25
+ inputCamera
26
+ }
@@ -1,26 +1,26 @@
1
- import { ZikoUIInput } from "../input";
2
- class ZikoUIInputCheckbox extends ZikoUIInput {
3
- constructor() {
4
- super("checkbox", "inputCheckbox");
5
- this.cursor("pointer");
6
- }
7
- get isInputCheckbox(){
8
- return true;
9
- }
10
- get checked() {
11
- return this.element.checked;
12
- }
13
- check(checked = true) {
14
- this.element.checked = checked;
15
- return this;
16
- }
17
- color(color) {
18
- this.element.style.accentColor = color;
19
- return this;
20
- }
21
- }
22
- const checkbox = () => new ZikoUIInputCheckbox();
23
- export{
24
- ZikoUIInputCheckbox,
25
- checkbox
1
+ import { ZikoUIInput } from "../input";
2
+ class ZikoUIInputCheckbox extends ZikoUIInput {
3
+ constructor() {
4
+ super("checkbox", "inputCheckbox");
5
+ this.cursor("pointer");
6
+ }
7
+ get isInputCheckbox(){
8
+ return true;
9
+ }
10
+ get checked() {
11
+ return this.element.checked;
12
+ }
13
+ check(checked = true) {
14
+ this.element.checked = checked;
15
+ return this;
16
+ }
17
+ color(color) {
18
+ this.element.style.accentColor = color;
19
+ return this;
20
+ }
21
+ }
22
+ const checkbox = () => new ZikoUIInputCheckbox();
23
+ export{
24
+ ZikoUIInputCheckbox,
25
+ checkbox
26
26
  }
@@ -1,16 +1,16 @@
1
- import { ZikoUIInput } from "../input";
2
- class ZikoUIInputColor extends ZikoUIInput {
3
- constructor() {
4
- super("color", "inputColor");
5
- this.background(this.value);
6
- this.onInput(() => this.background(this.value));
7
- }
8
- get isInputColor(){
9
- return true;
10
- }
11
- }
12
- const inputColor = () => new ZikoUIInputColor();
13
- export{
14
- ZikoUIInputColor,
15
- inputColor
1
+ import { ZikoUIInput } from "../input";
2
+ class ZikoUIInputColor extends ZikoUIInput {
3
+ constructor() {
4
+ super("color", "inputColor");
5
+ this.background(this.value);
6
+ this.onInput(() => this.background(this.value));
7
+ }
8
+ get isInputColor(){
9
+ return true;
10
+ }
11
+ }
12
+ const inputColor = () => new ZikoUIInputColor();
13
+ export{
14
+ ZikoUIInputColor,
15
+ inputColor
16
16
  }
@@ -1,3 +1,3 @@
1
- export * from "./input-date";
2
- export * from "./input-time";
1
+ export * from "./input-date";
2
+ export * from "./input-time";
3
3
  export * from "./input-date-time";
@@ -1,14 +1,14 @@
1
- import { ZikoUIInput } from "../input";
2
- class ZikoUIInputDateTime extends ZikoUIInput {
3
- constructor() {
4
- super("datetime-local", "inputDateTime");
5
- }
6
- get isInputDateTime(){
7
- return true;
8
- }
9
- }
10
- const inputDateTime = () => new ZikoUIInputDateTime();
11
- export{
12
- ZikoUIInputDateTime,
13
- inputDateTime
1
+ import { ZikoUIInput } from "../input";
2
+ class ZikoUIInputDateTime extends ZikoUIInput {
3
+ constructor() {
4
+ super("datetime-local", "inputDateTime");
5
+ }
6
+ get isInputDateTime(){
7
+ return true;
8
+ }
9
+ }
10
+ const inputDateTime = () => new ZikoUIInputDateTime();
11
+ export{
12
+ ZikoUIInputDateTime,
13
+ inputDateTime
14
14
  }
@@ -1,14 +1,14 @@
1
- import { ZikoUIInput } from "../input";
2
- class ZikoUIInputDate extends ZikoUIInput {
3
- constructor() {
4
- super("date", "inputDate");
5
- }
6
- get isInputDate(){
7
- return true;
8
- }
9
- }
10
- const inputDate = () => new ZikoUIInputDate();
11
- export{
12
- ZikoUIInputDate,
13
- inputDate
1
+ import { ZikoUIInput } from "../input";
2
+ class ZikoUIInputDate extends ZikoUIInput {
3
+ constructor() {
4
+ super("date", "inputDate");
5
+ }
6
+ get isInputDate(){
7
+ return true;
8
+ }
9
+ }
10
+ const inputDate = () => new ZikoUIInputDate();
11
+ export{
12
+ ZikoUIInputDate,
13
+ inputDate
14
14
  }
@@ -1,14 +1,14 @@
1
- import { ZikoUIInput } from "../input";
2
- class ZikoUIInputTime extends ZikoUIInput {
3
- constructor() {
4
- super("time", "inputTime");
5
- }
6
- get isInputTime(){
7
- return true;
8
- }
9
- }
10
- const inputTime = () => new ZikoUIInputTime();
11
- export{
12
- ZikoUIInputTime,
13
- inputTime
1
+ import { ZikoUIInput } from "../input";
2
+ class ZikoUIInputTime extends ZikoUIInput {
3
+ constructor() {
4
+ super("time", "inputTime");
5
+ }
6
+ get isInputTime(){
7
+ return true;
8
+ }
9
+ }
10
+ const inputTime = () => new ZikoUIInputTime();
11
+ export{
12
+ ZikoUIInputTime,
13
+ inputTime
14
14
  }
@@ -0,0 +1,2 @@
1
+ export * from "./input-email";
2
+ export * from "./input-password";
@@ -1,15 +1,15 @@
1
-
2
- import { ZikoUIInput } from "../input";
3
- class ZikoUIInputEmail extends ZikoUIInput {
4
- constructor() {
5
- super("email", "inputEmail");
6
- }
7
- get isInputEmail(){
8
- return true;
9
- }
10
- }
11
- const inputEmail = () => new ZikoUIInputEmail();
12
- export{
13
- ZikoUIInputEmail,
14
- inputEmail
1
+
2
+ import { ZikoUIInput } from "../input";
3
+ class ZikoUIInputEmail extends ZikoUIInput {
4
+ constructor() {
5
+ super("email", "inputEmail");
6
+ }
7
+ get isInputEmail(){
8
+ return true;
9
+ }
10
+ }
11
+ const inputEmail = () => new ZikoUIInputEmail();
12
+ export{
13
+ ZikoUIInputEmail,
14
+ inputEmail
15
15
  }
@@ -1,14 +1,14 @@
1
- import { ZikoUIInput } from "../input";
2
- class ZikoUIInputPassword extends ZikoUIInput {
3
- constructor() {
4
- super("password", "inputPassword");
5
- }
6
- get isInputPassword(){
7
- return true;
8
- }
9
- }
10
- const inputPassword = () => new ZikoUIInputPassword();
11
- export{
12
- ZikoUIInputPassword,
13
- inputPassword
1
+ import { ZikoUIInput } from "../input";
2
+ class ZikoUIInputPassword extends ZikoUIInput {
3
+ constructor() {
4
+ super("password", "inputPassword");
5
+ }
6
+ get isInputPassword(){
7
+ return true;
8
+ }
9
+ }
10
+ const inputPassword = () => new ZikoUIInputPassword();
11
+ export{
12
+ ZikoUIInputPassword,
13
+ inputPassword
14
14
  }
@@ -1,43 +1,43 @@
1
- import ZikoUIElement from "../../../ZikoUIElement";
2
- import { btn } from "../../../misc";
3
- class ZikoUIInputImage extends ZikoUIElement {
4
- constructor(text = "File") {
5
- super("inputImage");
6
- this._aux_element = btn(text).setTarget(this.target);
7
- this.element = document?.createElement("input");
8
- this.element?.setAttribute("type", "file");
9
- this.element?.setAttribute("accept", "image");
10
- this._aux_element.onClick(() => this.element.click());
11
- this.element.onChange = this.handleImage.bind(this);
12
- }
13
- get isInputImage(){
14
- return true;
15
- }
16
- handleImage(e) {
17
- const reader = new FileReader();
18
- const img = new Image();
19
- reader.onload = function (event) {
20
- img.src = event.target.result;
21
- console.log(img.src);
22
- };
23
- reader.readAsDataURL(e.target.files[0]);
24
- this.img = img;
25
- }
26
- get value() {
27
- return this.img;
28
- }
29
- render(bool = true) {
30
- if (bool) this.target.appendChild(this._aux_element.element);
31
- else this.remove();
32
- return this;
33
- }
34
- remove() {
35
- if (this.target.children.length) this.target.removeChild(this._aux_element.element);
36
- return this;
37
- }
38
- }
39
- const inputImage = (text) => new ZikoUIInputImage(text);
40
- export{
41
- ZikoUIInputImage,
42
- inputImage
1
+ import ZikoUIElement from "../../../ZikoUIElement";
2
+ import { btn } from "../../../misc";
3
+ class ZikoUIInputImage extends ZikoUIElement {
4
+ constructor(text = "File") {
5
+ super("inputImage");
6
+ this._aux_element = btn(text).setTarget(this.target);
7
+ this.element = document?.createElement("input");
8
+ this.element?.setAttribute("type", "file");
9
+ this.element?.setAttribute("accept", "image");
10
+ this._aux_element.onClick(() => this.element.click());
11
+ this.element.onChange = this.handleImage.bind(this);
12
+ }
13
+ get isInputImage(){
14
+ return true;
15
+ }
16
+ handleImage(e) {
17
+ const reader = new FileReader();
18
+ const img = new Image();
19
+ reader.onload = function (event) {
20
+ img.src = event.target.result;
21
+ console.log(img.src);
22
+ };
23
+ reader.readAsDataURL(e.target.files[0]);
24
+ this.img = img;
25
+ }
26
+ get value() {
27
+ return this.img;
28
+ }
29
+ render(bool = true) {
30
+ if (bool) this.target.appendChild(this._aux_element.element);
31
+ else this.remove();
32
+ return this;
33
+ }
34
+ remove() {
35
+ if (this.target.children.length) this.target.removeChild(this._aux_element.element);
36
+ return this;
37
+ }
38
+ }
39
+ const inputImage = (text) => new ZikoUIInputImage(text);
40
+ export{
41
+ ZikoUIInputImage,
42
+ inputImage
43
43
  }
@@ -1,37 +1,37 @@
1
- import { ZikoUIInput } from "../input";
2
- class ZikoUIInputNumber extends ZikoUIInput {
3
- constructor(min, max, step = 1) {
4
- super("number", "inpuNumber");
5
- this.setMin(min).setMax(max).setStep(step);
6
- }
7
- get isInputNumber() {
8
- return true;
9
- }
10
- get value() {
11
- return +this.element.value;
12
- }
13
- setMin(min) {
14
- this.element.min = min;
15
- return this;
16
- }
17
- setMax(max) {
18
- this.element.max = max;
19
- return this;
20
- }
21
- setStep(step) {
22
- this.element.step = step;
23
- return this;
24
- }
25
- }
26
- const inputNumber = (min, max, step) => {
27
- if (min instanceof Object) {
28
- const { value, max = 10, step = 1, placeholder = "" } = min;
29
- min = min?.min ?? 0;
30
- return new ZikoUIInputSlider(min, max, step)
31
- .setValue(value)
32
- .setPlaceholder(placeholder);
33
- }
34
- return new ZikoUIInputNumber(min, max, step);
35
- };
36
- export { inputNumber, ZikoUIInputNumber };
1
+ import { ZikoUIInput } from "../input";
2
+ class ZikoUIInputNumber extends ZikoUIInput {
3
+ constructor(min, max, step = 1) {
4
+ super("number", "inpuNumber");
5
+ this.setMin(min).setMax(max).setStep(step);
6
+ }
7
+ get isInputNumber() {
8
+ return true;
9
+ }
10
+ get value() {
11
+ return +this.element.value;
12
+ }
13
+ setMin(min) {
14
+ this.element.min = min;
15
+ return this;
16
+ }
17
+ setMax(max) {
18
+ this.element.max = max;
19
+ return this;
20
+ }
21
+ setStep(step) {
22
+ this.element.step = step;
23
+ return this;
24
+ }
25
+ }
26
+ const inputNumber = (min, max, step) => {
27
+ if (min instanceof Object) {
28
+ const { value, max = 10, step = 1, placeholder = "" } = min;
29
+ min = min?.min ?? 0;
30
+ return new ZikoUIInputSlider(min, max, step)
31
+ .setValue(value)
32
+ .setPlaceholder(placeholder);
33
+ }
34
+ return new ZikoUIInputNumber(min, max, step);
35
+ };
36
+ export { inputNumber, ZikoUIInputNumber };
37
37