x4js 2.0.11 → 2.0.13

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 (109) hide show
  1. package/README.md +15 -15
  2. package/lib/README.txt +15 -15
  3. package/lib/cjs/x4.css +1 -1
  4. package/lib/cjs/x4.js +1 -1
  5. package/lib/esm/x4.css +1 -1
  6. package/lib/esm/x4.mjs +1 -1
  7. package/lib/src/components/base.scss +25 -26
  8. package/lib/src/components/boxes/boxes.module.scss +37 -37
  9. package/lib/src/components/boxes/boxes.ts +129 -125
  10. package/lib/src/components/breadcrumb/breadcrumb.scss +28 -0
  11. package/lib/src/components/breadcrumb/breadcrumb.ts +84 -0
  12. package/lib/src/components/breadcrumb/chevron-right.svg +1 -0
  13. package/lib/src/components/btngroup/btngroup.module.scss +28 -28
  14. package/lib/src/components/btngroup/btngroup.ts +119 -101
  15. package/lib/src/components/button/button.module.scss +154 -153
  16. package/lib/src/components/button/button.ts +117 -117
  17. package/lib/src/components/calendar/calendar.module.scss +162 -162
  18. package/lib/src/components/calendar/calendar.ts +326 -325
  19. package/lib/src/components/checkbox/check.svg +3 -3
  20. package/lib/src/components/checkbox/checkbox.module.scss +141 -141
  21. package/lib/src/components/checkbox/checkbox.ts +125 -124
  22. package/lib/src/components/colorinput/colorinput.module.scss +64 -64
  23. package/lib/src/components/colorinput/colorinput.ts +90 -87
  24. package/lib/src/components/colorpicker/colorpicker.module.scss +132 -132
  25. package/lib/src/components/colorpicker/colorpicker.ts +481 -476
  26. package/lib/src/components/combobox/combobox.module.scss +123 -120
  27. package/lib/src/components/combobox/combobox.ts +192 -190
  28. package/lib/src/components/combobox/updown.svg +3 -3
  29. package/lib/src/components/components.ts +34 -0
  30. package/lib/src/components/dialog/dialog.module.scss +71 -71
  31. package/lib/src/components/dialog/dialog.ts +94 -92
  32. package/lib/src/components/form/form.module.scss +34 -34
  33. package/lib/src/components/form/form.ts +41 -36
  34. package/lib/src/components/grid/datastore.ts +1298 -0
  35. package/lib/src/components/grid/gridview.ts +1108 -0
  36. package/lib/src/components/grid/memdb.ts +325 -0
  37. package/lib/src/components/header/header.module.scss +39 -39
  38. package/lib/src/components/header/header.ts +129 -123
  39. package/lib/src/components/icon/icon.module.scss +29 -29
  40. package/lib/src/components/icon/icon.ts +136 -134
  41. package/lib/src/components/image/image.module.scss +20 -20
  42. package/lib/src/components/image/image.ts +68 -66
  43. package/lib/src/components/input/input.module.scss +69 -69
  44. package/lib/src/components/input/input.ts +275 -274
  45. package/lib/src/components/label/label.module.scss +58 -52
  46. package/lib/src/components/label/label.ts +64 -55
  47. package/lib/src/components/link/link.ts +78 -0
  48. package/lib/src/components/listbox/listbox.module.scss +103 -103
  49. package/lib/src/components/listbox/listbox.ts +431 -427
  50. package/lib/src/components/menu/menu.module.scss +107 -107
  51. package/lib/src/components/menu/menu.ts +171 -168
  52. package/lib/src/components/messages/messages.module.scss +48 -47
  53. package/lib/src/components/messages/messages.ts +68 -63
  54. package/lib/src/components/normalize.scss +386 -386
  55. package/lib/src/components/notification/notification.module.scss +81 -81
  56. package/lib/src/components/notification/notification.ts +109 -108
  57. package/lib/src/components/panel/panel.module.scss +47 -47
  58. package/lib/src/components/panel/panel.ts +57 -56
  59. package/lib/src/components/popup/popup.module.scss +43 -43
  60. package/lib/src/components/popup/popup.ts +396 -395
  61. package/lib/src/components/progress/progress.module.scss +56 -56
  62. package/lib/src/components/progress/progress.ts +43 -42
  63. package/lib/src/components/rating/rating.module.scss +22 -22
  64. package/lib/src/components/rating/rating.ts +131 -125
  65. package/lib/src/components/shared.scss +90 -76
  66. package/lib/src/components/sizers/sizer.module.scss +89 -89
  67. package/lib/src/components/sizers/sizer.ts +123 -119
  68. package/lib/src/components/slider/slider.module.scss +70 -70
  69. package/lib/src/components/slider/slider.ts +147 -142
  70. package/lib/src/components/switch/switch.module.scss +126 -126
  71. package/lib/src/components/switch/switch.ts +61 -55
  72. package/lib/src/components/tabs/tabs.module.scss +46 -46
  73. package/lib/src/components/tabs/tabs.ts +168 -157
  74. package/lib/src/components/textarea/textarea.module.scss +59 -59
  75. package/lib/src/components/textarea/textarea.ts +60 -54
  76. package/lib/src/components/textedit/textedit.module.scss +113 -113
  77. package/lib/src/components/textedit/textedit.ts +83 -82
  78. package/lib/src/components/themes.scss +81 -77
  79. package/lib/src/components/tooltips/tooltips.scss +50 -50
  80. package/lib/src/components/tooltips/tooltips.ts +103 -102
  81. package/lib/src/components/treeview/treeview.module.scss +115 -115
  82. package/lib/src/components/treeview/treeview.ts +410 -403
  83. package/lib/src/components/viewport/viewport.module.scss +24 -24
  84. package/lib/src/components/viewport/viewport.ts +41 -38
  85. package/lib/src/core/component.ts +1002 -979
  86. package/lib/src/core/core_application.ts +44 -0
  87. package/lib/src/core/core_colors.ts +249 -249
  88. package/lib/src/core/core_dom.ts +471 -471
  89. package/lib/src/core/core_dragdrop.ts +200 -200
  90. package/lib/src/core/core_element.ts +97 -97
  91. package/lib/src/core/core_events.ts +149 -149
  92. package/lib/src/core/core_i18n.ts +377 -377
  93. package/lib/src/core/core_router.ts +221 -221
  94. package/lib/src/core/core_styles.ts +214 -214
  95. package/lib/src/core/core_svg.ts +550 -550
  96. package/lib/src/core/core_tools.ts +688 -673
  97. package/lib/src/demo/assets/radio.svg +3 -3
  98. package/lib/src/demo/index.html +11 -11
  99. package/lib/src/demo/main.scss +21 -21
  100. package/lib/src/demo/main.tsx +323 -323
  101. package/lib/src/types/scss.d.ts +4 -4
  102. package/lib/src/types/x4react.d.ts +8 -8
  103. package/lib/src/x4.scss +18 -18
  104. package/lib/src/x4.ts +31 -60
  105. package/lib/styles/x4.css +1 -1
  106. package/lib/types/x4js.d.ts +100 -49
  107. package/package.json +2 -3
  108. package/src/x4.ts +31 -60
  109. package/lib/output.d.ts +0 -1472
package/lib/output.d.ts DELETED
@@ -1,1472 +0,0 @@
1
- /**
2
- * ___ ___ __
3
- * \ \/ / / _
4
- * \ / /_| |_
5
- * / \____ _|
6
- * /__/\__\ |_|
7
- *
8
- * @author Etienne Cochard
9
- * @copyright (c) 2024 R-libre ingenierie
10
- *
11
- * Use of this source code is governed by an MIT-style license
12
- * that can be found in the LICENSE file or at https://opensource.org/licenses/MIT.
13
- *
14
- * AUTOGENERATED CODE, DO NOT MODIFY
15
- * generated on Fri Oct 04 2024
16
- */
17
-
18
-
19
- declare module 'x4js' {
20
-
21
- // ---------------------------------------
22
- // from /src/core/core_i18n.ts
23
-
24
- interface Language {
25
- name: string;
26
- base: string;
27
- src_translations: any;
28
- translations: any;
29
- }
30
-
31
- // ---------------------------------------
32
- // from /src/core/core_tools.ts
33
-
34
- type Constructor<P> = {
35
- new( params: any[] ): P;
36
- }
37
-
38
- export class UnsafeHtml extends String {
39
- constructor( value: string );
40
- }
41
-
42
- export interface IRect {
43
- left: number;
44
- top: number;
45
- height: number;
46
- width: number;
47
- }
48
-
49
- export class Rect implements IRect {
50
- left: number;
51
- top: number;
52
- height: number;
53
- width: number;
54
- constructor( );
55
- constructor( l: number, t: number, w: number, h: number );
56
- constructor( l: Rect );
57
- constructor( l: number | IRect, t: number, w: number, h: number );
58
- }
59
-
60
- export interface Point {
61
- x: number;
62
- y: number;
63
- }
64
-
65
- export interface IComponentInterface {
66
- }
67
-
68
- export interface IFormElement extends IComponentInterface {
69
- getRawValue( ): any;
70
- setRawValue( v: any ): void;
71
- }
72
-
73
- interface Features {
74
- eyedropper: 1;
75
- }
76
-
77
- export class Timer {
78
- _timers: Map<string,any>;
79
- setTimeout( name: string, time: number, callback: Function ): void;
80
- clearTimeout( name: string ): void;
81
- setInterval( name: string, time: number, callback: Function ): void;
82
- clearInterval( name: string ): void;
83
- clearAllTimeouts( ): void;
84
- }
85
-
86
- // ---------------------------------------
87
- // from /src/core/core_events.ts
88
-
89
- export interface CoreEvent {
90
- type?: string;
91
- source?: CoreElement;
92
- context?: any;
93
- propagationStopped?: boolean;
94
- defaultPrevented?: boolean;
95
- stopPropagation( ): void;
96
- preventDefault( ): void;
97
- }
98
-
99
- export interface EventMap {
100
- }
101
-
102
- type EventCallback<T extends CoreEvent = CoreEvent> = (event: T) => any;
103
-
104
- export class EventSource<E extends EventMap = EventMap> {
105
- _source: unknown;
106
- _registry: Map<string,EventCallback[]>;
107
- constructor( source: unknown );
108
- addListener<K extends keyof E>( name: K, callback: ( ev: E[K] ) => void, capturing: any ): void;
109
- fire<K extends keyof E>( name: K, evx: E[K] ): void;
110
- }
111
-
112
- // ---------------------------------------
113
- // from /src/core/core_element.ts
114
-
115
- export class CoreElement<E extends EventMap = EventMap> {
116
- #events: EventSource<E>;
117
- #timers: Map<string, Function>;
118
- __startTimer( name: string, ms: number, repeat: boolean, callback: ( ) => void ): void;
119
- __stopTimer( name: string ): void;
120
- setTimeout( name: string, ms: number, callback: () => void ): void;
121
- clearTimeout( name: string ): void;
122
- setInterval( name: string, ms: number, callback: ( ) => void ): void;
123
- clearInterval( name: string ): void;
124
- clearTimeouts( ): void;
125
- on<K extends keyof E>( name: K, listener: ( ev: E[K] ) => void ): void;
126
- fire<K extends keyof E>( name: K, ev: E[K] ): void;
127
- }
128
-
129
- // ---------------------------------------
130
- // from /src/core/core_styles.ts
131
-
132
- type ariaValues = {
133
- "aria-activedescendant": 1;
134
- "role": 1;
135
- }
136
-
137
- export class Stylesheet {
138
- m_sheet: CSSStyleSheet;
139
- m_rules: Map<string, number>;
140
- constructor( );
141
- setRule( name: string, definition: any ): void;
142
- getVar( name: string ): any;
143
- guid: number;
144
- doc_style: CSSStyleDeclaration;
145
- }
146
-
147
- export class ComputedStyle {
148
- m_style: CSSStyleDeclaration;
149
- constructor( style: CSSStyleDeclaration );
150
- value( name: keyof CSSStyleDeclaration ): any;
151
- parse( name: keyof CSSStyleDeclaration ): number;
152
- }
153
-
154
- // ---------------------------------------
155
- // from /src/core/core_dom.ts
156
-
157
- type DOMEventHandler = ( ev: Event ) => void;
158
-
159
- type EventEntry = Record<string,DOMEventHandler | DOMEventHandler[]>;
160
-
161
- export interface GlobalDOMEvents {
162
- abort?: (ev: UIEvent) => any;
163
- animationcancel?: (ev: AnimationEvent) => any;
164
- animationend?: (ev: AnimationEvent) => any;
165
- animationiteration?: (ev: AnimationEvent) => any;
166
- animationstart?: (ev: AnimationEvent) => any;
167
- auxclick?: (ev: MouseEvent) => any;
168
- blur?: (ev: FocusEvent) => any;
169
- cancel?: (ev: Event) => any;
170
- canplay?: (ev: Event) => any;
171
- canplaythrough?: (ev: Event) => any;
172
- change?: (ev: Event) => any;
173
- click?: (ev: MouseEvent) => any;
174
- close?: (ev: Event) => any;
175
- contextmenu?: (ev: MouseEvent) => any;
176
- cuechange?: (ev: Event) => any;
177
- dblclick?: (ev: MouseEvent) => any;
178
- drag?: (ev: DragEvent) => any;
179
- dragend?: (ev: DragEvent) => any;
180
- dragenter?: (ev: DragEvent) => any;
181
- dragexit?: (ev: Event) => any;
182
- dragleave?: (ev: DragEvent) => any;
183
- dragover?: (ev: DragEvent) => any;
184
- dragstart?: (ev: DragEvent) => any;
185
- drop?: (ev: DragEvent) => any;
186
- durationchange?: (ev: Event) => any;
187
- emptied?: (ev: Event) => any;
188
- ended?: (ev: Event) => any;
189
- error?: OnErrorEventHandler;
190
- focusin?: (ev: FocusEvent) => any;
191
- focusout?: (ev: FocusEvent) => any;
192
- focus?: (ev: FocusEvent) => any;
193
- gotpointercapture?: (ev: PointerEvent) => any;
194
- input?: (ev: Event) => any;
195
- invalid?: (ev: Event) => any;
196
- keydown?: (ev: KeyboardEvent) => any;
197
- keypress?: (ev: KeyboardEvent) => any;
198
- keyup?: (ev: KeyboardEvent) => any;
199
- load?: (ev: Event) => any;
200
- loadeddata?: (ev: Event) => any;
201
- loadedmetadata?: (ev: Event) => any;
202
- loadstart?: (ev: Event) => any;
203
- lostpointercapture?: (ev: PointerEvent) => any;
204
- mousedown?: (ev: MouseEvent) => any;
205
- mouseenter?: (ev: MouseEvent) => any;
206
- mouseleave?: (ev: MouseEvent) => any;
207
- mousemove?: (ev: MouseEvent) => any;
208
- mouseout?: (ev: MouseEvent) => any;
209
- mouseover?: (ev: MouseEvent) => any;
210
- mouseup?: (ev: MouseEvent) => any;
211
- pause?: (ev: Event) => any;
212
- play?: (ev: Event) => any;
213
- playing?: (ev: Event) => any;
214
- pointercancel?: (ev: PointerEvent) => any;
215
- pointerdown?: (ev: PointerEvent) => any;
216
- pointerenter?: (ev: PointerEvent) => any;
217
- pointerleave?: (ev: PointerEvent) => any;
218
- pointermove?: (ev: PointerEvent) => any;
219
- pointerout?: (ev: PointerEvent) => any;
220
- pointerover?: (ev: PointerEvent) => any;
221
- pointerup?: (ev: PointerEvent) => any;
222
- progress?: (ev: ProgressEvent) => any;
223
- ratechange?: (ev: Event) => any;
224
- reset?: (ev: Event) => any;
225
- scroll?: (ev: Event) => any;
226
- securitypolicyviolation?: (ev: SecurityPolicyViolationEvent) => any;
227
- seeked?: (ev: Event) => any;
228
- seeking?: (ev: Event) => any;
229
- select?: (ev: Event) => any;
230
- selectionchange?: (ev: Event) => any;
231
- selectstart?: (ev: Event) => any;
232
- stalled?: (ev: Event) => any;
233
- submit?: (ev: Event) => any;
234
- suspend?: (ev: Event) => any;
235
- timeupdate?: (ev: Event) => any;
236
- toggle?: (ev: Event) => any;
237
- touchcancel?: (ev: TouchEvent) => any;
238
- touchend?: (ev: TouchEvent) => any;
239
- touchmove?: (ev: TouchEvent) => any;
240
- touchstart?: (ev: TouchEvent) => any;
241
- transitioncancel?: (ev: TransitionEvent) => any;
242
- transitionend?: (ev: TransitionEvent) => any;
243
- transitionrun?: (ev: TransitionEvent) => any;
244
- transitionstart?: (ev: TransitionEvent) => any;
245
- volumechange?: (ev: Event) => any;
246
- waiting?: (ev: Event) => any;
247
- wheel?: (ev: WheelEvent) => any;
248
- resized?: (ev: Event) => void;
249
- created?: ( ev: Event ) => void;
250
- removed?: ( ev: Event ) => void;
251
- }
252
-
253
- // ---------------------------------------
254
- // from /src/core/component.ts
255
-
256
- interface RefType<T extends Component> {
257
- dom: T;
258
- }
259
-
260
- type ComponentAttributes = Record<string,string|number|boolean>;
261
-
262
- type ComponentContent = Component | string | UnsafeHtml | number | boolean | Component[];
263
-
264
- export interface ComponentProps {
265
- tag?: string;
266
- ns?: string;
267
- style?: Partial<CSSStyleDeclaration>;
268
- attrs?: Record<string,string|number|boolean>;
269
- content?: ComponentContent;
270
- dom_events?: GlobalDOMEvents;
271
- cls?: string;
272
- id?: string;
273
- ref?: RefType<any>;
274
- width?: string | number;
275
- height?: string | number;
276
- disabled?: true;
277
- hidden?: true;
278
- tooltip?: string;
279
- existingDOM?: HTMLElement;
280
- }
281
-
282
- export interface ComponentEvent extends CoreEvent {
283
- }
284
-
285
- export interface ComponentEvents extends EventMap {
286
- }
287
-
288
- export class Component<P extends ComponentProps = ComponentProps, E extends ComponentEvents = ComponentEvents> extends CoreElement<E> {
289
- dom: Element;
290
- props: P;
291
- store: Map<string|Symbol,any>;
292
- constructor( props: P );
293
- hasClass( cls: string ): void;
294
- addClass( cls: string ): void;
295
- removeClass( cls: string ): void;
296
- toggleClass( cls: string ): void;
297
- setClass( cls: string, set: boolean ): void;
298
- setAttributes( attrs: ComponentAttributes ): void;
299
- setAttribute( name: string, value: string | number | boolean ): void;
300
- getAttribute( name: string ): string;
301
- getData( name: string ): string;
302
- setData( name: string, value: string ): void;
303
- setInternalData( name: string|Symbol, value: any ): this;
304
- getInternalData( name: string|Symbol ): any;
305
- addDOMEvent<K extends keyof GlobalDOMEvents>( name: K, listener: GlobalDOMEvents[K], prepend: any ): void;
306
- setDOMEvents( events: GlobalDOMEvents ): void;
307
- mapPropEvents<N extends keyof E>( props: P, elements: N[] ): void;
308
- clearContent( ): void;
309
- setContent( content: ComponentContent ): void;
310
- appendContent( content: ComponentContent ): void;
311
- prependContent( content: ComponentContent ): void;
312
- removeChild( child: Component ): void;
313
- queryAll( selector: string ): Component[];
314
- query<T extends Component = Component>( selector: string ): T;
315
- setAria( name: keyof ariaValues, value: string | number | boolean ): this;
316
- setStyle( style: Partial<CSSStyleDeclaration> ): this;
317
- setStyleValue<K extends keyof CSSStyleDeclaration>( name: K, value: CSSStyleDeclaration[K] | number ): this;
318
- getStyleValue<K extends keyof CSSStyleDeclaration>( name: K ): void;
319
- setWidth( w: number | string ): void;
320
- setHeight( h: number | string ): void;
321
- setStyleVariable( name: string, value: string ): void;
322
- getStyleVariable( name: string ): void;
323
- getComputedStyle( ): void;
324
- setCapture( pointerId: number ): void;
325
- releaseCapture( pointerId: number ): void;
326
- getBoundingRect( ): Rect;
327
- focus( ): void;
328
- scrollIntoView( arg: boolean | ScrollIntoViewOptions ): void;
329
- isVisible( ): void;
330
- show( vis: any ): void;
331
- hide( ): void;
332
- enable( ena: any ): void;
333
- disable( ): void;
334
- isDisabled( ): void;
335
- nextElement<T extends Component = Component>( ): T;
336
- prevElement<T extends Component = Component>( ): T;
337
- parentElement<T extends Component>( cls: Constructor<T> ): T;
338
- firstChild<T extends Component = Component>( ): T;
339
- lastChild<T extends Component = Component>( ): T;
340
- enumChildComponents( recursive: boolean ): void;
341
- enumChildNodes( recursive: boolean ): void;
342
- animate( keyframes: Keyframe[], duration: number ): void;
343
- createElement( clsOrTag: string | ComponentConstructor | Symbol | Function, attrs: any, children: Component[] ): Component | Component[];
344
- createFragment( ): Component[];
345
- queryInterface<T>( name: string ): T;
346
- }
347
-
348
- type ComponentConstructor = {
349
- new( params: any[] ): Component;
350
- }
351
-
352
- export class Flex extends Component {
353
- constructor( );
354
- }
355
-
356
- export interface EvClick extends ComponentEvent {
357
- }
358
-
359
- export interface EvChange extends ComponentEvent {
360
- value: any;
361
- }
362
-
363
- interface ISelection {
364
- }
365
-
366
- export interface EvSelectionChange extends ComponentEvent {
367
- selection: ISelection;
368
- }
369
-
370
- export interface EvContextMenu extends ComponentEvent {
371
- uievent: UIEvent;
372
- }
373
-
374
- export interface EvMessage extends ComponentEvent {
375
- msg: string;
376
- params?: any;
377
- }
378
-
379
- export interface EvDrag extends ComponentEvent {
380
- element: unknown;
381
- data: any;
382
- }
383
-
384
- export interface EvError extends ComponentEvent {
385
- code: number;
386
- message: string;
387
- }
388
-
389
- export interface EvDblClick extends ComponentEvent {
390
- }
391
-
392
- // ---------------------------------------
393
- // from /src/core/core_colors.ts
394
-
395
- export interface Rgb {
396
- red: number;
397
- green: number;
398
- blue: number;
399
- alpha: number;
400
- }
401
-
402
- export interface Hsv {
403
- hue: number;
404
- saturation: number;
405
- value: number;
406
- alpha: number;
407
- }
408
-
409
- export class Color {
410
- rgb: [red:number,green:number,blue:number,alpha:number];
411
- invalid: any;
412
- constructor( value: string );
413
- constructor( r: number, g: number, b: number, a: number );
414
- constructor( args: any[] );
415
- setValue( value: string ): this;
416
- setHsv( h: number, s: number, v: number, a: any ): this;
417
- setRgb( r: number, g: number, b: number, a: number ): this;
418
- toRgbString( withAlpha: boolean ): string;
419
- toHexString( ): string;
420
- toRgb( ): Rgb;
421
- toHsv( ): Hsv;
422
- getAlpha( ): void;
423
- setAlpha( a: number ): this;
424
- isInvalid( ): void;
425
- }
426
-
427
- // ---------------------------------------
428
- // from /src/core/core_dragdrop.ts
429
-
430
- interface DropInfo {
431
- pt: Point;
432
- data: DataTransfer;
433
- }
434
-
435
- type DropCallback = ( command: 'enter' | 'leave' | 'drag' | 'drop', el: Component, infos: DropInfo ) => void;
436
-
437
- type FilterCallback = ( el: Component ) => boolean;
438
-
439
- class DragManager {
440
- dragSource: Component;
441
- dragGhost: HTMLElement;
442
- dropTarget: Component;
443
- notified: Component;
444
- timer: any;
445
- registerDraggableElement( el: Component ): void;
446
- registerDropTarget( el: Component, cb: DropCallback, filterCB: FilterCallback ): void;
447
- _startCheck( ): void;
448
- _check( ): void;
449
- }
450
-
451
- // ---------------------------------------
452
- // from /src/core/core_router.ts
453
-
454
- type RouteHandler = ( params: any, path: string ) => void;
455
-
456
- interface Segment {
457
- keys: string[];
458
- pattern: RegExp;
459
- }
460
-
461
- interface Route {
462
- keys: string[];
463
- pattern: RegExp;
464
- handler: RouteHandler;
465
- }
466
-
467
- interface RouterEvents extends EventMap {
468
- error: EvError;
469
- }
470
-
471
- export class Router extends EventSource< RouterEvents > {
472
- m_routes: Route[];
473
- m_useHash: boolean;
474
- constructor( useHash: any );
475
- get( uri: string | RegExp, handler: RouteHandler ): void;
476
- init( ): void;
477
- _getLocation( ): void;
478
- navigate( uri: string, notify: any, replace: any ): void;
479
- _find( url: string ): { params: Record<string,any>, handlers: RouteHandler[] };
480
- }
481
-
482
- // ---------------------------------------
483
- // from /src/core/core_svg.ts
484
-
485
- class SvgItem {
486
- _dom: SVGElement;
487
- constructor( tag: string );
488
- getDom( ): void;
489
- stroke( color: string, width: number ): this;
490
- strokeWidth( width: number ): this;
491
- strokeCap( cap: "butt" | "round" | "sqaure" ): void;
492
- strokeOpacity( opacity: number ): void;
493
- antiAlias( set: boolean ): void;
494
- fill( color: string ): this;
495
- no_fill( ): this;
496
- setAttr( name: string, value: string ): this;
497
- setStyle<K extends keyof CSSStyleDeclaration>( name: K, value: string | number ): this;
498
- addClass( cls: string ): void;
499
- clip( id: string ): this;
500
- transform( tr: string ): this;
501
- rotate( deg: number, cx: number, cy: number ): this;
502
- translate( dx: number, dy: number ): this;
503
- scale( x: number ): this;
504
- addDOMEvent<K extends keyof GlobalDOMEvents>( name: K, listener: GlobalDOMEvents[K], prepend: any ): void;
505
- }
506
-
507
- export class SvgPath extends SvgItem {
508
- _path: string;
509
- constructor( );
510
- _update( ): this;
511
- moveTo( x: number, y: number ): this;
512
- lineTo( x: number, y: number ): this;
513
- closePath( ): this;
514
- arc( x: number, y: number, r: number, start: number, end: number ): this;
515
- }
516
-
517
- export class SvgText extends SvgItem {
518
- constructor( x: number, y: number, txt: string );
519
- font( font: string ): this;
520
- fontSize( size: number | string ): this;
521
- fontWeight( weight: 'light' | 'normal' | 'bold' ): this;
522
- textAlign( align: 'left' | 'center' | 'right' ): this;
523
- verticalAlign( align: 'top' | 'center' | 'bottom' | 'baseline' ): this;
524
- }
525
-
526
- export class SvgShape extends SvgItem {
527
- constructor( tag: string );
528
- }
529
-
530
- type number_or_perc = number | `${string}%`;
531
-
532
- export class SvgGradient extends SvgItem {
533
- g_id: any;
534
- _id: string;
535
- _stops: { offset: number_or_perc, color: string } [];
536
- constructor( x1: number_or_perc, y1: number_or_perc, x2: number_or_perc, y2: number_or_perc );
537
- addStop( offset: number_or_perc, color: string ): this;
538
- }
539
-
540
- export class SvgGroup extends SvgItem {
541
- constructor( tag: any );
542
- append<K extends SvgItem>( item: K ): K;
543
- path( ): SvgPath;
544
- text( x: number, y: number, txt: string ): void;
545
- ellipse( x: number, y: number, r1: number, r2: any ): SvgShape;
546
- rect( x: number, y: number, w: number, h: number ): SvgShape;
547
- group( ): void;
548
- linear_gradient( x1: number_or_perc, y1: number_or_perc, x2: number_or_perc, y2: number_or_perc ): void;
549
- clear( ): void;
550
- }
551
-
552
- export class SvgBuilder extends SvgGroup {
553
- g_clip_id: any;
554
- constructor( );
555
- addClip( x: number, y: number, w: number, h: number ): void;
556
- }
557
-
558
- interface SvgProps extends ComponentProps {
559
- viewbox?: string;
560
- svg?: SvgBuilder;
561
- }
562
-
563
- export class SvgComponent<P extends SvgProps = SvgProps> extends Component<P> {
564
- constructor( props: P );
565
- }
566
-
567
- // ---------------------------------------
568
- // from /src/components/boxes/boxes.ts
569
-
570
- export interface BoxProps extends ComponentProps {
571
- }
572
-
573
- export class Box<P extends BoxProps=BoxProps, E extends ComponentEvents=ComponentEvents> extends Component<P,E> {
574
- }
575
-
576
- export class HBox<P extends BoxProps=BoxProps, E extends ComponentEvents=ComponentEvents> extends Box<P,E> {
577
- }
578
-
579
- export class VBox<P extends BoxProps=BoxProps, E extends ComponentEvents=ComponentEvents> extends Box<P,E> {
580
- constructor( p: P );
581
- }
582
-
583
- interface StackItem {
584
- name: string;
585
- content: Component;
586
- }
587
-
588
- interface StackedLayoutProps extends Omit<ComponentProps,"content"> {
589
- default: string;
590
- items: StackItem[];
591
- }
592
-
593
- interface _StackItem extends StackItem {
594
- page: Component;
595
- }
596
-
597
- export class StackBox extends Box<StackedLayoutProps> {
598
- _items: _StackItem[];
599
- constructor( props: StackedLayoutProps );
600
- select( name: string ): void;
601
- _createPage( page: _StackItem ): void;
602
- }
603
-
604
- // ---------------------------------------
605
- // from /src/components/icon/icon.ts
606
-
607
- type solveCallback = (data:string)=>void;
608
-
609
- class SvgLoader {
610
- cache: Map<string,string>;
611
- waiters: Map<string,solveCallback[]>;
612
- constructor( );
613
- load( file: string ): Promise<string>;
614
- _load( file: string ): Promise<string>;
615
- }
616
-
617
- export interface IconProps extends ComponentProps {
618
- iconId?: string;
619
- }
620
-
621
- export class Icon extends Component<IconProps> {
622
- constructor( props: IconProps );
623
- setIcon( iconId: string ): void;
624
- }
625
-
626
- // ---------------------------------------
627
- // from /src/components/button/button.ts
628
-
629
- interface ButtonEvents extends ComponentEvents {
630
- click: EvClick;
631
- }
632
-
633
- export interface ButtonProps extends ComponentProps {
634
- label?: string;
635
- icon?: string;
636
- click?: EventCallback<EvClick>;
637
- }
638
-
639
- export class Button extends Component<ButtonProps,ButtonEvents> {
640
- constructor( props: ButtonProps );
641
- _on_click( ev: MouseEvent ): void;
642
- setText( text: string | UnsafeHtml ): void;
643
- setIcon( icon: string ): void;
644
- }
645
-
646
- // ---------------------------------------
647
- // from /src/components/label/label.ts
648
-
649
- interface LabelProps extends ComponentProps {
650
- text?: string | UnsafeHtml;
651
- icon?: string;
652
- labelFor?: string;
653
- }
654
-
655
- export class Label extends Component<LabelProps> {
656
- constructor( p: LabelProps );
657
- setText( text: string | UnsafeHtml ): void;
658
- setIcon( icon: string ): void;
659
- }
660
-
661
- // ---------------------------------------
662
- // from /src/components/form/form.ts
663
-
664
- type FormValue = string | number | boolean;
665
-
666
- type FormValues = Record<string,FormValue>;
667
-
668
- export class Form extends Box {
669
- setValues( values: FormValues ): void;
670
- getValues( ): FormValues;
671
- }
672
-
673
- // ---------------------------------------
674
- // from /src/components/sizers/sizer.ts
675
-
676
- interface EvSizeChange extends ComponentEvent {
677
- size: number;
678
- }
679
-
680
- interface CSizerEvent extends ComponentEvents {
681
- resize: EvSizeChange;
682
- }
683
-
684
- export class CSizer extends Component<ComponentProps,CSizerEvent> {
685
- _type: string;
686
- _ref: Component;
687
- _delta: Point;
688
- constructor( type: string, target: Component );
689
- _onMouseMove( e: PointerEvent ): void;
690
- }
691
-
692
- // ---------------------------------------
693
- // from /src/components/popup/popup.ts
694
-
695
- export interface PopupEvents extends ComponentEvents {
696
- closed: ComponentEvent;
697
- opened: ComponentEvent;
698
- }
699
-
700
- export interface PopupProps extends ComponentProps {
701
- modal?: boolean;
702
- autoClose?: boolean | string;
703
- sizable?: boolean;
704
- movable?: boolean;
705
- }
706
-
707
- export class Popup<P extends PopupProps = PopupProps, E extends PopupEvents = PopupEvents> extends Component<P,E> {
708
- _isopen: any;
709
- _isshown: any;
710
- constructor( props: P );
711
- displayNear( rc: Rect, dst: any, src: any, offset: any ): void;
712
- displayCenter( ): void;
713
- displayAt( x: number, y: number ): void;
714
- _show( ): void;
715
- show( show: any ): void;
716
- isOpen( ): void;
717
- close( ): void;
718
- _dismiss: any;
719
- dismiss( after: any ): void;
720
- _showModalMask( ): void;
721
- _updateModalMask( ): void;
722
- _createSizers( ): void;
723
- }
724
-
725
- class CMover {
726
- ref: Component;
727
- delta: Point;
728
- self: boolean;
729
- constructor( x: Component, ref: Component );
730
- _onMouseMove( e: PointerEvent ): void;
731
- }
732
-
733
- // ---------------------------------------
734
- // from /src/components/dialog/dialog.ts
735
-
736
- export interface DialogProps extends PopupProps {
737
- icon?: string;
738
- title: string;
739
- form: Form;
740
- buttons: BtnGroupItem[];
741
- closable?: boolean;
742
- }
743
-
744
- export interface EvBtnClick extends CoreEvent {
745
- button: string;
746
- }
747
-
748
- interface DialogEvents extends PopupEvents {
749
- btnclick: EvBtnClick;
750
- close: ComponentEvent;
751
- }
752
-
753
- export class Dialog<P extends DialogProps = DialogProps, E extends DialogEvents = DialogEvents> extends Popup<P,E> {
754
- constructor( props: P );
755
- display( ): void;
756
- close( ): void;
757
- }
758
-
759
- // ---------------------------------------
760
- // from /src/components/btngroup/btngroup.ts
761
-
762
- type predefined = "ok" | "cancel" | "yes" | "no" | "retry" | "abort" | "-";
763
-
764
- type BtnGroupItem = predefined | Button | Label;
765
-
766
- interface BtnGroupEvents extends ComponentEvents {
767
- btnclick: EvBtnClick;
768
- }
769
-
770
- interface BtnGroupProps extends Omit<ComponentProps,"content"> {
771
- align?: "left" | "center" | "right";
772
- vertical?: boolean;
773
- items: BtnGroupItem[];
774
- reverse?: boolean;
775
- btnclick?: EventCallback<EvBtnClick>;
776
- }
777
-
778
- export class BtnGroup extends Box<BtnGroupProps,BtnGroupEvents> {
779
- constructor( props: BtnGroupProps );
780
- setButtons( btns: BtnGroupItem[] ): void;
781
- }
782
-
783
- // ---------------------------------------
784
- // from /src/components/menu/menu.ts
785
-
786
- export interface MenuItem {
787
- cls?: string;
788
- icon?: string;
789
- text: string | UnsafeHtml;
790
- menu?: Menu;
791
- disabled?: true;
792
- click?: DOMEventHandler;
793
- }
794
-
795
- type MenuElement = MenuItem | Component | string;
796
-
797
- export interface MenuProps extends Omit<PopupProps,"content"> {
798
- items: MenuElement[];
799
- }
800
-
801
- class CMenuSep extends Component {
802
- constructor( );
803
- }
804
-
805
- class CMenuItem extends Component {
806
- menu: Menu;
807
- constructor( itm: MenuItem );
808
- dismiss( after: boolean ): void;
809
- openSub( delayed: boolean ): void;
810
- closeSub( ): void;
811
- }
812
-
813
- export class Menu extends Popup {
814
- constructor( props: MenuProps );
815
- }
816
-
817
- // ---------------------------------------
818
- // from /src/components/calendar/calendar.ts
819
-
820
- interface CalendarEventMap extends ComponentEvents {
821
- change?: EvChange;
822
- }
823
-
824
- interface CalendarProps extends ComponentProps {
825
- date?: Date;
826
- minDate?: Date;
827
- maxDate?: Date;
828
- change?: EventCallback<EvChange>;
829
- }
830
-
831
- export class Calendar extends VBox<CalendarProps, CalendarEventMap> {
832
- m_date: Date;
833
- constructor( props: CalendarProps );
834
- _update( ): void;
835
- select( date: Date ): void;
836
- _next( n: boolean ): void;
837
- _choose( type: 'month' | 'year' ): void;
838
- getDate( ): void;
839
- setDate( date: Date ): void;
840
- }
841
-
842
- // ---------------------------------------
843
- // from /src/components/input/input.ts
844
-
845
- export interface BaseProps extends ComponentProps {
846
- name?: string;
847
- }
848
-
849
- interface CheckboxProps extends BaseProps {
850
- type: "checkbox";
851
- value?: boolean | number | string;
852
- checked?: boolean;
853
- }
854
-
855
- interface RadioProps extends BaseProps {
856
- type: "radio";
857
- value: boolean | number | string;
858
- checked?: boolean;
859
- }
860
-
861
- export interface RangeProps extends BaseProps {
862
- type: "range";
863
- value: number;
864
- min: number;
865
- max: number;
866
- step?: number;
867
- }
868
-
869
- interface DateProps extends BaseProps {
870
- type: "date";
871
- readonly?: boolean;
872
- required?: boolean;
873
- value: Date | string;
874
- }
875
-
876
- interface NumberProps extends BaseProps {
877
- type: "number";
878
- readonly?: boolean;
879
- required?: boolean;
880
- value: number | string;
881
- min?: number;
882
- max?: number;
883
- step?: number;
884
- }
885
-
886
- interface FileProps extends BaseProps {
887
- type: "file";
888
- accept: string | string[];
889
- }
890
-
891
- export interface TextInputProps extends BaseProps {
892
- type: "text" | "email" | "password";
893
- readonly?: boolean;
894
- required?: boolean;
895
- pattern?: string;
896
- value: string | number;
897
- placeholder?: string;
898
- spellcheck?: boolean;
899
- }
900
-
901
- type InputProps = CheckboxProps | RadioProps | TextInputProps | RangeProps | DateProps | NumberProps | FileProps;
902
-
903
- export class Input extends Component<InputProps> {
904
- constructor( props: InputProps );
905
- getValue( ): void;
906
- setValue( value: string ): void;
907
- getNumValue( ): void;
908
- setNumValue( value: number ): void;
909
- setReadOnly( ro: boolean ): void;
910
- selectAll( ): void;
911
- select( start: number, length: number ): void;
912
- getSelection( ): void;
913
- queryInterface<T extends IComponentInterface>( name: string ): T;
914
- }
915
-
916
- // ---------------------------------------
917
- // from /src/components/checkbox/checkbox.ts
918
-
919
- interface CheckBoxEvents extends ComponentEvents {
920
- change?: EvChange;
921
- }
922
-
923
- interface CheckboxProps extends ComponentProps {
924
- label: string;
925
- checked?: boolean;
926
- value?: boolean | number | string;
927
- change?: EventCallback<EvChange>;
928
- }
929
-
930
- export class Checkbox extends Component<CheckboxProps,CheckBoxEvents> {
931
- _input: Input;
932
- constructor( props: CheckboxProps );
933
- _on_change( ): void;
934
- getCheck( ): void;
935
- setCheck( ck: boolean ): void;
936
- setLabel( text: string ): void;
937
- toggle( ): void;
938
- }
939
-
940
- // ---------------------------------------
941
- // from /src/components/colorinput/colorinput.ts
942
-
943
- interface ColorInputProps extends BoxProps {
944
- color: Color | string;
945
- }
946
-
947
- export class ColorInput extends HBox<ColorInputProps> {
948
- constructor( props: ColorInputProps );
949
- }
950
-
951
- // ---------------------------------------
952
- // from /src/components/colorpicker/colorpicker.ts
953
-
954
- interface ColorPickerProps extends ComponentProps {
955
- color: string | Color;
956
- }
957
-
958
- interface HueChangeEvent extends ComponentEvent {
959
- hue: number;
960
- }
961
-
962
- interface AlphaChangeEvent extends ComponentEvent {
963
- alpha: number;
964
- }
965
-
966
- interface SatChangeEvent extends ComponentEvent {
967
- saturation: number;
968
- value: number;
969
- }
970
-
971
- interface CommonEvents extends ComponentEvents {
972
- hue_change: HueChangeEvent;
973
- alpha_change: AlphaChangeEvent;
974
- sat_change: SatChangeEvent;
975
- }
976
-
977
- export class Saturation extends Box<BoxProps,CommonEvents> {
978
- mdown: any;
979
- irect: Rect;
980
- hsv: Hsv;
981
- color: Component;
982
- thumb: Component;
983
- constructor( props: BoxProps, init: Hsv );
984
- mousedown( ev: PointerEvent ): void;
985
- mousemove( ev: PointerEvent ): void;
986
- mouseup( ev: PointerEvent ): void;
987
- updateThumbMarker( ): void;
988
- updateBaseColor( hsv: Hsv ): void;
989
- move( sens: string, delta: number ): void;
990
- }
991
-
992
- class HueSlider extends Box<BoxProps,CommonEvents> {
993
- thumb: Component;
994
- hsv: Hsv;
995
- mdown: any;
996
- irect: Rect;
997
- constructor( props: BoxProps, init: Hsv );
998
- mousedown( ev: PointerEvent ): void;
999
- mousemove( ev: PointerEvent ): void;
1000
- mouseup( ev: PointerEvent ): void;
1001
- updateHue( hsv: Hsv ): void;
1002
- move( delta: number ): void;
1003
- }
1004
-
1005
- class AlphaSlider extends Box<BoxProps,CommonEvents> {
1006
- thumb: Component;
1007
- color: Component;
1008
- hsv: Hsv;
1009
- mdown: any;
1010
- irect: Rect;
1011
- constructor( props: BoxProps, init: Hsv );
1012
- _on_mousedown( ev: PointerEvent ): void;
1013
- _on_mousemove( ev: PointerEvent ): void;
1014
- _on_mouseup( ev: PointerEvent ): void;
1015
- updateAlpha( ): void;
1016
- updateBaseColor( hsv: Hsv ): void;
1017
- setColor( hsv: Hsv ): void;
1018
- move( delta: number ): void;
1019
- }
1020
-
1021
- interface ChangeEvent extends ComponentEvent {
1022
- color: Color;
1023
- }
1024
-
1025
- interface ColorPickerChangeEvents extends ComponentEvents {
1026
- change: ChangeEvent;
1027
- }
1028
-
1029
- export class ColorPicker extends VBox<ColorPickerProps,ColorPickerChangeEvents> {
1030
- _base: Color;
1031
- _sat: Saturation;
1032
- _swatch: Component;
1033
- _hue: HueSlider;
1034
- _alpha: AlphaSlider;
1035
- constructor( props: ColorPickerProps );
1036
- _onkey( ev: KeyboardEvent ): void;
1037
- }
1038
-
1039
- // ---------------------------------------
1040
- // from /src/components/viewport/viewport.ts
1041
-
1042
- export class Viewport extends Component {
1043
- constructor( props: ComponentProps );
1044
- }
1045
-
1046
- export class ScrollView extends Component {
1047
- constructor( props: ComponentProps );
1048
- getViewport( ): void;
1049
- }
1050
-
1051
- // ---------------------------------------
1052
- // from /src/components/listbox/listbox.ts
1053
-
1054
- enum kbNav {
1055
- first,
1056
- prev,
1057
- next,
1058
- last,
1059
- }
1060
-
1061
- type ListboxID = number | string;
1062
-
1063
- export interface ListItem {
1064
- id: ListboxID;
1065
- text: string;
1066
- iconId?: string;
1067
- data?: any;
1068
- cls?: string;
1069
- checked?: boolean;
1070
- }
1071
-
1072
- interface ListboxEvents extends ComponentEvents {
1073
- click?: EvClick;
1074
- dblClick?: EvDblClick;
1075
- contextMenu?: EvContextMenu;
1076
- selectionChange?: EvSelectionChange;
1077
- }
1078
-
1079
- interface ListboxProps extends Omit<ComponentProps,'content'> {
1080
- items?: ListItem[];
1081
- renderer?: ( item: ListItem ) => Component;
1082
- checkable?: true;
1083
- }
1084
-
1085
- export class Listbox extends Component<ListboxProps,ListboxEvents> {
1086
- _view: Viewport;
1087
- _selection: ListboxID;
1088
- _selitem: Component;
1089
- _items: ListItem[];
1090
- preventFocus: any;
1091
- constructor( props: ListboxProps );
1092
- _on_key( ev: KeyboardEvent ): void;
1093
- navigate( sens: kbNav ): void;
1094
- _on_click( ev: UIEvent ): void;
1095
- _on_ctx_menu( ev: MouseEvent ): void;
1096
- _selectItem( id: ListboxID, item: Component ): void;
1097
- _findItem( id: ListboxID ): void;
1098
- _findItemIndex( id: ListboxID ): void;
1099
- clearSelection( ): void;
1100
- setItems( items: ListItem[] ): void;
1101
- renderItem( item: ListItem ): void;
1102
- defaultRenderer( item: ListItem ): Component;
1103
- filter( filter: string ): void;
1104
- appendItem( item: ListItem, prepend: any, select: any ): void;
1105
- updateItem( id: any, item: ListItem ): void;
1106
- }
1107
-
1108
- // ---------------------------------------
1109
- // from /src/components/combobox/combobox.ts
1110
-
1111
- interface DropdownEvents extends PopupEvents {
1112
- selectionChange: EvSelectionChange;
1113
- }
1114
-
1115
- interface DropdownProps extends Omit<PopupProps,"content"> {
1116
- items: ListItem[];
1117
- }
1118
-
1119
- class Dropdown extends Popup<DropdownProps,DropdownEvents> {
1120
- _list: Listbox;
1121
- constructor( props: DropdownProps, content: ListItem[] );
1122
- getList( ): void;
1123
- }
1124
-
1125
- interface ComboboxProps extends Omit<ComponentProps,"content"> {
1126
- label?: string;
1127
- labelWidth?: number | string;
1128
- readonly?: boolean;
1129
- items: ListItem[];
1130
- }
1131
-
1132
- export class Combobox extends Component<ComboboxProps> {
1133
- _dropdown: Dropdown;
1134
- _label: Label;
1135
- _input: Input;
1136
- _button: Button;
1137
- _prevent_close: any;
1138
- _edit: HBox;
1139
- constructor( props: ComboboxProps );
1140
- _on_key( ev: KeyboardEvent ): void;
1141
- _on_input( ): void;
1142
- _on_focusout( ): void;
1143
- _on_click( ): void;
1144
- showDropDown( ): void;
1145
- }
1146
-
1147
- // ---------------------------------------
1148
- // from /src/components/header/header.ts
1149
-
1150
- interface HeaderItem {
1151
- name: string;
1152
- title: string;
1153
- iconId?: string;
1154
- width?: number;
1155
- }
1156
-
1157
- interface HeaderProps extends Omit<ComponentProps,"content"> {
1158
- items: HeaderItem[];
1159
- }
1160
-
1161
- export class Header extends HBox<HeaderProps> {
1162
- _els: Component[];
1163
- _vwp: Component;
1164
- constructor( props: HeaderProps );
1165
- _calc_sizes( ): void;
1166
- _on_resize( ): void;
1167
- }
1168
-
1169
- // ---------------------------------------
1170
- // from /src/components/image/image.ts
1171
-
1172
- export interface ImageProps extends ComponentProps {
1173
- src: string;
1174
- fit?: "contain" | "cover" | "fill" | "scale-down";
1175
- position?: string;
1176
- lazy?: boolean;
1177
- alt?: string;
1178
- draggable?: boolean;
1179
- }
1180
-
1181
- export class Image extends Component<ImageProps> {
1182
- _img: Component;
1183
- constructor( props: ImageProps );
1184
- setImage( src: string ): void;
1185
- }
1186
-
1187
- // ---------------------------------------
1188
- // from /src/components/messages/messages.ts
1189
-
1190
- export interface MessageBoxProps extends DialogProps {
1191
- message: string;
1192
- click: (button: string) => void;
1193
- }
1194
-
1195
- export class MessageBox extends Dialog<DialogProps> {
1196
- m_label: Label;
1197
- constructor( props: DialogProps );
1198
- setText( txt: string | UnsafeHtml ): void;
1199
- show( msg: string | UnsafeHtml ): MessageBox;
1200
- }
1201
-
1202
- // ---------------------------------------
1203
- // from /src/components/notification/notification.ts
1204
-
1205
- interface NotificationProps extends ComponentProps {
1206
- loading?: boolean;
1207
- iconId?: string;
1208
- closable?: boolean;
1209
- mode?: "success" | "danger";
1210
- title: string;
1211
- text: string | UnsafeHtml;
1212
- }
1213
-
1214
- export class Notification extends Popup {
1215
- constructor( props: NotificationProps );
1216
- close( ): void;
1217
- display( time_in_s: any ): void;
1218
- }
1219
-
1220
- // ---------------------------------------
1221
- // from /src/components/panel/panel.ts
1222
-
1223
- interface PanelProps extends ComponentProps {
1224
- title: string;
1225
- icon?: string;
1226
- bodyModel?: Constructor<Component>;
1227
- }
1228
-
1229
- export class Panel extends VBox<PanelProps> {
1230
- _title: Component;
1231
- _body: Component;
1232
- constructor( props: PanelProps );
1233
- setContent( content: ComponentContent ): void;
1234
- setTitle( title: string | UnsafeHtml ): void;
1235
- }
1236
-
1237
- // ---------------------------------------
1238
- // from /src/components/progress/progress.ts
1239
-
1240
- interface ProgressProps extends ComponentProps {
1241
- value: number;
1242
- min: number;
1243
- max: number;
1244
- }
1245
-
1246
- export class Progress extends Component<ProgressProps> {
1247
- _bar: Component;
1248
- constructor( props: ProgressProps );
1249
- setValue( value: number ): void;
1250
- }
1251
-
1252
- // ---------------------------------------
1253
- // from /src/components/rating/rating.ts
1254
-
1255
- interface RatingEventMap extends ComponentEvents {
1256
- change: EvChange;
1257
- }
1258
-
1259
- export interface RatingProps extends ComponentProps {
1260
- steps?: number;
1261
- value?: number;
1262
- icon?: string;
1263
- name?: string;
1264
- change?: EventCallback<EvChange>;
1265
- }
1266
-
1267
- export class Rating extends HBox<RatingProps,RatingEventMap> {
1268
- m_els: Component[];
1269
- m_input: Input;
1270
- constructor( props: RatingProps );
1271
- _update( ): void;
1272
- getValue( ): void;
1273
- setValue( v: number ): void;
1274
- setSteps( n: number ): void;
1275
- setShape( icon: string ): void;
1276
- _on_click( ev: MouseEvent ): void;
1277
- }
1278
-
1279
- // ---------------------------------------
1280
- // from /src/components/slider/slider.ts
1281
-
1282
- interface ChangeEvent extends ComponentEvent {
1283
- value: number;
1284
- }
1285
-
1286
- interface SliderEvents extends ComponentEvents {
1287
- change: ChangeEvent;
1288
- }
1289
-
1290
- interface SliderProps extends ComponentProps {
1291
- value: number;
1292
- min: number;
1293
- max: number;
1294
- step?: number;
1295
- }
1296
-
1297
- export class Slider extends Component<SliderProps,SliderEvents> {
1298
- _mdown: any;
1299
- _irect: Rect;
1300
- _thumb: Component;
1301
- _bar: Component;
1302
- _range: Input;
1303
- constructor( props: SliderProps );
1304
- _on_mousedown( ev: PointerEvent ): void;
1305
- _on_mousemove( ev: PointerEvent ): void;
1306
- _update( ): void;
1307
- _on_mouseup( ev: PointerEvent ): void;
1308
- _on_key( ev: KeyboardEvent ): void;
1309
- }
1310
-
1311
- // ---------------------------------------
1312
- // from /src/components/switch/switch.ts
1313
-
1314
- interface SwitchProps extends ComponentProps {
1315
- label: string;
1316
- checked?: boolean;
1317
- value?: string;
1318
- }
1319
-
1320
- export class Switch extends HBox<SwitchProps> {
1321
- constructor( props: SwitchProps );
1322
- }
1323
-
1324
- // ---------------------------------------
1325
- // from /src/components/tabs/tabs.ts
1326
-
1327
- export interface TabItem {
1328
- name: string;
1329
- title: string;
1330
- icon?: string;
1331
- tab: Component;
1332
- }
1333
-
1334
- class CTab extends Button {
1335
- constructor( props: ButtonProps, item: TabItem );
1336
- }
1337
-
1338
- interface TablistClickEvent extends CoreEvent {
1339
- name: string;
1340
- }
1341
-
1342
- interface TablistProps extends ComponentProps {
1343
- click: ( ev: TablistClickEvent ) => void;
1344
- }
1345
-
1346
- interface TablistEvents extends ComponentEvents {
1347
- click: TablistClickEvent;
1348
- }
1349
-
1350
- class CTabList extends HBox<TablistProps,TablistEvents> {
1351
- _selitem: Button;
1352
- _selection: string;
1353
- constructor( props: TablistProps, content: TabItem[] );
1354
- _on_click( ev: EvClick ): void;
1355
- select( name: string ): void;
1356
- }
1357
-
1358
- interface TabsProps extends Omit<ComponentProps,"content"> {
1359
- default: string;
1360
- items: TabItem[];
1361
- }
1362
-
1363
- export class Tabs extends VBox<TabsProps> {
1364
- _list: CTabList;
1365
- _stack: StackBox;
1366
- constructor( props: TabsProps );
1367
- selectTab( name: string ): void;
1368
- _onclick( ev: TablistClickEvent ): void;
1369
- }
1370
-
1371
- // ---------------------------------------
1372
- // from /src/components/textarea/textarea.ts
1373
-
1374
- interface TextAreaProps extends BaseProps {
1375
- label?: string;
1376
- value?: string;
1377
- resize?: boolean;
1378
- }
1379
-
1380
- export class TextArea extends VBox {
1381
- _input: Component;
1382
- constructor( props: TextAreaProps );
1383
- }
1384
-
1385
- // ---------------------------------------
1386
- // from /src/components/textedit/textedit.ts
1387
-
1388
- interface TextEditProps extends ComponentProps {
1389
- label: string | UnsafeHtml;
1390
- labelWidth?: number;
1391
- inputId?: string;
1392
- type?: "text" | "email" | "password";
1393
- readonly?: boolean;
1394
- required?: boolean;
1395
- value: string | number;
1396
- placeholder?: string;
1397
- inputGadgets?: Component[];
1398
- }
1399
-
1400
- export class TextEdit extends HBox {
1401
- constructor( props: TextEditProps );
1402
- }
1403
-
1404
- // ---------------------------------------
1405
- // from /src/components/tooltips/tooltips.ts
1406
-
1407
- class Tooltip extends Popup {
1408
- constructor( props: PopupProps );
1409
- setText( text: string|UnsafeHtml ): void;
1410
- }
1411
-
1412
- // ---------------------------------------
1413
- // from /src/components/treeview/treeview.ts
1414
-
1415
- enum kbTreeNav {
1416
- first,
1417
- prev,
1418
- next,
1419
- last,
1420
- parent,
1421
- child,
1422
- expand,
1423
- collapse,
1424
- toggle,
1425
- }
1426
-
1427
- export interface TreeItem extends ListItem {
1428
- children?: TreeItem[];
1429
- open?: boolean;
1430
- }
1431
-
1432
- interface TreeviewProps extends Omit<ComponentProps,"content"> {
1433
- items: TreeItem[];
1434
- }
1435
-
1436
- interface ChangeEvent extends ComponentEvent {
1437
- selection: TreeItem;
1438
- }
1439
-
1440
- interface TreeviewEvents extends ComponentEvents {
1441
- change: ChangeEvent;
1442
- }
1443
-
1444
- class CTreeViewItem extends Box {
1445
- _item: TreeItem;
1446
- _label: Component;
1447
- _icon: Icon;
1448
- _childs: Component;
1449
- constructor( props: BoxProps, item: TreeItem );
1450
- toggle( ev: UIEvent ): void;
1451
- open( open: any ): void;
1452
- setItems( items: TreeItem[ ] ): void;
1453
- }
1454
-
1455
- export class Treeview extends Component<TreeviewProps,TreeviewEvents> {
1456
- _selection: ListboxID;
1457
- _selitem: Component;
1458
- _items: TreeItem[];
1459
- constructor( props: TreeviewProps );
1460
- setItems( items: TreeItem[ ] ): void;
1461
- _onclick( ev: UIEvent ): void;
1462
- _onkey( ev: KeyboardEvent ): void;
1463
- navigate( sens: kbTreeNav ): void;
1464
- _flattenOpenItems( ): void;
1465
- _flattenItems( ): void;
1466
- _selectItem( id: ListboxID, item: Component ): void;
1467
- _findItem( id: ListboxID ): void;
1468
- clearSelection( ): void;
1469
- }
1470
-
1471
- }
1472
-