jsl-ui 9.28.2 → 9.28.3

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 (170) hide show
  1. package/lib/components/IntervalComponent.d.ts +17 -17
  2. package/lib/components/IntervalComponent.js +65 -68
  3. package/lib/components/auto-suggest/AutoSuggestComponent.d.ts +22 -22
  4. package/lib/components/auto-suggest/AutoSuggestComponent.js +47 -49
  5. package/lib/components/button/ButtonComponent.d.ts +18 -18
  6. package/lib/components/button/ButtonComponent.js +29 -46
  7. package/lib/components/checkbox/CheckBoxComponent.d.ts +28 -28
  8. package/lib/components/checkbox/CheckBoxComponent.js +81 -98
  9. package/lib/components/date/DateComponent.d.ts +32 -32
  10. package/lib/components/date/DateComponent.js +89 -106
  11. package/lib/components/date-range/DateRangeComponent.d.ts +35 -35
  12. package/lib/components/date-range/DateRangeComponent.js +123 -136
  13. package/lib/components/date-time/DateTimeComponent.d.ts +15 -15
  14. package/lib/components/date-time/DateTimeComponent.js +39 -53
  15. package/lib/components/dialog/DialogComponent.d.ts +67 -67
  16. package/lib/components/dialog/DialogComponent.js +198 -251
  17. package/lib/components/drop-down/DropDownComponent.d.ts +27 -27
  18. package/lib/components/drop-down/DropDownComponent.js +60 -74
  19. package/lib/components/expander/ExpanderComponent.d.ts +27 -27
  20. package/lib/components/expander/ExpanderComponent.js +89 -90
  21. package/lib/components/form-field/FormComponent.d.ts +12 -12
  22. package/lib/components/form-field/FormComponent.js +23 -26
  23. package/lib/components/form-field/FormFieldComponent.d.ts +39 -39
  24. package/lib/components/form-field/FormFieldComponent.js +138 -140
  25. package/lib/components/grid/GridComponent.d.ts +26 -26
  26. package/lib/components/grid/GridComponent.js +110 -116
  27. package/lib/components/input/InputComponent.d.ts +33 -33
  28. package/lib/components/input/InputComponent.js +126 -147
  29. package/lib/components/loading/LoadingComponent.d.ts +8 -8
  30. package/lib/components/loading/LoadingComponent.js +20 -22
  31. package/lib/components/navigation/NavigationComponent.d.ts +34 -34
  32. package/lib/components/navigation/NavigationComponent.js +45 -70
  33. package/lib/components/notification/Notification.d.ts +19 -19
  34. package/lib/components/notification/Notification.js +65 -69
  35. package/lib/components/number/NumberComponent.d.ts +26 -26
  36. package/lib/components/number/NumberComponent.js +80 -98
  37. package/lib/components/overlay/OverlayComponent.d.ts +27 -27
  38. package/lib/components/overlay/OverlayComponent.js +137 -149
  39. package/lib/components/progress/ProgressComponent.d.ts +18 -18
  40. package/lib/components/progress/ProgressComponent.js +40 -42
  41. package/lib/components/ribbon-menu/RibbonMenuComponent.d.ts +12 -12
  42. package/lib/components/ribbon-menu/RibbonMenuComponent.js +23 -34
  43. package/lib/components/select/SelectComponent.d.ts +79 -79
  44. package/lib/components/select/SelectComponent.js +356 -369
  45. package/lib/components/select/SelectDDAreaComponent.d.ts +32 -32
  46. package/lib/components/select/SelectDDAreaComponent.js +303 -317
  47. package/lib/components/slider/nouislider.d.ts +44 -44
  48. package/lib/components/slider/nouislider.js +2158 -2158
  49. package/lib/components/stack-panel/SplitterComponent.d.ts +21 -21
  50. package/lib/components/stack-panel/SplitterComponent.js +124 -126
  51. package/lib/components/stack-panel/StackPanelComponent.d.ts +20 -20
  52. package/lib/components/stack-panel/StackPanelComponent.js +50 -64
  53. package/lib/components/tabs/TabsComponent.d.ts +40 -40
  54. package/lib/components/tabs/TabsComponent.js +200 -204
  55. package/lib/components/time/TimeComponent.d.ts +29 -29
  56. package/lib/components/time/TimeComponent.js +104 -113
  57. package/lib/components/tree-view/TreeViewComponent.d.ts +23 -23
  58. package/lib/components/tree-view/TreeViewComponent.js +43 -45
  59. package/lib/components/virtual-render/VirtualRenderComponent.d.ts +30 -30
  60. package/lib/components/virtual-render/VirtualRenderComponent.js +92 -104
  61. package/lib/core/culture.d.ts +5 -5
  62. package/lib/core/culture.js +385 -385
  63. package/lib/core/date.d.ts +14 -14
  64. package/lib/core/date.js +346 -350
  65. package/lib/core/helper.d.ts +13 -13
  66. package/lib/core/helper.js +100 -104
  67. package/lib/core/jq.d.ts +37 -37
  68. package/lib/core/jq.js +362 -371
  69. package/lib/core/lang.d.ts +24 -24
  70. package/lib/core/lang.js +24 -28
  71. package/lib/core/numeric.d.ts +7 -7
  72. package/lib/core/numeric.js +139 -143
  73. package/lib/core/polyfills.js +22 -22
  74. package/lib/core.d.ts +6 -6
  75. package/lib/core.js +6 -6
  76. package/lib/grid/filterDialogs/dateRangeFilter.d.ts +7 -7
  77. package/lib/grid/filterDialogs/dateRangeFilter.js +106 -156
  78. package/lib/grid/filterDialogs/excelFilter.d.ts +9 -9
  79. package/lib/grid/filterDialogs/excelFilter.js +250 -316
  80. package/lib/grid/plugins/ext.overlay.d.ts +2 -2
  81. package/lib/grid/plugins/ext.overlay.js +295 -295
  82. package/lib/grid/plugins/slick.cellrangedecorator.d.ts +12 -12
  83. package/lib/grid/plugins/slick.cellrangedecorator.js +68 -68
  84. package/lib/grid/plugins/slick.cellrangeselector.d.ts +1 -1
  85. package/lib/grid/plugins/slick.cellrangeselector.js +144 -144
  86. package/lib/grid/plugins/slick.cellselectionmodel.d.ts +1 -1
  87. package/lib/grid/plugins/slick.cellselectionmodel.js +194 -194
  88. package/lib/grid/plugins/slick.headerbuttons.d.ts +55 -55
  89. package/lib/grid/plugins/slick.headerbuttons.js +156 -156
  90. package/lib/grid/plugins/slick.headermenu.d.ts +74 -74
  91. package/lib/grid/plugins/slick.headermenu.js +260 -260
  92. package/lib/grid/plugins/slick.rowmovemanager.d.ts +18 -18
  93. package/lib/grid/plugins/slick.rowmovemanager.js +249 -249
  94. package/lib/grid/plugins/slick.rowselectionmodel.d.ts +1 -1
  95. package/lib/grid/plugins/slick.rowselectionmodel.js +167 -167
  96. package/lib/grid/slick.core.d.ts +91 -91
  97. package/lib/grid/slick.core.js +574 -574
  98. package/lib/grid/slick.creator.d.ts +81 -81
  99. package/lib/grid/slick.creator.js +726 -726
  100. package/lib/grid/slick.dataview.d.ts +71 -71
  101. package/lib/grid/slick.dataview.js +1069 -1080
  102. package/lib/grid/slick.editors.core.d.ts +4 -4
  103. package/lib/grid/slick.editors.core.js +235 -235
  104. package/lib/grid/slick.editors.date.d.ts +2 -2
  105. package/lib/grid/slick.editors.date.js +125 -125
  106. package/lib/grid/slick.editors.lookup.d.ts +14 -14
  107. package/lib/grid/slick.editors.lookup.js +352 -353
  108. package/lib/grid/slick.editors.nav.d.ts +6 -6
  109. package/lib/grid/slick.editors.nav.js +22 -22
  110. package/lib/grid/slick.formatters.d.ts +17 -17
  111. package/lib/grid/slick.formatters.js +144 -144
  112. package/lib/grid/slick.grid.d.ts +285 -285
  113. package/lib/grid/slick.grid.js +5409 -5412
  114. package/lib/grid/slick.groupitemmetadataprovider.d.ts +39 -39
  115. package/lib/grid/slick.groupitemmetadataprovider.js +165 -165
  116. package/lib/grid/slick.tree.d.ts +33 -33
  117. package/lib/grid/slick.tree.js +208 -220
  118. package/lib/grid.css +1 -705
  119. package/lib/grid.d.ts +13 -13
  120. package/lib/grid.js +13 -13
  121. package/lib/index.css +8 -2195
  122. package/lib/index.css.map +1 -1
  123. package/lib/index.d.ts +56 -55
  124. package/lib/index.js +61 -61
  125. package/lib/index.js.map +1 -1
  126. package/lib/interaction/dataconverter.d.ts +4 -4
  127. package/lib/interaction/dataconverter.js +0 -1
  128. package/lib/interaction/eventhandler.d.ts +13 -13
  129. package/lib/interaction/eventhandler.js +39 -42
  130. package/lib/interaction/moveable.d.ts +39 -39
  131. package/lib/interaction/moveable.js +160 -174
  132. package/lib/interaction/resizable.d.ts +37 -37
  133. package/lib/interaction/resizable.js +109 -123
  134. package/lib/ui/auto.suggest.d.ts +18 -18
  135. package/lib/ui/auto.suggest.js +244 -259
  136. package/lib/ui/date.picker/date-picker-options.d.ts +11 -11
  137. package/lib/ui/date.picker/date-picker-options.js +76 -76
  138. package/lib/ui/date.picker/lib/date-manip.d.ts +74 -74
  139. package/lib/ui/date.picker/lib/date-manip.js +120 -120
  140. package/lib/ui/date.picker/lib/dom.d.ts +23 -23
  141. package/lib/ui/date.picker/lib/dom.js +28 -28
  142. package/lib/ui/date.picker/lib/emitter.d.ts +13 -13
  143. package/lib/ui/date.picker/lib/emitter.js +49 -49
  144. package/lib/ui/date.picker/lib/fns.d.ts +23 -23
  145. package/lib/ui/date.picker/lib/fns.js +39 -43
  146. package/lib/ui/date.picker/mode/base-mode.d.ts +26 -26
  147. package/lib/ui/date.picker/mode/base-mode.js +248 -248
  148. package/lib/ui/date.picker/mode/dropdown-mode.d.ts +28 -28
  149. package/lib/ui/date.picker/mode/dropdown-mode.js +50 -50
  150. package/lib/ui/date.picker/mode/index.d.ts +28 -28
  151. package/lib/ui/date.picker/mode/index.js +18 -18
  152. package/lib/ui/date.picker/mode/modal-mode.d.ts +25 -25
  153. package/lib/ui/date.picker/mode/modal-mode.js +17 -17
  154. package/lib/ui/date.picker/mode/permanent-mode.d.ts +29 -29
  155. package/lib/ui/date.picker/mode/permanent-mode.js +19 -19
  156. package/lib/ui/date.picker/views/day-picker.d.ts +40 -40
  157. package/lib/ui/date.picker/views/day-picker.js +155 -155
  158. package/lib/ui/date.picker/views/month-picker.d.ts +26 -26
  159. package/lib/ui/date.picker/views/month-picker.js +65 -65
  160. package/lib/ui/date.picker/views/year-picker.d.ts +20 -20
  161. package/lib/ui/date.picker/views/year-picker.js +66 -66
  162. package/lib/ui/date.picker.d.ts +66 -66
  163. package/lib/ui/date.picker.js +32 -32
  164. package/lib/ui/dialog.d.ts +22 -22
  165. package/lib/ui/dialog.js +98 -113
  166. package/lib/ui/drop.down.d.ts +52 -52
  167. package/lib/ui/drop.down.js +2112 -2112
  168. package/lib/ui/number.input.d.ts +13 -13
  169. package/lib/ui/number.input.js +56 -67
  170. package/package.json +1 -1
@@ -1,98 +1,81 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- import "./CheckBoxStyle.scss";
13
- import { EventHandler } from "../../interaction/eventhandler";
14
- import { helper } from "../../core/helper";
15
- var CheckBoxComponent = /** @class */ (function () {
16
- function CheckBoxComponent(options) {
17
- var _a;
18
- this.options = __assign({ enabled: true, class: "", bindMode: "toModel" }, options);
19
- if (!this.options.id) {
20
- this.options.id = helper.newDomGuid();
21
- }
22
- if (this.options.bindTo != null && this.options.property != null && this.options.value == null) {
23
- this.options.value = (((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toUI) ?
24
- this.options.converter.toUI(this.options.bindTo[this.options.property]) :
25
- this.options.bindTo[this.options.property]);
26
- }
27
- this.options.onChange = EventHandler.Create(this.options.onChange);
28
- }
29
- Object.defineProperty(CheckBoxComponent.prototype, "onChange", {
30
- get: function () {
31
- return this.options.onChange;
32
- },
33
- enumerable: false,
34
- configurable: true
35
- });
36
- // public isEqual(node: IJSLComponent): boolean {
37
- // return (this as any).__proto__ === (node as any).__proto__;
38
- // }
39
- CheckBoxComponent.prototype.render = function () {
40
- var _a;
41
- var val = this.options.value;
42
- if (this.options.bindMode !== "toModel" && this.options.bindTo != null && this.options.property != null) {
43
- var current = this.getValue();
44
- var newVal = (((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toUI) ?
45
- this.options.converter.toUI(this.options.bindTo[this.options.property]) :
46
- this.options.bindTo[this.options.property]);
47
- if (newVal !== current) {
48
- val = newVal;
49
- if (this.currentDom != null) {
50
- this.currentDom.checked = val;
51
- }
52
- }
53
- }
54
- return {
55
- tag: "span",
56
- attr: { style: this.options.style },
57
- children: [{
58
- tag: "input",
59
- attr: {
60
- type: "checkbox",
61
- disabled: !this.options.enabled ? "disabled" : undefined,
62
- class: "checkbox-comp " + (this.options.class || ""),
63
- change: this.raiseEvent,
64
- checked: val ? "checked" : undefined,
65
- id: typeof this.options.id === "string" ? this.options.id : undefined
66
- }
67
- }, { tag: "label", content: this.options.label, attr: { for: this.options.id } }]
68
- };
69
- };
70
- CheckBoxComponent.prototype.getValue = function () {
71
- var _a;
72
- return ((_a = this.currentDom) === null || _a === void 0 ? void 0 : _a.checked) || false;
73
- };
74
- CheckBoxComponent.prototype.setValue = function (val) {
75
- var _a;
76
- if (this.currentDom != null) {
77
- this.currentDom.checked = val;
78
- }
79
- if (this.options.bindTo && this.options.bindMode !== "fromModel" && this.options.property) {
80
- this.options.bindTo[this.options.property] = ((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toData) ? this.options.converter.toData(val) : val;
81
- }
82
- };
83
- CheckBoxComponent.prototype.onCreate = function (node) {
84
- this.currentDom = node.dom.querySelector("input");
85
- };
86
- CheckBoxComponent.prototype.raiseEvent = function (e, node) {
87
- var _a;
88
- if (this.options.enabled) {
89
- var value = node.dom.checked;
90
- if (this.options.bindTo && this.options.bindMode !== "fromModel" && this.options.property) {
91
- this.options.bindTo[this.options.property] = ((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toData) ? this.options.converter.toData(value) : value;
92
- }
93
- this.options.onChange.notify(value);
94
- }
95
- };
96
- return CheckBoxComponent;
97
- }());
98
- export { CheckBoxComponent };
1
+ import "./CheckBoxStyle.scss";
2
+ import { EventHandler } from "../../interaction/eventhandler";
3
+ import { helper } from "../../core/helper";
4
+ export class CheckBoxComponent {
5
+ constructor(options) {
6
+ var _a;
7
+ this.options = { ...{ enabled: true, class: "", bindMode: "toModel" }, ...options };
8
+ if (!this.options.id) {
9
+ this.options.id = helper.newDomGuid();
10
+ }
11
+ if (this.options.bindTo != null && this.options.property != null && this.options.value == null) {
12
+ this.options.value = (((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toUI) ?
13
+ this.options.converter.toUI(this.options.bindTo[this.options.property]) :
14
+ this.options.bindTo[this.options.property]);
15
+ }
16
+ this.options.onChange = EventHandler.Create(this.options.onChange);
17
+ }
18
+ get onChange() {
19
+ return this.options.onChange;
20
+ }
21
+ // public isEqual(node: IJSLComponent): boolean {
22
+ // return (this as any).__proto__ === (node as any).__proto__;
23
+ // }
24
+ render() {
25
+ var _a;
26
+ let val = this.options.value;
27
+ if (this.options.bindMode !== "toModel" && this.options.bindTo != null && this.options.property != null) {
28
+ const current = this.getValue();
29
+ const newVal = (((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toUI) ?
30
+ this.options.converter.toUI(this.options.bindTo[this.options.property]) :
31
+ this.options.bindTo[this.options.property]);
32
+ val = newVal;
33
+ if (newVal !== current) {
34
+ if (this.currentDom != null) {
35
+ this.currentDom.checked = val;
36
+ }
37
+ }
38
+ }
39
+ return {
40
+ tag: "span",
41
+ attr: { style: this.options.style },
42
+ children: [{
43
+ tag: "input",
44
+ attr: {
45
+ type: "checkbox",
46
+ disabled: !this.options.enabled ? "disabled" : undefined,
47
+ class: "checkbox-comp " + (this.options.class || ""),
48
+ change: this.raiseEvent,
49
+ checked: val ? "checked" : undefined,
50
+ id: typeof this.options.id === "string" ? this.options.id : undefined
51
+ }
52
+ }, { tag: "label", content: this.options.label, attr: { for: this.options.id } }]
53
+ };
54
+ }
55
+ getValue() {
56
+ var _a;
57
+ return ((_a = this.currentDom) === null || _a === void 0 ? void 0 : _a.checked) || false;
58
+ }
59
+ setValue(val) {
60
+ var _a;
61
+ if (this.currentDom != null) {
62
+ this.currentDom.checked = val;
63
+ }
64
+ if (this.options.bindTo && this.options.bindMode !== "fromModel" && this.options.property) {
65
+ this.options.bindTo[this.options.property] = ((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toData) ? this.options.converter.toData(val) : val;
66
+ }
67
+ }
68
+ onCreate(node) {
69
+ this.currentDom = node.dom.querySelector("input");
70
+ }
71
+ raiseEvent(e, node) {
72
+ var _a;
73
+ if (this.options.enabled) {
74
+ const value = node.dom.checked;
75
+ if (this.options.bindTo && this.options.bindMode !== "fromModel" && this.options.property) {
76
+ this.options.bindTo[this.options.property] = ((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toData) ? this.options.converter.toData(value) : value;
77
+ }
78
+ this.options.onChange.notify(value);
79
+ }
80
+ }
81
+ }
@@ -1,32 +1,32 @@
1
- import { IJSLComponent, IJSLVNode } from "jsl-render";
2
- import { IDatePickerOptions, IDatePicker } from "../../ui/date.picker";
3
- import { EventHandler } from "../../interaction/eventhandler";
4
- import { IDataConverter } from "../../interaction/dataconverter";
5
- export interface IDateComponentOptions<T = any> extends IDatePickerOptions {
6
- id?: string;
7
- class?: string;
8
- style?: string;
9
- placeholder?: string;
10
- value?: Date;
11
- onChange?: EventHandler<Date> | ((v?: Date) => void);
12
- bindTo?: T;
13
- property?: keyof T;
14
- bindMode?: "toModel" | "fromModel" | "both";
15
- converter?: IDataConverter<any, Date>;
16
- enabled?: boolean;
17
- }
18
- export declare class DateComponent<T = any> implements IJSLComponent {
19
- private options;
20
- private ref;
21
- private currentDom;
22
- constructor(options: IDateComponentOptions<T>);
23
- get onChange(): EventHandler<Date>;
24
- render(): IJSLVNode;
25
- getValue(): string;
26
- getValueAsDate(): Date;
27
- getRef(): IDatePicker;
28
- onCreate(node: IJSLVNode): void;
29
- onUpdate(node: IJSLVNode): void;
30
- onRemove(): void;
31
- private raiseEvent;
32
- }
1
+ import { IJSLComponent, IJSLVNode } from "jsl-render";
2
+ import { IDatePickerOptions, IDatePicker } from "../../ui/date.picker";
3
+ import { EventHandler } from "../../interaction/eventhandler";
4
+ import { IDataConverter } from "../../interaction/dataconverter";
5
+ export interface IDateComponentOptions<T = any> extends IDatePickerOptions {
6
+ id?: string;
7
+ class?: string;
8
+ style?: string;
9
+ placeholder?: string;
10
+ value?: Date;
11
+ onChange?: EventHandler<Date> | ((v?: Date) => void);
12
+ bindTo?: T;
13
+ property?: keyof T;
14
+ bindMode?: "toModel" | "fromModel" | "both";
15
+ converter?: IDataConverter<any, Date>;
16
+ enabled?: boolean;
17
+ }
18
+ export declare class DateComponent<T = any> implements IJSLComponent {
19
+ private options;
20
+ private ref;
21
+ private currentDom;
22
+ constructor(options: IDateComponentOptions<T>);
23
+ get onChange(): EventHandler<Date>;
24
+ render(): IJSLVNode;
25
+ getValue(): string;
26
+ getValueAsDate(): Date;
27
+ getRef(): IDatePicker;
28
+ onCreate(node: IJSLVNode): void;
29
+ onUpdate(node: IJSLVNode): void;
30
+ onRemove(): void;
31
+ private raiseEvent;
32
+ }
@@ -1,106 +1,89 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- import { DatePicker } from "../../ui/date.picker";
13
- import { date } from "../../core/date";
14
- import { helper } from "../../core/helper";
15
- import { EventHandler } from "../../interaction/eventhandler";
16
- var DateComponent = /** @class */ (function () {
17
- function DateComponent(options) {
18
- var _a;
19
- this.options = __assign({ enabled: true, id: helper.newDomGuid(), bindMode: "toModel" }, options);
20
- if (this.options.bindTo != null && this.options.property != null && this.options.value == null) {
21
- this.options.value = (((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toUI) ?
22
- this.options.converter.toUI(this.options.bindTo[this.options.property]) :
23
- this.options.bindTo[this.options.property]);
24
- }
25
- this.options.onChange = EventHandler.Create(this.options.onChange);
26
- }
27
- Object.defineProperty(DateComponent.prototype, "onChange", {
28
- get: function () {
29
- return this.options.onChange;
30
- },
31
- enumerable: false,
32
- configurable: true
33
- });
34
- DateComponent.prototype.render = function () {
35
- var _a;
36
- var val = this.options.value;
37
- if (this.options.bindMode !== "toModel" && this.options.bindTo != null && this.options.property != null) {
38
- var current = this.getValue();
39
- var newVal = (((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toUI) ?
40
- this.options.converter.toUI(this.options.bindTo[this.options.property]) :
41
- this.options.bindTo[this.options.property]);
42
- var newValStr = date.format(newVal);
43
- if (newValStr !== current) {
44
- val = newVal;
45
- if (this.currentDom != null) {
46
- this.currentDom.value = newValStr;
47
- }
48
- }
49
- }
50
- return {
51
- tag: "input",
52
- attr: {
53
- id: this.options.id,
54
- class: this.options.class,
55
- style: this.options.style,
56
- disabled: !this.options.enabled ? "disabled" : undefined,
57
- placeholder: this.options.placeholder,
58
- value: date.format(val),
59
- change: this.raiseEvent,
60
- }
61
- };
62
- };
63
- DateComponent.prototype.getValue = function () {
64
- if (this.currentDom == null) {
65
- return "";
66
- }
67
- return this.currentDom.value;
68
- };
69
- DateComponent.prototype.getValueAsDate = function () {
70
- if (this.currentDom == null) {
71
- return null;
72
- }
73
- if (this.options.parse) {
74
- return this.options.parse(this.currentDom.value);
75
- }
76
- return date.parse(this.currentDom.value);
77
- };
78
- DateComponent.prototype.getRef = function () {
79
- return this.ref;
80
- };
81
- DateComponent.prototype.onCreate = function (node) {
82
- this.currentDom = node.dom;
83
- this.ref = DatePicker(this.currentDom, this.options);
84
- };
85
- DateComponent.prototype.onUpdate = function (node) {
86
- this.currentDom = node.dom;
87
- };
88
- DateComponent.prototype.onRemove = function () {
89
- if (this.ref != null) {
90
- this.ref.destroy();
91
- }
92
- };
93
- DateComponent.prototype.raiseEvent = function (e, node) {
94
- var _a;
95
- if (this.options.enabled) {
96
- var val = date.parse(node.dom.value);
97
- if (this.options.bindTo && this.options.bindMode !== "fromModel" && this.options.property) {
98
- this.options.bindTo[this.options.property] =
99
- ((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toData) ? this.options.converter.toData(val) : val;
100
- }
101
- this.options.onChange.notify(val);
102
- }
103
- };
104
- return DateComponent;
105
- }());
106
- export { DateComponent };
1
+ import { DatePicker } from "../../ui/date.picker";
2
+ import { date } from "../../core/date";
3
+ import { helper } from "../../core/helper";
4
+ import { EventHandler } from "../../interaction/eventhandler";
5
+ export class DateComponent {
6
+ constructor(options) {
7
+ var _a;
8
+ this.options = { ...{ enabled: true, id: helper.newDomGuid(), bindMode: "toModel" }, ...options };
9
+ if (this.options.bindTo != null && this.options.property != null && this.options.value == null) {
10
+ this.options.value = (((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toUI) ?
11
+ this.options.converter.toUI(this.options.bindTo[this.options.property]) :
12
+ this.options.bindTo[this.options.property]);
13
+ }
14
+ this.options.onChange = EventHandler.Create(this.options.onChange);
15
+ }
16
+ get onChange() {
17
+ return this.options.onChange;
18
+ }
19
+ render() {
20
+ var _a;
21
+ let val = this.options.value;
22
+ if (this.options.bindMode !== "toModel" && this.options.bindTo != null && this.options.property != null) {
23
+ const current = this.getValue();
24
+ const newVal = (((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toUI) ?
25
+ this.options.converter.toUI(this.options.bindTo[this.options.property]) :
26
+ this.options.bindTo[this.options.property]);
27
+ const newValStr = date.format(newVal);
28
+ val = newVal;
29
+ if (newValStr !== current) {
30
+ if (this.currentDom != null) {
31
+ this.currentDom.value = newValStr;
32
+ }
33
+ }
34
+ }
35
+ return {
36
+ tag: "input",
37
+ attr: {
38
+ id: this.options.id,
39
+ class: this.options.class,
40
+ style: this.options.style,
41
+ disabled: !this.options.enabled ? "disabled" : undefined,
42
+ placeholder: this.options.placeholder,
43
+ value: date.format(val),
44
+ change: this.raiseEvent,
45
+ }
46
+ };
47
+ }
48
+ getValue() {
49
+ if (this.currentDom == null) {
50
+ return "";
51
+ }
52
+ return this.currentDom.value;
53
+ }
54
+ getValueAsDate() {
55
+ if (this.currentDom == null) {
56
+ return null;
57
+ }
58
+ if (this.options.parse) {
59
+ return this.options.parse(this.currentDom.value);
60
+ }
61
+ return date.parse(this.currentDom.value);
62
+ }
63
+ getRef() {
64
+ return this.ref;
65
+ }
66
+ onCreate(node) {
67
+ this.currentDom = node.dom;
68
+ this.ref = DatePicker(this.currentDom, this.options);
69
+ }
70
+ onUpdate(node) {
71
+ this.currentDom = node.dom;
72
+ }
73
+ onRemove() {
74
+ if (this.ref != null) {
75
+ this.ref.destroy();
76
+ }
77
+ }
78
+ raiseEvent(e, node) {
79
+ var _a;
80
+ if (this.options.enabled) {
81
+ const val = date.parse(node.dom.value);
82
+ if (this.options.bindTo && this.options.bindMode !== "fromModel" && this.options.property) {
83
+ this.options.bindTo[this.options.property] =
84
+ ((_a = this.options.converter) === null || _a === void 0 ? void 0 : _a.toData) ? this.options.converter.toData(val) : val;
85
+ }
86
+ this.options.onChange.notify(val);
87
+ }
88
+ }
89
+ }
@@ -1,35 +1,35 @@
1
- import "./DateRangeStyle.scss";
2
- import { IJSLComponent, IJSLVNode } from "jsl-render";
3
- import { EventHandler } from "../../interaction/eventhandler";
4
- export interface IDateRangeValue {
5
- minValue: Date;
6
- maxValue: Date;
7
- }
8
- export interface IDateRangeOptions {
9
- class?: string;
10
- style?: string;
11
- min: Date;
12
- max: Date;
13
- minValue?: Date;
14
- maxValue?: Date;
15
- increment: "days" | "weeks" | "month" | "years";
16
- onChange?: EventHandler<IDateRangeValue> | ((v?: IDateRangeValue) => void);
17
- }
18
- export declare class DateRangeComponent implements IJSLComponent {
19
- State: {
20
- currentMin: any;
21
- currentMax: any;
22
- };
23
- private manualChange;
24
- private minDate;
25
- private maxDate;
26
- private options;
27
- private slider;
28
- constructor(o: IDateRangeOptions);
29
- render(): IJSLVNode;
30
- onCreate(node: IJSLVNode): void;
31
- onRemove(): void;
32
- getMin(): Date;
33
- getMax(): Date;
34
- private triggerChange;
35
- }
1
+ import "./DateRangeStyle.scss";
2
+ import { IJSLComponent, IJSLVNode } from "jsl-render";
3
+ import { EventHandler } from "../../interaction/eventhandler";
4
+ export interface IDateRangeValue {
5
+ minValue: Date;
6
+ maxValue: Date;
7
+ }
8
+ export interface IDateRangeOptions {
9
+ class?: string;
10
+ style?: string;
11
+ min: Date;
12
+ max: Date;
13
+ minValue?: Date;
14
+ maxValue?: Date;
15
+ increment: "days" | "weeks" | "month" | "years";
16
+ onChange?: EventHandler<IDateRangeValue> | ((v?: IDateRangeValue) => void);
17
+ }
18
+ export declare class DateRangeComponent implements IJSLComponent {
19
+ State: {
20
+ currentMin: any;
21
+ currentMax: any;
22
+ };
23
+ private manualChange;
24
+ private minDate;
25
+ private maxDate;
26
+ private options;
27
+ private slider;
28
+ constructor(o: IDateRangeOptions);
29
+ render(): IJSLVNode;
30
+ onCreate(node: IJSLVNode): void;
31
+ onRemove(): void;
32
+ getMin(): Date;
33
+ getMax(): Date;
34
+ private triggerChange;
35
+ }