@wavemaker/app-ng-runtime 12.0.0-next.44005 → 12.0.0-next.45001

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 (105) hide show
  1. app-ng-runtime/build-task/advanced/custom-widget-container/custom-widget-container.build.d.ts +2 -0
  2. app-ng-runtime/build-task/advanced/custom-widget-prop/custom-widget-prop.build.d.ts +2 -0
  3. app-ng-runtime/build-task/advanced/custom-widget-wrapper/custom-widget-wrapper.build.d.ts +2 -0
  4. app-ng-runtime/build-task/bundles/index.umd.js +477 -404
  5. app-ng-runtime/build-task/esm2022/advanced/custom-widget-container/custom-widget-container.build.mjs +15 -0
  6. app-ng-runtime/build-task/esm2022/advanced/custom-widget-prop/custom-widget-prop.build.mjs +10 -0
  7. app-ng-runtime/build-task/esm2022/advanced/custom-widget-wrapper/custom-widget-wrapper.build.mjs +26 -0
  8. app-ng-runtime/build-task/esm2022/data/form/form-field/form-field.build.mjs +3 -2
  9. app-ng-runtime/build-task/esm2022/navigation/menu/menu.build.mjs +14 -2
  10. app-ng-runtime/build-task/esm2022/public_api.mjs +4 -1
  11. app-ng-runtime/build-task/fesm2022/index.mjs +479 -405
  12. app-ng-runtime/build-task/fesm2022/index.mjs.map +1 -1
  13. app-ng-runtime/build-task/public_api.d.ts +3 -0
  14. app-ng-runtime/components/advanced/custom/bundles/index.umd.js +275 -0
  15. app-ng-runtime/components/advanced/custom/custom-widget-container/custom-widget-container.directive.d.ts +14 -0
  16. app-ng-runtime/components/advanced/custom/custom-widget-container/custom-widget.props.d.ts +1 -0
  17. app-ng-runtime/components/advanced/custom/custom-widget-container-prop/custom-widget-container-prop.directive.d.ts +20 -0
  18. app-ng-runtime/components/advanced/custom/custom-widget-prop.d.ts +1 -0
  19. app-ng-runtime/components/advanced/custom/custom-widget.directive.d.ts +19 -0
  20. app-ng-runtime/components/advanced/custom/custom-widget.module.d.ts +11 -0
  21. app-ng-runtime/components/advanced/custom/esm2022/custom-widget-container/custom-widget-container.directive.mjs +73 -0
  22. app-ng-runtime/components/advanced/custom/esm2022/custom-widget-container/custom-widget.props.mjs +9 -0
  23. app-ng-runtime/components/advanced/custom/esm2022/custom-widget-container-prop/custom-widget-container-prop.directive.mjs +70 -0
  24. app-ng-runtime/components/advanced/custom/esm2022/custom-widget-prop.mjs +8 -0
  25. app-ng-runtime/components/advanced/custom/esm2022/custom-widget.directive.mjs +68 -0
  26. app-ng-runtime/components/advanced/custom/esm2022/custom-widget.module.mjs +39 -0
  27. app-ng-runtime/components/advanced/custom/esm2022/index.mjs +5 -0
  28. app-ng-runtime/components/advanced/custom/esm2022/public_api.mjs +5 -0
  29. app-ng-runtime/components/advanced/custom/fesm2022/index.mjs +256 -0
  30. app-ng-runtime/components/advanced/custom/fesm2022/index.mjs.map +1 -0
  31. app-ng-runtime/components/advanced/custom/index.d.ts +5 -0
  32. app-ng-runtime/components/advanced/custom/package.json +23 -0
  33. app-ng-runtime/components/advanced/custom/public_api.d.ts +4 -0
  34. app-ng-runtime/components/base/bundles/index.umd.js +65 -9
  35. app-ng-runtime/components/base/components.module.d.ts +12 -11
  36. app-ng-runtime/components/base/esm2022/components.module.mjs +5 -1
  37. app-ng-runtime/components/base/esm2022/public_api.mjs +2 -1
  38. app-ng-runtime/components/base/esm2022/widgets/common/base/base.component.mjs +28 -10
  39. app-ng-runtime/components/base/esm2022/widgets/common/base/custom-widget-container.directive.mjs +39 -0
  40. app-ng-runtime/components/base/fesm2022/index.mjs +65 -10
  41. app-ng-runtime/components/base/fesm2022/index.mjs.map +1 -1
  42. app-ng-runtime/components/base/public_api.d.ts +1 -0
  43. app-ng-runtime/components/base/widgets/common/base/base.component.d.ts +9 -3
  44. app-ng-runtime/components/base/widgets/common/base/custom-widget-container.directive.d.ts +14 -0
  45. app-ng-runtime/components/basic/default/audio/audio.component.d.ts +1 -0
  46. app-ng-runtime/components/basic/default/bundles/index.umd.js +5 -4
  47. app-ng-runtime/components/basic/default/esm2022/audio/audio.component.mjs +6 -5
  48. app-ng-runtime/components/basic/default/fesm2022/index.mjs +5 -4
  49. app-ng-runtime/components/basic/default/fesm2022/index.mjs.map +1 -1
  50. app-ng-runtime/components/basic/progress/bundles/index.umd.js +3 -2
  51. app-ng-runtime/components/basic/progress/esm2022/progress-circle/progress-circle.component.mjs +4 -3
  52. app-ng-runtime/components/basic/progress/fesm2022/index.mjs +3 -2
  53. app-ng-runtime/components/basic/progress/fesm2022/index.mjs.map +1 -1
  54. app-ng-runtime/components/basic/progress/progress-circle/progress-circle.component.d.ts +1 -0
  55. app-ng-runtime/components/data/form/bundles/index.umd.js +4 -3
  56. app-ng-runtime/components/data/form/esm2022/form-field/form-field.directive.mjs +1 -2
  57. app-ng-runtime/components/data/form/esm2022/live-form/live-form.directive.mjs +5 -3
  58. app-ng-runtime/components/data/form/fesm2022/index.mjs +4 -3
  59. app-ng-runtime/components/data/form/fesm2022/index.mjs.map +1 -1
  60. app-ng-runtime/components/input/default/bundles/index.umd.js +46 -53
  61. app-ng-runtime/components/input/default/esm2022/caption-position.directive.mjs +2 -3
  62. app-ng-runtime/components/input/default/esm2022/select/select.component.mjs +44 -53
  63. app-ng-runtime/components/input/default/esm2022/text/base/base-input.mjs +4 -1
  64. app-ng-runtime/components/input/default/fesm2022/index.mjs +47 -54
  65. app-ng-runtime/components/input/default/fesm2022/index.mjs.map +1 -1
  66. app-ng-runtime/components/input/default/select/select.component.d.ts +1 -2
  67. app-ng-runtime/components/input/epoch/bundles/index.umd.js +19 -7
  68. app-ng-runtime/components/input/epoch/date/date.component.d.ts +1 -0
  69. app-ng-runtime/components/input/epoch/esm2022/date/date.component.mjs +9 -3
  70. app-ng-runtime/components/input/epoch/esm2022/date/imaskUtil.mjs +8 -2
  71. app-ng-runtime/components/input/epoch/esm2022/date-time/date-time.component.mjs +3 -3
  72. app-ng-runtime/components/input/epoch/esm2022/time/time.component.mjs +3 -3
  73. app-ng-runtime/components/input/epoch/fesm2022/index.mjs +19 -7
  74. app-ng-runtime/components/input/epoch/fesm2022/index.mjs.map +1 -1
  75. app-ng-runtime/core/bundles/index.umd.js +10 -0
  76. app-ng-runtime/core/enums/enums.d.ts +2 -1
  77. app-ng-runtime/core/esm2022/enums/enums.mjs +2 -1
  78. app-ng-runtime/core/esm2022/types/types.mjs +4 -1
  79. app-ng-runtime/core/esm2022/utils/build-utils.mjs +6 -1
  80. app-ng-runtime/core/fesm2022/index.mjs +10 -1
  81. app-ng-runtime/core/fesm2022/index.mjs.map +1 -1
  82. app-ng-runtime/core/types/types.d.ts +5 -1
  83. app-ng-runtime/package.json +1 -1
  84. app-ng-runtime/runtime/base/bundles/index.umd.js +254 -4
  85. app-ng-runtime/runtime/base/components/base-custom-widget.component.d.ts +71 -0
  86. app-ng-runtime/runtime/base/esm2022/components/base-custom-widget.component.mjs +253 -0
  87. app-ng-runtime/runtime/base/esm2022/public_api.mjs +2 -1
  88. app-ng-runtime/runtime/base/esm2022/runtime-base.module.mjs +6 -1
  89. app-ng-runtime/runtime/base/esm2022/types/types.mjs +2 -1
  90. app-ng-runtime/runtime/base/fesm2022/index.mjs +251 -1
  91. app-ng-runtime/runtime/base/fesm2022/index.mjs.map +1 -1
  92. app-ng-runtime/runtime/base/public_api.d.ts +1 -0
  93. app-ng-runtime/runtime/base/runtime-base.module.d.ts +9 -8
  94. app-ng-runtime/runtime/base/types/types.d.ts +2 -1
  95. app-ng-runtime/runtime/dynamic/bundles/index.umd.js +26 -9
  96. app-ng-runtime/runtime/dynamic/esm2022/app/app.module.mjs +5 -2
  97. app-ng-runtime/runtime/dynamic/esm2022/app/services/component-ref-provider.service.mjs +22 -7
  98. app-ng-runtime/runtime/dynamic/fesm2022/index.mjs +25 -7
  99. app-ng-runtime/runtime/dynamic/fesm2022/index.mjs.map +1 -1
  100. app-ng-runtime/scripts/datatable/datatable.js +1 -0
  101. app-ng-runtime/transpiler/bundles/index.umd.js +5 -0
  102. app-ng-runtime/transpiler/esm2022/build.mjs +4 -1
  103. app-ng-runtime/transpiler/esm2022/imports.mjs +3 -1
  104. app-ng-runtime/transpiler/fesm2022/index.mjs +5 -0
  105. app-ng-runtime/transpiler/fesm2022/index.mjs.map +1 -1
@@ -13,6 +13,9 @@ export class BaseInput extends BaseFormCustomComponent {
13
13
  /* WMS-18269 | Update Angular about the required attr value change */
14
14
  this._onChange(this.datavalue);
15
15
  }
16
+ if (key === 'updateon') {
17
+ this.ngModelOptions.updateOn = nv === 'default' ? 'change' : ov;
18
+ }
16
19
  if (key === 'class') {
17
20
  if (this.inputEl.nativeElement) {
18
21
  switchClass(this.inputEl.nativeElement, nv, ov);
@@ -80,4 +83,4 @@ export class BaseInput extends BaseFormCustomComponent {
80
83
  type: Inject,
81
84
  args: [WidgetConfig]
82
85
  }] }]; }, null); })();
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1pbnB1dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9pbnB1dC9kZWZhdWx0L3NyYy90ZXh0L2Jhc2UvYmFzZS1pbnB1dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTZCLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3hGLE9BQU8sRUFBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUMzRCxPQUFPLEVBQWlCLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFJM0UsTUFBTSxPQUFnQixTQUFVLFNBQVEsdUJBQXVCO0lBdUJqRCxnQkFBZ0IsQ0FBQyxHQUFXLEVBQUUsRUFBTyxFQUFFLEVBQU87UUFDcEQscUNBQXFDO1FBQ3JDLElBQUksR0FBRyxLQUFLLFVBQVUsRUFBRTtZQUNwQixPQUFPO1NBQ1Y7UUFDRCxJQUFJLEdBQUcsS0FBSyxVQUFVLEVBQUU7WUFDcEIscUVBQXFFO1lBQ3JFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQ2xDO1FBRUQsSUFBSSxHQUFHLEtBQUssT0FBTyxFQUFFO1lBQ2pCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUU7Z0JBQzVCLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7YUFDbkQ7U0FDSjthQUFNLElBQUksR0FBRyxLQUFLLFdBQVcsRUFBRTtZQUM1QiwwRUFBMEU7WUFDMUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQ2xDO2FBQU07WUFDSCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUN2QztJQUNMLENBQUM7SUFFRCw2QkFBNkI7SUFDN0IsWUFBWSxDQUFDLFFBQWE7UUFDdEIsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDL0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQzFDO1FBRUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUMsSUFBSSxFQUFFLFFBQVEsRUFBQyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVELHNHQUFzRztJQUM1RixXQUFXLENBQUMsSUFBaUIsRUFBRSxTQUFpQixFQUFFLGFBQXVCLEVBQUUsTUFBVztRQUM1RixJQUFJLFNBQVMsS0FBSyxRQUFRLElBQUksU0FBUyxLQUFLLE1BQU0sRUFBRTtZQUNoRCxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsTUFBTSxDQUFDLENBQUM7U0FDbkY7SUFDTCxDQUFDO0lBRUQsMkJBQTJCO0lBQzNCLFVBQVUsQ0FBQyxNQUFNO1FBQ2IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsc0NBQXNDO0lBQ3RDLGdCQUFnQixDQUFDLEdBQUc7UUFDaEIsdUVBQXVFO1FBQ3ZFLE1BQU0sV0FBVyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSx1QkFBdUIsQ0FBQyxDQUFDO1FBQy9ELEdBQUcsR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5QixVQUFVLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsZUFBZTtRQUNYLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV4QixxQ0FBcUM7UUFDckMsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1osUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNwRDtRQUNELE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsWUFDSSxHQUFhLEVBQ1MsTUFBcUI7UUFFM0MsS0FBSyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQXJGdkIsNkRBQTZEO1FBQzdELG9CQUFvQjtRQUNiLG1CQUFjLEdBQUc7WUFDcEIsUUFBUSxFQUFFLEVBQUU7U0FDZixDQUFDO1FBa0ZFLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxJQUFJLE1BQU0sQ0FBQztRQUNyRSxRQUFRLEdBQUcsUUFBUSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7UUFDeEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzVDLENBQUM7MEVBOUZpQixTQUFTLHdDQXdGZixZQUFZO3VFQXhGTixTQUFTLFdBQVQsU0FBUzs7dUZBQVQsU0FBUztjQUQ5QixVQUFVOztzQkF5RkYsTUFBTTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRWxlbWVudFJlZiwgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdNb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHskYXBwRGlnZXN0LCBhZGRDbGFzcywgc3dpdGNoQ2xhc3N9IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7IElXaWRnZXRDb25maWcsIHN0eWxlciwgV2lkZ2V0Q29uZmlnIH0gZnJvbSAnQHdtL2NvbXBvbmVudHMvYmFzZSc7XG5pbXBvcnQgeyBCYXNlRm9ybUN1c3RvbUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UtZm9ybS1jdXN0b20uY29tcG9uZW50JztcbmRlY2xhcmUgY29uc3QgXztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VJbnB1dCBleHRlbmRzIEJhc2VGb3JtQ3VzdG9tQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgcHVibGljIGNsYXNzOiBzdHJpbmc7XG4gICAgcHVibGljIGF1dG90cmltOiBib29sZWFuO1xuICAgIHB1YmxpYyBpbWFzaztcblxuICAgIC8vIHBvc3NpYmxlIHZhbHVlcyBmb3IgbmdNb2RlbE9wdGlvbnMgYXJlICdibHVyJyBhbmQgJ2NoYW5nZSdcbiAgICAvLyBkZWZhdWx0IGlzICdibHVyJ1xuICAgIHB1YmxpYyBuZ01vZGVsT3B0aW9ucyA9IHtcbiAgICAgICAgdXBkYXRlT246ICcnXG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFJlZmVyZW5jZSB0byB0aGUgaW5wdXQgZWxlbWVudC4gQWxsIHRoZSBzdHlsZXMgYW5kIGNsYXNzZXMgd2lsbCBiZSBhcHBsaWVkIG9uIHRoaXMgbm9kZS5cbiAgICAgKiBJbnB1dCBjb21wb25lbnRzIG11c3Qgb3ZlcnJpZGUgdGhpc1xuICAgICAqL1xuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBpbnB1dEVsOiBFbGVtZW50UmVmO1xuXG4gICAgLyoqXG4gICAgICogUmVmZXJlbmNlIHRvIHRoZSBuZ01vZGVsIGRpcmVjdGl2ZSBpbnN0YW5jZS5cbiAgICAgKiBVc2VkIHRvIGNoZWNrIHRoZSB2YWxpZGl0eSBvZiB0aGUgaW5wdXRcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgbmdNb2RlbDogTmdNb2RlbDtcblxuICAgIHByb3RlY3RlZCBvblByb3BlcnR5Q2hhbmdlKGtleTogc3RyaW5nLCBudjogYW55LCBvdjogYW55KSB7XG4gICAgICAgIC8vIHNldCB0aGUgY2xhc3Mgb24gdGhlIGlucHV0IGVsZW1lbnRcbiAgICAgICAgaWYgKGtleSA9PT0gJ3RhYmluZGV4Jykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChrZXkgPT09ICdyZXF1aXJlZCcpIHtcbiAgICAgICAgICAgIC8qIFdNUy0xODI2OSB8IFVwZGF0ZSBBbmd1bGFyIGFib3V0IHRoZSByZXF1aXJlZCBhdHRyIHZhbHVlIGNoYW5nZSAqL1xuICAgICAgICAgICAgdGhpcy5fb25DaGFuZ2UodGhpcy5kYXRhdmFsdWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGtleSA9PT0gJ2NsYXNzJykge1xuICAgICAgICAgICAgaWYgKHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgc3dpdGNoQ2xhc3ModGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQsIG52LCBvdik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoa2V5ID09PSAnZGF0YXZhbHVlJykge1xuICAgICAgICAgICAgLy8gdXBkYXRlIHRoZSBvbGREYXRhVmFsdWUgd2hlbiB0aGUgZGF0YXZhbHVlIGlzIG1vZGlmaWVkIHByb2dyYW1tYXRpY2FsbHlcbiAgICAgICAgICAgIHRoaXMudXBkYXRlUHJldkRhdGF2YWx1ZShudik7XG4gICAgICAgICAgICB0aGlzLl9vbkNoYW5nZSh0aGlzLmRhdGF2YWx1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdXBlci5vblByb3BlcnR5Q2hhbmdlKGtleSwgbnYsIG92KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGludm9rZSB0aGUgY2hhbmdlIGNhbGxiYWNrXG4gICAgaGFuZGxlQ2hhbmdlKG5ld1ZhbHVlOiBhbnkpIHtcbiAgICAgICAgaWYgKHRoaXMuYXV0b3RyaW0gJiYgdGhpcy5kYXRhdmFsdWUgJiYgXy5pc1N0cmluZyh0aGlzLmRhdGF2YWx1ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuZGF0YXZhbHVlID0gdGhpcy5kYXRhdmFsdWUudHJpbSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pbnZva2VPbkNoYW5nZSh0aGlzLmRhdGF2YWx1ZSwge3R5cGU6ICdjaGFuZ2UnfSwgdGhpcy5uZ01vZGVsLnZhbGlkKTtcbiAgICB9XG5cbiAgICAvLyBDaGFuZ2UgZXZlbnQgaXMgcmVnaXN0ZXJlZCBmcm9tIHRoZSB0ZW1wbGF0ZSwgUHJldmVudCB0aGUgZnJhbWV3b3JrIGZyb20gcmVnaXN0ZXJpbmcgb25lIG1vcmUgZXZlbnRcbiAgICBwcm90ZWN0ZWQgaGFuZGxlRXZlbnQobm9kZTogSFRNTEVsZW1lbnQsIGV2ZW50TmFtZTogc3RyaW5nLCBldmVudENhbGxiYWNrOiBGdW5jdGlvbiwgbG9jYWxzOiBhbnkpIHtcbiAgICAgICAgaWYgKGV2ZW50TmFtZSAhPT0gJ2NoYW5nZScgJiYgZXZlbnROYW1lICE9PSAnYmx1cicpIHtcbiAgICAgICAgICAgIHN1cGVyLmhhbmRsZUV2ZW50KHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LCBldmVudE5hbWUsIGV2ZW50Q2FsbGJhY2ssIGxvY2Fscyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBpbnZva2UgdGhlIGJsdXIgY2FsbGJhY2tcbiAgICBoYW5kbGVCbHVyKCRldmVudCkge1xuICAgICAgICB0aGlzLmludm9rZU9uVG91Y2hlZCgkZXZlbnQpO1xuICAgIH1cblxuICAgIC8vIFVwZGF0ZSB0aGUgbW9kZWwgb24gZW50ZXIga2V5IHByZXNzXG4gICAgZmx1c2hWaWV3Q2hhbmdlcyh2YWwpIHtcbiAgICAgICAgLy8gd2hlbiB2YWwgY29udGFpbnMgbWFza2VkIHZhbHVlLCB1cGRhdGUgdGhlIG1vZGVsIHdpdGggdW5tYXNrZWQgdmFsdWVcbiAgICAgICAgY29uc3QgdW5NYXNrZWRWYWwgPSBfLmdldCh0aGlzLmltYXNrLCAnbWFza1JlZi51bm1hc2tlZFZhbHVlJyk7XG4gICAgICAgIHZhbCA9IHVuTWFza2VkVmFsID8gdW5NYXNrZWRWYWwgOiB2YWw7XG4gICAgICAgIHRoaXMubmdNb2RlbC51cGRhdGUubmV4dCh2YWwpO1xuICAgICAgICAkYXBwRGlnZXN0KCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcblxuICAgICAgICAvLyBhZGQgdGhlIGNsYXNzIG9uIHRoZSBpbnB1dCBlbGVtZW50XG4gICAgICAgIGlmICh0aGlzLmNsYXNzKSB7XG4gICAgICAgICAgICBhZGRDbGFzcyh0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudCwgdGhpcy5jbGFzcyk7XG4gICAgICAgIH1cbiAgICAgICAgc3R5bGVyKHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LCB0aGlzKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgICAgIGluajogSW5qZWN0b3IsXG4gICAgICAgIEBJbmplY3QoV2lkZ2V0Q29uZmlnKSBjb25maWc6IElXaWRnZXRDb25maWdcbiAgICApIHtcbiAgICAgICAgc3VwZXIoaW5qLCBjb25maWcpO1xuICAgICAgICBsZXQgdXBkYXRlT24gPSB0aGlzLm5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCd1cGRhdGVvbicpIHx8ICdibHVyJztcbiAgICAgICAgdXBkYXRlT24gPSB1cGRhdGVPbiA9PT0gJ2RlZmF1bHQnID8gJ2NoYW5nZScgOiB1cGRhdGVPbjtcbiAgICAgICAgdGhpcy5uZ01vZGVsT3B0aW9ucy51cGRhdGVPbiA9IHVwZGF0ZU9uO1xuICAgIH1cbn1cbiJdfQ==
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1pbnB1dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9pbnB1dC9kZWZhdWx0L3NyYy90ZXh0L2Jhc2UvYmFzZS1pbnB1dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTZCLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3hGLE9BQU8sRUFBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUMzRCxPQUFPLEVBQWlCLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFJM0UsTUFBTSxPQUFnQixTQUFVLFNBQVEsdUJBQXVCO0lBdUJqRCxnQkFBZ0IsQ0FBQyxHQUFXLEVBQUUsRUFBTyxFQUFFLEVBQU87UUFDcEQscUNBQXFDO1FBQ3JDLElBQUksR0FBRyxLQUFLLFVBQVUsRUFBRTtZQUNwQixPQUFPO1NBQ1Y7UUFDRCxJQUFJLEdBQUcsS0FBSyxVQUFVLEVBQUU7WUFDcEIscUVBQXFFO1lBQ3JFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQ2xDO1FBQ0QsSUFBSSxHQUFHLEtBQUssVUFBVSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxHQUFHLEVBQUUsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1NBQ25FO1FBQ0QsSUFBSSxHQUFHLEtBQUssT0FBTyxFQUFFO1lBQ2pCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUU7Z0JBQzVCLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLEVBQUUs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UztjQUQ5QixVQUFVOztzQkEyRkYsTUFBTTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRWxlbWVudFJlZiwgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdNb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHskYXBwRGlnZXN0LCBhZGRDbGFzcywgc3dpdGNoQ2xhc3N9IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7IElXaWRnZXRDb25maWcsIHN0eWxlciwgV2lkZ2V0Q29uZmlnIH0gZnJvbSAnQHdtL2NvbXBvbmVudHMvYmFzZSc7XG5pbXBvcnQgeyBCYXNlRm9ybUN1c3RvbUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UtZm9ybS1jdXN0b20uY29tcG9uZW50JztcbmRlY2xhcmUgY29uc3QgXztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VJbnB1dCBleHRlbmRzIEJhc2VGb3JtQ3VzdG9tQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgcHVibGljIGNsYXNzOiBzdHJpbmc7XG4gICAgcHVibGljIGF1dG90cmltOiBib29sZWFuO1xuICAgIHB1YmxpYyBpbWFzaztcblxuICAgIC8vIHBvc3NpYmxlIHZhbHVlcyBmb3IgbmdNb2RlbE9wdGlvbnMgYXJlICdibHVyJyBhbmQgJ2NoYW5nZSdcbiAgICAvLyBkZWZhdWx0IGlzICdibHVyJ1xuICAgIHB1YmxpYyBuZ01vZGVsT3B0aW9ucyA9IHtcbiAgICAgICAgdXBkYXRlT246ICcnXG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFJlZmVyZW5jZSB0byB0aGUgaW5wdXQgZWxlbWVudC4gQWxsIHRoZSBzdHlsZXMgYW5kIGNsYXNzZXMgd2lsbCBiZSBhcHBsaWVkIG9uIHRoaXMgbm9kZS5cbiAgICAgKiBJbnB1dCBjb21wb25lbnRzIG11c3Qgb3ZlcnJpZGUgdGhpc1xuICAgICAqL1xuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBpbnB1dEVsOiBFbGVtZW50UmVmO1xuXG4gICAgLyoqXG4gICAgICogUmVmZXJlbmNlIHRvIHRoZSBuZ01vZGVsIGRpcmVjdGl2ZSBpbnN0YW5jZS5cbiAgICAgKiBVc2VkIHRvIGNoZWNrIHRoZSB2YWxpZGl0eSBvZiB0aGUgaW5wdXRcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgbmdNb2RlbDogTmdNb2RlbDtcblxuICAgIHByb3RlY3RlZCBvblByb3BlcnR5Q2hhbmdlKGtleTogc3RyaW5nLCBudjogYW55LCBvdjogYW55KSB7XG4gICAgICAgIC8vIHNldCB0aGUgY2xhc3Mgb24gdGhlIGlucHV0IGVsZW1lbnRcbiAgICAgICAgaWYgKGtleSA9PT0gJ3RhYmluZGV4Jykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChrZXkgPT09ICdyZXF1aXJlZCcpIHtcbiAgICAgICAgICAgIC8qIFdNUy0xODI2OSB8IFVwZGF0ZSBBbmd1bGFyIGFib3V0IHRoZSByZXF1aXJlZCBhdHRyIHZhbHVlIGNoYW5nZSAqL1xuICAgICAgICAgICAgdGhpcy5fb25DaGFuZ2UodGhpcy5kYXRhdmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChrZXkgPT09ICd1cGRhdGVvbicpIHtcbiAgICAgICAgICAgIHRoaXMubmdNb2RlbE9wdGlvbnMudXBkYXRlT24gPSBudiA9PT0gJ2RlZmF1bHQnID8gJ2NoYW5nZScgOiBvdjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoa2V5ID09PSAnY2xhc3MnKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICBzd2l0Y2hDbGFzcyh0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudCwgbnYsIG92KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChrZXkgPT09ICdkYXRhdmFsdWUnKSB7XG4gICAgICAgICAgICAvLyB1cGRhdGUgdGhlIG9sZERhdGFWYWx1ZSB3aGVuIHRoZSBkYXRhdmFsdWUgaXMgbW9kaWZpZWQgcHJvZ3JhbW1hdGljYWxseVxuICAgICAgICAgICAgdGhpcy51cGRhdGVQcmV2RGF0YXZhbHVlKG52KTtcbiAgICAgICAgICAgIHRoaXMuX29uQ2hhbmdlKHRoaXMuZGF0YXZhbHVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHN1cGVyLm9uUHJvcGVydHlDaGFuZ2Uoa2V5LCBudiwgb3YpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gaW52b2tlIHRoZSBjaGFuZ2UgY2FsbGJhY2tcbiAgICBoYW5kbGVDaGFuZ2UobmV3VmFsdWU6IGFueSkge1xuICAgICAgICBpZiAodGhpcy5hdXRvdHJpbSAmJiB0aGlzLmRhdGF2YWx1ZSAmJiBfLmlzU3RyaW5nKHRoaXMuZGF0YXZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5kYXRhdmFsdWUgPSB0aGlzLmRhdGF2YWx1ZS50cmltKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmludm9rZU9uQ2hhbmdlKHRoaXMuZGF0YXZhbHVlLCB7dHlwZTogJ2NoYW5nZSd9LCB0aGlzLm5nTW9kZWwudmFsaWQpO1xuICAgIH1cblxuICAgIC8vIENoYW5nZSBldmVudCBpcyByZWdpc3RlcmVkIGZyb20gdGhlIHRlbXBsYXRlLCBQcmV2ZW50IHRoZSBmcmFtZXdvcmsgZnJvbSByZWdpc3RlcmluZyBvbmUgbW9yZSBldmVudFxuICAgIHByb3RlY3RlZCBoYW5kbGVFdmVudChub2RlOiBIVE1MRWxlbWVudCwgZXZlbnROYW1lOiBzdHJpbmcsIGV2ZW50Q2FsbGJhY2s6IEZ1bmN0aW9uLCBsb2NhbHM6IGFueSkge1xuICAgICAgICBpZiAoZXZlbnROYW1lICE9PSAnY2hhbmdlJyAmJiBldmVudE5hbWUgIT09ICdibHVyJykge1xuICAgICAgICAgICAgc3VwZXIuaGFuZGxlRXZlbnQodGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQsIGV2ZW50TmFtZSwgZXZlbnRDYWxsYmFjaywgbG9jYWxzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGludm9rZSB0aGUgYmx1ciBjYWxsYmFja1xuICAgIGhhbmRsZUJsdXIoJGV2ZW50KSB7XG4gICAgICAgIHRoaXMuaW52b2tlT25Ub3VjaGVkKCRldmVudCk7XG4gICAgfVxuXG4gICAgLy8gVXBkYXRlIHRoZSBtb2RlbCBvbiBlbnRlciBrZXkgcHJlc3NcbiAgICBmbHVzaFZpZXdDaGFuZ2VzKHZhbCkge1xuICAgICAgICAvLyB3aGVuIHZhbCBjb250YWlucyBtYXNrZWQgdmFsdWUsIHVwZGF0ZSB0aGUgbW9kZWwgd2l0aCB1bm1hc2tlZCB2YWx1ZVxuICAgICAgICBjb25zdCB1bk1hc2tlZFZhbCA9IF8uZ2V0KHRoaXMuaW1hc2ssICdtYXNrUmVmLnVubWFza2VkVmFsdWUnKTtcbiAgICAgICAgdmFsID0gdW5NYXNrZWRWYWwgPyB1bk1hc2tlZFZhbCA6IHZhbDtcbiAgICAgICAgdGhpcy5uZ01vZGVsLnVwZGF0ZS5uZXh0KHZhbCk7XG4gICAgICAgICRhcHBEaWdlc3QoKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuXG4gICAgICAgIC8vIGFkZCB0aGUgY2xhc3Mgb24gdGhlIGlucHV0IGVsZW1lbnRcbiAgICAgICAgaWYgKHRoaXMuY2xhc3MpIHtcbiAgICAgICAgICAgIGFkZENsYXNzKHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LCB0aGlzLmNsYXNzKTtcbiAgICAgICAgfVxuICAgICAgICBzdHlsZXIodGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQsIHRoaXMpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICAgICAgaW5qOiBJbmplY3RvcixcbiAgICAgICAgQEluamVjdChXaWRnZXRDb25maWcpIGNvbmZpZzogSVdpZGdldENvbmZpZ1xuICAgICkge1xuICAgICAgICBzdXBlcihpbmosIGNvbmZpZyk7XG4gICAgICAgIGxldCB1cGRhdGVPbiA9IHRoaXMubmF0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ3VwZGF0ZW9uJykgfHwgJ2JsdXInO1xuICAgICAgICB1cGRhdGVPbiA9IHVwZGF0ZU9uID09PSAnZGVmYXVsdCcgPyAnY2hhbmdlJyA6IHVwZGF0ZU9uO1xuICAgICAgICB0aGlzLm5nTW9kZWxPcHRpb25zLnVwZGF0ZU9uID0gdXBkYXRlT247XG4gICAgfVxufVxuIl19
@@ -9,7 +9,7 @@ import { IMaskDirective, IMaskModule } from 'angular-imask';
9
9
  import * as i2 from '@wm/components/base';
10
10
  import { register, PROP_STRING, PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, DISPLAY_TYPE, StylableComponent, styler, provideAsWidgetRef, APPLY_STYLES_TYPE, WidgetConfig, registerFormWidget, provideAs, extractDataAsArray, ToDatePipe, ALLFIELDS, getOrderedDataset, convertDataToObject, transformDataWithKeys, transformFormData, getUniqObjsByDataField, groupData, handleHeaderClick, toggleAllHeaders, WidgetRef, INPUTMODE, WmComponentsModule } from '@wm/components/base';
11
11
  import * as i1$1 from '@wm/core';
12
- import { DataSource, FormWidgetType, isDefined, toggleClass, AppDefaults, debounce, $appDigest, noop, isEqualWithFields, toBoolean, setListClass, switchClass, addForIdAttributes, addClass, setAttr, removeAttr, isIos, setCSS } from '@wm/core';
12
+ import { DataSource, FormWidgetType, isDefined, toggleClass, AppDefaults, debounce, $appDigest, noop, isEqualWithFields, toBoolean, setListClass, switchClass, addForIdAttributes, addClass, setAttr, removeAttr, setCSS } from '@wm/core';
13
13
  import { Subject } from 'rxjs';
14
14
 
15
15
  const registerProps$e = () => {
@@ -1217,6 +1217,9 @@ class BaseInput extends BaseFormCustomComponent {
1217
1217
  /* WMS-18269 | Update Angular about the required attr value change */
1218
1218
  this._onChange(this.datavalue);
1219
1219
  }
1220
+ if (key === 'updateon') {
1221
+ this.ngModelOptions.updateOn = nv === 'default' ? 'change' : ov;
1222
+ }
1220
1223
  if (key === 'class') {
1221
1224
  if (this.inputEl.nativeElement) {
1222
1225
  switchClass(this.inputEl.nativeElement, nv, ov);
@@ -2064,51 +2067,45 @@ const registerProps$7 = () => {
2064
2067
  };
2065
2068
 
2066
2069
  const _c0$7 = ["select"];
2067
- function SelectComponent_option_2_Template(rf, ctx) { if (rf & 1) {
2068
- i0.ɵɵelement(0, "option", 4);
2069
- } if (rf & 2) {
2070
- const ctx_r1 = i0.ɵɵnextContext();
2071
- i0.ɵɵproperty("textContent", ctx_r1.placeholder)("hidden", !ctx_r1.placeholder);
2072
- } }
2073
2070
  function SelectComponent_ng_container_3_optgroup_1_option_1_Template(rf, ctx) { if (rf & 1) {
2074
- i0.ɵɵelement(0, "option", 8);
2071
+ i0.ɵɵelement(0, "option", 7);
2075
2072
  } if (rf & 2) {
2076
- const item_r7 = ctx.$implicit;
2077
- i0.ɵɵproperty("value", item_r7.key)("selected", item_r7.selected)("textContent", item_r7.label);
2073
+ const item_r6 = ctx.$implicit;
2074
+ i0.ɵɵproperty("value", item_r6.key)("selected", item_r6.selected)("textContent", item_r6.label);
2078
2075
  } }
2079
2076
  function SelectComponent_ng_container_3_optgroup_1_Template(rf, ctx) { if (rf & 1) {
2080
- i0.ɵɵelementStart(0, "optgroup", 6);
2081
- i0.ɵɵtemplate(1, SelectComponent_ng_container_3_optgroup_1_option_1_Template, 1, 3, "option", 7);
2077
+ i0.ɵɵelementStart(0, "optgroup", 5);
2078
+ i0.ɵɵtemplate(1, SelectComponent_ng_container_3_optgroup_1_option_1_Template, 1, 3, "option", 6);
2082
2079
  i0.ɵɵelementEnd();
2083
2080
  } if (rf & 2) {
2084
- const groupObj_r5 = ctx.$implicit;
2085
- i0.ɵɵproperty("label", groupObj_r5.key);
2081
+ const groupObj_r4 = ctx.$implicit;
2082
+ i0.ɵɵproperty("label", groupObj_r4.key);
2086
2083
  i0.ɵɵadvance(1);
2087
- i0.ɵɵproperty("ngForOf", groupObj_r5.data);
2084
+ i0.ɵɵproperty("ngForOf", groupObj_r4.data);
2088
2085
  } }
2089
2086
  function SelectComponent_ng_container_3_Template(rf, ctx) { if (rf & 1) {
2090
2087
  i0.ɵɵelementContainerStart(0);
2091
- i0.ɵɵtemplate(1, SelectComponent_ng_container_3_optgroup_1_Template, 2, 2, "optgroup", 5);
2088
+ i0.ɵɵtemplate(1, SelectComponent_ng_container_3_optgroup_1_Template, 2, 2, "optgroup", 4);
2092
2089
  i0.ɵɵelementContainerEnd();
2093
2090
  } if (rf & 2) {
2094
- const ctx_r2 = i0.ɵɵnextContext();
2091
+ const ctx_r1 = i0.ɵɵnextContext();
2095
2092
  i0.ɵɵadvance(1);
2096
- i0.ɵɵproperty("ngForOf", ctx_r2.groupedData);
2093
+ i0.ɵɵproperty("ngForOf", ctx_r1.groupedData);
2097
2094
  } }
2098
2095
  function SelectComponent_ng_container_4_option_1_Template(rf, ctx) { if (rf & 1) {
2099
- i0.ɵɵelement(0, "option", 8);
2096
+ i0.ɵɵelement(0, "option", 7);
2100
2097
  } if (rf & 2) {
2101
- const item_r9 = ctx.$implicit;
2102
- i0.ɵɵproperty("value", item_r9.key)("selected", item_r9.selected)("textContent", item_r9.label);
2098
+ const item_r8 = ctx.$implicit;
2099
+ i0.ɵɵproperty("value", item_r8.key)("selected", item_r8.selected)("textContent", item_r8.label);
2103
2100
  } }
2104
2101
  function SelectComponent_ng_container_4_Template(rf, ctx) { if (rf & 1) {
2105
2102
  i0.ɵɵelementContainerStart(0);
2106
- i0.ɵɵtemplate(1, SelectComponent_ng_container_4_option_1_Template, 1, 3, "option", 7);
2103
+ i0.ɵɵtemplate(1, SelectComponent_ng_container_4_option_1_Template, 1, 3, "option", 6);
2107
2104
  i0.ɵɵelementContainerEnd();
2108
2105
  } if (rf & 2) {
2109
- const ctx_r3 = i0.ɵɵnextContext();
2106
+ const ctx_r2 = i0.ɵɵnextContext();
2110
2107
  i0.ɵɵadvance(1);
2111
- i0.ɵɵproperty("ngForOf", ctx_r3.datasetItems);
2108
+ i0.ɵɵproperty("ngForOf", ctx_r2.datasetItems);
2112
2109
  } }
2113
2110
  const _c1$6 = function (a1) { return ["app-select form-control", a1]; };
2114
2111
  const WIDGET_CONFIG$7 = { widgetType: 'wm-select', hostClass: 'app-select-wrapper' };
@@ -2127,9 +2124,6 @@ class SelectComponent extends DatasetAwareFormComponent {
2127
2124
  ngAfterViewInit() {
2128
2125
  super.ngAfterViewInit();
2129
2126
  styler(this.selectEl.nativeElement, this);
2130
- setTimeout(() => {
2131
- this.checkForFloatingLabel(null);
2132
- }, 10);
2133
2127
  }
2134
2128
  // Change event is registered from the template, Prevent the framework from registering one more event
2135
2129
  handleEvent(node, eventName, eventCallback, locals) {
@@ -2176,16 +2170,6 @@ class SelectComponent extends DatasetAwareFormComponent {
2176
2170
  }
2177
2171
  super.onPropertyChange(key, nv, ov);
2178
2172
  }
2179
- isSafariBrowser() {
2180
- var reg = {
2181
- MAC: /Mac/i,
2182
- MACINTEL: /MacIntel/i
2183
- };
2184
- return reg.MAC.test(window.navigator.platform) || reg.MACINTEL.test(window.navigator.platform);
2185
- }
2186
- isIosPlatform() {
2187
- return isIos() || this.isSafariBrowser();
2188
- }
2189
2173
  /**
2190
2174
  * When caption floating is enabled and placeholder is given, do not show placeholder until user focuses on the field
2191
2175
  * When focused add the placeholder to the option which is selected
@@ -2195,23 +2179,33 @@ class SelectComponent extends DatasetAwareFormComponent {
2195
2179
  checkForFloatingLabel($event) {
2196
2180
  const captionEl = $(this.selectEl.nativeElement).closest('.app-composite-widget.caption-floating');
2197
2181
  if (captionEl.length > 0) {
2198
- if ((!$event || $event.type === 'focus') && (($(this.selectEl).find('select option:selected').text() === '' && (this.placeholder || (this.datavalue || this.binddatavalue) || this.isIosPlatform())))) {
2199
- if (!$event && (this.placeholder || this.datavalue || this.binddatavalue || this.isIosPlatform())) {
2200
- this.app.notify('captionPositionAnimate', { isSelect: true, nativeEl: captionEl });
2182
+ if ($event.type === 'focus' && (!this.datavalue || (this.datavalue && $(this.selectEl).find('select option:selected').text() === '' && this.placeholder))) {
2183
+ if (!(this.datavalue || this.placeholder)) {
2184
+ this.removePlaceholderOption();
2201
2185
  }
2202
- if (this.placeholder) {
2186
+ else {
2203
2187
  $(this.selectEl.nativeElement).find('option:first').text(this.placeholder);
2204
2188
  }
2205
2189
  }
2206
2190
  else if (!this.datavalue) {
2207
- if (!this.placeholder) {
2208
- // $(this.selectEl.nativeElement).find('option:first').text('');
2209
- if (!this.isIosPlatform()) {
2210
- captionEl.removeClass('float-active');
2211
- }
2212
- }
2191
+ $(this.selectEl.nativeElement).find('option:selected').text('');
2192
+ captionEl.removeClass('float-active');
2213
2193
  }
2214
2194
  }
2195
+ else if (!(this.datavalue || this.placeholder)) {
2196
+ this.removePlaceholderOption();
2197
+ }
2198
+ }
2199
+ /*
2200
+ * Removing the placeholder option if no placeholder is provided.
2201
+ * In html we are hiding the placeholder option using css but in apple devices and safari option is showing.
2202
+ * */
2203
+ removePlaceholderOption() {
2204
+ const hiddenEle = $(this.selectEl.nativeElement).find('#placeholderOption');
2205
+ if (hiddenEle.length) {
2206
+ hiddenEle.remove();
2207
+ this.selectEl.nativeElement.value = '';
2208
+ }
2215
2209
  }
2216
2210
  static { this.ɵfac = function SelectComponent_Factory(t) { return new (t || SelectComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i1$1.App)); }; }
2217
2211
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SelectComponent, selectors: [["wm-select"]], viewQuery: function SelectComponent_Query(rf, ctx) { if (rf & 1) {
@@ -2223,18 +2217,18 @@ class SelectComponent extends DatasetAwareFormComponent {
2223
2217
  provideAs(SelectComponent, NG_VALUE_ACCESSOR, true),
2224
2218
  provideAs(SelectComponent, NG_VALIDATORS, true),
2225
2219
  provideAsWidgetRef(SelectComponent)
2226
- ]), i0.ɵɵInheritDefinitionFeature], decls: 5, vars: 15, consts: [["role", "listbox", "aria-haspopup", "true", "aria-expanded", "false", "focus-target", "", 3, "ngClass", "disabled", "required", "tabindex", "ngModel", "multiple", "autofocus", "ngModelChange", "change", "focus", "blur"], ["select", ""], ["value", "undefined", 3, "textContent", "hidden", 4, "ngIf"], [4, "ngIf"], ["value", "undefined", 3, "textContent", "hidden"], [3, "label", 4, "ngFor", "ngForOf"], [3, "label"], ["role", "option", 3, "value", "selected", "textContent", 4, "ngFor", "ngForOf"], ["role", "option", 3, "value", "selected", "textContent"]], template: function SelectComponent_Template(rf, ctx) { if (rf & 1) {
2220
+ ]), i0.ɵɵInheritDefinitionFeature], decls: 5, vars: 16, consts: [["role", "listbox", "aria-haspopup", "true", "aria-expanded", "false", "focus-target", "", 3, "ngClass", "disabled", "required", "tabindex", "ngModel", "multiple", "autofocus", "ngModelChange", "change", "focus", "blur"], ["select", ""], ["selected", "", "value", "undefined", "id", "placeholderOption", 3, "textContent", "hidden"], [4, "ngIf"], [3, "label", 4, "ngFor", "ngForOf"], [3, "label"], ["role", "option", 3, "value", "selected", "textContent", 4, "ngFor", "ngForOf"], ["role", "option", 3, "value", "selected", "textContent"]], template: function SelectComponent_Template(rf, ctx) { if (rf & 1) {
2227
2221
  i0.ɵɵelementStart(0, "select", 0, 1);
2228
2222
  i0.ɵɵlistener("ngModelChange", function SelectComponent_Template_select_ngModelChange_0_listener($event) { return ctx.modelByKey = $event; })("change", function SelectComponent_Template_select_change_0_listener($event) { return ctx.onSelectValueChange($event); })("focus", function SelectComponent_Template_select_focus_0_listener($event) { return ctx.checkForFloatingLabel($event); })("blur", function SelectComponent_Template_select_blur_0_listener($event) { ctx.invokeOnTouched($event); return ctx.checkForFloatingLabel($event); });
2229
- i0.ɵɵtemplate(2, SelectComponent_option_2_Template, 1, 2, "option", 2);
2223
+ i0.ɵɵelement(2, "option", 2);
2230
2224
  i0.ɵɵtemplate(3, SelectComponent_ng_container_3_Template, 2, 1, "ng-container", 3);
2231
2225
  i0.ɵɵtemplate(4, SelectComponent_ng_container_4_Template, 2, 1, "ng-container", 3);
2232
2226
  i0.ɵɵelementEnd();
2233
2227
  } if (rf & 2) {
2234
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(13, _c1$6, ctx.class))("disabled", ctx.disabled)("required", ctx.required)("tabindex", ctx.tabindex)("ngModel", ctx.modelByKey)("multiple", ctx.multiple)("autofocus", ctx.autofocus);
2228
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(14, _c1$6, ctx.class))("disabled", ctx.disabled)("required", ctx.required)("tabindex", ctx.tabindex)("ngModel", ctx.modelByKey)("multiple", ctx.multiple)("autofocus", ctx.autofocus);
2235
2229
  i0.ɵɵattribute("name", ctx.name)("aria-label", ctx.hint)("aria-multiselectable", ctx.multiple);
2236
2230
  i0.ɵɵadvance(2);
2237
- i0.ɵɵproperty("ngIf", !ctx.isIosPlatform() || !!ctx.placeholder);
2231
+ i0.ɵɵproperty("textContent", ctx.placeholder)("hidden", !ctx.placeholder);
2238
2232
  i0.ɵɵadvance(1);
2239
2233
  i0.ɵɵproperty("ngIf", ctx.groupby);
2240
2234
  i0.ɵɵadvance(1);
@@ -2247,7 +2241,7 @@ class SelectComponent extends DatasetAwareFormComponent {
2247
2241
  provideAs(SelectComponent, NG_VALUE_ACCESSOR, true),
2248
2242
  provideAs(SelectComponent, NG_VALIDATORS, true),
2249
2243
  provideAsWidgetRef(SelectComponent)
2250
- ], template: "<select role=\"listbox\" aria-haspopup=\"true\" aria-expanded=\"false\" #select\n focus-target\n [ngClass]=\"['app-select form-control', class]\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n [(ngModel)]=\"modelByKey\"\n [multiple]=\"multiple\"\n (change)=\"onSelectValueChange($event)\"\n (focus)=\"checkForFloatingLabel($event)\"\n (blur)=\"invokeOnTouched($event); checkForFloatingLabel($event)\"\n [attr.name]=\"name\"\n [attr.aria-label]=\"hint\"\n [attr.aria-multiselectable]=\"multiple\"\n [autofocus]=\"autofocus\"\n>\n <option\n value=\"undefined\"\n [textContent]=\"placeholder\"\n *ngIf=\"!isIosPlatform() || !!placeholder\"\n [hidden]=\"!placeholder\"></option>\n\n <ng-container *ngIf=\"groupby\">\n <optgroup *ngFor=\"let groupObj of groupedData\"\n [label]=\"groupObj.key\">\n <option *ngFor=\"let item of groupObj.data;\"\n [value]=\"item.key\"\n [selected]=\"item.selected\"\n [textContent]=\"item.label\"\n role=\"option\"></option>\n </optgroup>\n </ng-container>\n\n <ng-container *ngIf=\"!groupby\">\n <option *ngFor=\"let item of datasetItems\"\n [value]=\"item.key\"\n [selected]=\"item.selected\"\n [textContent]=\"item.label\"\n role=\"option\"></option>\n </ng-container>\n</select>\n" }]
2244
+ ], template: "<select role=\"listbox\" aria-haspopup=\"true\" aria-expanded=\"false\" #select\n focus-target\n [ngClass]=\"['app-select form-control', class]\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [tabindex]=\"tabindex\"\n [(ngModel)]=\"modelByKey\"\n [multiple]=\"multiple\"\n (change)=\"onSelectValueChange($event)\"\n (focus)=\"checkForFloatingLabel($event)\"\n (blur)=\"invokeOnTouched($event); checkForFloatingLabel($event)\"\n [attr.name]=\"name\"\n [attr.aria-label]=\"hint\"\n [attr.aria-multiselectable]=\"multiple\"\n [autofocus]=\"autofocus\">\n\n <option selected\n value=\"undefined\"\n [textContent]=\"placeholder\"\n id=\"placeholderOption\"\n [hidden]=\"!placeholder\"></option>\n\n <ng-container *ngIf=\"groupby\">\n <optgroup *ngFor=\"let groupObj of groupedData\"\n [label]=\"groupObj.key\">\n <option *ngFor=\"let item of groupObj.data;\"\n [value]=\"item.key\"\n [selected]=\"item.selected\"\n [textContent]=\"item.label\"\n role=\"option\"></option>\n </optgroup>\n </ng-container>\n\n <ng-container *ngIf=\"!groupby\">\n <option *ngFor=\"let item of datasetItems\"\n [value]=\"item.key\"\n [selected]=\"item.selected\"\n [textContent]=\"item.label\"\n role=\"option\"></option>\n </ng-container>\n</select>\n" }]
2251
2245
  }], function () { return [{ type: i0.Injector }, { type: i1$1.App }]; }, { selectEl: [{
2252
2246
  type: ViewChild,
2253
2247
  args: ['select', { static: true, read: ElementRef }]
@@ -3133,8 +3127,7 @@ class CaptionPositionDirective {
3133
3127
  // isSelectMultiple is set to true when for select widget, multiple option is enabled
3134
3128
  // Checking inputEl focus - when form is represented as dialog and the first field is automatically in focus
3135
3129
  const isInputElFocused = this.inputEl && this.inputEl.is(':focus');
3136
- const localName = this.inputEl && this.inputEl.length && this.inputEl[0].localName;
3137
- if ((data.isSelect && localName == 'select') || data.displayVal || data.isFocused || data.isSelectMultiple || isInputElFocused) {
3130
+ if (data.displayVal || data.isFocused || data.isSelectMultiple || isInputElFocused) {
3138
3131
  data.nativeEl.addClass('float-active');
3139
3132
  if (!data.displayVal && isInputElFocused) {
3140
3133
  this.inputEl.attr('placeholder', this.placeholder);