@wavemaker/app-ng-runtime 11.10.2-rc.6065 → 11.10.3-next.25128
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.
- package/build-task/bundles/index.umd.js +5 -3
- package/build-task/esm2022/advanced/carousel/carousel-template/carousel-template.build.mjs +4 -2
- package/build-task/esm2022/data/form/form-field/form-field.build.mjs +3 -3
- package/build-task/fesm2022/index.mjs +5 -3
- package/build-task/fesm2022/index.mjs.map +1 -1
- package/components/basic/default/bundles/index.umd.js +68 -71
- package/components/basic/default/esm2022/anchor/anchor.component.mjs +18 -18
- package/components/basic/default/esm2022/icon/icon.component.mjs +12 -13
- package/components/basic/default/esm2022/iframe/iframe.component.mjs +9 -10
- package/components/basic/default/esm2022/picture/picture.directive.mjs +2 -5
- package/components/basic/default/esm2022/spinner/spinner.component.mjs +21 -21
- package/components/basic/default/esm2022/video/video.component.mjs +14 -15
- package/components/basic/default/fesm2022/index.mjs +68 -71
- package/components/basic/default/fesm2022/index.mjs.map +1 -1
- package/components/basic/progress/bundles/index.umd.js +16 -17
- package/components/basic/progress/esm2022/progress-bar/progress-bar.component.mjs +7 -8
- package/components/basic/progress/fesm2022/index.mjs +8 -9
- package/components/basic/progress/fesm2022/index.mjs.map +1 -1
- package/components/basic/rich-text-editor/bundles/index.umd.js +11 -12
- package/components/basic/rich-text-editor/esm2022/rich-text-editor.component.mjs +8 -9
- package/components/basic/rich-text-editor/fesm2022/index.mjs +7 -8
- package/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -1
- package/components/basic/search/bundles/index.umd.js +63 -67
- package/components/basic/search/esm2022/search.component.mjs +63 -67
- package/components/basic/search/esm2022/search.module.mjs +2 -2
- package/components/basic/search/fesm2022/index.mjs +63 -67
- package/components/basic/search/fesm2022/index.mjs.map +1 -1
- package/components/chart/bundles/index.umd.js +17 -17
- package/components/chart/esm2022/chart.component.mjs +18 -18
- package/components/chart/fesm2022/index.mjs +17 -17
- package/components/chart/fesm2022/index.mjs.map +1 -1
- package/components/containers/panel/bundles/index.umd.js +39 -39
- package/components/containers/panel/esm2022/panel.component.mjs +40 -40
- package/components/containers/panel/fesm2022/index.mjs +39 -39
- package/components/containers/panel/fesm2022/index.mjs.map +1 -1
- package/components/containers/tabs/bundles/index.umd.js +29 -29
- package/components/containers/tabs/esm2022/tabs.component.mjs +30 -30
- package/components/containers/tabs/fesm2022/index.mjs +29 -29
- package/components/containers/tabs/fesm2022/index.mjs.map +1 -1
- package/components/containers/wizard/bundles/index.umd.js +49 -49
- package/components/containers/wizard/esm2022/wizard.component.mjs +50 -50
- package/components/containers/wizard/fesm2022/index.mjs +49 -49
- package/components/containers/wizard/fesm2022/index.mjs.map +1 -1
- package/components/data/card/bundles/index.umd.js +29 -29
- package/components/data/card/esm2022/card.component.mjs +30 -30
- package/components/data/card/fesm2022/index.mjs +29 -29
- package/components/data/card/fesm2022/index.mjs.map +1 -1
- package/components/data/form/bundles/index.umd.js +91 -96
- package/components/data/form/esm2022/form.component.mjs +92 -97
- package/components/data/form/fesm2022/index.mjs +91 -96
- package/components/data/form/fesm2022/index.mjs.map +1 -1
- package/components/data/list/bundles/index.umd.js +171 -173
- package/components/data/list/esm2022/list.component.mjs +171 -173
- package/components/data/list/esm2022/list.module.mjs +2 -2
- package/components/data/list/fesm2022/index.mjs +171 -173
- package/components/data/list/fesm2022/index.mjs.map +1 -1
- package/components/data/pagination/bundles/index.umd.js +32 -32
- package/components/data/pagination/esm2022/pagination.component.mjs +33 -33
- package/components/data/pagination/fesm2022/index.mjs +32 -32
- package/components/data/pagination/fesm2022/index.mjs.map +1 -1
- package/components/data/table/bundles/index.umd.js +69 -39
- package/components/data/table/esm2022/table-column/table-column.directive.mjs +2 -1
- package/components/data/table/esm2022/table-column/table-column.props.mjs +2 -1
- package/components/data/table/esm2022/table-filter.directive.mjs +29 -2
- package/components/data/table/esm2022/table.component.mjs +40 -39
- package/components/data/table/esm2022/table.props.mjs +2 -1
- package/components/data/table/fesm2022/index.mjs +72 -41
- package/components/data/table/fesm2022/index.mjs.map +1 -1
- package/components/data/table/table-column/table-column.directive.d.ts +1 -0
- package/components/data/table/table-filter.directive.d.ts +1 -0
- package/components/dialogs/default/bundles/index.umd.js +66 -95
- package/components/dialogs/default/esm2022/dialog-header/dialog-header.component.mjs +67 -96
- package/components/dialogs/default/fesm2022/index.mjs +66 -95
- package/components/dialogs/default/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/design-dialog/bundles/index.umd.js +7 -7
- package/components/dialogs/design-dialog/esm2022/dialog.component.mjs +8 -8
- package/components/dialogs/design-dialog/fesm2022/index.mjs +7 -7
- package/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/iframe-dialog/bundles/index.umd.js +24 -25
- package/components/dialogs/iframe-dialog/esm2022/iframe-dialog.component.mjs +15 -16
- package/components/dialogs/iframe-dialog/fesm2022/index.mjs +14 -15
- package/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/partial-dialog/bundles/index.umd.js +8 -8
- package/components/dialogs/partial-dialog/esm2022/partial-dialog.component.mjs +9 -9
- package/components/dialogs/partial-dialog/fesm2022/index.mjs +8 -8
- package/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -1
- package/components/input/chips/bundles/index.umd.js +21 -21
- package/components/input/chips/esm2022/chips.component.mjs +22 -22
- package/components/input/chips/fesm2022/index.mjs +21 -21
- package/components/input/chips/fesm2022/index.mjs.map +1 -1
- package/components/input/default/bundles/index.umd.js +201 -209
- package/components/input/default/esm2022/button/button.component.mjs +18 -18
- package/components/input/default/esm2022/checkboxset/checkboxset.component.mjs +68 -69
- package/components/input/default/esm2022/radioset/radioset.component.mjs +68 -69
- package/components/input/default/esm2022/select/select.component.mjs +21 -27
- package/components/input/default/esm2022/switch/switch.component.mjs +24 -24
- package/components/input/default/esm2022/textarea/textarea.component.mjs +8 -8
- package/components/input/default/fesm2022/index.mjs +201 -209
- package/components/input/default/fesm2022/index.mjs.map +1 -1
- package/components/input/epoch/bundles/index.umd.js +171 -164
- package/components/input/epoch/esm2022/date/date.component.mjs +14 -15
- package/components/input/epoch/esm2022/date-time/date-time-picker.component.mjs +64 -59
- package/components/input/epoch/esm2022/date-time/date-time.component.mjs +18 -19
- package/components/input/epoch/esm2022/picker/picker.component.mjs +26 -25
- package/components/input/epoch/esm2022/time/time.component.mjs +17 -18
- package/components/input/epoch/fesm2022/index.mjs +124 -117
- package/components/input/epoch/fesm2022/index.mjs.map +1 -1
- package/components/input/file-upload/bundles/index.umd.js +111 -114
- package/components/input/file-upload/esm2022/file-upload.component.mjs +112 -115
- package/components/input/file-upload/fesm2022/index.mjs +111 -114
- package/components/input/file-upload/fesm2022/index.mjs.map +1 -1
- package/components/input/rating/bundles/index.umd.js +14 -14
- package/components/input/rating/esm2022/rating.component.mjs +15 -15
- package/components/input/rating/fesm2022/index.mjs +14 -14
- package/components/input/rating/fesm2022/index.mjs.map +1 -1
- package/components/input/slider/bundles/index.umd.js +39 -40
- package/components/input/slider/esm2022/slider.component.mjs +10 -11
- package/components/input/slider/fesm2022/index.mjs +9 -10
- package/components/input/slider/fesm2022/index.mjs.map +1 -1
- package/components/navigation/breadcrumb/bundles/index.umd.js +16 -15
- package/components/navigation/breadcrumb/esm2022/breadcrumb.component.mjs +17 -16
- package/components/navigation/breadcrumb/fesm2022/index.mjs +16 -15
- package/components/navigation/breadcrumb/fesm2022/index.mjs.map +1 -1
- package/components/navigation/menu/bundles/index.umd.js +82 -74
- package/components/navigation/menu/esm2022/menu-adapator.component.mjs +14 -4
- package/components/navigation/menu/esm2022/menu-dropdown/menu-dropdown.component.mjs +7 -7
- package/components/navigation/menu/esm2022/menu-dropdown-item/menu-dropdown-item.component.mjs +15 -15
- package/components/navigation/menu/esm2022/menu.component.mjs +22 -26
- package/components/navigation/menu/esm2022/menu.module.mjs +4 -4
- package/components/navigation/menu/esm2022/nav/nav.component.mjs +26 -24
- package/components/navigation/menu/fesm2022/index.mjs +82 -74
- package/components/navigation/menu/fesm2022/index.mjs.map +1 -1
- package/components/navigation/menu/menu-adapator.component.d.ts +1 -0
- package/components/navigation/navbar/bundles/index.umd.js +12 -12
- package/components/navigation/navbar/esm2022/navbar.component.mjs +13 -13
- package/components/navigation/navbar/fesm2022/index.mjs +12 -12
- package/components/navigation/navbar/fesm2022/index.mjs.map +1 -1
- package/mobile/components/basic/default/bundles/index.umd.js +102 -111
- package/mobile/components/basic/default/esm2022/file-browser/file-browser.component.mjs +39 -40
- package/mobile/components/basic/default/esm2022/network-info-toaster/network-info-toaster.component.mjs +35 -44
- package/mobile/components/basic/default/esm2022/process-manager/process-manager.component.mjs +27 -28
- package/mobile/components/basic/default/fesm2022/index.mjs +98 -107
- package/mobile/components/basic/default/fesm2022/index.mjs.map +1 -1
- package/mobile/components/containers/segmented-control/bundles/index.umd.js +16 -16
- package/mobile/components/containers/segmented-control/esm2022/segment-content/segment-content.component.mjs +8 -9
- package/mobile/components/containers/segmented-control/esm2022/segmented-control.component.mjs +10 -10
- package/mobile/components/containers/segmented-control/fesm2022/index.mjs +16 -16
- package/mobile/components/containers/segmented-control/fesm2022/index.mjs.map +1 -1
- package/mobile/components/data/media-list/bundles/index.umd.js +28 -28
- package/mobile/components/data/media-list/esm2022/media-list.component.mjs +29 -29
- package/mobile/components/data/media-list/fesm2022/index.mjs +28 -28
- package/mobile/components/data/media-list/fesm2022/index.mjs.map +1 -1
- package/mobile/components/page/mobile-navbar/bundles/index.umd.js +29 -29
- package/mobile/components/page/mobile-navbar/esm2022/mobile-navbar.component.mjs +30 -30
- package/mobile/components/page/mobile-navbar/fesm2022/index.mjs +29 -29
- package/mobile/components/page/mobile-navbar/fesm2022/index.mjs.map +1 -1
- package/mobile/components/page/tab-bar/bundles/index.umd.js +28 -28
- package/mobile/components/page/tab-bar/esm2022/tabbar.component.mjs +29 -29
- package/mobile/components/page/tab-bar/fesm2022/index.mjs +28 -28
- package/mobile/components/page/tab-bar/fesm2022/index.mjs.map +1 -1
- package/npm-shrinkwrap.json +2 -2
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/runtime/base/bundles/index.umd.js +219 -215
- package/runtime/base/esm2022/components/app-component/app.component.mjs +38 -41
- package/runtime/base/esm2022/components/app-spinner.component.mjs +25 -21
- package/runtime/base/esm2022/components/custom-toaster.component.mjs +18 -16
- package/runtime/base/fesm2022/index.mjs +99 -95
- package/runtime/base/fesm2022/index.mjs.map +1 -1
- package/scripts/datatable/datatable.js +1 -0
|
@@ -42,13 +42,13 @@ const _c1 = ["wmRating", ""];
|
|
|
42
42
|
const _c2 = () => ({ standalone: true });
|
|
43
43
|
const _c3 = a0 => ({ active: a0 });
|
|
44
44
|
const _c4 = (a0, a1) => ({ "font-size": a0, color: a1 });
|
|
45
|
-
function
|
|
45
|
+
function RatingComponent_For_3_Template(rf, ctx) { if (rf & 1) {
|
|
46
46
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
47
47
|
i0.ɵɵelementStart(0, "label", 5);
|
|
48
|
-
i0.ɵɵlistener("touchstart", function
|
|
48
|
+
i0.ɵɵlistener("touchstart", function RatingComponent_For_3_Template_label_touchstart_0_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onTouchStart($event)); })("mouseleave", function RatingComponent_For_3_Template_label_mouseleave_0_listener($event) { const rate_r3 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onMouseleave($event, rate_r3)); })("mouseover", function RatingComponent_For_3_Template_label_mouseover_0_listener($event) { const rate_r3 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onMouseOver($event, rate_r3)); });
|
|
49
49
|
i0.ɵɵelement(1, "i", 6);
|
|
50
50
|
i0.ɵɵelementStart(2, "input", 7, 0);
|
|
51
|
-
i0.ɵɵlistener("click", function
|
|
51
|
+
i0.ɵɵlistener("click", function RatingComponent_For_3_Template_input_click_2_listener($event) { const rate_r3 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onRatingClick($event, rate_r3)); });
|
|
52
52
|
i0.ɵɵelementEnd()();
|
|
53
53
|
} if (rf & 2) {
|
|
54
54
|
const rate_r3 = ctx.$implicit;
|
|
@@ -60,8 +60,8 @@ function RatingComponent_label_2_Template(rf, ctx) { if (rf & 1) {
|
|
|
60
60
|
i0.ɵɵproperty("id", ctx_r1._id + "-" + rate_r3.index)("value", rate_r3.key || rate_r3.index);
|
|
61
61
|
i0.ɵɵattribute("aria-label", (rate_r3.label || rate_r3.index) + " out of " + ctx_r1.ratingItems.length + " ratings")("aria-checked", rate_r3.label === ctx_r1.datavalue ? "true" : "false");
|
|
62
62
|
} }
|
|
63
|
-
function
|
|
64
|
-
i0.ɵɵelement(0, "label",
|
|
63
|
+
function RatingComponent_Conditional_4_Template(rf, ctx) { if (rf & 1) {
|
|
64
|
+
i0.ɵɵelement(0, "label", 4);
|
|
65
65
|
} if (rf & 2) {
|
|
66
66
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
67
67
|
i0.ɵɵproperty("textContent", ctx_r1.caption);
|
|
@@ -249,32 +249,32 @@ class RatingComponent extends DatasetAwareFormComponent {
|
|
|
249
249
|
} }, features: [i0.ɵɵProvidersFeature([
|
|
250
250
|
provideAs(RatingComponent, NG_VALUE_ACCESSOR, true),
|
|
251
251
|
provideAsWidgetRef(RatingComponent)
|
|
252
|
-
]), i0.ɵɵInheritDefinitionFeature], attrs: _c1, decls:
|
|
252
|
+
]), i0.ɵɵInheritDefinitionFeature], attrs: _c1, decls: 5, vars: 6, consts: [["ratingInput", ""], ["ngDefaultControl", "", 1, "ratings-wrapper", 3, "focus", "ngModelChange", "ngModel", "ngModelOptions"], [1, "rating-style"], [3, "ngClass", "ngStyle", "title", "for"], [1, "caption", 3, "textContent"], [3, "touchstart", "mouseleave", "mouseover", "ngClass", "ngStyle", "title", "for"], ["aria-hidden", "true"], ["type", "radio", "role", "radio", "name", "ratings-id", 3, "click", "id", "value"]], template: function RatingComponent_Template(rf, ctx) { if (rf & 1) {
|
|
253
253
|
i0.ɵɵelementStart(0, "div", 1);
|
|
254
254
|
i0.ɵɵlistener("focus", function RatingComponent_Template_div_focus_0_listener($event) { return ctx.onFocus($event); });
|
|
255
255
|
i0.ɵɵtwoWayListener("ngModelChange", function RatingComponent_Template_div_ngModelChange_0_listener($event) { i0.ɵɵtwoWayBindingSet(ctx.modelByKey, $event) || (ctx.modelByKey = $event); return $event; });
|
|
256
256
|
i0.ɵɵelementStart(1, "div", 2);
|
|
257
|
-
i0.ɵɵ
|
|
257
|
+
i0.ɵɵrepeaterCreate(2, RatingComponent_For_3_Template, 4, 16, "label", 3, i0.ɵɵrepeaterTrackByIdentity);
|
|
258
258
|
i0.ɵɵelementEnd();
|
|
259
|
-
i0.ɵɵtemplate(
|
|
259
|
+
i0.ɵɵtemplate(4, RatingComponent_Conditional_4_Template, 1, 1, "label", 4);
|
|
260
260
|
i0.ɵɵelementEnd();
|
|
261
261
|
} if (rf & 2) {
|
|
262
262
|
i0.ɵɵtwoWayProperty("ngModel", ctx.modelByKey);
|
|
263
|
-
i0.ɵɵproperty("ngModelOptions", i0.ɵɵpureFunction0(
|
|
263
|
+
i0.ɵɵproperty("ngModelOptions", i0.ɵɵpureFunction0(5, _c2));
|
|
264
264
|
i0.ɵɵadvance();
|
|
265
265
|
i0.ɵɵclassProp("disabled", ctx.readonly);
|
|
266
266
|
i0.ɵɵadvance();
|
|
267
|
-
i0.ɵɵ
|
|
268
|
-
i0.ɵɵadvance();
|
|
269
|
-
i0.ɵɵ
|
|
270
|
-
} }, dependencies: [i1.NgClass, i1.
|
|
267
|
+
i0.ɵɵrepeater(ctx.ratingItems);
|
|
268
|
+
i0.ɵɵadvance(2);
|
|
269
|
+
i0.ɵɵconditional(ctx.showcaptions ? 4 : -1);
|
|
270
|
+
} }, dependencies: [i1.NgClass, i1.NgStyle, i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgModel, i3.TextContentDirective], encapsulation: 2 }); }
|
|
271
271
|
}
|
|
272
272
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RatingComponent, [{
|
|
273
273
|
type: Component,
|
|
274
274
|
args: [{ selector: '[wmRating]', providers: [
|
|
275
275
|
provideAs(RatingComponent, NG_VALUE_ACCESSOR, true),
|
|
276
276
|
provideAsWidgetRef(RatingComponent)
|
|
277
|
-
], template: "<div (focus)=\"onFocus($event)\" [(ngModel)]=\"modelByKey\" [ngModelOptions]=\"{standalone: true}\"\n
|
|
277
|
+
], template: "<div (focus)=\"onFocus($event)\" [(ngModel)]=\"modelByKey\" [ngModelOptions]=\"{standalone: true}\"\n class=\"ratings-wrapper\" ngDefaultControl>\n <div [class.disabled]=\"readonly\" class=\"rating-style\">\n @for (rate of ratingItems; track rate) {\n <label\n [ngClass]=\"{active : rate.index <= selectedRatingValue}\"\n [ngStyle]=\"{'font-size' :iconsize, color: rate.index <= selectedRatingValue && iconcolor}\"\n [title]=\"rate.label || rate.index\"\n (touchstart)=\"onTouchStart($event)\"\n (mouseleave)=\"onMouseleave($event, rate)\"\n (mouseover)=\"onMouseOver($event, rate)\"\n [for]=\"_id + '-' + rate.index\">\n <i class=\"app-icon {{rate.index <= selectedRatingValue ? activeiconclass : inactiveiconclass}}\" aria-hidden=\"true\"></i>\n <input #ratingInput type=\"radio\" role=\"radio\" [attr.aria-label]=\"(rate.label || rate.index) + ' out of ' + ratingItems.length + ' ratings'\" [attr.aria-checked]=\"rate.label === datavalue ? 'true' : 'false'\"\n [id]=\"_id + '-' + rate.index\" (click)=\"onRatingClick($event, rate)\" name=\"ratings-id\" [value]=\"rate.key || rate.index\"/>\n </label>\n }\n </div>\n @if (showcaptions) {\n <label class=\"caption\" [textContent]=\"caption\"></label>\n }\n</div>\n" }]
|
|
278
278
|
}], () => [{ type: i0.Injector }, { type: undefined, decorators: [{
|
|
279
279
|
type: Inject,
|
|
280
280
|
args: ['EXPLICIT_CONTEXT']
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/rating/src/rating.props.ts","../../../../../projects/components/widgets/input/rating/src/rating.component.html","../../../../../projects/components/widgets/input/rating/src/rating.component.ts","../../../../../projects/components/widgets/input/rating/src/rating.module.ts","../../../../../projects/components/widgets/input/rating/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget } from '@wm/components/base';\nimport { FormWidgetType } from '@wm/core';\n\nexport const ratingProps = new Map(\n [\n ['caption', PROP_STRING],\n ['class', PROP_STRING],\n ['datafield', PROP_STRING],\n ['dataset', PROP_ANY],\n ['datavaluesource', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['displayexpression', PROP_STRING],\n ['displayfield', PROP_STRING],\n ['iconcolor', PROP_STRING],\n ['activeiconclass', {value: 'wi wi-star', ...PROP_STRING}],\n ['inactiveiconclass', {value: 'wi wi-star-border', ...PROP_STRING}],\n ['iconsize', PROP_STRING],\n ['maxvalue', {value: 5, ...PROP_NUMBER}],\n ['name', PROP_STRING],\n ['orderby', PROP_STRING],\n ['readonly', PROP_BOOLEAN],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['showcaptions', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['usekeys', PROP_BOOLEAN]\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-rating',\n ratingProps\n );\n registerFormWidget(\n FormWidgetType.RATING,\n new Map(ratingProps)\n );\n};\n","<div (focus)=\"onFocus($event)\" [(ngModel)]=\"modelByKey\" [ngModelOptions]=\"{standalone: true}\"\n class=\"ratings-wrapper\" ngDefaultControl>\n <div [class.disabled]=\"readonly\" class=\"rating-style\">\n <label *ngFor=\"let rate of ratingItems;\"\n [ngClass]=\"{active : rate.index <= selectedRatingValue}\"\n [ngStyle]=\"{'font-size' :iconsize, color: rate.index <= selectedRatingValue && iconcolor}\"\n [title]=\"rate.label || rate.index\"\n (touchstart)=\"onTouchStart($event)\"\n (mouseleave)=\"onMouseleave($event, rate)\"\n (mouseover)=\"onMouseOver($event, rate)\"\n [for]=\"_id + '-' + rate.index\">\n <i class=\"app-icon {{rate.index <= selectedRatingValue ? activeiconclass : inactiveiconclass}}\" aria-hidden=\"true\"></i>\n <input #ratingInput type=\"radio\" role=\"radio\" [attr.aria-label]=\"(rate.label || rate.index) + ' out of ' + ratingItems.length + ' ratings'\" [attr.aria-checked]=\"rate.label === datavalue ? 'true' : 'false'\"\n [id]=\"_id + '-' + rate.index\" (click)=\"onRatingClick($event, rate)\" name=\"ratings-id\" [value]=\"rate.key || rate.index\"/>\n </label>\n </div>\n <label *ngIf=\"showcaptions\" class=\"caption\" [textContent]=\"caption\"></label>\n</div>\n","import {Component, ElementRef, Inject, Injector, Optional, ViewChild} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport {generateGUId, setCSS, noop} from '@wm/core';\nimport { getOrderedDataset, provideAs, provideAsWidgetRef, styler } from '@wm/components/base';\nimport { DatasetAwareFormComponent } from '@wm/components/input';\n\nimport { registerProps } from './rating.props';\nimport {find, isEmpty, isUndefined, slice, toString} from \"lodash-es\";\n\nconst DEFAULT_CLS = 'app-ratings';\nconst WIDGET_CONFIG = {widgetType: 'wm-rating', hostClass: DEFAULT_CLS};\n\nconst MAX_RATING = 10;\nconst DEFAULT_RATING = 5;\n\n@Component({\n selector: '[wmRating]',\n templateUrl: './rating.component.html',\n providers: [\n provideAs(RatingComponent, NG_VALUE_ACCESSOR, true),\n provideAsWidgetRef(RatingComponent)\n ]\n})\nexport class RatingComponent extends DatasetAwareFormComponent {\n static initializeProps = registerProps();\n\n public caption: string;\n public showcaptions: boolean;\n public maxvalue;\n\n private _selectedRatingValue;\n public ratingsWidth;\n public ratingItems;\n private _id;\n\n public iconsize: string;\n public iconcolor: string;\n public onFocus: any;\n private touchEnabled:boolean;\n public activeiconclass: string = '';\n public inactiveiconclass: string = '';\n @ViewChild('ratingInput', /* TODO: add static flag */ { read: ElementRef }) ratingEl: ElementRef;\n\n get selectedRatingValue() {\n return this._selectedRatingValue;\n }\n\n set selectedRatingValue(val) {\n this._selectedRatingValue = val;\n this.calculateRatingsWidth();\n }\n\n constructor(inj: Injector, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n this._id = generateGUId();\n styler(this.nativeElement, this);\n\n // prepare the rating options on dataset ready.\n const datasetSubscription = this.dataset$.subscribe(() => {\n this.prepareRatingDataset();\n });\n this.registerDestroyListener(() => datasetSubscription.unsubscribe());\n\n // listen to changes in datavalue.\n const datavalueSubscription = this.datavalue$.subscribe(() => this.onDatavalueChange(this.datavalue));\n this.registerDestroyListener(() => datavalueSubscription.unsubscribe());\n }\n\n // Change event is registered from the template, Prevent the framework from registering one more event\n protected handleEvent(node: HTMLElement, eventName: string, eventCallback: Function, locals: any) {\n if (eventName !== 'change' && eventName !== 'blur') {\n super.handleEvent(this.ratingEl.nativeElement, eventName, eventCallback, locals);\n }\n }\n\n // This function returns the rating widget dataset containing the index, value and label\n private prepareRatingDataset() {\n if (!this.datasetItems.length) {\n this.ratingItems = [];\n this.caption = '';\n }\n\n let ratingItems = [];\n let data = this.datasetItems;\n const maxvalue = parseInt(this.maxvalue || this.datasetItems.length, 10);\n const maxValue = (maxvalue > MAX_RATING ? MAX_RATING : maxvalue) || DEFAULT_RATING;\n\n /**\n * 1. If datasetItems.length is more than maxValue (i.e. 10 ratings) then just extract maxValue of items from datasetItems.\n * 2. If datasetItems are not available then prepare ratings value depending on maxvalue. eg: 1,2,3 .. upto maxvalue\n * 3. If maxvalue / i value is more than datasetItems length, prepare default rating items for i values more than datasetItems.length\n */\n if (data.length && data.length > maxValue) {\n data = slice(data, 0, maxValue);\n }\n\n for (let i = maxValue; i > 0; i--) {\n if (!data.length) {\n ratingItems.push({key: i, value: i, index: i, label: i});\n } else {\n if (i > data.length) {\n ratingItems.push({key: i, value: i, index: i, label: i});\n } else {\n data = getOrderedDataset(data, 'index:desc');\n ratingItems = ratingItems.concat(data);\n break;\n }\n }\n }\n\n this.ratingItems = ratingItems;\n if (!data.length) { // constructs default datasetItems when there is no dataset binding.\n this.datasetItems = ratingItems;\n }\n this.onDatavalueChange(this.datavalue);\n }\n\n onRatingClick($event, rate) {\n this.modelByKey = rate.key;\n this.selectedRatingValue = rate.index;\n\n // support if the caption is binded in the old projects for backward compatibility\n if (!this.showcaptions) {\n this.caption = rate.label;\n }\n\n this.invokeOnTouched();\n // invoke on datavalue change.\n this.invokeOnChange(this.datavalue, $event || {}, true);\n }\n\n // Update the selected flag on datasetItems and assign the ratingValue.\n /**\n * On datavalue change, update the caption, selectedRatingValue.\n * 1. if datasetItems contain the selected item (check the selected flag on item), find the index of selected item.\n * 2. if not, just check if the datavalue is provided as the index on the item.\n *\n * @param dataVal datavalue\n */\n onDatavalueChange(dataVal) {\n if (!isEmpty(this.datasetItems)) {\n let selectedItem = find(this.datasetItems, {'selected': true});\n\n if (!selectedItem && !isUndefined(dataVal)) {\n selectedItem = find(this.datasetItems, function (item) {\n return toString(item.index) === dataVal;\n });\n if (selectedItem) {\n selectedItem.selected = true;\n }\n }\n\n if (!selectedItem) {\n // reset the model if there is no item found.\n this.modelByKey = undefined;\n this.caption = '';\n }\n\n this.selectedRatingValue = selectedItem ? selectedItem.index : 0;\n if (selectedItem) {\n this.caption = selectedItem.label;\n }\n } else {\n this.selectedRatingValue = 0;\n }\n if (this.readonly) {\n // when dataset is not given but datavalue is provided which is integer\n if (!this.selectedRatingValue && !isNaN(dataVal)) {\n this.selectedRatingValue = (parseFloat(dataVal) <= this.maxvalue) ? dataVal : this.maxvalue;\n }\n this.ratingsWidth = this.calculateRatingsWidth(dataVal);\n }\n }\n\n calculateRatingsWidth(dataVal?: any) {\n const selectedRating = parseFloat(this.selectedRatingValue),\n starWidth = 0.925,\n maxValue = parseInt(this.maxvalue || this.datasetItems.length, 10) || DEFAULT_RATING;\n\n dataVal = dataVal || this.datavalue;\n if (dataVal === undefined || dataVal === '' || dataVal === null) {\n this.caption = '';\n return 0;\n }\n if (selectedRating <= maxValue && selectedRating >= 0) {\n return selectedRating * starWidth + 'em';\n }\n if (selectedRating > maxValue) {\n return maxValue * starWidth + 'em';\n }\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'readonly') {\n if (nv) {\n this.ratingsWidth = this.calculateRatingsWidth();\n }\n } else if (key === 'maxvalue') {\n /** Storing the datavalue in temp variable and assiging back to datavalue\n * after default datalist is prepared to trigger Dataset Aware class select cycle\n * as the datavalue property change is triggering first rather than maxvalue\n * in the rating widget is used inside a datatable\n */\n let tempDataValue = this.datavalue;\n this.prepareRatingDataset();\n // reset all the items.\n this.resetDatasetItems();\n if (!isUndefined(tempDataValue)) {\n this.datavalue = tempDataValue;\n }\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n /* Detect touch enabled devices & update hover styles*/\n onTouchStart($event) {\n this.touchEnabled = true;\n this.onTouchStart = noop;\n }\n onMouseleave() {\n this.caption = this.displayValue as string;\n }\n\n onMouseOver($event, rate) {\n this.caption = rate.label;\n !this.touchEnabled && !$event.target.classList.contains('rating-label-hover') && $event.target.classList.add('rating-label-hover');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { RatingComponent } from './rating.component';\n\nconst components = [\n RatingComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class RatingModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/rating/src/rating.props.ts","../../../../../projects/components/widgets/input/rating/src/rating.component.html","../../../../../projects/components/widgets/input/rating/src/rating.component.ts","../../../../../projects/components/widgets/input/rating/src/rating.module.ts","../../../../../projects/components/widgets/input/rating/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget } from '@wm/components/base';\nimport { FormWidgetType } from '@wm/core';\n\nexport const ratingProps = new Map(\n [\n ['caption', PROP_STRING],\n ['class', PROP_STRING],\n ['datafield', PROP_STRING],\n ['dataset', PROP_ANY],\n ['datavaluesource', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['displayexpression', PROP_STRING],\n ['displayfield', PROP_STRING],\n ['iconcolor', PROP_STRING],\n ['activeiconclass', {value: 'wi wi-star', ...PROP_STRING}],\n ['inactiveiconclass', {value: 'wi wi-star-border', ...PROP_STRING}],\n ['iconsize', PROP_STRING],\n ['maxvalue', {value: 5, ...PROP_NUMBER}],\n ['name', PROP_STRING],\n ['orderby', PROP_STRING],\n ['readonly', PROP_BOOLEAN],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['showcaptions', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['usekeys', PROP_BOOLEAN]\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-rating',\n ratingProps\n );\n registerFormWidget(\n FormWidgetType.RATING,\n new Map(ratingProps)\n );\n};\n","<div (focus)=\"onFocus($event)\" [(ngModel)]=\"modelByKey\" [ngModelOptions]=\"{standalone: true}\"\n class=\"ratings-wrapper\" ngDefaultControl>\n <div [class.disabled]=\"readonly\" class=\"rating-style\">\n @for (rate of ratingItems; track rate) {\n <label\n [ngClass]=\"{active : rate.index <= selectedRatingValue}\"\n [ngStyle]=\"{'font-size' :iconsize, color: rate.index <= selectedRatingValue && iconcolor}\"\n [title]=\"rate.label || rate.index\"\n (touchstart)=\"onTouchStart($event)\"\n (mouseleave)=\"onMouseleave($event, rate)\"\n (mouseover)=\"onMouseOver($event, rate)\"\n [for]=\"_id + '-' + rate.index\">\n <i class=\"app-icon {{rate.index <= selectedRatingValue ? activeiconclass : inactiveiconclass}}\" aria-hidden=\"true\"></i>\n <input #ratingInput type=\"radio\" role=\"radio\" [attr.aria-label]=\"(rate.label || rate.index) + ' out of ' + ratingItems.length + ' ratings'\" [attr.aria-checked]=\"rate.label === datavalue ? 'true' : 'false'\"\n [id]=\"_id + '-' + rate.index\" (click)=\"onRatingClick($event, rate)\" name=\"ratings-id\" [value]=\"rate.key || rate.index\"/>\n </label>\n }\n </div>\n @if (showcaptions) {\n <label class=\"caption\" [textContent]=\"caption\"></label>\n }\n</div>\n","import {Component, ElementRef, Inject, Injector, Optional, ViewChild} from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport {generateGUId, setCSS, noop} from '@wm/core';\nimport { getOrderedDataset, provideAs, provideAsWidgetRef, styler } from '@wm/components/base';\nimport { DatasetAwareFormComponent } from '@wm/components/input';\n\nimport { registerProps } from './rating.props';\nimport {find, isEmpty, isUndefined, slice, toString} from \"lodash-es\";\n\nconst DEFAULT_CLS = 'app-ratings';\nconst WIDGET_CONFIG = {widgetType: 'wm-rating', hostClass: DEFAULT_CLS};\n\nconst MAX_RATING = 10;\nconst DEFAULT_RATING = 5;\n\n@Component({\n selector: '[wmRating]',\n templateUrl: './rating.component.html',\n providers: [\n provideAs(RatingComponent, NG_VALUE_ACCESSOR, true),\n provideAsWidgetRef(RatingComponent)\n ]\n})\nexport class RatingComponent extends DatasetAwareFormComponent {\n static initializeProps = registerProps();\n\n public caption: string;\n public showcaptions: boolean;\n public maxvalue;\n\n private _selectedRatingValue;\n public ratingsWidth;\n public ratingItems;\n private _id;\n\n public iconsize: string;\n public iconcolor: string;\n public onFocus: any;\n private touchEnabled:boolean;\n public activeiconclass: string = '';\n public inactiveiconclass: string = '';\n @ViewChild('ratingInput', /* TODO: add static flag */ { read: ElementRef }) ratingEl: ElementRef;\n\n get selectedRatingValue() {\n return this._selectedRatingValue;\n }\n\n set selectedRatingValue(val) {\n this._selectedRatingValue = val;\n this.calculateRatingsWidth();\n }\n\n constructor(inj: Injector, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n this._id = generateGUId();\n styler(this.nativeElement, this);\n\n // prepare the rating options on dataset ready.\n const datasetSubscription = this.dataset$.subscribe(() => {\n this.prepareRatingDataset();\n });\n this.registerDestroyListener(() => datasetSubscription.unsubscribe());\n\n // listen to changes in datavalue.\n const datavalueSubscription = this.datavalue$.subscribe(() => this.onDatavalueChange(this.datavalue));\n this.registerDestroyListener(() => datavalueSubscription.unsubscribe());\n }\n\n // Change event is registered from the template, Prevent the framework from registering one more event\n protected handleEvent(node: HTMLElement, eventName: string, eventCallback: Function, locals: any) {\n if (eventName !== 'change' && eventName !== 'blur') {\n super.handleEvent(this.ratingEl.nativeElement, eventName, eventCallback, locals);\n }\n }\n\n // This function returns the rating widget dataset containing the index, value and label\n private prepareRatingDataset() {\n if (!this.datasetItems.length) {\n this.ratingItems = [];\n this.caption = '';\n }\n\n let ratingItems = [];\n let data = this.datasetItems;\n const maxvalue = parseInt(this.maxvalue || this.datasetItems.length, 10);\n const maxValue = (maxvalue > MAX_RATING ? MAX_RATING : maxvalue) || DEFAULT_RATING;\n\n /**\n * 1. If datasetItems.length is more than maxValue (i.e. 10 ratings) then just extract maxValue of items from datasetItems.\n * 2. If datasetItems are not available then prepare ratings value depending on maxvalue. eg: 1,2,3 .. upto maxvalue\n * 3. If maxvalue / i value is more than datasetItems length, prepare default rating items for i values more than datasetItems.length\n */\n if (data.length && data.length > maxValue) {\n data = slice(data, 0, maxValue);\n }\n\n for (let i = maxValue; i > 0; i--) {\n if (!data.length) {\n ratingItems.push({key: i, value: i, index: i, label: i});\n } else {\n if (i > data.length) {\n ratingItems.push({key: i, value: i, index: i, label: i});\n } else {\n data = getOrderedDataset(data, 'index:desc');\n ratingItems = ratingItems.concat(data);\n break;\n }\n }\n }\n\n this.ratingItems = ratingItems;\n if (!data.length) { // constructs default datasetItems when there is no dataset binding.\n this.datasetItems = ratingItems;\n }\n this.onDatavalueChange(this.datavalue);\n }\n\n onRatingClick($event, rate) {\n this.modelByKey = rate.key;\n this.selectedRatingValue = rate.index;\n\n // support if the caption is binded in the old projects for backward compatibility\n if (!this.showcaptions) {\n this.caption = rate.label;\n }\n\n this.invokeOnTouched();\n // invoke on datavalue change.\n this.invokeOnChange(this.datavalue, $event || {}, true);\n }\n\n // Update the selected flag on datasetItems and assign the ratingValue.\n /**\n * On datavalue change, update the caption, selectedRatingValue.\n * 1. if datasetItems contain the selected item (check the selected flag on item), find the index of selected item.\n * 2. if not, just check if the datavalue is provided as the index on the item.\n *\n * @param dataVal datavalue\n */\n onDatavalueChange(dataVal) {\n if (!isEmpty(this.datasetItems)) {\n let selectedItem = find(this.datasetItems, {'selected': true});\n\n if (!selectedItem && !isUndefined(dataVal)) {\n selectedItem = find(this.datasetItems, function (item) {\n return toString(item.index) === dataVal;\n });\n if (selectedItem) {\n selectedItem.selected = true;\n }\n }\n\n if (!selectedItem) {\n // reset the model if there is no item found.\n this.modelByKey = undefined;\n this.caption = '';\n }\n\n this.selectedRatingValue = selectedItem ? selectedItem.index : 0;\n if (selectedItem) {\n this.caption = selectedItem.label;\n }\n } else {\n this.selectedRatingValue = 0;\n }\n if (this.readonly) {\n // when dataset is not given but datavalue is provided which is integer\n if (!this.selectedRatingValue && !isNaN(dataVal)) {\n this.selectedRatingValue = (parseFloat(dataVal) <= this.maxvalue) ? dataVal : this.maxvalue;\n }\n this.ratingsWidth = this.calculateRatingsWidth(dataVal);\n }\n }\n\n calculateRatingsWidth(dataVal?: any) {\n const selectedRating = parseFloat(this.selectedRatingValue),\n starWidth = 0.925,\n maxValue = parseInt(this.maxvalue || this.datasetItems.length, 10) || DEFAULT_RATING;\n\n dataVal = dataVal || this.datavalue;\n if (dataVal === undefined || dataVal === '' || dataVal === null) {\n this.caption = '';\n return 0;\n }\n if (selectedRating <= maxValue && selectedRating >= 0) {\n return selectedRating * starWidth + 'em';\n }\n if (selectedRating > maxValue) {\n return maxValue * starWidth + 'em';\n }\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'readonly') {\n if (nv) {\n this.ratingsWidth = this.calculateRatingsWidth();\n }\n } else if (key === 'maxvalue') {\n /** Storing the datavalue in temp variable and assiging back to datavalue\n * after default datalist is prepared to trigger Dataset Aware class select cycle\n * as the datavalue property change is triggering first rather than maxvalue\n * in the rating widget is used inside a datatable\n */\n let tempDataValue = this.datavalue;\n this.prepareRatingDataset();\n // reset all the items.\n this.resetDatasetItems();\n if (!isUndefined(tempDataValue)) {\n this.datavalue = tempDataValue;\n }\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n /* Detect touch enabled devices & update hover styles*/\n onTouchStart($event) {\n this.touchEnabled = true;\n this.onTouchStart = noop;\n }\n onMouseleave() {\n this.caption = this.displayValue as string;\n }\n\n onMouseOver($event, rate) {\n this.caption = rate.label;\n !this.touchEnabled && !$event.target.classList.contains('rating-label-hover') && $event.target.classList.add('rating-label-hover');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { RatingComponent } from './rating.component';\n\nconst components = [\n RatingComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class RatingModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/forms'), require('@wm/components/base'), require('@wm/components/input'), require('@wm/core')) :
|
|
3
3
|
typeof define === 'function' && define.amd ? define(['exports', '@angular/core', '@angular/common', '@angular/forms', '@wm/components/base', '@wm/components/input', '@wm/core'], factory) :
|
|
4
4
|
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.wm = global.wm || {}, global.wm.components = global.wm.components || {}, global.wm.components.input = global.wm.components.input || {}, global.wm.components.input.slider = {}), global.ng.core, global.ng.common, global.ng.forms, global.wm.components.base, global.wm.components.input, global.wm.core));
|
|
5
|
-
})(this, (function (exports, i0, i1, i2,
|
|
5
|
+
})(this, (function (exports, i0, common, i1, i2, input, core) { 'use strict';
|
|
6
6
|
|
|
7
7
|
function _interopNamespaceDefault(e) {
|
|
8
8
|
var n = Object.create(null);
|
|
@@ -24,32 +24,31 @@
|
|
|
24
24
|
var i0__namespace = /*#__PURE__*/_interopNamespaceDefault(i0);
|
|
25
25
|
var i1__namespace = /*#__PURE__*/_interopNamespaceDefault(i1);
|
|
26
26
|
var i2__namespace = /*#__PURE__*/_interopNamespaceDefault(i2);
|
|
27
|
-
var i3__namespace = /*#__PURE__*/_interopNamespaceDefault(i3);
|
|
28
27
|
|
|
29
28
|
const sliderProps = new Map([
|
|
30
|
-
['class',
|
|
31
|
-
['datavalue',
|
|
32
|
-
['disabled',
|
|
33
|
-
['hint',
|
|
34
|
-
['arialabel',
|
|
35
|
-
['maxvalue',
|
|
36
|
-
['minvalue',
|
|
37
|
-
['name',
|
|
38
|
-
['readonly',
|
|
39
|
-
['shortcutkey',
|
|
40
|
-
['show', { value: true, ...
|
|
41
|
-
['step',
|
|
42
|
-
['tabindex', { value: 0, ...
|
|
29
|
+
['class', i2.PROP_STRING],
|
|
30
|
+
['datavalue', i2.PROP_STRING],
|
|
31
|
+
['disabled', i2.PROP_BOOLEAN],
|
|
32
|
+
['hint', i2.PROP_STRING],
|
|
33
|
+
['arialabel', i2.PROP_STRING],
|
|
34
|
+
['maxvalue', i2.PROP_NUMBER],
|
|
35
|
+
['minvalue', i2.PROP_NUMBER],
|
|
36
|
+
['name', i2.PROP_STRING],
|
|
37
|
+
['readonly', i2.PROP_BOOLEAN],
|
|
38
|
+
['shortcutkey', i2.PROP_STRING],
|
|
39
|
+
['show', { value: true, ...i2.PROP_BOOLEAN }],
|
|
40
|
+
['step', i2.PROP_NUMBER],
|
|
41
|
+
['tabindex', { value: 0, ...i2.PROP_NUMBER }]
|
|
43
42
|
]);
|
|
44
43
|
const registerProps = () => {
|
|
45
|
-
|
|
46
|
-
|
|
44
|
+
i2.register('wm-slider', sliderProps);
|
|
45
|
+
i2.registerFormWidget(core.FormWidgetType.SLIDER, new Map(sliderProps));
|
|
47
46
|
};
|
|
48
47
|
|
|
49
48
|
const _c0 = ["wmSlider", ""];
|
|
50
49
|
const _c1 = () => ({ standalone: true });
|
|
51
|
-
function
|
|
52
|
-
i0__namespace.ɵɵelement(0, "div",
|
|
50
|
+
function SliderComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
51
|
+
i0__namespace.ɵɵelement(0, "div", 3);
|
|
53
52
|
} }
|
|
54
53
|
const DEFAULT_CLS = 'app-slider slider';
|
|
55
54
|
const WIDGET_CONFIG = {
|
|
@@ -60,7 +59,7 @@
|
|
|
60
59
|
static { this.initializeProps = registerProps(); }
|
|
61
60
|
constructor(inj, explicitContext) {
|
|
62
61
|
super(inj, WIDGET_CONFIG, explicitContext);
|
|
63
|
-
|
|
62
|
+
i2.styler(this.nativeElement, this);
|
|
64
63
|
}
|
|
65
64
|
// change and blur events are added from the template
|
|
66
65
|
handleEvent(node, eventName, callback, locals) {
|
|
@@ -79,20 +78,20 @@
|
|
|
79
78
|
}
|
|
80
79
|
static { this.ɵfac = function SliderComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SliderComponent)(i0__namespace.ɵɵdirectiveInject(i0__namespace.Injector), i0__namespace.ɵɵdirectiveInject('EXPLICIT_CONTEXT', 8)); }; }
|
|
81
80
|
static { this.ɵcmp = /*@__PURE__*/ i0__namespace.ɵɵdefineComponent({ type: SliderComponent, selectors: [["", "wmSlider", ""]], viewQuery: function SliderComponent_Query(rf, ctx) { if (rf & 1) {
|
|
82
|
-
i0__namespace.ɵɵviewQuery(
|
|
81
|
+
i0__namespace.ɵɵviewQuery(i1.NgModel, 5);
|
|
83
82
|
} if (rf & 2) {
|
|
84
83
|
let _t;
|
|
85
84
|
i0__namespace.ɵɵqueryRefresh(_t = i0__namespace.ɵɵloadQuery()) && (ctx.ngModel = _t.first);
|
|
86
85
|
} }, features: [i0__namespace.ɵɵProvidersFeature([
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
]), i0__namespace.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 4, vars: 15, consts: [[1, "app-slider-value", "pull-left", 3, "textContent"], [1, "app-slider-value", "pull-right", 3, "textContent"], ["aria-orientation", "horizontal", "focus-target", "", "type", "range", 1, "range-input", 3, "ngModelChange", "blur", "title", "ngModel", "ngModelOptions", "disabled", "tabindex"], ["aria-readonly", "true",
|
|
86
|
+
i2.provideAs(SliderComponent, i1.NG_VALUE_ACCESSOR, true),
|
|
87
|
+
i2.provideAsWidgetRef(SliderComponent)
|
|
88
|
+
]), i0__namespace.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 4, vars: 15, consts: [[1, "app-slider-value", "pull-left", 3, "textContent"], [1, "app-slider-value", "pull-right", 3, "textContent"], ["aria-orientation", "horizontal", "focus-target", "", "type", "range", 1, "range-input", 3, "ngModelChange", "blur", "title", "ngModel", "ngModelOptions", "disabled", "tabindex"], ["aria-readonly", "true", 1, "readonly-wrapper"]], template: function SliderComponent_Template(rf, ctx) { if (rf & 1) {
|
|
90
89
|
i0__namespace.ɵɵelement(0, "span", 0)(1, "span", 1);
|
|
91
90
|
i0__namespace.ɵɵelementStart(2, "input", 2);
|
|
92
91
|
i0__namespace.ɵɵtwoWayListener("ngModelChange", function SliderComponent_Template_input_ngModelChange_2_listener($event) { i0__namespace.ɵɵtwoWayBindingSet(ctx.datavalue, $event) || (ctx.datavalue = $event); return $event; });
|
|
93
92
|
i0__namespace.ɵɵlistener("blur", function SliderComponent_Template_input_blur_2_listener($event) { return ctx.invokeOnTouched($event); })("ngModelChange", function SliderComponent_Template_input_ngModelChange_2_listener($event) { return ctx.handleChange($event); });
|
|
94
93
|
i0__namespace.ɵɵelementEnd();
|
|
95
|
-
i0__namespace.ɵɵtemplate(3,
|
|
94
|
+
i0__namespace.ɵɵtemplate(3, SliderComponent_Conditional_3_Template, 1, 0, "div", 3);
|
|
96
95
|
} if (rf & 2) {
|
|
97
96
|
i0__namespace.ɵɵproperty("textContent", ctx.minvalue);
|
|
98
97
|
i0__namespace.ɵɵadvance();
|
|
@@ -103,15 +102,15 @@
|
|
|
103
102
|
i0__namespace.ɵɵproperty("ngModelOptions", i0__namespace.ɵɵpureFunction0(14, _c1))("disabled", ctx.disabled)("tabindex", ctx.tabindex);
|
|
104
103
|
i0__namespace.ɵɵattribute("min", ctx.minvalue)("max", ctx.maxvalue)("step", ctx.step)("accesskey", ctx.shortcutkey)("aria-label", ctx.arialabel)("name", ctx.name);
|
|
105
104
|
i0__namespace.ɵɵadvance();
|
|
106
|
-
i0__namespace.ɵɵ
|
|
107
|
-
} }, dependencies: [i1__namespace.
|
|
105
|
+
i0__namespace.ɵɵconditional(ctx.readonly || ctx.disabled ? 3 : -1);
|
|
106
|
+
} }, dependencies: [i1__namespace.DefaultValueAccessor, i1__namespace.RangeValueAccessor, i1__namespace.NgControlStatus, i1__namespace.NgModel, i2__namespace.TextContentDirective], encapsulation: 2 }); }
|
|
108
107
|
}
|
|
109
108
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(SliderComponent, [{
|
|
110
109
|
type: i0.Component,
|
|
111
110
|
args: [{ selector: '[wmSlider]', providers: [
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
], template: "<span [textContent]=\"minvalue\" class=\"app-slider-value pull-left\"></span>\n<span [textContent]=\"maxvalue\" class=\"app-slider-value pull-right\"></span>\n<input class=\"range-input\" aria-orientation=\"horizontal\"\n
|
|
111
|
+
i2.provideAs(SliderComponent, i1.NG_VALUE_ACCESSOR, true),
|
|
112
|
+
i2.provideAsWidgetRef(SliderComponent)
|
|
113
|
+
], template: "<span [textContent]=\"minvalue\" class=\"app-slider-value pull-left\"></span>\n<span [textContent]=\"maxvalue\" class=\"app-slider-value pull-right\"></span>\n<input class=\"range-input\" aria-orientation=\"horizontal\"\n focus-target\n type=\"range\" [title]=\"datavalue\"\n [attr.min]=\"minvalue\"\n [attr.max]=\"maxvalue\"\n [attr.step]=\"step\"\n [(ngModel)]=\"datavalue\"\n [ngModelOptions]=\"{standalone: true}\"\n [disabled]=\"disabled\"\n [attr.accesskey]=\"shortcutkey\"\n [attr.aria-label]=\"arialabel\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\"\n [attr.name]=\"name\"\n [tabindex]=\"tabindex\"/>\n@if (readonly || disabled) {\n <div aria-readonly=\"true\" class=\"readonly-wrapper\"></div>\n}\n" }]
|
|
115
114
|
}], () => [{ type: i0__namespace.Injector }, { type: undefined, decorators: [{
|
|
116
115
|
type: i0.Inject,
|
|
117
116
|
args: ['EXPLICIT_CONTEXT']
|
|
@@ -119,7 +118,7 @@
|
|
|
119
118
|
type: i0.Optional
|
|
120
119
|
}] }], { ngModel: [{
|
|
121
120
|
type: i0.ViewChild,
|
|
122
|
-
args: [
|
|
121
|
+
args: [i1.NgModel]
|
|
123
122
|
}] }); })();
|
|
124
123
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassDebugInfo(SliderComponent, { className: "SliderComponent", filePath: "slider.component.ts", lineNumber: 24 }); })();
|
|
125
124
|
|
|
@@ -129,25 +128,25 @@
|
|
|
129
128
|
class SliderModule {
|
|
130
129
|
static { this.ɵfac = function SliderModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SliderModule)(); }; }
|
|
131
130
|
static { this.ɵmod = /*@__PURE__*/ i0__namespace.ɵɵdefineNgModule({ type: SliderModule }); }
|
|
132
|
-
static { this.ɵinj = /*@__PURE__*/ i0__namespace.ɵɵdefineInjector({ imports: [
|
|
133
|
-
|
|
134
|
-
|
|
131
|
+
static { this.ɵinj = /*@__PURE__*/ i0__namespace.ɵɵdefineInjector({ imports: [common.CommonModule,
|
|
132
|
+
i1.FormsModule,
|
|
133
|
+
i2.WmComponentsModule] }); }
|
|
135
134
|
}
|
|
136
135
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(SliderModule, [{
|
|
137
136
|
type: i0.NgModule,
|
|
138
137
|
args: [{
|
|
139
138
|
imports: [
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
139
|
+
common.CommonModule,
|
|
140
|
+
i1.FormsModule,
|
|
141
|
+
i2.WmComponentsModule
|
|
143
142
|
],
|
|
144
143
|
declarations: [...components],
|
|
145
144
|
exports: [...components]
|
|
146
145
|
}]
|
|
147
146
|
}], null, null); })();
|
|
148
|
-
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0__namespace.ɵɵsetNgModuleScope(SliderModule, { declarations: [SliderComponent], imports: [
|
|
149
|
-
|
|
150
|
-
|
|
147
|
+
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0__namespace.ɵɵsetNgModuleScope(SliderModule, { declarations: [SliderComponent], imports: [common.CommonModule,
|
|
148
|
+
i1.FormsModule,
|
|
149
|
+
i2.WmComponentsModule], exports: [SliderComponent] }); })();
|
|
151
150
|
|
|
152
151
|
exports.SliderComponent = SliderComponent;
|
|
153
152
|
exports.SliderModule = SliderModule;
|
|
@@ -4,13 +4,12 @@ import { provideAs, provideAsWidgetRef, styler } from '@wm/components/base';
|
|
|
4
4
|
import { BaseFormCustomComponent } from '@wm/components/input';
|
|
5
5
|
import { registerProps } from './slider.props';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/
|
|
8
|
-
import * as i2 from "@
|
|
9
|
-
import * as i3 from "@wm/components/base";
|
|
7
|
+
import * as i1 from "@angular/forms";
|
|
8
|
+
import * as i2 from "@wm/components/base";
|
|
10
9
|
const _c0 = ["wmSlider", ""];
|
|
11
10
|
const _c1 = () => ({ standalone: true });
|
|
12
|
-
function
|
|
13
|
-
i0.ɵɵelement(0, "div",
|
|
11
|
+
function SliderComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
12
|
+
i0.ɵɵelement(0, "div", 3);
|
|
14
13
|
} }
|
|
15
14
|
const DEFAULT_CLS = 'app-slider slider';
|
|
16
15
|
const WIDGET_CONFIG = {
|
|
@@ -47,13 +46,13 @@ export class SliderComponent extends BaseFormCustomComponent {
|
|
|
47
46
|
} }, features: [i0.ɵɵProvidersFeature([
|
|
48
47
|
provideAs(SliderComponent, NG_VALUE_ACCESSOR, true),
|
|
49
48
|
provideAsWidgetRef(SliderComponent)
|
|
50
|
-
]), i0.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 4, vars: 15, consts: [[1, "app-slider-value", "pull-left", 3, "textContent"], [1, "app-slider-value", "pull-right", 3, "textContent"], ["aria-orientation", "horizontal", "focus-target", "", "type", "range", 1, "range-input", 3, "ngModelChange", "blur", "title", "ngModel", "ngModelOptions", "disabled", "tabindex"], ["aria-readonly", "true",
|
|
49
|
+
]), i0.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 4, vars: 15, consts: [[1, "app-slider-value", "pull-left", 3, "textContent"], [1, "app-slider-value", "pull-right", 3, "textContent"], ["aria-orientation", "horizontal", "focus-target", "", "type", "range", 1, "range-input", 3, "ngModelChange", "blur", "title", "ngModel", "ngModelOptions", "disabled", "tabindex"], ["aria-readonly", "true", 1, "readonly-wrapper"]], template: function SliderComponent_Template(rf, ctx) { if (rf & 1) {
|
|
51
50
|
i0.ɵɵelement(0, "span", 0)(1, "span", 1);
|
|
52
51
|
i0.ɵɵelementStart(2, "input", 2);
|
|
53
52
|
i0.ɵɵtwoWayListener("ngModelChange", function SliderComponent_Template_input_ngModelChange_2_listener($event) { i0.ɵɵtwoWayBindingSet(ctx.datavalue, $event) || (ctx.datavalue = $event); return $event; });
|
|
54
53
|
i0.ɵɵlistener("blur", function SliderComponent_Template_input_blur_2_listener($event) { return ctx.invokeOnTouched($event); })("ngModelChange", function SliderComponent_Template_input_ngModelChange_2_listener($event) { return ctx.handleChange($event); });
|
|
55
54
|
i0.ɵɵelementEnd();
|
|
56
|
-
i0.ɵɵtemplate(3,
|
|
55
|
+
i0.ɵɵtemplate(3, SliderComponent_Conditional_3_Template, 1, 0, "div", 3);
|
|
57
56
|
} if (rf & 2) {
|
|
58
57
|
i0.ɵɵproperty("textContent", ctx.minvalue);
|
|
59
58
|
i0.ɵɵadvance();
|
|
@@ -64,15 +63,15 @@ export class SliderComponent extends BaseFormCustomComponent {
|
|
|
64
63
|
i0.ɵɵproperty("ngModelOptions", i0.ɵɵpureFunction0(14, _c1))("disabled", ctx.disabled)("tabindex", ctx.tabindex);
|
|
65
64
|
i0.ɵɵattribute("min", ctx.minvalue)("max", ctx.maxvalue)("step", ctx.step)("accesskey", ctx.shortcutkey)("aria-label", ctx.arialabel)("name", ctx.name);
|
|
66
65
|
i0.ɵɵadvance();
|
|
67
|
-
i0.ɵɵ
|
|
68
|
-
} }, dependencies: [i1.
|
|
66
|
+
i0.ɵɵconditional(ctx.readonly || ctx.disabled ? 3 : -1);
|
|
67
|
+
} }, dependencies: [i1.DefaultValueAccessor, i1.RangeValueAccessor, i1.NgControlStatus, i1.NgModel, i2.TextContentDirective], encapsulation: 2 }); }
|
|
69
68
|
}
|
|
70
69
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SliderComponent, [{
|
|
71
70
|
type: Component,
|
|
72
71
|
args: [{ selector: '[wmSlider]', providers: [
|
|
73
72
|
provideAs(SliderComponent, NG_VALUE_ACCESSOR, true),
|
|
74
73
|
provideAsWidgetRef(SliderComponent)
|
|
75
|
-
], template: "<span [textContent]=\"minvalue\" class=\"app-slider-value pull-left\"></span>\n<span [textContent]=\"maxvalue\" class=\"app-slider-value pull-right\"></span>\n<input class=\"range-input\" aria-orientation=\"horizontal\"\n
|
|
74
|
+
], template: "<span [textContent]=\"minvalue\" class=\"app-slider-value pull-left\"></span>\n<span [textContent]=\"maxvalue\" class=\"app-slider-value pull-right\"></span>\n<input class=\"range-input\" aria-orientation=\"horizontal\"\n focus-target\n type=\"range\" [title]=\"datavalue\"\n [attr.min]=\"minvalue\"\n [attr.max]=\"maxvalue\"\n [attr.step]=\"step\"\n [(ngModel)]=\"datavalue\"\n [ngModelOptions]=\"{standalone: true}\"\n [disabled]=\"disabled\"\n [attr.accesskey]=\"shortcutkey\"\n [attr.aria-label]=\"arialabel\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\"\n [attr.name]=\"name\"\n [tabindex]=\"tabindex\"/>\n@if (readonly || disabled) {\n <div aria-readonly=\"true\" class=\"readonly-wrapper\"></div>\n}\n" }]
|
|
76
75
|
}], () => [{ type: i0.Injector }, { type: undefined, decorators: [{
|
|
77
76
|
type: Inject,
|
|
78
77
|
args: ['EXPLICIT_CONTEXT']
|
|
@@ -83,4 +82,4 @@ export class SliderComponent extends BaseFormCustomComponent {
|
|
|
83
82
|
args: [NgModel]
|
|
84
83
|
}] }); })();
|
|
85
84
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SliderComponent, { className: "SliderComponent", filePath: "slider.component.ts", lineNumber: 24 }); })();
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9pbnB1dC9zbGlkZXIvc3JjL3NsaWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvaW5wdXQvc2xpZGVyL3NyYy9zbGlkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFDLGlCQUFpQixFQUFFLE9BQU8sRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTFELE9BQU8sRUFBZ0IsU0FBUyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3pGLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRTdELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztJQ1kzQyx5QkFBeUQ7O0FEVDNELE1BQU0sV0FBVyxHQUFHLG1CQUFtQixDQUFDO0FBQ3hDLE1BQU0sYUFBYSxHQUFrQjtJQUNqQyxVQUFVLEVBQUUsV0FBVztJQUN2QixTQUFTLEVBQUUsV0FBVztDQUN6QixDQUFDO0FBVUYsTUFBTSxPQUFPLGVBQWdCLFNBQVEsdUJBQXVCO2FBQ2pELG9CQUFlLEdBQUcsYUFBYSxFQUFFLEFBQWxCLENBQW1CO0lBZXpDLFlBQVksR0FBYSxFQUEwQyxlQUFvQjtRQUNuRixLQUFLLENBQUMsR0FBRyxFQUFFLGFBQWEsRUFBRSxlQUFlLENBQUMsQ0FBQztRQUMzQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQscURBQXFEO0lBQzNDLFdBQVcsQ0FBQyxJQUFpQixFQUFFLFNBQWlCLEVBQUUsUUFBa0IsRUFBRSxNQUFXO1FBQ3ZGLElBQUksU0FBUyxLQUFLLFFBQVEsSUFBSSxTQUFTLEtBQUssTUFBTSxFQUFFLENBQUM7WUFDakQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN6RCxDQUFDO0lBQ0wsQ0FBQztJQUVNLFlBQVksQ0FBQyxNQUFlO1FBQy9CLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFDLElBQUksRUFBRSxRQUFRLEVBQUMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxHQUFXLEVBQUUsRUFBTyxFQUFFLEVBQVE7UUFDM0MsSUFBSSxHQUFHLEtBQUssVUFBVSxFQUFFLENBQUM7WUFDckIsT0FBTztRQUNYLENBQUM7UUFFRCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO2dIQXRDUSxlQUFlLDBEQWdCVyxrQkFBa0I7b0VBaEI1QyxlQUFlOzJCQWNiLE9BQU87Ozs7OENBbkJQO2dCQUNQLFNBQVMsQ0FBQyxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxDQUFDO2dCQUNuRCxrQkFBa0IsQ0FBQyxlQUFlLENBQUM7YUFDdEM7WUNwQkwsQUFEQSwwQkFBeUUsY0FDQztZQUMxRSxnQ0FjeUI7WUFSdkIsMk1BQXVCO1lBTXZCLEFBREEsK0ZBQVEsMkJBQXVCLElBQUMsb0dBQ2Ysd0JBQW9CLElBQUM7WUFaeEMsaUJBY3lCO1lBQ3pCLHdFQUE0Qjs7WUFqQnRCLDBDQUF3QjtZQUN4QixjQUF3QjtZQUF4QiwwQ0FBd0I7WUFHZixjQUFtQjtZQUFuQixxQ0FBbUI7WUFJaEMsNkNBQXVCO1lBUXZCLEFBTkEsQUFEQSw0REFBcUMsMEJBQ2hCLDBCQU1BOztZQUN2QixjQUVDO1lBRkQsdURBRUM7OztpRkRJWSxlQUFlO2NBUjNCLFNBQVM7MkJBQ0ksWUFBWSxhQUVYO29CQUNQLFNBQVMsa0JBQWtCLGlCQUFpQixFQUFFLElBQUksQ0FBQztvQkFDbkQsa0JBQWtCLGlCQUFpQjtpQkFDdEM7O3NCQWtCMkIsTUFBTTt1QkFBQyxrQkFBa0I7O3NCQUFHLFFBQVE7cUJBRjVDLE9BQU87a0JBQTFCLFNBQVM7bUJBQUMsT0FBTzs7a0ZBZFQsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3QsIEluamVjdG9yLCBPcHRpb25hbCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TkdfVkFMVUVfQUNDRVNTT1IsIE5nTW9kZWx9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtJV2lkZ2V0Q29uZmlnLCBwcm92aWRlQXMsIHByb3ZpZGVBc1dpZGdldFJlZiwgc3R5bGVyfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcbmltcG9ydCB7QmFzZUZvcm1DdXN0b21Db21wb25lbnR9IGZyb20gJ0B3bS9jb21wb25lbnRzL2lucHV0JztcblxuaW1wb3J0IHtyZWdpc3RlclByb3BzfSBmcm9tICcuL3NsaWRlci5wcm9wcyc7XG5cblxuY29uc3QgREVGQVVMVF9DTFMgPSAnYXBwLXNsaWRlciBzbGlkZXInO1xuY29uc3QgV0lER0VUX0NPTkZJRzogSVdpZGdldENvbmZpZyA9IHtcbiAgICB3aWRnZXRUeXBlOiAnd20tc2xpZGVyJyxcbiAgICBob3N0Q2xhc3M6IERFRkFVTFRfQ0xTXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ1t3bVNsaWRlcl0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zbGlkZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBwcm92aWRlQXMoU2xpZGVyQ29tcG9uZW50LCBOR19WQUxVRV9BQ0NFU1NPUiwgdHJ1ZSksXG4gICAgICAgIHByb3ZpZGVBc1dpZGdldFJlZihTbGlkZXJDb21wb25lbnQpXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBTbGlkZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlRm9ybUN1c3RvbUNvbXBvbmVudCB7XG4gICAgc3RhdGljIGluaXRpYWxpemVQcm9wcyA9IHJlZ2lzdGVyUHJvcHMoKTtcblxuICAgIHB1YmxpYyBtaW52YWx1ZTogbnVtYmVyO1xuICAgIHB1YmxpYyBtYXh2YWx1ZTogbnVtYmVyO1xuICAgIHB1YmxpYyBkaXNhYmxlZDogYm9vbGVhbjtcbiAgICBwdWJsaWMgc3RlcDogbnVtYmVyO1xuICAgIHB1YmxpYyBzaG9ydGN1dGtleTogc3RyaW5nO1xuICAgIHB1YmxpYyB0YWJpbmRleDogYW55O1xuICAgIHB1YmxpYyBuYW1lOiBzdHJpbmc7XG4gICAgcHVibGljIHJlYWRvbmx5OiBib29sZWFuO1xuICAgIHB1YmxpYyBoaW50OiBzdHJpbmc7XG4gICAgcHVibGljIGFyaWFsYWJlbDogc3RyaW5nO1xuXG4gICAgQFZpZXdDaGlsZChOZ01vZGVsKSBuZ01vZGVsOiBOZ01vZGVsO1xuXG4gICAgY29uc3RydWN0b3IoaW5qOiBJbmplY3RvciwgQEluamVjdCgnRVhQTElDSVRfQ09OVEVYVCcpIEBPcHRpb25hbCgpIGV4cGxpY2l0Q29udGV4dDogYW55KSB7XG4gICAgICAgIHN1cGVyKGluaiwgV0lER0VUX0NPTkZJRywgZXhwbGljaXRDb250ZXh0KTtcbiAgICAgICAgc3R5bGVyKHRoaXMubmF0aXZlRWxlbWVudCwgdGhpcyk7XG4gICAgfVxuXG4gICAgLy8gY2hhbmdlIGFuZCBibHVyIGV2ZW50cyBhcmUgYWRkZWQgZnJvbSB0aGUgdGVtcGxhdGVcbiAgICBwcm90ZWN0ZWQgaGFuZGxlRXZlbnQobm9kZTogSFRNTEVsZW1lbnQsIGV2ZW50TmFtZTogc3RyaW5nLCBjYWxsYmFjazogRnVuY3Rpb24sIGxvY2FsczogYW55KSB7XG4gICAgICAgIGlmIChldmVudE5hbWUgIT09ICdjaGFuZ2UnICYmIGV2ZW50TmFtZSAhPT0gJ2JsdXInKSB7XG4gICAgICAgICAgICBzdXBlci5oYW5kbGVFdmVudChub2RlLCBldmVudE5hbWUsIGNhbGxiYWNrLCBsb2NhbHMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGhhbmRsZUNoYW5nZShuZXdWYWw6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5pbnZva2VPbkNoYW5nZSh0aGlzLmRhdGF2YWx1ZSwge3R5cGU6ICdjaGFuZ2UnfSwgdGhpcy5uZ01vZGVsLnZhbGlkKTtcbiAgICB9XG5cbiAgICBvblByb3BlcnR5Q2hhbmdlKGtleTogc3RyaW5nLCBudjogYW55LCBvdj86IGFueSkge1xuICAgICAgICBpZiAoa2V5ID09PSAndGFiaW5kZXgnKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBzdXBlci5vblByb3BlcnR5Q2hhbmdlKGtleSwgbnYsIG92KTtcbiAgICB9XG59XG4iLCI8c3BhbiBbdGV4dENvbnRlbnRdPVwibWludmFsdWVcIiBjbGFzcz1cImFwcC1zbGlkZXItdmFsdWUgcHVsbC1sZWZ0XCI+PC9zcGFuPlxuPHNwYW4gW3RleHRDb250ZW50XT1cIm1heHZhbHVlXCIgY2xhc3M9XCJhcHAtc2xpZGVyLXZhbHVlIHB1bGwtcmlnaHRcIj48L3NwYW4+XG48aW5wdXQgY2xhc3M9XCJyYW5nZS1pbnB1dFwiIGFyaWEtb3JpZW50YXRpb249XCJob3Jpem9udGFsXCJcbiAgZm9jdXMtdGFyZ2V0XG4gIHR5cGU9XCJyYW5nZVwiIFt0aXRsZV09XCJkYXRhdmFsdWVcIlxuICBbYXR0ci5taW5dPVwibWludmFsdWVcIlxuICBbYXR0ci5tYXhdPVwibWF4dmFsdWVcIlxuICBbYXR0ci5zdGVwXT1cInN0ZXBcIlxuICBbKG5nTW9kZWwpXT1cImRhdGF2YWx1ZVwiXG4gIFtuZ01vZGVsT3B0aW9uc109XCJ7c3RhbmRhbG9uZTogdHJ1ZX1cIlxuICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBbYXR0ci5hY2Nlc3NrZXldPVwic2hvcnRjdXRrZXlcIlxuICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFsYWJlbFwiXG4gIChibHVyKT1cImludm9rZU9uVG91Y2hlZCgkZXZlbnQpXCJcbiAgKG5nTW9kZWxDaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICBbdGFiaW5kZXhdPVwidGFiaW5kZXhcIi8+XG5AaWYgKHJlYWRvbmx5IHx8IGRpc2FibGVkKSB7XG4gIDxkaXYgYXJpYS1yZWFkb25seT1cInRydWVcIiBjbGFzcz1cInJlYWRvbmx5LXdyYXBwZXJcIj48L2Rpdj5cbn1cbiJdfQ==
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Component, Inject, Optional, ViewChild, NgModule } from '@angular/core';
|
|
3
|
-
import * as i1 from '@angular/common';
|
|
4
3
|
import { CommonModule } from '@angular/common';
|
|
5
|
-
import * as
|
|
4
|
+
import * as i1 from '@angular/forms';
|
|
6
5
|
import { NgModel, NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
|
|
7
|
-
import * as
|
|
6
|
+
import * as i2 from '@wm/components/base';
|
|
8
7
|
import { PROP_STRING, PROP_BOOLEAN, PROP_NUMBER, register, registerFormWidget, styler, provideAs, provideAsWidgetRef, WmComponentsModule } from '@wm/components/base';
|
|
9
8
|
import { BaseFormCustomComponent } from '@wm/components/input';
|
|
10
9
|
import { FormWidgetType } from '@wm/core';
|
|
@@ -31,8 +30,8 @@ const registerProps = () => {
|
|
|
31
30
|
|
|
32
31
|
const _c0 = ["wmSlider", ""];
|
|
33
32
|
const _c1 = () => ({ standalone: true });
|
|
34
|
-
function
|
|
35
|
-
i0.ɵɵelement(0, "div",
|
|
33
|
+
function SliderComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
34
|
+
i0.ɵɵelement(0, "div", 3);
|
|
36
35
|
} }
|
|
37
36
|
const DEFAULT_CLS = 'app-slider slider';
|
|
38
37
|
const WIDGET_CONFIG = {
|
|
@@ -69,13 +68,13 @@ class SliderComponent extends BaseFormCustomComponent {
|
|
|
69
68
|
} }, features: [i0.ɵɵProvidersFeature([
|
|
70
69
|
provideAs(SliderComponent, NG_VALUE_ACCESSOR, true),
|
|
71
70
|
provideAsWidgetRef(SliderComponent)
|
|
72
|
-
]), i0.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 4, vars: 15, consts: [[1, "app-slider-value", "pull-left", 3, "textContent"], [1, "app-slider-value", "pull-right", 3, "textContent"], ["aria-orientation", "horizontal", "focus-target", "", "type", "range", 1, "range-input", 3, "ngModelChange", "blur", "title", "ngModel", "ngModelOptions", "disabled", "tabindex"], ["aria-readonly", "true",
|
|
71
|
+
]), i0.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 4, vars: 15, consts: [[1, "app-slider-value", "pull-left", 3, "textContent"], [1, "app-slider-value", "pull-right", 3, "textContent"], ["aria-orientation", "horizontal", "focus-target", "", "type", "range", 1, "range-input", 3, "ngModelChange", "blur", "title", "ngModel", "ngModelOptions", "disabled", "tabindex"], ["aria-readonly", "true", 1, "readonly-wrapper"]], template: function SliderComponent_Template(rf, ctx) { if (rf & 1) {
|
|
73
72
|
i0.ɵɵelement(0, "span", 0)(1, "span", 1);
|
|
74
73
|
i0.ɵɵelementStart(2, "input", 2);
|
|
75
74
|
i0.ɵɵtwoWayListener("ngModelChange", function SliderComponent_Template_input_ngModelChange_2_listener($event) { i0.ɵɵtwoWayBindingSet(ctx.datavalue, $event) || (ctx.datavalue = $event); return $event; });
|
|
76
75
|
i0.ɵɵlistener("blur", function SliderComponent_Template_input_blur_2_listener($event) { return ctx.invokeOnTouched($event); })("ngModelChange", function SliderComponent_Template_input_ngModelChange_2_listener($event) { return ctx.handleChange($event); });
|
|
77
76
|
i0.ɵɵelementEnd();
|
|
78
|
-
i0.ɵɵtemplate(3,
|
|
77
|
+
i0.ɵɵtemplate(3, SliderComponent_Conditional_3_Template, 1, 0, "div", 3);
|
|
79
78
|
} if (rf & 2) {
|
|
80
79
|
i0.ɵɵproperty("textContent", ctx.minvalue);
|
|
81
80
|
i0.ɵɵadvance();
|
|
@@ -86,15 +85,15 @@ class SliderComponent extends BaseFormCustomComponent {
|
|
|
86
85
|
i0.ɵɵproperty("ngModelOptions", i0.ɵɵpureFunction0(14, _c1))("disabled", ctx.disabled)("tabindex", ctx.tabindex);
|
|
87
86
|
i0.ɵɵattribute("min", ctx.minvalue)("max", ctx.maxvalue)("step", ctx.step)("accesskey", ctx.shortcutkey)("aria-label", ctx.arialabel)("name", ctx.name);
|
|
88
87
|
i0.ɵɵadvance();
|
|
89
|
-
i0.ɵɵ
|
|
90
|
-
} }, dependencies: [i1.
|
|
88
|
+
i0.ɵɵconditional(ctx.readonly || ctx.disabled ? 3 : -1);
|
|
89
|
+
} }, dependencies: [i1.DefaultValueAccessor, i1.RangeValueAccessor, i1.NgControlStatus, i1.NgModel, i2.TextContentDirective], encapsulation: 2 }); }
|
|
91
90
|
}
|
|
92
91
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SliderComponent, [{
|
|
93
92
|
type: Component,
|
|
94
93
|
args: [{ selector: '[wmSlider]', providers: [
|
|
95
94
|
provideAs(SliderComponent, NG_VALUE_ACCESSOR, true),
|
|
96
95
|
provideAsWidgetRef(SliderComponent)
|
|
97
|
-
], template: "<span [textContent]=\"minvalue\" class=\"app-slider-value pull-left\"></span>\n<span [textContent]=\"maxvalue\" class=\"app-slider-value pull-right\"></span>\n<input class=\"range-input\" aria-orientation=\"horizontal\"\n
|
|
96
|
+
], template: "<span [textContent]=\"minvalue\" class=\"app-slider-value pull-left\"></span>\n<span [textContent]=\"maxvalue\" class=\"app-slider-value pull-right\"></span>\n<input class=\"range-input\" aria-orientation=\"horizontal\"\n focus-target\n type=\"range\" [title]=\"datavalue\"\n [attr.min]=\"minvalue\"\n [attr.max]=\"maxvalue\"\n [attr.step]=\"step\"\n [(ngModel)]=\"datavalue\"\n [ngModelOptions]=\"{standalone: true}\"\n [disabled]=\"disabled\"\n [attr.accesskey]=\"shortcutkey\"\n [attr.aria-label]=\"arialabel\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\"\n [attr.name]=\"name\"\n [tabindex]=\"tabindex\"/>\n@if (readonly || disabled) {\n <div aria-readonly=\"true\" class=\"readonly-wrapper\"></div>\n}\n" }]
|
|
98
97
|
}], () => [{ type: i0.Injector }, { type: undefined, decorators: [{
|
|
99
98
|
type: Inject,
|
|
100
99
|
args: ['EXPLICIT_CONTEXT']
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/slider/src/slider.props.ts","../../../../../projects/components/widgets/input/slider/src/slider.component.html","../../../../../projects/components/widgets/input/slider/src/slider.component.ts","../../../../../projects/components/widgets/input/slider/src/slider.module.ts","../../../../../projects/components/widgets/input/slider/src/index.ts"],"sourcesContent":["import {PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget} from '@wm/components/base';\nimport {FormWidgetType} from '@wm/core';\n\nexport const sliderProps = new Map(\n [\n ['class', PROP_STRING],\n ['datavalue', PROP_STRING],\n ['disabled', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING],\n ['maxvalue', PROP_NUMBER],\n ['minvalue', PROP_NUMBER],\n ['name', PROP_STRING],\n ['readonly', PROP_BOOLEAN],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['step', PROP_NUMBER],\n ['tabindex', {value: 0, ...PROP_NUMBER}]\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-slider',\n sliderProps\n );\n registerFormWidget(\n FormWidgetType.SLIDER,\n new Map(sliderProps)\n );\n};\n","<span [textContent]=\"minvalue\" class=\"app-slider-value pull-left\"></span>\n<span [textContent]=\"maxvalue\" class=\"app-slider-value pull-right\"></span>\n<input class=\"range-input\" aria-orientation=\"horizontal\"\n
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/slider/src/slider.props.ts","../../../../../projects/components/widgets/input/slider/src/slider.component.html","../../../../../projects/components/widgets/input/slider/src/slider.component.ts","../../../../../projects/components/widgets/input/slider/src/slider.module.ts","../../../../../projects/components/widgets/input/slider/src/index.ts"],"sourcesContent":["import {PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget} from '@wm/components/base';\nimport {FormWidgetType} from '@wm/core';\n\nexport const sliderProps = new Map(\n [\n ['class', PROP_STRING],\n ['datavalue', PROP_STRING],\n ['disabled', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING],\n ['maxvalue', PROP_NUMBER],\n ['minvalue', PROP_NUMBER],\n ['name', PROP_STRING],\n ['readonly', PROP_BOOLEAN],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['step', PROP_NUMBER],\n ['tabindex', {value: 0, ...PROP_NUMBER}]\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-slider',\n sliderProps\n );\n registerFormWidget(\n FormWidgetType.SLIDER,\n new Map(sliderProps)\n );\n};\n","<span [textContent]=\"minvalue\" class=\"app-slider-value pull-left\"></span>\n<span [textContent]=\"maxvalue\" class=\"app-slider-value pull-right\"></span>\n<input class=\"range-input\" aria-orientation=\"horizontal\"\n focus-target\n type=\"range\" [title]=\"datavalue\"\n [attr.min]=\"minvalue\"\n [attr.max]=\"maxvalue\"\n [attr.step]=\"step\"\n [(ngModel)]=\"datavalue\"\n [ngModelOptions]=\"{standalone: true}\"\n [disabled]=\"disabled\"\n [attr.accesskey]=\"shortcutkey\"\n [attr.aria-label]=\"arialabel\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\"\n [attr.name]=\"name\"\n [tabindex]=\"tabindex\"/>\n@if (readonly || disabled) {\n <div aria-readonly=\"true\" class=\"readonly-wrapper\"></div>\n}\n","import {Component, Inject, Injector, Optional, ViewChild} from '@angular/core';\nimport {NG_VALUE_ACCESSOR, NgModel} from '@angular/forms';\n\nimport {IWidgetConfig, provideAs, provideAsWidgetRef, styler} from '@wm/components/base';\nimport {BaseFormCustomComponent} from '@wm/components/input';\n\nimport {registerProps} from './slider.props';\n\n\nconst DEFAULT_CLS = 'app-slider slider';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-slider',\n hostClass: DEFAULT_CLS\n};\n\n@Component({\n selector: '[wmSlider]',\n templateUrl: './slider.component.html',\n providers: [\n provideAs(SliderComponent, NG_VALUE_ACCESSOR, true),\n provideAsWidgetRef(SliderComponent)\n ]\n})\nexport class SliderComponent extends BaseFormCustomComponent {\n static initializeProps = registerProps();\n\n public minvalue: number;\n public maxvalue: number;\n public disabled: boolean;\n public step: number;\n public shortcutkey: string;\n public tabindex: any;\n public name: string;\n public readonly: boolean;\n public hint: string;\n public arialabel: string;\n\n @ViewChild(NgModel) ngModel: NgModel;\n\n constructor(inj: Injector, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n styler(this.nativeElement, this);\n }\n\n // change and blur events are added from the template\n protected handleEvent(node: HTMLElement, eventName: string, callback: Function, locals: any) {\n if (eventName !== 'change' && eventName !== 'blur') {\n super.handleEvent(node, eventName, callback, locals);\n }\n }\n\n public handleChange(newVal: boolean) {\n this.invokeOnChange(this.datavalue, {type: 'change'}, this.ngModel.valid);\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'tabindex') {\n return;\n }\n\n super.onPropertyChange(key, nv, ov);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { SliderComponent } from './slider.component';\n\nconst components = [\n SliderComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class SliderModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|