@kizmann/pico-js 2.0.8 → 2.0.10

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 (97) hide show
  1. package/dist/pico-js.browser.js +1 -1
  2. package/dist/pico-js.browser.js.map +1 -1
  3. package/dist/pico-js.esm.js +1 -1
  4. package/dist/pico-js.esm.js.map +1 -1
  5. package/package.json +4 -6
  6. package/src/dom/{DomAttribute.js → DomAttribute.ts} +40 -63
  7. package/src/dom/{DomBuilder.js → DomBuilder.ts} +27 -44
  8. package/src/dom/{DomEvent.js → DomEvent.ts} +74 -78
  9. package/src/dom/{DomFinder.js → DomFinder.ts} +89 -129
  10. package/src/dom/DomForm.ts +38 -0
  11. package/src/dom/{DomGlobal.js → DomGlobal.ts} +34 -51
  12. package/src/dom/{DomInview.js → DomInview.ts} +37 -57
  13. package/src/dom/DomMeta.ts +48 -0
  14. package/src/dom/DomObserver.ts +17 -0
  15. package/src/dom/{DomPopover.js → DomPopover.ts} +20 -39
  16. package/src/dom/{DomRectangle.js → DomRectangle.ts} +67 -88
  17. package/src/format/{FormatFile.js → FormatFile.ts} +12 -23
  18. package/src/format/{FormatOption.js → FormatOption.ts} +15 -24
  19. package/src/format/{FormatParam.js → FormatParam.ts} +14 -25
  20. package/src/format/{FormatParser.js → FormatParser.ts} +29 -39
  21. package/src/format/{FormatUrl.js → FormatUrl.ts} +9 -21
  22. package/src/index.browser.ts +32 -0
  23. package/src/index.esm.ts +64 -0
  24. package/src/now/{NowDefault.js → NowDefault.ts} +86 -121
  25. package/src/now/{NowFormat.js → NowFormat.ts} +23 -28
  26. package/src/now/{NowGrid.js → NowGrid.ts} +41 -58
  27. package/src/now/{NowHuman.js → NowHuman.ts} +18 -27
  28. package/src/now/{NowMatch.js → NowMatch.ts} +22 -28
  29. package/src/now/{NowRange.js → NowRange.ts} +13 -22
  30. package/src/now/{NowWalker.js → NowWalker.ts} +65 -71
  31. package/src/tool/{scope.js → scope.ts} +41 -11
  32. package/src/utils/{Array.js → Array.ts} +146 -160
  33. package/src/utils/{Cookie.js → Cookie.ts} +15 -12
  34. package/src/utils/{Data.js → Data.ts} +17 -17
  35. package/src/utils/Dom.ts +204 -0
  36. package/src/utils/Format.ts +48 -0
  37. package/src/utils/{Hash.js → Hash.ts} +20 -20
  38. package/src/utils/{Locale.js → Locale.ts} +22 -22
  39. package/src/utils/{Mixed.js → Mixed.ts} +70 -58
  40. package/src/utils/{Now.js → Now.ts} +68 -69
  41. package/src/utils/{Number.js → Number.ts} +34 -36
  42. package/src/utils/{Object.js → Object.ts} +68 -122
  43. package/src/utils/{Route.js → Route.ts} +11 -9
  44. package/src/utils/{Runner.js → Runner.ts} +65 -47
  45. package/src/utils/{Signal.js → Signal.ts} +35 -22
  46. package/src/utils/{String.js → String.ts} +79 -69
  47. package/src/wip/{Element.js → Element.ts} +2 -2
  48. package/src/wip/{Map.js → Map.ts} +131 -101
  49. package/types/dom/DomAttribute.d.ts +16 -27
  50. package/types/dom/DomBuilder.d.ts +6 -9
  51. package/types/dom/DomEvent.d.ts +19 -25
  52. package/types/dom/DomFinder.d.ts +35 -58
  53. package/types/dom/DomForm.d.ts +7 -10
  54. package/types/dom/DomGlobal.d.ts +8 -15
  55. package/types/dom/DomInview.d.ts +9 -19
  56. package/types/dom/DomMeta.d.ts +9 -16
  57. package/types/dom/DomObserver.d.ts +4 -8
  58. package/types/dom/DomPopover.d.ts +8 -11
  59. package/types/dom/DomRectangle.d.ts +21 -40
  60. package/types/format/FormatFile.d.ts +5 -8
  61. package/types/format/FormatOption.d.ts +6 -8
  62. package/types/format/FormatParam.d.ts +6 -9
  63. package/types/format/FormatParser.d.ts +10 -18
  64. package/types/format/FormatUrl.d.ts +5 -8
  65. package/types/index.esm.d.ts +25 -37
  66. package/types/now/NowDefault.d.ts +30 -99
  67. package/types/now/NowFormat.d.ts +8 -21
  68. package/types/now/NowGrid.d.ts +24 -46
  69. package/types/now/NowHuman.d.ts +10 -11
  70. package/types/now/NowMatch.d.ts +6 -4
  71. package/types/now/NowRange.d.ts +5 -8
  72. package/types/now/NowWalker.d.ts +6 -4
  73. package/types/tool/scope.d.ts +11 -3
  74. package/types/utils/Array.d.ts +83 -104
  75. package/types/utils/Cookie.d.ts +11 -8
  76. package/types/utils/Data.d.ts +7 -7
  77. package/types/utils/Dom.d.ts +63 -96
  78. package/types/utils/Format.d.ts +15 -28
  79. package/types/utils/Hash.d.ts +21 -21
  80. package/types/utils/Locale.d.ts +10 -10
  81. package/types/utils/Mixed.d.ts +18 -32
  82. package/types/utils/Now.d.ts +51 -56
  83. package/types/utils/Number.d.ts +9 -20
  84. package/types/utils/Object.d.ts +21 -36
  85. package/types/utils/Route.d.ts +5 -2
  86. package/types/utils/Runner.d.ts +41 -24
  87. package/types/utils/Signal.d.ts +16 -16
  88. package/types/utils/String.d.ts +40 -76
  89. package/src/dom/DomForm.js +0 -59
  90. package/src/dom/DomMeta.js +0 -68
  91. package/src/dom/DomObserver.js +0 -38
  92. package/src/index.browser.js +0 -36
  93. package/src/index.esm.js +0 -80
  94. package/src/utils/Dom.js +0 -214
  95. package/src/utils/Format.js +0 -62
  96. package/types/wip/Element.d.ts +0 -119
  97. package/types/wip/Map.d.ts +0 -254
@@ -1,12 +1,16 @@
1
- import { Arr, Mix, Obj, Dom } from "../index.esm.js";
2
- import { PicoDom } from "../utils/Dom.js";
1
+ import { Arr, Mix, Obj, Dom } from "../index.esm.ts";
2
+ import { PicoDomInterface, PicoDom } from "../utils/Dom.ts";
3
+
4
+ export interface PicoDomFinder extends PicoDomInterface
5
+ {
6
+ //
7
+ }
3
8
 
4
9
  /**
5
10
  * @memberof PicoDom
6
11
  */
7
- export class PicoDomFinderStatic
12
+ export class PicoDomFinder
8
13
  {
9
-
10
14
  /**
11
15
  * Filter nodes by type
12
16
  *
@@ -14,11 +18,11 @@ export class PicoDomFinderStatic
14
18
  *
15
19
  * @param {any} nodes Source nodes
16
20
  * @param {number} [filter] Node type
17
- * @returns {Array<Element>} Filtered nodes
21
+ * @returns {Array<any>} Filtered nodes
18
22
  */
19
- static filterNodes(nodes, filter = 1)
23
+ static filterNodes(nodes : any, filter : number = 1) : Array<any>
20
24
  {
21
- return Arr.filter(Mix.nodes(nodes), (el) => {
25
+ return Arr.filter(Mix.nodes(nodes), (el : any) => {
22
26
  return el.nodeType === filter;
23
27
  });
24
28
  }
@@ -28,13 +32,13 @@ export class PicoDomFinderStatic
28
32
  *
29
33
  * @example Dom.getNodePoint(100, 100)
30
34
  *
31
- * @param {object} event Event data
32
- * @returns {Array<Element>} Nodes at point
35
+ * @param {any} event Event data
36
+ * @returns {Array<any>} Nodes at point
33
37
  */
34
- static getNodePoint(event)
38
+ static getNodePoint(event : any) : Array<any>
35
39
  {
36
40
  if ( event.touches?.[0] ) {
37
- // event = event.touches[0];
41
+ event = event.touches[0];
38
42
  }
39
43
 
40
44
  let [el, src] = [
@@ -46,6 +50,7 @@ export class PicoDomFinderStatic
46
50
  }
47
51
 
48
52
  if ( Dom.doc().msElementsFromPoint != null ) {
53
+ // @ts-ignore
49
54
  el = document.msElementsFromPoint(src[0], src[1]);
50
55
  }
51
56
 
@@ -59,9 +64,9 @@ export class PicoDomFinderStatic
59
64
  *
60
65
  * @param {string} selector Node selector
61
66
  * @param {any} [event] Event object
62
- * @returns {Element} Found element
67
+ * @returns {any} Found element
63
68
  */
64
- static getNodeEvent(selector, event = {})
69
+ static getNodeEvent(selector : string, event : any = {}) : any
65
70
  {
66
71
  let target = event.srcElement;
67
72
 
@@ -86,35 +91,6 @@ export class PicoDomFinderStatic
86
91
  return target.closest(selector);
87
92
  }
88
93
 
89
- }
90
-
91
- /**
92
- * @memberof PicoDom
93
- * @extends {PicoDom}
94
- */
95
- export class PicoDomFinderInstance
96
- {
97
- /**
98
- * Resolve input elements
99
- *
100
- * @example Dom._constructFinder(".item")
101
- *
102
- * @param {any} el Input value
103
- * @returns {any} Resolved elements
104
- */
105
- static _constructFinder(el)
106
- {
107
- if ( typeof el === 'string' ) {
108
- el = document.querySelectorAll(el);
109
- }
110
-
111
- if ( el instanceof NodeList ) {
112
- el = Mix.nodes(el);
113
- }
114
-
115
- return el;
116
- }
117
-
118
94
  /**
119
95
  * Get node type
120
96
  *
@@ -123,9 +99,9 @@ export class PicoDomFinderInstance
123
99
  * @param {number} [fallback] Fallback value
124
100
  * @returns {number} Node type
125
101
  */
126
- getNodeType(fallback = -1)
102
+ getNodeType(fallback : number = -1) : number
127
103
  {
128
- if ( ! this.el ) {
104
+ if ( !this.el ) {
129
105
  return fallback;
130
106
  }
131
107
 
@@ -140,9 +116,9 @@ export class PicoDomFinderInstance
140
116
  * @param {any} [fallback] Fallback value
141
117
  * @returns {PicoDom} Parent instance
142
118
  */
143
- getNodeParent(fallback = null)
119
+ getNodeParent(fallback : any = null) : PicoDom
144
120
  {
145
- if ( ! this.el ) {
121
+ if ( !this.el ) {
146
122
  return fallback;
147
123
  }
148
124
 
@@ -157,9 +133,9 @@ export class PicoDomFinderInstance
157
133
  * @param {any} [fallback] Fallback value
158
134
  * @returns {PicoDom} Prev instance
159
135
  */
160
- getNodePrev(fallback = null)
136
+ getNodePrev(fallback : any = null) : PicoDom
161
137
  {
162
- if ( ! this.el ) {
138
+ if ( !this.el ) {
163
139
  return fallback;
164
140
  }
165
141
 
@@ -174,9 +150,9 @@ export class PicoDomFinderInstance
174
150
  * @param {any} [fallback] Fallback value
175
151
  * @returns {PicoDom} Next instance
176
152
  */
177
- getNodeNext(fallback = null)
153
+ getNodeNext(fallback : any = null) : PicoDom
178
154
  {
179
- if ( ! this.el ) {
155
+ if ( !this.el ) {
180
156
  return fallback;
181
157
  }
182
158
 
@@ -190,11 +166,11 @@ export class PicoDomFinderInstance
190
166
  *
191
167
  * @param {number} [type] Node type
192
168
  * @param {any} [fallback] Fallback value
193
- * @returns {Array<Element>} Child nodes
169
+ * @returns {Array<any>} Child nodes
194
170
  */
195
- getNodeChilds(type = -1, fallback = [])
171
+ getNodeChilds(type : number = -1, fallback : any = []) : Array<any>
196
172
  {
197
- if ( ! this.el ) {
173
+ if ( !this.el ) {
198
174
  return fallback;
199
175
  }
200
176
 
@@ -204,7 +180,7 @@ export class PicoDomFinderInstance
204
180
  return childs;
205
181
  }
206
182
 
207
- return Arr.filter(childs, (el) => {
183
+ return Arr.filter(childs, (el : any) => {
208
184
  return el.nodeType === type;
209
185
  });
210
186
  }
@@ -217,11 +193,11 @@ export class PicoDomFinderInstance
217
193
  * @param {number} [filter] Node type
218
194
  * @returns {PicoDom} Current instance
219
195
  */
220
- sanatize(filter = 1)
196
+ sanatize(filter : number = 1) : PicoDom
221
197
  {
222
198
  this.els = Dom.filterNodes(this.els, filter);
223
199
 
224
- return this;
200
+ return <PicoDom> <unknown> this;
225
201
  }
226
202
 
227
203
  /**
@@ -230,12 +206,12 @@ export class PicoDomFinderInstance
230
206
  * @example Dom.find("div").filter(".active")
231
207
  *
232
208
  * @param {any} selector Filter selector
233
- * @returns {Array<Element>} Filtered nodes
209
+ * @returns {Array<any>} Filtered nodes
234
210
  */
235
- filter(selector)
211
+ filter(selector : any) : Array<any>
236
212
  {
237
213
  if ( typeof selector !== 'function' ) {
238
- selector = (el) => Dom.find(el).is(selector);
214
+ selector = (el : any) => Dom.find(el).is(selector);
239
215
  }
240
216
 
241
217
  return Arr.filter(this.els, selector);
@@ -247,12 +223,12 @@ export class PicoDomFinderInstance
247
223
  * @example Dom.find("div").except(".active")
248
224
  *
249
225
  * @param {any} selector Exclude selector
250
- * @returns {Array<Element>} Filtered nodes
226
+ * @returns {Array<any>} Filtered nodes
251
227
  */
252
- except(selector)
228
+ except(selector : any) : Array<any>
253
229
  {
254
230
  if ( typeof selector !== 'function' ) {
255
- selector = (el) => ! Dom.find(el).is(selector);
231
+ selector = (el : any) => !Dom.find(el).is(selector);
256
232
  }
257
233
 
258
234
  return Arr.filter(this.els, selector);
@@ -266,7 +242,7 @@ export class PicoDomFinderInstance
266
242
  * @param {any} selector Search selector
267
243
  * @returns {PicoDom} Dom instance
268
244
  */
269
- find(selector)
245
+ find(selector : any) : PicoDom
270
246
  {
271
247
  if ( this.el == null ) {
272
248
  return Dom.find(null);
@@ -290,16 +266,16 @@ export class PicoDomFinderInstance
290
266
  /**
291
267
  * Get element by index
292
268
  *
293
- * @example Dom.find("div").get(0) // => Element
269
+ * @example Dom.find("div").get(0) // => HTMLElement
294
270
  *
295
271
  * @param {number} [index] Node index
296
272
  * @returns {any} Found element
297
273
  */
298
- get(index = - 1)
274
+ get(index : number = -1) : any
299
275
  {
300
276
  let nodes = this.els;
301
277
 
302
- if ( index === - 1 ) {
278
+ if ( index === -1 ) {
303
279
  return nodes;
304
280
  }
305
281
 
@@ -309,12 +285,12 @@ export class PicoDomFinderInstance
309
285
  /**
310
286
  * Get first element
311
287
  *
312
- * @example Dom.find("div").first() // => Element
288
+ * @example Dom.find("div").first() // => HTMLElement
313
289
  *
314
290
  * @param {number} [offset] Node offset
315
291
  * @returns {any} Found element
316
292
  */
317
- first(offset = 0)
293
+ first(offset : number = 0) : any
318
294
  {
319
295
  return this.get(offset);
320
296
  }
@@ -322,12 +298,12 @@ export class PicoDomFinderInstance
322
298
  /**
323
299
  * Get last element
324
300
  *
325
- * @example Dom.find("div").last() // => Element
301
+ * @example Dom.find("div").last() // => HTMLElement
326
302
  *
327
303
  * @param {number} [offset] Node offset
328
304
  * @returns {any} Found element
329
305
  */
330
- last(offset = 1)
306
+ last(offset : number = 1) : any
331
307
  {
332
308
  return Arr.get(this.els, this.els.length - offset);
333
309
  }
@@ -337,10 +313,10 @@ export class PicoDomFinderInstance
337
313
  *
338
314
  * @example Dom.find("div").each((el) => console.log(el))
339
315
  *
340
- * @param {function} cb Callback fn
316
+ * @param {Function} cb Callback fn
341
317
  * @returns {PicoDom} Current instance
342
318
  */
343
- each(cb)
319
+ each(cb : Function) : PicoDom
344
320
  {
345
321
  return (this, Arr.each(this.els, cb));
346
322
  }
@@ -350,21 +326,21 @@ export class PicoDomFinderInstance
350
326
  *
351
327
  * @example Dom.find("div").loopParent((el) => console.log(el))
352
328
  *
353
- * @param {function} cb Callback fn
329
+ * @param {Function} cb Callback fn
354
330
  * @param {any} [boundry] Loop limit
355
331
  * @returns {PicoDom} Current instance
356
332
  */
357
- loopParent(cb, boundry = null)
333
+ loopParent(cb : Function, boundry : any = null) : PicoDom
358
334
  {
359
335
  if ( boundry == null ) {
360
336
  boundry = Dom.win();
361
337
  }
362
338
 
363
- for ( let el = this.el; el && el !== boundry; el = el.parentNode ) {
339
+ for ( let el : any = this.el; el && el !== boundry; el = el.parentNode ) {
364
340
  cb.call({}, el);
365
341
  }
366
342
 
367
- return this;
343
+ return <PicoDom> <unknown> this;
368
344
  }
369
345
 
370
346
  /**
@@ -374,7 +350,7 @@ export class PicoDomFinderInstance
374
350
  *
375
351
  * @returns {PicoDom} Parent instance
376
352
  */
377
- parent()
353
+ parent() : PicoDom
378
354
  {
379
355
  let parent = this.getNodeParent();
380
356
 
@@ -394,7 +370,7 @@ export class PicoDomFinderInstance
394
370
  * @param {number} [filter] Node type
395
371
  * @returns {PicoDom} Child instance
396
372
  */
397
- child(selector = null, filter = 1)
373
+ child(selector : any = null, filter : number = 1) : PicoDom
398
374
  {
399
375
  for ( let el of this.childs(selector, filter) ) {
400
376
  return Dom.find(el);
@@ -410,9 +386,9 @@ export class PicoDomFinderInstance
410
386
  *
411
387
  * @param {any} [selector] Child selector
412
388
  * @param {number} [filter] Node type
413
- * @returns {Array<Element>} Child elements
389
+ * @returns {Array<any>} Child elements
414
390
  */
415
- childs(selector = null, filter = 1)
391
+ childs(selector : any = null, filter : number = 1) : Array<any>
416
392
  {
417
393
  let childs = this.getNodeChilds(filter);
418
394
 
@@ -431,22 +407,30 @@ export class PicoDomFinderInstance
431
407
  * @example Dom.find("div").closest(".container")
432
408
  *
433
409
  * @param {any} selector Target selector
434
- * @returns {Element} Found element
410
+ * @returns {any} Found element
435
411
  */
436
- closest(selector)
412
+ closest(selector : any) : any
437
413
  {
438
414
  if ( this.el === selector ) {
439
415
  return this.el;
440
416
  }
441
417
 
442
- for ( let el = this; el.el != null; el = el.getNodeParent() ) {
418
+ for ( let el : any = this; el.el != null; el = el.getNodeParent() ) {
443
419
  if ( el.is(selector) ) return el.el;
444
420
  }
445
421
 
446
422
  return null;
447
423
  }
448
424
 
449
- upnode(selector)
425
+ /**
426
+ * Get closest instance
427
+ *
428
+ * @example Dom.find("div").upnode(".container")
429
+ *
430
+ * @param {any} selector
431
+ * @returns {PicoDom}
432
+ */
433
+ upnode(selector : any) : PicoDom
450
434
  {
451
435
  return Dom.find(...[
452
436
  this.closest(selector)
@@ -461,7 +445,7 @@ export class PicoDomFinderInstance
461
445
  * @param {number} [type] Node type
462
446
  * @returns {PicoDom} Prev instance
463
447
  */
464
- prev(type = 1)
448
+ prev(type : number = 1) : PicoDom
465
449
  {
466
450
  let el = this.getNodePrev();
467
451
 
@@ -480,7 +464,7 @@ export class PicoDomFinderInstance
480
464
  * @param {number} [type] Node type
481
465
  * @returns {PicoDom} Next instance
482
466
  */
483
- next(type = 1)
467
+ next(type : number = 1) : PicoDom
484
468
  {
485
469
  let el = this.getNodeNext();
486
470
 
@@ -498,7 +482,7 @@ export class PicoDomFinderInstance
498
482
  *
499
483
  * @returns {number} Count value
500
484
  */
501
- length()
485
+ length() : number
502
486
  {
503
487
  return this.els.length;
504
488
  }
@@ -512,7 +496,7 @@ export class PicoDomFinderInstance
512
496
  * @param {boolean} [empty] Test selector
513
497
  * @returns {boolean} True if matches
514
498
  */
515
- is(selector, empty = false)
499
+ is(selector : any, empty : boolean = false) : boolean
516
500
  {
517
501
  if ( this.el === selector ) {
518
502
  return true;
@@ -537,7 +521,7 @@ export class PicoDomFinderInstance
537
521
  * @param {any} selector Test selector
538
522
  * @returns {boolean} True if matches
539
523
  */
540
- matches(selector)
524
+ matches(selector : any) : boolean
541
525
  {
542
526
  if ( this.el === selector ) {
543
527
  return true;
@@ -561,7 +545,7 @@ export class PicoDomFinderInstance
561
545
  *
562
546
  * @returns {boolean} True if empty
563
547
  */
564
- empty()
548
+ empty() : boolean
565
549
  {
566
550
  return this.length() < 1 || this.el == null;
567
551
  }
@@ -573,7 +557,7 @@ export class PicoDomFinderInstance
573
557
  *
574
558
  * @returns {boolean} True if visible
575
559
  */
576
- visible()
560
+ visible() : boolean
577
561
  {
578
562
  if ( this.el == null ) {
579
563
  return false;
@@ -590,7 +574,7 @@ export class PicoDomFinderInstance
590
574
  * @param {any} selector Parent selector
591
575
  * @returns {boolean} True if matches
592
576
  */
593
- above(selector)
577
+ above(selector : any) : boolean
594
578
  {
595
579
  // Parent is exacly selector
596
580
  return this.parent().is(selector);
@@ -604,7 +588,7 @@ export class PicoDomFinderInstance
604
588
  * @param {any} selector Target selector
605
589
  * @returns {boolean} True if inside
606
590
  */
607
- inside(selector)
591
+ inside(selector : any) : boolean
608
592
  {
609
593
  // Has parent of selector
610
594
  return this.closest(selector) != null;
@@ -618,7 +602,7 @@ export class PicoDomFinderInstance
618
602
  * @param {any} selector Target selector
619
603
  * @returns {boolean} True if contains
620
604
  */
621
- contains(selector)
605
+ contains(selector : any) : boolean
622
606
  {
623
607
  // Has child of selector
624
608
  return this.el.contains(selector);
@@ -626,57 +610,33 @@ export class PicoDomFinderInstance
626
610
 
627
611
  }
628
612
 
629
- /**
630
- * @see PicoDom.above
631
- */
632
- PicoDomFinderInstance.prototype.isParent = function (...args) {
613
+ // @ts-ignore
614
+ PicoDomFinder.prototype.isParent = function (...args : Parameters<typeof PicoDomFinder.prototype.above>) {
633
615
  console.warn('Dom.isParent() is deprecated, use Dom.above() instead.');
634
616
  return this.above(...args);
635
617
  };
636
618
 
637
- /**
638
- * @see PicoDom.prev
639
- */
640
- PicoDomFinderInstance.prototype.previous = function () {
619
+ // @ts-ignore
620
+ PicoDomFinder.prototype.previous = function () {
641
621
  console.warn('Dom.previous() is deprecated, use Dom.prev() instead.');
642
622
  return this.prev();
643
623
  };
644
624
 
645
- /**
646
- * @see PicoDom.filter
647
- */
648
- PicoDomFinderInstance.prototype.where = function (...args) {
625
+ // @ts-ignore
626
+ PicoDomFinder.prototype.where = function (...args : Parameters<typeof PicoDomFinder.prototype.filter>) {
649
627
  console.warn('Dom.where() is deprecated, use Dom.filter() instead.');
650
628
  return this.filter(...args);
651
629
  };
652
630
 
653
- /**
654
- * @see PicoDom.except
655
- */
656
- PicoDomFinderInstance.prototype.not = function (...args) {
631
+ // @ts-ignore
632
+ PicoDomFinder.prototype.not = function (...args : Parameters<typeof PicoDomFinder.prototype.except>) {
657
633
  console.warn('Dom.not() is deprecated, use Dom.except() instead.');
658
634
  return this.except(...args);
659
635
  };
660
636
 
661
- PicoDomFinderInstance.prototype.getNot = () => {
637
+ // @ts-ignore
638
+ PicoDomFinder.prototype.getNot = () => {
662
639
  console.error('Dom.getNot() is not implemented anymore.');
663
640
  };
664
641
 
665
- /**
666
- * @param {typeof PicoDom} self
667
- * @returns {typeof PicoDom}
668
- */
669
- export const PicoDomFinderPlugin = function (self) {
670
-
671
- Obj.each(Mix.class(PicoDomFinderStatic), (fn, id) => {
672
- self[id] = fn;
673
- });
674
-
675
- Obj.each(Mix.proto(PicoDomFinderInstance), (fn, id) => {
676
- self.prototype[id] = fn;
677
- });
678
-
679
- self.init.push(PicoDomFinderInstance._constructFinder);
680
-
681
- return self;
682
- }
642
+ export default PicoDomFinder;
@@ -0,0 +1,38 @@
1
+ import { PicoDomInterface } from "../utils/Dom.ts";
2
+ import PicoDomFinder from "./DomFinder.js";
3
+
4
+ export interface PicoDomForm extends PicoDomInterface,
5
+ PicoDomFinder
6
+ {
7
+ //
8
+ }
9
+
10
+ /**
11
+ * @memberof PicoDom
12
+ */
13
+ export class PicoDomForm
14
+ {
15
+ /**
16
+ * Get or set input value
17
+ *
18
+ * @example Dom.find("input").value("hello")
19
+ *
20
+ * @param {any} [value] Input value
21
+ * @returns {any} Value or instance
22
+ */
23
+ value(value : any = undefined) : any
24
+ {
25
+ if ( value === undefined ) {
26
+ return this.el.value;
27
+ }
28
+
29
+ this.each((el : any) => {
30
+ el.value = value;
31
+ });
32
+
33
+ return this;
34
+ }
35
+
36
+ }
37
+
38
+ export default PicoDomForm;