@spicainternational/ngx-sds-components 5.6.0 → 5.8.0

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 (68) hide show
  1. package/esm2020/public-api.mjs +3 -1
  2. package/esm2020/src/lib/date-picker/date-picker.component.mjs +70 -29
  3. package/esm2020/src/lib/date-pipes/date-format.pipe.mjs +2 -2
  4. package/esm2020/src/lib/duration-box/duration-box.component.mjs +249 -0
  5. package/esm2020/src/lib/duration-box/duration-box.module.mjs +46 -0
  6. package/esm2020/src/lib/duration-box/duration-box.types.mjs +2 -0
  7. package/esm2020/src/lib/duration-box/duration.service.mjs +69 -0
  8. package/esm2020/src/lib/duration-box/public-api.mjs +3 -0
  9. package/esm2020/src/lib/duration-box/spicainternational-ngx-sds-components-src-lib-duration-box.mjs +5 -0
  10. package/esm2020/src/lib/duration-pipe/duration-format.pipe.mjs +26 -0
  11. package/esm2020/src/lib/duration-pipe/duration-pipe.module.mjs +18 -0
  12. package/esm2020/src/lib/duration-pipe/public-api.mjs +3 -0
  13. package/esm2020/src/lib/duration-pipe/spicainternational-ngx-sds-components-src-lib-duration-pipe.mjs +5 -0
  14. package/esm2020/src/lib/modal/dialog/dialog.component.mjs +1 -1
  15. package/esm2020/src/lib/modal/modal.component.mjs +17 -5
  16. package/esm2020/src/lib/navigation/navigation-group/navigation-group.component.mjs +33 -10
  17. package/esm2020/src/lib/navigation/navigation.module.mjs +5 -3
  18. package/esm2020/src/lib/navigation/pipes/index.mjs +2 -0
  19. package/esm2020/src/lib/navigation/pipes/navigation-route-active.pipe.mjs +33 -0
  20. package/fesm2015/spicainternational-ngx-sds-components-src-lib-date-picker.mjs +70 -28
  21. package/fesm2015/spicainternational-ngx-sds-components-src-lib-date-picker.mjs.map +1 -1
  22. package/fesm2015/spicainternational-ngx-sds-components-src-lib-date-pipes.mjs +1 -1
  23. package/fesm2015/spicainternational-ngx-sds-components-src-lib-date-pipes.mjs.map +1 -1
  24. package/fesm2015/spicainternational-ngx-sds-components-src-lib-duration-box.mjs +365 -0
  25. package/fesm2015/spicainternational-ngx-sds-components-src-lib-duration-box.mjs.map +1 -0
  26. package/fesm2015/spicainternational-ngx-sds-components-src-lib-duration-pipe.mjs +48 -0
  27. package/fesm2015/spicainternational-ngx-sds-components-src-lib-duration-pipe.mjs.map +1 -0
  28. package/fesm2015/spicainternational-ngx-sds-components-src-lib-modal.mjs +17 -5
  29. package/fesm2015/spicainternational-ngx-sds-components-src-lib-modal.mjs.map +1 -1
  30. package/fesm2015/spicainternational-ngx-sds-components-src-lib-navigation.mjs +66 -12
  31. package/fesm2015/spicainternational-ngx-sds-components-src-lib-navigation.mjs.map +1 -1
  32. package/fesm2015/spicainternational-ngx-sds-components.mjs +2 -0
  33. package/fesm2015/spicainternational-ngx-sds-components.mjs.map +1 -1
  34. package/fesm2020/spicainternational-ngx-sds-components-src-lib-date-picker.mjs +69 -28
  35. package/fesm2020/spicainternational-ngx-sds-components-src-lib-date-picker.mjs.map +1 -1
  36. package/fesm2020/spicainternational-ngx-sds-components-src-lib-date-pipes.mjs +1 -1
  37. package/fesm2020/spicainternational-ngx-sds-components-src-lib-date-pipes.mjs.map +1 -1
  38. package/fesm2020/spicainternational-ngx-sds-components-src-lib-duration-box.mjs +364 -0
  39. package/fesm2020/spicainternational-ngx-sds-components-src-lib-duration-box.mjs.map +1 -0
  40. package/fesm2020/spicainternational-ngx-sds-components-src-lib-duration-pipe.mjs +48 -0
  41. package/fesm2020/spicainternational-ngx-sds-components-src-lib-duration-pipe.mjs.map +1 -0
  42. package/fesm2020/spicainternational-ngx-sds-components-src-lib-modal.mjs +17 -5
  43. package/fesm2020/spicainternational-ngx-sds-components-src-lib-modal.mjs.map +1 -1
  44. package/fesm2020/spicainternational-ngx-sds-components-src-lib-navigation.mjs +66 -12
  45. package/fesm2020/spicainternational-ngx-sds-components-src-lib-navigation.mjs.map +1 -1
  46. package/fesm2020/spicainternational-ngx-sds-components.mjs +2 -0
  47. package/fesm2020/spicainternational-ngx-sds-components.mjs.map +1 -1
  48. package/package.json +19 -2
  49. package/public-api.d.ts +2 -0
  50. package/src/lib/date-picker/date-picker.component.d.ts +8 -4
  51. package/src/lib/date-pipes/date-format.pipe.d.ts +1 -1
  52. package/src/lib/duration-box/duration-box.component.d.ts +136 -0
  53. package/src/lib/duration-box/duration-box.module.d.ts +10 -0
  54. package/src/lib/duration-box/duration-box.types.d.ts +1 -0
  55. package/src/lib/duration-box/duration.service.d.ts +10 -0
  56. package/src/lib/duration-box/package.json +10 -0
  57. package/src/lib/duration-box/public-api.d.ts +2 -0
  58. package/src/lib/duration-box/spicainternational-ngx-sds-components-src-lib-duration-box.d.ts +5 -0
  59. package/src/lib/duration-pipe/duration-format.pipe.d.ts +7 -0
  60. package/src/lib/duration-pipe/duration-pipe.module.d.ts +8 -0
  61. package/src/lib/duration-pipe/package.json +10 -0
  62. package/src/lib/duration-pipe/public-api.d.ts +2 -0
  63. package/src/lib/duration-pipe/spicainternational-ngx-sds-components-src-lib-duration-pipe.d.ts +5 -0
  64. package/src/lib/modal/modal.component.d.ts +3 -1
  65. package/src/lib/navigation/navigation-group/navigation-group.component.d.ts +18 -4
  66. package/src/lib/navigation/navigation.module.d.ts +5 -4
  67. package/src/lib/navigation/pipes/index.d.ts +1 -0
  68. package/src/lib/navigation/pipes/navigation-route-active.pipe.d.ts +7 -0
@@ -13,7 +13,7 @@ export class SdsDateFormatPipe {
13
13
  * @publicApi
14
14
  */
15
15
  transform(date, locales, options) {
16
- if (date === null) {
16
+ if (date === null || date === undefined) {
17
17
  return '';
18
18
  }
19
19
  const formatDate = new Date(date);
@@ -70,4 +70,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImpor
70
70
  name: 'sdsDateFormat',
71
71
  }]
72
72
  }] });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1mb3JtYXQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2RhdGUtcGlwZXMvZGF0ZS1mb3JtYXQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFLcEQsTUFBTSxPQUFPLGlCQUFpQjtJQUUxQjs7Ozs7Ozs7OztPQVVHO0lBQ0ksU0FBUyxDQUNaLElBQTRCLEVBQzVCLE9BQStCLEVBQy9CLE9BQWtHO1FBRWxHLElBQUksSUFBSSxLQUFLLElBQUksRUFBRTtZQUNmLE9BQU8sRUFBRSxDQUFBO1NBQ1o7UUFFRCxNQUFNLFVBQVUsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQyxJQUFJLFVBQVUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxjQUFjLEVBQUU7WUFDekMsT0FBTyxFQUFFLENBQUE7U0FDWjtRQUVELElBQUksT0FBTyxLQUFLLE1BQU0sRUFBQztZQUNuQixPQUFPLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUU7Z0JBQzFDLElBQUksRUFBRSxTQUFTO2dCQUNmLE1BQU0sRUFBRSxTQUFTO2FBQ3BCLENBQUMsQ0FBQztTQUNOO2FBQU8sSUFBSSxPQUFPLEtBQUssTUFBTSxFQUFDO1lBQzNCLE9BQU8sVUFBVSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRTtnQkFDMUMsR0FBRyxFQUFFLFNBQVM7Z0JBQ2QsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLElBQUksRUFBQyxTQUFTO2FBQ2pCLENBQUMsQ0FBQztTQUNOO2FBQU8sSUFBSSxPQUFPLEtBQUssYUFBYSxFQUFDO1lBQ2xDLE9BQU8sVUFBVSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRTtnQkFDMUMsR0FBRyxFQUFFLFNBQVM7Z0JBQ2QsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLElBQUksRUFBQyxTQUFTO2FBQ2pCLENBQUMsQ0FBQztTQUNOO2FBQU8sSUFBSSxPQUFPLEtBQUssV0FBVyxFQUFDO1lBQ2hDLE9BQU8sVUFBVSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRTtnQkFDMUMsR0FBRyxFQUFFLFNBQVM7Z0JBQ2QsS0FBSyxFQUFFLE9BQU87Z0JBQ2QsSUFBSSxFQUFDLFNBQVM7YUFDakIsQ0FBQyxDQUFDO1NBQ047YUFBTyxJQUFJLE9BQU8sS0FBSyxXQUFXLEVBQUM7WUFDaEMsT0FBTyxVQUFVLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFO2dCQUMxQyxPQUFPLEVBQUUsT0FBTztnQkFDaEIsR0FBRyxFQUFFLFNBQVM7Z0JBQ2QsS0FBSyxFQUFFLE9BQU87Z0JBQ2QsSUFBSSxFQUFDLFNBQVM7Z0JBQ2QsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsTUFBTSxFQUFFLFNBQVM7YUFDcEIsQ0FBQyxDQUFDO1NBQ047YUFBTTtZQUNILE9BQU8sVUFBVSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxPQUFpRCxDQUFDLENBQUM7U0FDcEc7SUFDTCxDQUFDOzs4R0E5RFEsaUJBQWlCOzRHQUFqQixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFIN0IsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsZUFBZTtpQkFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiAnc2RzRGF0ZUZvcm1hdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZHNEYXRlRm9ybWF0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRm9ybWF0cyBkYXRlIGluIGdpdmVuIGxvY2FsZS5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gZGF0ZSBEYXRlIHRvIGJlIGZvcm1hdHRlZC5cclxuICAgICAqIEBwYXJhbSBsb2NhbGUgQSBsb2NhbGUgY29kZSBmb3IgdGhlIGxvY2FsZSBmb3JtYXQgcnVsZXMgdG8gdXNlLlxyXG4gICAgICogQHBhcmFtIG9wdGlvbnMgQW4gb3B0aW9uYWwgSW50bC5EYXRlVGltZUZvcm1hdE9wdGlvbnMgcGFyYW1ldGVyIHRoYXQgY2FuIGJlIHVzZWQgdG8gZmluZS10dW5lIHRoZSBvdXRwdXQuXHJcbiAgICAgKiBAcmV0dXJucyBBIHN0cmluZyB3aXRoIGZvcm1hdHRlZCBkYXRlXHJcbiAgICAgKiBAc2VlIFtJbnRsIGRvY3NdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0ludGwpXHJcbiAgICAgKlxyXG4gICAgICogQHB1YmxpY0FwaVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgdHJhbnNmb3JtKFxyXG4gICAgICAgIGRhdGU6IERhdGUgfCBudW1iZXIgfCBzdHJpbmcsXHJcbiAgICAgICAgbG9jYWxlczogc3RyaW5nIHwgQXJyYXk8c3RyaW5nPixcclxuICAgICAgICBvcHRpb25zPzogSW50bC5EYXRlVGltZUZvcm1hdE9wdGlvbnMgfCAndGltZScgfCAnZGF0ZScgfCAnZGF0ZS1tZWRpdW0nIHwgJ2RhdGUtbG9uZycgfCAnZGF0ZS10aW1lJ1xyXG4gICAgKTogc3RyaW5nIHtcclxuICAgICAgICBpZiAoZGF0ZSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICByZXR1cm4gJydcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGZvcm1hdERhdGUgPSBuZXcgRGF0ZShkYXRlKTtcclxuICAgICAgICBpZiAoZm9ybWF0RGF0ZS50b1N0cmluZygpID09ICdJbnZhbGlkIERhdGUnKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAnJ1xyXG4gICAgICAgIH0gICAgICAgIFxyXG5cclxuICAgICAgICBpZiAob3B0aW9ucyA9PT0gJ3RpbWUnKXtcclxuICAgICAgICAgICAgcmV0dXJuIGZvcm1hdERhdGUudG9Mb2NhbGVUaW1lU3RyaW5nKGxvY2FsZXMsIHtcclxuICAgICAgICAgICAgICAgIGhvdXI6ICdudW1lcmljJyxcclxuICAgICAgICAgICAgICAgIG1pbnV0ZTogJzItZGlnaXQnXHJcbiAgICAgICAgICAgIH0pOyAgICBcclxuICAgICAgICB9IGVsc2UgIGlmIChvcHRpb25zID09PSAnZGF0ZScpe1xyXG4gICAgICAgICAgICByZXR1cm4gZm9ybWF0RGF0ZS50b0xvY2FsZURhdGVTdHJpbmcobG9jYWxlcywge1xyXG4gICAgICAgICAgICAgICAgZGF5OiAnbnVtZXJpYycsIFxyXG4gICAgICAgICAgICAgICAgbW9udGg6ICdudW1lcmljJywgXHJcbiAgICAgICAgICAgICAgICB5ZWFyOidudW1lcmljJ1xyXG4gICAgICAgICAgICB9KTsgICAgXHJcbiAgICAgICAgfSBlbHNlICBpZiAob3B0aW9ucyA9PT0gJ2RhdGUtbWVkaXVtJyl7XHJcbiAgICAgICAgICAgIHJldHVybiBmb3JtYXREYXRlLnRvTG9jYWxlRGF0ZVN0cmluZyhsb2NhbGVzLCB7XHJcbiAgICAgICAgICAgICAgICBkYXk6ICcyLWRpZ2l0JywgXHJcbiAgICAgICAgICAgICAgICBtb250aDogJzItZGlnaXQnLCBcclxuICAgICAgICAgICAgICAgIHllYXI6J251bWVyaWMnXHJcbiAgICAgICAgICAgIH0pOyAgICBcclxuICAgICAgICB9IGVsc2UgIGlmIChvcHRpb25zID09PSAnZGF0ZS1sb25nJyl7XHJcbiAgICAgICAgICAgIHJldHVybiBmb3JtYXREYXRlLnRvTG9jYWxlRGF0ZVN0cmluZyhsb2NhbGVzLCB7XHJcbiAgICAgICAgICAgICAgICBkYXk6ICcyLWRpZ2l0JywgXHJcbiAgICAgICAgICAgICAgICBtb250aDogJ3Nob3J0JywgXHJcbiAgICAgICAgICAgICAgICB5ZWFyOidudW1lcmljJ1xyXG4gICAgICAgICAgICB9KTsgICAgXHJcbiAgICAgICAgfSBlbHNlICBpZiAob3B0aW9ucyA9PT0gJ2RhdGUtdGltZScpe1xyXG4gICAgICAgICAgICByZXR1cm4gZm9ybWF0RGF0ZS50b0xvY2FsZURhdGVTdHJpbmcobG9jYWxlcywge1xyXG4gICAgICAgICAgICAgICAgd2Vla2RheTogJ3Nob3J0JywgXHJcbiAgICAgICAgICAgICAgICBkYXk6ICdudW1lcmljJywgXHJcbiAgICAgICAgICAgICAgICBtb250aDogJ3Nob3J0JywgXHJcbiAgICAgICAgICAgICAgICB5ZWFyOidudW1lcmljJywgXHJcbiAgICAgICAgICAgICAgICBob3VyOiAnbnVtZXJpYycsXHJcbiAgICAgICAgICAgICAgICBtaW51dGU6ICcyLWRpZ2l0J1xyXG4gICAgICAgICAgICB9KTsgICAgXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZvcm1hdERhdGUudG9Mb2NhbGVEYXRlU3RyaW5nKGxvY2FsZXMsIG9wdGlvbnMgYXMgSW50bC5EYXRlVGltZUZvcm1hdE9wdGlvbnMgfCB1bmRlZmluZWQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1mb3JtYXQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2RhdGUtcGlwZXMvZGF0ZS1mb3JtYXQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFLcEQsTUFBTSxPQUFPLGlCQUFpQjtJQUUxQjs7Ozs7Ozs7OztPQVVHO0lBQ0ksU0FBUyxDQUNaLElBQXdDLEVBQ3hDLE9BQStCLEVBQy9CLE9BQWtHO1FBRWxHLElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLEtBQUssU0FBUyxFQUFFO1lBQ3JDLE9BQU8sRUFBRSxDQUFBO1NBQ1o7UUFFRCxNQUFNLFVBQVUsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQyxJQUFJLFVBQVUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxjQUFjLEVBQUU7WUFDekMsT0FBTyxFQUFFLENBQUE7U0FDWjtRQUVELElBQUksT0FBTyxLQUFLLE1BQU0sRUFBQztZQUNuQixPQUFPLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUU7Z0JBQzFDLElBQUksRUFBRSxTQUFTO2dCQUNmLE1BQU0sRUFBRSxTQUFTO2FBQ3BCLENBQUMsQ0FBQztTQUNOO2FBQU8sSUFBSSxPQUFPLEtBQUssTUFBTSxFQUFDO1lBQzNCLE9BQU8sVUFBVSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRTtnQkFDMUMsR0FBRyxFQUFFLFNBQVM7Z0JBQ2QsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLElBQUksRUFBQyxTQUFTO2FBQ2pCLENBQUMsQ0FBQztTQUNOO2FBQU8sSUFBSSxPQUFPLEtBQUssYUFBYSxFQUFDO1lBQ2xDLE9BQU8sVUFBVSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRTtnQkFDMUMsR0FBRyxFQUFFLFNBQVM7Z0JBQ2QsS0FBSyxFQUFFLFNBQVM7Z0JBQ2hCLElBQUksRUFBQyxTQUFTO2FBQ2pCLENBQUMsQ0FBQztTQUNOO2FBQU8sSUFBSSxPQUFPLEtBQUssV0FBVyxFQUFDO1lBQ2hDLE9BQU8sVUFBVSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRTtnQkFDMUMsR0FBRyxFQUFFLFNBQVM7Z0JBQ2QsS0FBSyxFQUFFLE9BQU87Z0JBQ2QsSUFBSSxFQUFDLFNBQVM7YUFDakIsQ0FBQyxDQUFDO1NBQ047YUFBTyxJQUFJLE9BQU8sS0FBSyxXQUFXLEVBQUM7WUFDaEMsT0FBTyxVQUFVLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFO2dCQUMxQyxPQUFPLEVBQUUsT0FBTztnQkFDaEIsR0FBRyxFQUFFLFNBQVM7Z0JBQ2QsS0FBSyxFQUFFLE9BQU87Z0JBQ2QsSUFBSSxFQUFDLFNBQVM7Z0JBQ2QsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsTUFBTSxFQUFFLFNBQVM7YUFDcEIsQ0FBQyxDQUFDO1NBQ047YUFBTTtZQUNILE9BQU8sVUFBVSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxPQUFpRCxDQUFDLENBQUM7U0FDcEc7SUFDTCxDQUFDOzs4R0E5RFEsaUJBQWlCOzRHQUFqQixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFIN0IsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsZUFBZTtpQkFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiAnc2RzRGF0ZUZvcm1hdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZHNEYXRlRm9ybWF0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRm9ybWF0cyBkYXRlIGluIGdpdmVuIGxvY2FsZS5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gZGF0ZSBEYXRlIHRvIGJlIGZvcm1hdHRlZC5cclxuICAgICAqIEBwYXJhbSBsb2NhbGUgQSBsb2NhbGUgY29kZSBmb3IgdGhlIGxvY2FsZSBmb3JtYXQgcnVsZXMgdG8gdXNlLlxyXG4gICAgICogQHBhcmFtIG9wdGlvbnMgQW4gb3B0aW9uYWwgSW50bC5EYXRlVGltZUZvcm1hdE9wdGlvbnMgcGFyYW1ldGVyIHRoYXQgY2FuIGJlIHVzZWQgdG8gZmluZS10dW5lIHRoZSBvdXRwdXQuXHJcbiAgICAgKiBAcmV0dXJucyBBIHN0cmluZyB3aXRoIGZvcm1hdHRlZCBkYXRlXHJcbiAgICAgKiBAc2VlIFtJbnRsIGRvY3NdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0ludGwpXHJcbiAgICAgKlxyXG4gICAgICogQHB1YmxpY0FwaVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgdHJhbnNmb3JtKFxyXG4gICAgICAgIGRhdGU6IERhdGUgfCBudW1iZXIgfCBzdHJpbmcgfCB1bmRlZmluZWQsXHJcbiAgICAgICAgbG9jYWxlczogc3RyaW5nIHwgQXJyYXk8c3RyaW5nPixcclxuICAgICAgICBvcHRpb25zPzogSW50bC5EYXRlVGltZUZvcm1hdE9wdGlvbnMgfCAndGltZScgfCAnZGF0ZScgfCAnZGF0ZS1tZWRpdW0nIHwgJ2RhdGUtbG9uZycgfCAnZGF0ZS10aW1lJ1xyXG4gICAgKTogc3RyaW5nIHtcclxuICAgICAgICBpZiAoZGF0ZSA9PT0gbnVsbCB8fCBkYXRlID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuICcnXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBmb3JtYXREYXRlID0gbmV3IERhdGUoZGF0ZSk7XHJcbiAgICAgICAgaWYgKGZvcm1hdERhdGUudG9TdHJpbmcoKSA9PSAnSW52YWxpZCBEYXRlJykge1xyXG4gICAgICAgICAgICByZXR1cm4gJydcclxuICAgICAgICB9ICAgICAgICBcclxuXHJcbiAgICAgICAgaWYgKG9wdGlvbnMgPT09ICd0aW1lJyl7XHJcbiAgICAgICAgICAgIHJldHVybiBmb3JtYXREYXRlLnRvTG9jYWxlVGltZVN0cmluZyhsb2NhbGVzLCB7XHJcbiAgICAgICAgICAgICAgICBob3VyOiAnbnVtZXJpYycsXHJcbiAgICAgICAgICAgICAgICBtaW51dGU6ICcyLWRpZ2l0J1xyXG4gICAgICAgICAgICB9KTsgICAgXHJcbiAgICAgICAgfSBlbHNlICBpZiAob3B0aW9ucyA9PT0gJ2RhdGUnKXtcclxuICAgICAgICAgICAgcmV0dXJuIGZvcm1hdERhdGUudG9Mb2NhbGVEYXRlU3RyaW5nKGxvY2FsZXMsIHtcclxuICAgICAgICAgICAgICAgIGRheTogJ251bWVyaWMnLCBcclxuICAgICAgICAgICAgICAgIG1vbnRoOiAnbnVtZXJpYycsIFxyXG4gICAgICAgICAgICAgICAgeWVhcjonbnVtZXJpYydcclxuICAgICAgICAgICAgfSk7ICAgIFxyXG4gICAgICAgIH0gZWxzZSAgaWYgKG9wdGlvbnMgPT09ICdkYXRlLW1lZGl1bScpe1xyXG4gICAgICAgICAgICByZXR1cm4gZm9ybWF0RGF0ZS50b0xvY2FsZURhdGVTdHJpbmcobG9jYWxlcywge1xyXG4gICAgICAgICAgICAgICAgZGF5OiAnMi1kaWdpdCcsIFxyXG4gICAgICAgICAgICAgICAgbW9udGg6ICcyLWRpZ2l0JywgXHJcbiAgICAgICAgICAgICAgICB5ZWFyOidudW1lcmljJ1xyXG4gICAgICAgICAgICB9KTsgICAgXHJcbiAgICAgICAgfSBlbHNlICBpZiAob3B0aW9ucyA9PT0gJ2RhdGUtbG9uZycpe1xyXG4gICAgICAgICAgICByZXR1cm4gZm9ybWF0RGF0ZS50b0xvY2FsZURhdGVTdHJpbmcobG9jYWxlcywge1xyXG4gICAgICAgICAgICAgICAgZGF5OiAnMi1kaWdpdCcsIFxyXG4gICAgICAgICAgICAgICAgbW9udGg6ICdzaG9ydCcsIFxyXG4gICAgICAgICAgICAgICAgeWVhcjonbnVtZXJpYydcclxuICAgICAgICAgICAgfSk7ICAgIFxyXG4gICAgICAgIH0gZWxzZSAgaWYgKG9wdGlvbnMgPT09ICdkYXRlLXRpbWUnKXtcclxuICAgICAgICAgICAgcmV0dXJuIGZvcm1hdERhdGUudG9Mb2NhbGVEYXRlU3RyaW5nKGxvY2FsZXMsIHtcclxuICAgICAgICAgICAgICAgIHdlZWtkYXk6ICdzaG9ydCcsIFxyXG4gICAgICAgICAgICAgICAgZGF5OiAnbnVtZXJpYycsIFxyXG4gICAgICAgICAgICAgICAgbW9udGg6ICdzaG9ydCcsIFxyXG4gICAgICAgICAgICAgICAgeWVhcjonbnVtZXJpYycsIFxyXG4gICAgICAgICAgICAgICAgaG91cjogJ251bWVyaWMnLFxyXG4gICAgICAgICAgICAgICAgbWludXRlOiAnMi1kaWdpdCdcclxuICAgICAgICAgICAgfSk7ICAgIFxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmb3JtYXREYXRlLnRvTG9jYWxlRGF0ZVN0cmluZyhsb2NhbGVzLCBvcHRpb25zIGFzIEludGwuRGF0ZVRpbWVGb3JtYXRPcHRpb25zIHwgdW5kZWZpbmVkKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -0,0 +1,249 @@
1
+ import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
+ import { SdsDurationFormatPipe } from '@spicainternational/ngx-sds-components/src/lib/duration-pipe';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./duration.service";
5
+ import * as i2 from "devextreme-angular";
6
+ import * as i3 from "devextreme-angular/ui/nested";
7
+ import * as i4 from "@angular/common";
8
+ import * as i5 from "devextreme-angular/core";
9
+ import * as i6 from "@spicainternational/ngx-sds-components/src/lib/duration-pipe";
10
+ /**
11
+ * Component allows user to enter duration in h:mm format. User may also select no value is this is applicable to the
12
+ * use case. A list of pre-defined durations can be provided for easier selection.
13
+ *
14
+ * The auto resolve function tries to convert entered text into minutes. The algorithm splits entry into two parts
15
+ * hours and minutes based on delimiter or if there is none - it takes last two digits as minutes.
16
+ *
17
+ * @export
18
+ * @class SdsDurationBoxComponent
19
+ */
20
+ export class SdsDurationBoxComponent {
21
+ constructor(_durationInputResolver) {
22
+ this._durationInputResolver = _durationInputResolver;
23
+ /**
24
+ * Duration length expressed in minutes; when we allow empty values this property can be null.
25
+ *
26
+ * @type {(number | null)}
27
+ * @memberof SdsDurationBoxComponent
28
+ */
29
+ this.value = null;
30
+ this.valueChange = new EventEmitter();
31
+ /**
32
+ * Allow user to select empty value. You should provide emptyValueText in this case. The emitted value is 'null'.
33
+ *
34
+ * @type {boolean}
35
+ * @memberof SdsDurationBoxComponent
36
+ */
37
+ this.allowEmptyValue = true;
38
+ /**
39
+ * Text to be displayed when value is cleared
40
+ *
41
+ * @type {string}
42
+ * @memberof SdsDurationBoxComponent
43
+ */
44
+ this.emptyValueText = 'not set';
45
+ /**
46
+ * Width of component. By default 10rem.
47
+ *
48
+ * @type {string}
49
+ * @memberof SdsDurationBoxComponent
50
+ */
51
+ this.width = '10rem';
52
+ /**
53
+ * Specifies whether the UI component responds to user interaction.
54
+ *
55
+ * @type {boolean}
56
+ * @memberof SdsDurationBoxComponent
57
+ */
58
+ this.disabled = false;
59
+ /**
60
+ * Specifies whether to display the Clear button in the UI component.
61
+ *
62
+ * @type {boolean}
63
+ * @memberof SdsDurationBoxComponent
64
+ */
65
+ this.showClearButton = false;
66
+ /**
67
+ * Specifies how range limits are handled.
68
+ *
69
+ * @type {('fallbackToLastValue' | 'showValidationError')}
70
+ * @memberof SdsDurationBoxComponent
71
+ */
72
+ this.rangeViolationHandling = 'autoResolve';
73
+ /**
74
+ * Range violation message. Applicable when rangeViolationHandling is set to 'autoResolve'
75
+ *
76
+ * @type {string}
77
+ * @memberof SdsDurationBoxComponent
78
+ */
79
+ this.rangeViolationText = 'value is outside the valid range';
80
+ /**
81
+ * Indicates whether the editor's value is valid.
82
+ *
83
+ * @type {boolean}
84
+ * @memberof SdsDurationBoxComponent
85
+ */
86
+ this.isValid = true;
87
+ // public elementUUID = 'sds-db-' + crypto.randomUUID();
88
+ this.elementUUID = `sds-db-${Math.ceil(Math.random() * 1000000)}`;
89
+ this.inputValue = '';
90
+ this.showOptions = false;
91
+ this.isValueEmpty = false;
92
+ this.isValueSetInternally = false;
93
+ this._durationPipe = new SdsDurationFormatPipe();
94
+ this.optionsDropdownButton = {
95
+ icon: 'spindown',
96
+ stylingMode: 'text',
97
+ onClick: () => {
98
+ this.showOptions = !this.showOptions;
99
+ }
100
+ };
101
+ this.clearValueButton = {
102
+ icon: 'clear',
103
+ stylingMode: 'text',
104
+ elementAttr: { class: 'sds-durationbox-clear-button' },
105
+ onClick: () => {
106
+ this.applyOption(null);
107
+ }
108
+ };
109
+ }
110
+ ngAfterViewInit() {
111
+ if (this._validationRule) {
112
+ this._validationRule.validationCallback = () => { return this.checkIfValid(); };
113
+ }
114
+ }
115
+ ngOnChanges(changes) {
116
+ if (changes['value']) {
117
+ if (this.value === null) {
118
+ // handle null input
119
+ if (this.allowEmptyValue) {
120
+ this.setValue(null);
121
+ }
122
+ else {
123
+ this.setValue(this._durationInputResolver.getDefaultValue());
124
+ this.inputValue = this._durationPipe.transform(this.value, this.emptyValueText);
125
+ }
126
+ }
127
+ else {
128
+ // handle value input
129
+ if (this._durationInputResolver.isValueWithinLimits(this.value, this.min, this.max)) {
130
+ this.inputValue = this._durationPipe.transform(this.value, this.emptyValueText);
131
+ }
132
+ else {
133
+ // value is out of range
134
+ if (this.rangeViolationHandling === 'autoResolve') {
135
+ this.setValue(this._durationInputResolver.getDefaultValue(this.min, this.max));
136
+ this.inputValue = this._durationPipe.transform(this.value, this.emptyValueText);
137
+ }
138
+ else {
139
+ this.inputValue = this._durationPipe.transform(this.value, this.emptyValueText);
140
+ this.setValidationStatusAndValidate(false);
141
+ }
142
+ }
143
+ }
144
+ }
145
+ }
146
+ ngOnInit() { }
147
+ blockNonNumberOrSemicolon(e) {
148
+ this.isValueSetInternally = false;
149
+ }
150
+ resolveInput() {
151
+ if (!this.isValueSetInternally) {
152
+ if (!this._durationInputResolver.isValidInput(this.inputValue)) {
153
+ // we have invalid input. use old value
154
+ this.setInputValueInternally(this.value);
155
+ this.setValidationStatusAndValidate(true);
156
+ }
157
+ else {
158
+ const resolvedValue = this._durationInputResolver.resolve(this.inputValue);
159
+ if (resolvedValue === null && this.allowEmptyValue) {
160
+ this.setValue(null);
161
+ this.setValidationStatusAndValidate(true);
162
+ }
163
+ else if (resolvedValue === null && !this.allowEmptyValue) {
164
+ this.setValue(this._durationInputResolver.getDefaultValue());
165
+ this.setValidationStatusAndValidate(true);
166
+ }
167
+ else {
168
+ // make sure that the value is within the min/max period
169
+ if (this._durationInputResolver.isValueWithinLimits(resolvedValue, this.min, this.max)) {
170
+ this.setValue(resolvedValue);
171
+ this.setValidationStatusAndValidate(true);
172
+ }
173
+ else {
174
+ // use old value
175
+ if (this.rangeViolationHandling === 'autoResolve') {
176
+ this.setInputValueInternally(this.value);
177
+ this.setValidationStatusAndValidate(true);
178
+ }
179
+ else {
180
+ this.setInputValueInternally(resolvedValue);
181
+ this.setValidationStatusAndValidate(false);
182
+ }
183
+ }
184
+ }
185
+ }
186
+ }
187
+ }
188
+ applyOption(value) {
189
+ this.showOptions = false;
190
+ this.isValueSetInternally = false;
191
+ this.setValue(value);
192
+ }
193
+ checkIfValid() {
194
+ return this.isValid;
195
+ }
196
+ setValue(value) {
197
+ this.isValueEmpty = (value === null);
198
+ this.value = value;
199
+ this.valueChange.emit(this.value);
200
+ this.setInputValueInternally(value);
201
+ }
202
+ setInputValueInternally(value) {
203
+ this.isValueSetInternally = true;
204
+ setTimeout(() => {
205
+ this.inputValue = this._durationPipe.transform(value, this.emptyValueText);
206
+ }, 0);
207
+ }
208
+ setValidationStatusAndValidate(isValid) {
209
+ this.isValid = (this.rangeViolationHandling === 'autoResolve') || isValid;
210
+ this._validator?.instance.validate();
211
+ }
212
+ }
213
+ SdsDurationBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDurationBoxComponent, deps: [{ token: i1.DurationService }], target: i0.ɵɵFactoryTarget.Component });
214
+ SdsDurationBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SdsDurationBoxComponent, selector: "sds-duration-box", inputs: { value: "value", allowEmptyValue: "allowEmptyValue", emptyValueText: "emptyValueText", options: "options", width: "width", disabled: "disabled", showClearButton: "showClearButton", max: "max", min: "min", rangeViolationHandling: "rangeViolationHandling", rangeViolationText: "rangeViolationText" }, outputs: { valueChange: "valueChange" }, viewQueries: [{ propertyName: "_validationRule", first: true, predicate: ["validationRule"], descendants: true }, { propertyName: "_validator", first: true, predicate: ["validator"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<dx-text-box\r\n #textbox\r\n [id]=\"elementUUID\"\r\n class=\"sds-durationbox\"\r\n [(value)]=\"inputValue\"\r\n (onKeyDown)=\"blockNonNumberOrSemicolon($event)\"\r\n (onChange)=\"resolveInput()\"\r\n [width]=\"width\"\r\n [disabled]=\"disabled\"\r\n >\r\n\r\n <dx-validator \r\n #validator\r\n *ngIf=\"rangeViolationHandling === 'markAsInvalid'\">\r\n <dxi-validation-rule\r\n #validationRule\r\n type=\"custom\"\r\n [message]=\"rangeViolationText\"\r\n [reevaluate]=\"true\"\r\n ></dxi-validation-rule>\r\n </dx-validator>\r\n\r\n <dxi-button\r\n *ngIf=\"allowEmptyValue && showClearButton\"\r\n name=\"clearValue\"\r\n location=\"after\"\r\n [options]=\"clearValueButton\"\r\n ></dxi-button>\r\n \r\n <dxi-button\r\n *ngIf=\"options && options.length > 0\"\r\n name=\"optionsDropdown\"\r\n location=\"after\"\r\n [options]=\"optionsDropdownButton\"\r\n ></dxi-button>\r\n</dx-text-box>\r\n\r\n\r\n<dx-popover\r\n target=\"#{{elementUUID}}\"\r\n [(visible)]=\"showOptions\"\r\n [minWidth]=\"width\"\r\n [hideOnOutsideClick]=\"true\"\r\n [wrapperAttr]=\"{ class: 'sds-durationbox-options-popover' }\"\r\n >\r\n\r\n <div *dxTemplate=\"let data of 'content'\">\r\n <dx-scroll-view>\r\n <button\r\n class=\"dropdown-item border-0\"\r\n [class.selected] = \"isValueEmpty\"\r\n (click)=\"applyOption(null)\"\r\n > {{ emptyValueText}}\r\n </button>\r\n\r\n <div *ngFor=\"let option of options\">\r\n <button\r\n class=\"dropdown-item border-0\"\r\n [class.selected] = \"option === value\"\r\n (click)=\"applyOption(option)\"\r\n > {{option | sdsDurationFormat}}\r\n </button>\r\n </div>\r\n </dx-scroll-view>\r\n </div>\r\n</dx-popover>", styles: ["::ng-deep .sds-durationbox .sds-durationbox-clear-button .dx-icon{color:#999}::ng-deep .sds-durationbox-options-popover .dx-popup-content{padding:.25rem;font-size:1rem}::ng-deep .sds-durationbox-options-popover .dropdown-item{padding:.5rem}::ng-deep .sds-durationbox-options-popover .dropdown-item:hover{background-color:#f8f9fa}::ng-deep .sds-durationbox-options-popover .dropdown-item:focus{outline:none}::ng-deep .sds-durationbox-options-popover .dropdown-item.selected{background-color:#dee2e6}\n"], components: [{ type: i2.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { type: i2.DxValidatorComponent, selector: "dx-validator", inputs: ["adapter", "elementAttr", "height", "name", "validationGroup", "validationRules", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onValidated", "adapterChange", "elementAttrChange", "heightChange", "nameChange", "validationGroupChange", "validationRulesChange", "widthChange"] }, { type: i3.DxiValidationRuleComponent, selector: "dxi-validation-rule", inputs: ["message", "trim", "type", "ignoreEmptyValue", "max", "min", "reevaluate", "validationCallback", "comparisonTarget", "comparisonType", "pattern"] }, { type: i3.DxiButtonComponent, selector: "dxi-button", inputs: ["location", "name", "options", "cssClass", "disabled", "hint", "icon", "onClick", "template", "text", "visible"] }, { type: i2.DxPopoverComponent, selector: "dx-popover", inputs: ["animation", "closeOnOutsideClick", "container", "contentTemplate", "copyRootClassesToWrapper", "deferRendering", "disabled", "elementAttr", "height", "hideEvent", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showCloseButton", "showEvent", "showTitle", "target", "title", "titleTemplate", "toolbarItems", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "onTitleRendered", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "disabledChange", "elementAttrChange", "heightChange", "hideEventChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showCloseButtonChange", "showEventChange", "showTitleChange", "targetChange", "titleChange", "titleTemplateChange", "toolbarItemsChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { type: i2.DxScrollViewComponent, selector: "dx-scroll-view", inputs: ["bounceEnabled", "direction", "disabled", "elementAttr", "height", "pulledDownText", "pullingDownText", "reachBottomText", "refreshingText", "rtlEnabled", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onPullDown", "onReachBottom", "onScroll", "onUpdated", "bounceEnabledChange", "directionChange", "disabledChange", "elementAttrChange", "heightChange", "pulledDownTextChange", "pullingDownTextChange", "reachBottomTextChange", "refreshingTextChange", "rtlEnabledChange", "scrollByContentChange", "scrollByThumbChange", "showScrollbarChange", "useNativeChange", "widthChange"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "sdsDurationFormat": i6.SdsDurationFormatPipe } });
215
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDurationBoxComponent, decorators: [{
216
+ type: Component,
217
+ args: [{ selector: 'sds-duration-box', template: "<dx-text-box\r\n #textbox\r\n [id]=\"elementUUID\"\r\n class=\"sds-durationbox\"\r\n [(value)]=\"inputValue\"\r\n (onKeyDown)=\"blockNonNumberOrSemicolon($event)\"\r\n (onChange)=\"resolveInput()\"\r\n [width]=\"width\"\r\n [disabled]=\"disabled\"\r\n >\r\n\r\n <dx-validator \r\n #validator\r\n *ngIf=\"rangeViolationHandling === 'markAsInvalid'\">\r\n <dxi-validation-rule\r\n #validationRule\r\n type=\"custom\"\r\n [message]=\"rangeViolationText\"\r\n [reevaluate]=\"true\"\r\n ></dxi-validation-rule>\r\n </dx-validator>\r\n\r\n <dxi-button\r\n *ngIf=\"allowEmptyValue && showClearButton\"\r\n name=\"clearValue\"\r\n location=\"after\"\r\n [options]=\"clearValueButton\"\r\n ></dxi-button>\r\n \r\n <dxi-button\r\n *ngIf=\"options && options.length > 0\"\r\n name=\"optionsDropdown\"\r\n location=\"after\"\r\n [options]=\"optionsDropdownButton\"\r\n ></dxi-button>\r\n</dx-text-box>\r\n\r\n\r\n<dx-popover\r\n target=\"#{{elementUUID}}\"\r\n [(visible)]=\"showOptions\"\r\n [minWidth]=\"width\"\r\n [hideOnOutsideClick]=\"true\"\r\n [wrapperAttr]=\"{ class: 'sds-durationbox-options-popover' }\"\r\n >\r\n\r\n <div *dxTemplate=\"let data of 'content'\">\r\n <dx-scroll-view>\r\n <button\r\n class=\"dropdown-item border-0\"\r\n [class.selected] = \"isValueEmpty\"\r\n (click)=\"applyOption(null)\"\r\n > {{ emptyValueText}}\r\n </button>\r\n\r\n <div *ngFor=\"let option of options\">\r\n <button\r\n class=\"dropdown-item border-0\"\r\n [class.selected] = \"option === value\"\r\n (click)=\"applyOption(option)\"\r\n > {{option | sdsDurationFormat}}\r\n </button>\r\n </div>\r\n </dx-scroll-view>\r\n </div>\r\n</dx-popover>", styles: ["::ng-deep .sds-durationbox .sds-durationbox-clear-button .dx-icon{color:#999}::ng-deep .sds-durationbox-options-popover .dx-popup-content{padding:.25rem;font-size:1rem}::ng-deep .sds-durationbox-options-popover .dropdown-item{padding:.5rem}::ng-deep .sds-durationbox-options-popover .dropdown-item:hover{background-color:#f8f9fa}::ng-deep .sds-durationbox-options-popover .dropdown-item:focus{outline:none}::ng-deep .sds-durationbox-options-popover .dropdown-item.selected{background-color:#dee2e6}\n"] }]
218
+ }], ctorParameters: function () { return [{ type: i1.DurationService }]; }, propDecorators: { value: [{
219
+ type: Input
220
+ }], valueChange: [{
221
+ type: Output
222
+ }], allowEmptyValue: [{
223
+ type: Input
224
+ }], emptyValueText: [{
225
+ type: Input
226
+ }], options: [{
227
+ type: Input
228
+ }], width: [{
229
+ type: Input
230
+ }], disabled: [{
231
+ type: Input
232
+ }], showClearButton: [{
233
+ type: Input
234
+ }], max: [{
235
+ type: Input
236
+ }], min: [{
237
+ type: Input
238
+ }], rangeViolationHandling: [{
239
+ type: Input
240
+ }], rangeViolationText: [{
241
+ type: Input
242
+ }], _validationRule: [{
243
+ type: ViewChild,
244
+ args: ['validationRule', { static: false }]
245
+ }], _validator: [{
246
+ type: ViewChild,
247
+ args: ['validator', { static: false }]
248
+ }] } });
249
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVyYXRpb24tYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2R1cmF0aW9uLWJveC9kdXJhdGlvbi1ib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvZHVyYXRpb24tYm94L2R1cmF0aW9uLWJveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuSSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQzs7Ozs7Ozs7QUFNckc7Ozs7Ozs7OztHQVNHO0FBTUgsTUFBTSxPQUFPLHVCQUF1QjtJQXVIaEMsWUFDWSxzQkFBdUM7UUFBdkMsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUFpQjtRQXZIbkQ7Ozs7O1dBS0c7UUFDTSxVQUFLLEdBQWtCLElBQUksQ0FBQztRQUMzQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO1FBRTFEOzs7OztXQUtHO1FBQ00sb0JBQWUsR0FBWSxJQUFJLENBQUM7UUFFekM7Ozs7O1dBS0c7UUFDTSxtQkFBYyxHQUFXLFNBQVMsQ0FBQztRQVU1Qzs7Ozs7V0FLRztRQUNNLFVBQUssR0FBVyxPQUFPLENBQUM7UUFFakM7Ozs7O1dBS0c7UUFDTSxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRW5DOzs7OztXQUtHO1FBQ00sb0JBQWUsR0FBWSxLQUFLLENBQUM7UUFrQjFDOzs7OztXQUtHO1FBQ00sMkJBQXNCLEdBQXNDLGFBQWEsQ0FBQztRQUVuRjs7Ozs7V0FLRztRQUNNLHVCQUFrQixHQUFXLGtDQUFrQyxDQUFDO1FBRXpFOzs7OztX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bnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTZHNEdXJhdGlvbkZvcm1hdFBpcGUgfSBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2R1cmF0aW9uLXBpcGUnO1xyXG5pbXBvcnQgeyBEeFZhbGlkYXRvckNvbXBvbmVudCB9IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhcic7XHJcbmltcG9ydCB7IER4aVZhbGlkYXRpb25SdWxlQ29tcG9uZW50IH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyL3VpL25lc3RlZCc7XHJcbmltcG9ydCB7IER1cmF0aW9uQm94UmFuZ2VWaW9sYXRpb25IYW5kbGluZyB9IGZyb20gJy4vZHVyYXRpb24tYm94LnR5cGVzJztcclxuaW1wb3J0IHsgRHVyYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9kdXJhdGlvbi5zZXJ2aWNlJztcclxuXHJcbi8qKlxyXG4gKiBDb21wb25lbnQgYWxsb3dzIHVzZXIgdG8gZW50ZXIgZHVyYXRpb24gaW4gaDptbSBmb3JtYXQuIFVzZXIgbWF5IGFsc28gc2VsZWN0IG5vIHZhbHVlIGlzIHRoaXMgaXMgYXBwbGljYWJsZSB0byB0aGUgXHJcbiAqIHVzZSBjYXNlLiBBIGxpc3Qgb2YgcHJlLWRlZmluZWQgZHVyYXRpb25zIGNhbiBiZSBwcm92aWRlZCBmb3IgZWFzaWVyIHNlbGVjdGlvbi5cclxuICogXHJcbiAqIFRoZSBhdXRvIHJlc29sdmUgZnVuY3Rpb24gdHJpZXMgdG8gY29udmVydCBlbnRlcmVkIHRleHQgaW50byBtaW51dGVzLiBUaGUgYWxnb3JpdGhtIHNwbGl0cyBlbnRyeSBpbnRvIHR3byBwYXJ0cyBcclxuICogaG91cnMgYW5kIG1pbnV0ZXMgYmFzZWQgb24gZGVsaW1pdGVyIG9yIGlmIHRoZXJlIGlzIG5vbmUgLSBpdCB0YWtlcyBsYXN0IHR3byBkaWdpdHMgYXMgbWludXRlcy5cclxuICpcclxuICogQGV4cG9ydFxyXG4gKiBAY2xhc3MgU2RzRHVyYXRpb25Cb3hDb21wb25lbnRcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdzZHMtZHVyYXRpb24tYm94JyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9kdXJhdGlvbi1ib3guY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vZHVyYXRpb24tYm94LmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZHNEdXJhdGlvbkJveENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcclxuICAgIC8qKlxyXG4gICAgICogRHVyYXRpb24gbGVuZ3RoIGV4cHJlc3NlZCBpbiBtaW51dGVzOyB3aGVuIHdlIGFsbG93IGVtcHR5IHZhbHVlcyB0aGlzIHByb3BlcnR5IGNhbiBiZSBudWxsLlxyXG4gICAgICpcclxuICAgICAqIEB0eXBlIHsobnVtYmVyIHwgbnVsbCl9XHJcbiAgICAgKiBAbWVtYmVyb2YgU2RzRHVyYXRpb25Cb3hDb21wb25lbnRcclxuICAgICAqL1xyXG4gICAgQElucHV0KCkgdmFsdWU6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG4gICAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXIgfCBudWxsPigpO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQWxsb3cgdXNlciB0byBzZWxlY3QgZW1wdHkgdmFsdWUuIFlvdSBzaG91bGQgcHJvdmlkZSBlbXB0eVZhbHVlVGV4dCBpbiB0aGlzIGNhc2UuIFRoZSBlbWl0dGVkIHZhbHVlIGlzICdudWxsJy5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cclxuICAgICAqIEBtZW1iZXJvZiBTZHNEdXJhdGlvbkJveENvbXBvbmVudFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBhbGxvd0VtcHR5VmFsdWU6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGV4dCB0byBiZSBkaXNwbGF5ZWQgd2hlbiB2YWx1ZSBpcyBjbGVhcmVkXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUge3N0cmluZ31cclxuICAgICAqIEBtZW1iZXJvZiBTZHNEdXJhdGlvbkJveENvbXBvbmVudFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBlbXB0eVZhbHVlVGV4dDogc3RyaW5nID0gJ25vdCBzZXQnO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQXJyYXkgb2YgcHJlLWRlZmluZWQgZHVyYXRpb25zIHRoYXQgd2lsbCBiZSBkaXNwbGF5ZWQgaW4gZHJvcGRvd24gZm9yIGVhc2llciBzZWxlY3Rpb24uXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUge251bWJlcltdfVxyXG4gICAgICogQG1lbWJlcm9mIFNkc0R1cmF0aW9uQm94Q29tcG9uZW50XHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIG9wdGlvbnM/OiBudW1iZXJbXTtcclxuICAgIFxyXG4gICAgLyoqXHJcbiAgICAgKiBXaWR0aCBvZiBjb21wb25lbnQuIEJ5IGRlZmF1bHQgMTByZW0uXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUge3N0cmluZ31cclxuICAgICAqIEBtZW1iZXJvZiBTZHNEdXJhdGlvbkJveENvbXBvbmVudFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSB3aWR0aDogc3RyaW5nID0gJzEwcmVtJztcclxuXHJcbiAgICAvKipcclxuICAgICAqIFNwZWNpZmllcyB3aGV0aGVyIHRoZSBVSSBjb21wb25lbnQgcmVzcG9uZHMgdG8gdXNlciBpbnRlcmFjdGlvbi5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cclxuICAgICAqIEBtZW1iZXJvZiBTZHNEdXJhdGlvbkJveENvbXBvbmVudFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgXHJcbiAgICAvKipcclxuICAgICAqIFNwZWNpZmllcyB3aGV0aGVyIHRvIGRpc3BsYXkgdGhlIENsZWFyIGJ1dHRvbiBpbiB0aGUgVUkgY29tcG9uZW50LlxyXG4gICAgICpcclxuICAgICAqIEB0eXBlIHtib29sZWFufVxyXG4gICAgICogQG1lbWJlcm9mIFNkc0R1cmF0aW9uQm94Q29tcG9uZW50XHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHNob3dDbGVhckJ1dHRvbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGhlIG1heGltdW0gdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGR1cmF0aW9uIGJveC5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7bnVtYmVyfVxyXG4gICAgICogQG1lbWJlcm9mIFNkc0R1cmF0aW9uQm94Q29tcG9uZW50XHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIG1heD86IG51bWJlcjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFRoZSBtaW5pbXVtIHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBkdXJhdGlvbiBib3guXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUge251bWJlcn1cclxuICAgICAqIEBtZW1iZXJvZiBTZHNEdXJhdGlvbkJveENvbXBvbmVudFxyXG4gICAgICovICAgIFxyXG4gICAgQElucHV0KCkgbWluPzogbnVtYmVyO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogU3BlY2lmaWVzIGhvdyByYW5nZSBsaW1pdHMgYXJlIGhhbmRsZWQuXHJcbiAgICAgKlxyXG4gICAgICogQHR5cGUgeygnZmFsbGJhY2tUb0xhc3RWYWx1ZScgfCAnc2hvd1ZhbGlkYXRpb25FcnJvcicpfVxyXG4gICAgICogQG1lbWJlcm9mIFNkc0R1cmF0aW9uQm94Q29tcG9uZW50XHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHJhbmdlVmlvbGF0aW9uSGFuZGxpbmc6IER1cmF0aW9uQm94UmFuZ2VWaW9sYXRpb25IYW5kbGluZyA9ICdhdXRvUmVzb2x2ZSc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSYW5nZSB2aW9sYXRpb24gbWVzc2FnZS4gQXBwbGljYWJsZSB3aGVuIHJhbmdlVmlvbGF0aW9uSGFuZGxpbmcgaXMgc2V0IHRvICdhdXRvUmVzb2x2ZSdcclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7c3RyaW5nfVxyXG4gICAgICogQG1lbWJlcm9mIFNkc0R1cmF0aW9uQm94Q29tcG9uZW50XHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHJhbmdlVmlvbGF0aW9uVGV4dDogc3RyaW5nID0gJ3ZhbHVlIGlzIG91dHNpZGUgdGhlIHZhbGlkIHJhbmdlJztcclxuXHJcbiAgICAvKipcclxuICAgICAqIEluZGljYXRlcyB3aGV0aGVyIHRoZSBlZGl0b3IncyB2YWx1ZSBpcyB2YWxpZC5cclxuICAgICAqXHJcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cclxuICAgICAqIEBtZW1iZXJvZiBTZHNEdXJhdGlvbkJveENvbXBvbmVudFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgaXNWYWxpZDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG5cclxuXHJcbiAgICAvLyBwdWJsaWMgZWxlbWVudFVVSUQgPSAnc2RzLWRiLScgKyBjcnlwdG8ucmFuZG9tVVVJRCgpO1xyXG4gICAgcHVibGljIGVsZW1lbnRVVUlEID0gYHNkcy1kYi0ke01hdGguY2VpbChNYXRoLnJhbmRvbSgpICogMTAwMDAwMCl9YDtcclxuXHJcblxyXG4gICAgcHVibGljIGlucHV0VmFsdWU6IHN0cmluZyA9ICcnO1xyXG4gICAgcHVibGljIHNob3dPcHRpb25zOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBcclxuICAgIHB1YmxpYyBvcHRpb25zRHJvcGRvd25CdXR0b247XHJcbiAgICBwdWJsaWMgY2xlYXJWYWx1ZUJ1dHRvbjtcclxuXHJcbiAgICBwdWJsaWMgaXNWYWx1ZUVtcHR5ID0gZmFsc2U7XHJcblxyXG5cclxuICAgIEBWaWV3Q2hpbGQoJ3ZhbGlkYXRpb25SdWxlJywgeyBzdGF0aWM6IGZhbHNlIH0pIHByaXZhdGUgX3ZhbGlkYXRpb25SdWxlOiBEeGlWYWxpZGF0aW9uUnVsZUNvbXBvbmVudCB8IHVuZGVmaW5lZDtcclxuICAgIEBWaWV3Q2hpbGQoJ3ZhbGlkYXRvcicsIHsgc3RhdGljOiBmYWxzZSB9KSBwcml2YXRlIF92YWxpZGF0b3I6IER4VmFsaWRhdG9yQ29tcG9uZW50IHwgdW5kZWZpbmVkO1xyXG5cclxuICAgIHByaXZhdGUgaXNWYWx1ZVNldEludGVybmFsbHkgPSBmYWxzZTtcclxuICAgIHByaXZhdGUgX2R1cmF0aW9uUGlwZTogU2RzRHVyYXRpb25Gb3JtYXRQaXBlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgX2R1cmF0aW9uSW5wdXRSZXNvbHZlcjogRHVyYXRpb25TZXJ2aWNlLFxyXG4gICAgKSB7XHJcbiAgICAgICAgdGhpcy5fZHVyYXRpb25QaXBlID0gbmV3IFNkc0R1cmF0aW9uRm9ybWF0UGlwZSgpO1xyXG4gICAgICAgIFxyXG4gICAgICAgIHRoaXMub3B0aW9uc0Ryb3Bkb3duQnV0dG9uID0gIHtcclxuICAgICAgICAgICAgaWNvbjogJ3NwaW5kb3duJyxcclxuICAgICAgICAgICAgc3R5bGluZ01vZGU6ICd0ZXh0JyxcclxuICAgIFxyXG4gICAgICAgICAgICBvbkNsaWNrOiAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNob3dPcHRpb25zID0gIXRoaXMuc2hvd09wdGlvbnM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuY2xlYXJWYWx1ZUJ1dHRvbiA9ICB7XHJcbiAgICAgICAgICAgIGljb246ICdjbGVhcicsXHJcbiAgICAgICAgICAgIHN0eWxpbmdNb2RlOiAndGV4dCcsXHJcbiAgICAgICAgICAgIGVsZW1lbnRBdHRyOiB7IGNsYXNzOiAnc2RzLWR1cmF0aW9uYm94LWNsZWFyLWJ1dHRvbicgfSxcclxuICAgICAgICAgICAgb25DbGljazogKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5hcHBseU9wdGlvbihudWxsKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gICAgICAgIFxyXG4gICAgfVxyXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLl92YWxpZGF0aW9uUnVsZSkge1xyXG4gICAgICAgICAgICB0aGlzLl92YWxpZGF0aW9uUnVsZS52YWxpZGF0aW9uQ2FsbGJhY2sgPSAoKSA9PiB7IHJldHVybiB0aGlzLmNoZWNrSWZWYWxpZCgpIH07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgICAgICBpZiAoY2hhbmdlc1sndmFsdWUnXSkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy52YWx1ZSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgLy8gaGFuZGxlIG51bGwgaW5wdXRcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmFsbG93RW1wdHlWYWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0VmFsdWUobnVsbCk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0VmFsdWUodGhpcy5fZHVyYXRpb25JbnB1dFJlc29sdmVyLmdldERlZmF1bHRWYWx1ZSgpKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLl9kdXJhdGlvblBpcGUudHJhbnNmb3JtKHRoaXMudmFsdWUsIHRoaXMuZW1wdHlWYWx1ZVRleHQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgLy8gaGFuZGxlIHZhbHVlIGlucHV0XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5fZHVyYXRpb25JbnB1dFJlc29sdmVyLmlzVmFsdWVXaXRoaW5MaW1pdHModGhpcy52YWx1ZSwgdGhpcy5taW4sIHRoaXMubWF4KSl7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy5fZHVyYXRpb25QaXBlLnRyYW5zZm9ybSh0aGlzLnZhbHVlLCB0aGlzLmVtcHR5VmFsdWVUZXh0KTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gdmFsdWUgaXMgb3V0IG9mIHJhbmdlXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMucmFuZ2VWaW9sYXRpb25IYW5kbGluZyA9PT0gJ2F1dG9SZXNvbHZlJyl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0VmFsdWUodGhpcy5fZHVyYXRpb25JbnB1dFJlc29sdmVyLmdldERlZmF1bHRWYWx1ZSh0aGlzLm1pbiwgdGhpcy5tYXgpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy5fZHVyYXRpb25QaXBlLnRyYW5zZm9ybSh0aGlzLnZhbHVlLCB0aGlzLmVtcHR5VmFsdWVUZXh0KTtcclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLl9kdXJhdGlvblBpcGUudHJhbnNmb3JtKHRoaXMudmFsdWUsIHRoaXMuZW1wdHlWYWx1ZVRleHQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFZhbGlkYXRpb25TdGF0dXNBbmRWYWxpZGF0ZShmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHt9XHJcblxyXG4gICAgcHVibGljIGJsb2NrTm9uTnVtYmVyT3JTZW1pY29sb24oZTogYW55KSB7XHJcbiAgICAgICAgdGhpcy5pc1ZhbHVlU2V0SW50ZXJuYWxseSA9IGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyByZXNvbHZlSW5wdXQoKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmlzVmFsdWVTZXRJbnRlcm5hbGx5KXtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLl9kdXJhdGlvbklucHV0UmVzb2x2ZXIuaXNWYWxpZElucHV0KHRoaXMuaW5wdXRWYWx1ZSkpIHtcclxuICAgICAgICAgICAgICAgIC8vIHdlIGhhdmUgaW52YWxpZCBpbnB1dC4gdXNlIG9sZCB2YWx1ZVxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRJbnB1dFZhbHVlSW50ZXJuYWxseSh0aGlzLnZhbHVlKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0VmFsaWRhdGlvblN0YXR1c0FuZFZhbGlkYXRlKHRydWUpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgcmVzb2x2ZWRWYWx1ZSA9IHRoaXMuX2R1cmF0aW9uSW5wdXRSZXNvbHZlci5yZXNvbHZlKHRoaXMuaW5wdXRWYWx1ZSk7XHJcbiAgICAgICAgICAgICAgICBpZiAocmVzb2x2ZWRWYWx1ZSA9PT0gbnVsbCAmJiB0aGlzLmFsbG93RW1wdHlWYWx1ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0VmFsdWUobnVsbCk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRWYWxpZGF0aW9uU3RhdHVzQW5kVmFsaWRhdGUodHJ1ZSk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJlc29sdmVkVmFsdWUgPT09IG51bGwgJiYgIXRoaXMuYWxsb3dFbXB0eVZhbHVlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRWYWx1ZSh0aGlzLl9kdXJhdGlvbklucHV0UmVzb2x2ZXIuZ2V0RGVmYXVsdFZhbHVlKCkpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0VmFsaWRhdGlvblN0YXR1c0FuZFZhbGlkYXRlKHRydWUpO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBtYWtlIHN1cmUgdGhhdCB0aGUgdmFsdWUgaXMgd2l0aGluIHRoZSBtaW4vbWF4IHBlcmlvZFxyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLl9kdXJhdGlvbklucHV0UmVzb2x2ZXIuaXNWYWx1ZVdpdGhpbkxpbWl0cyhyZXNvbHZlZFZhbHVlIGFzIG51bWJlciwgdGhpcy5taW4sIHRoaXMubWF4KSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFZhbHVlKHJlc29sdmVkVmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFZhbGlkYXRpb25TdGF0dXNBbmRWYWxpZGF0ZSh0cnVlKTtcclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyB1c2Ugb2xkIHZhbHVlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLnJhbmdlVmlvbGF0aW9uSGFuZGxpbmcgPT09ICdhdXRvUmVzb2x2ZScpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRJbnB1dFZhbHVlSW50ZXJuYWxseSh0aGlzLnZhbHVlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0VmFsaWRhdGlvblN0YXR1c0FuZFZhbGlkYXRlKHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRJbnB1dFZhbHVlSW50ZXJuYWxseShyZXNvbHZlZFZhbHVlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0VmFsaWRhdGlvblN0YXR1c0FuZFZhbGlkYXRlKGZhbHNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYXBwbHlPcHRpb24odmFsdWU6IG51bWJlciB8IG51bGwpe1xyXG4gICAgICAgIHRoaXMuc2hvd09wdGlvbnMgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmlzVmFsdWVTZXRJbnRlcm5hbGx5ID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGNoZWNrSWZWYWxpZCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5pc1ZhbGlkO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgc2V0VmFsdWUodmFsdWU6IG51bWJlciB8IG51bGwpe1xyXG4gICAgICAgIHRoaXMuaXNWYWx1ZUVtcHR5ID0gKHZhbHVlID09PSBudWxsKTtcclxuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xyXG4gICAgICAgIHRoaXMuc2V0SW5wdXRWYWx1ZUludGVybmFsbHkodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgc2V0SW5wdXRWYWx1ZUludGVybmFsbHkodmFsdWU6IG51bWJlciB8IG51bGwpe1xyXG4gICAgICAgIHRoaXMuaXNWYWx1ZVNldEludGVybmFsbHkgPSB0cnVlO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLl9kdXJhdGlvblBpcGUudHJhbnNmb3JtKHZhbHVlLCB0aGlzLmVtcHR5VmFsdWVUZXh0KTtcclxuICAgICAgICB9LCAwKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHNldFZhbGlkYXRpb25TdGF0dXNBbmRWYWxpZGF0ZShpc1ZhbGlkOiBib29sZWFuKXtcclxuICAgICAgICB0aGlzLmlzVmFsaWQgPSAodGhpcy5yYW5nZVZpb2xhdGlvbkhhbmRsaW5nID09PSAnYXV0b1Jlc29sdmUnKSB8fCBpc1ZhbGlkO1xyXG4gICAgICAgIHRoaXMuX3ZhbGlkYXRvcj8uaW5zdGFuY2UudmFsaWRhdGUoKTtcclxuICAgIH1cclxuXHJcbn1cclxuIiwiPGR4LXRleHQtYm94XHJcbiAgICAjdGV4dGJveFxyXG4gICAgW2lkXT1cImVsZW1lbnRVVUlEXCJcclxuICAgIGNsYXNzPVwic2RzLWR1cmF0aW9uYm94XCJcclxuICAgIFsodmFsdWUpXT1cImlucHV0VmFsdWVcIlxyXG4gICAgKG9uS2V5RG93bik9XCJibG9ja05vbk51bWJlck9yU2VtaWNvbG9uKCRldmVudClcIlxyXG4gICAgKG9uQ2hhbmdlKT1cInJlc29sdmVJbnB1dCgpXCJcclxuICAgIFt3aWR0aF09XCJ3aWR0aFwiXHJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgPlxyXG5cclxuICAgIDxkeC12YWxpZGF0b3IgXHJcbiAgICAgICAgI3ZhbGlkYXRvclxyXG4gICAgICAgICpuZ0lmPVwicmFuZ2VWaW9sYXRpb25IYW5kbGluZyA9PT0gJ21hcmtBc0ludmFsaWQnXCI+XHJcbiAgICAgICAgPGR4aS12YWxpZGF0aW9uLXJ1bGVcclxuICAgICAgICAgICAgI3ZhbGlkYXRpb25SdWxlXHJcbiAgICAgICAgICAgIHR5cGU9XCJjdXN0b21cIlxyXG4gICAgICAgICAgICBbbWVzc2FnZV09XCJyYW5nZVZpb2xhdGlvblRleHRcIlxyXG4gICAgICAgICAgICBbcmVldmFsdWF0ZV09XCJ0cnVlXCJcclxuICAgICAgICA+PC9keGktdmFsaWRhdGlvbi1ydWxlPlxyXG4gICAgPC9keC12YWxpZGF0b3I+XHJcblxyXG4gICAgPGR4aS1idXR0b25cclxuICAgICAgICAqbmdJZj1cImFsbG93RW1wdHlWYWx1ZSAmJiBzaG93Q2xlYXJCdXR0b25cIlxyXG4gICAgICAgIG5hbWU9XCJjbGVhclZhbHVlXCJcclxuICAgICAgICBsb2NhdGlvbj1cImFmdGVyXCJcclxuICAgICAgICBbb3B0aW9uc109XCJjbGVhclZhbHVlQnV0dG9uXCJcclxuICAgID48L2R4aS1idXR0b24+XHJcbiAgICBcclxuICAgIDxkeGktYnV0dG9uXHJcbiAgICAgICAgKm5nSWY9XCJvcHRpb25zICYmIG9wdGlvbnMubGVuZ3RoID4gMFwiXHJcbiAgICAgICAgbmFtZT1cIm9wdGlvbnNEcm9wZG93blwiXHJcbiAgICAgICAgbG9jYXRpb249XCJhZnRlclwiXHJcbiAgICAgICAgW29wdGlvbnNdPVwib3B0aW9uc0Ryb3Bkb3duQnV0dG9uXCJcclxuICAgID48L2R4aS1idXR0b24+XHJcbjwvZHgtdGV4dC1ib3g+XHJcblxyXG5cclxuPGR4LXBvcG92ZXJcclxuICAgIHRhcmdldD1cIiN7e2VsZW1lbnRVVUlEfX1cIlxyXG4gICAgWyh2aXNpYmxlKV09XCJzaG93T3B0aW9uc1wiXHJcbiAgICBbbWluV2lkdGhdPVwid2lkdGhcIlxyXG4gICAgW2hpZGVPbk91dHNpZGVDbGlja109XCJ0cnVlXCJcclxuICAgIFt3cmFwcGVyQXR0cl09XCJ7IGNsYXNzOiAnc2RzLWR1cmF0aW9uYm94LW9wdGlvbnMtcG9wb3ZlcicgfVwiXHJcbiAgICA+XHJcblxyXG4gICAgPGRpdiAqZHhUZW1wbGF0ZT1cImxldCBkYXRhIG9mICdjb250ZW50J1wiPlxyXG4gICAgICAgIDxkeC1zY3JvbGwtdmlldz5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJkcm9wZG93bi1pdGVtIGJvcmRlci0wXCJcclxuICAgICAgICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF0gPSBcImlzVmFsdWVFbXB0eVwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiYXBwbHlPcHRpb24obnVsbClcIlxyXG4gICAgICAgICAgICAgICAgPiB7eyBlbXB0eVZhbHVlVGV4dH19XHJcbiAgICAgICAgPC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBvcHRpb24gb2Ygb3B0aW9uc1wiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZHJvcGRvd24taXRlbSBib3JkZXItMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnNlbGVjdGVkXSA9IFwib3B0aW9uID09PSB2YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImFwcGx5T3B0aW9uKG9wdGlvbilcIlxyXG4gICAgICAgICAgICAgICAgPiB7e29wdGlvbiB8IHNkc0R1cmF0aW9uRm9ybWF0fX1cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZHgtc2Nyb2xsLXZpZXc+XHJcbiAgICA8L2Rpdj5cclxuPC9keC1wb3BvdmVyPiJdfQ==
@@ -0,0 +1,46 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { SdsDurationBoxComponent } from './duration-box.component';
4
+ import { DxPopoverModule, DxScrollViewModule, DxTextBoxModule, DxValidatorModule } from 'devextreme-angular';
5
+ import { SdsDurationPipeModule } from '@spicainternational/ngx-sds-components/src/lib/duration-pipe';
6
+ import * as i0 from "@angular/core";
7
+ const components = [
8
+ SdsDurationBoxComponent
9
+ ];
10
+ export class SdsDurationBoxModule {
11
+ }
12
+ SdsDurationBoxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDurationBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
+ SdsDurationBoxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDurationBoxModule, declarations: [SdsDurationBoxComponent], imports: [CommonModule,
14
+ SdsDurationPipeModule,
15
+ DxTextBoxModule,
16
+ DxPopoverModule,
17
+ DxScrollViewModule,
18
+ DxValidatorModule], exports: [SdsDurationBoxComponent] });
19
+ SdsDurationBoxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDurationBoxModule, imports: [[
20
+ CommonModule,
21
+ SdsDurationPipeModule,
22
+ DxTextBoxModule,
23
+ DxPopoverModule,
24
+ DxScrollViewModule,
25
+ DxValidatorModule,
26
+ ]] });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDurationBoxModule, decorators: [{
28
+ type: NgModule,
29
+ args: [{
30
+ declarations: [
31
+ SdsDurationBoxComponent
32
+ ],
33
+ imports: [
34
+ CommonModule,
35
+ SdsDurationPipeModule,
36
+ DxTextBoxModule,
37
+ DxPopoverModule,
38
+ DxScrollViewModule,
39
+ DxValidatorModule,
40
+ ],
41
+ exports: [
42
+ ...components
43
+ ]
44
+ }]
45
+ }] });
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVyYXRpb24tYm94Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2R1cmF0aW9uLWJveC9kdXJhdGlvbi1ib3gubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDN0csT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOERBQThELENBQUM7O0FBSXJHLE1BQU0sVUFBVSxHQUFHO0lBQ2YsdUJBQXVCO0NBQzFCLENBQUE7QUFvQkQsTUFBTSxPQUFPLG9CQUFvQjs7aUhBQXBCLG9CQUFvQjtrSEFBcEIsb0JBQW9CLGlCQWhCN0IsdUJBQXVCLGFBR3ZCLFlBQVk7UUFFWixxQkFBcUI7UUFFckIsZUFBZTtRQUNmLGVBQWU7UUFDZixrQkFBa0I7UUFDbEIsaUJBQWlCLGFBZmpCLHVCQUF1QjtrSEFxQmQsb0JBQW9CLFlBZHRCO1lBQ1AsWUFBWTtZQUVaLHFCQUFxQjtZQUVyQixlQUFlO1lBQ2YsZUFBZTtZQUNmLGtCQUFrQjtZQUNsQixpQkFBaUI7U0FDbEI7MkZBS1Usb0JBQW9CO2tCQWxCaEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osdUJBQXVCO3FCQUN4QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFFWixxQkFBcUI7d0JBRXJCLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGlCQUFpQjtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLEdBQUcsVUFBVTtxQkFDZDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFNkc0R1cmF0aW9uQm94Q29tcG9uZW50IH0gZnJvbSAnLi9kdXJhdGlvbi1ib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgRHhQb3BvdmVyTW9kdWxlLCBEeFNjcm9sbFZpZXdNb2R1bGUsIER4VGV4dEJveE1vZHVsZSwgRHhWYWxpZGF0b3JNb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXInO1xyXG5pbXBvcnQgeyBTZHNEdXJhdGlvblBpcGVNb2R1bGUgfSBmcm9tICdAc3BpY2FpbnRlcm5hdGlvbmFsL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2R1cmF0aW9uLXBpcGUnO1xyXG5cclxuXHJcblxyXG5jb25zdCBjb21wb25lbnRzID0gW1xyXG4gICAgU2RzRHVyYXRpb25Cb3hDb21wb25lbnRcclxuXVxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFNkc0R1cmF0aW9uQm94Q29tcG9uZW50XHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcblxyXG4gICAgU2RzRHVyYXRpb25QaXBlTW9kdWxlLFxyXG4gICAgXHJcbiAgICBEeFRleHRCb3hNb2R1bGUsXHJcbiAgICBEeFBvcG92ZXJNb2R1bGUsXHJcbiAgICBEeFNjcm9sbFZpZXdNb2R1bGUsXHJcbiAgICBEeFZhbGlkYXRvck1vZHVsZSxcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIC4uLmNvbXBvbmVudHNcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZHNEdXJhdGlvbkJveE1vZHVsZSB7IH1cclxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVyYXRpb24tYm94LnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNkcy1jb21wb25lbnRzL3NyYy9saWIvZHVyYXRpb24tYm94L2R1cmF0aW9uLWJveC50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgRHVyYXRpb25Cb3hSYW5nZVZpb2xhdGlvbkhhbmRsaW5nID0gJ2F1dG9SZXNvbHZlJyB8ICdtYXJrQXNJbnZhbGlkJzsiXX0=
@@ -0,0 +1,69 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class DurationService {
4
+ constructor() { }
5
+ resolve(input) {
6
+ if (!input || input.length === 0) {
7
+ return 0;
8
+ }
9
+ const inputSegments = input.split(':');
10
+ if (inputSegments.length > 2) {
11
+ //invalid input
12
+ return 0;
13
+ }
14
+ else if (inputSegments.length == 2) {
15
+ // we have hrs and minutes
16
+ const hrs = parseInt(inputSegments[0] ? inputSegments[0] : '0');
17
+ const mins = parseInt(inputSegments[1] ? inputSegments[1] : '0');
18
+ const totalMins = (hrs * 60) + mins;
19
+ return totalMins;
20
+ }
21
+ else if (inputSegments.length == 1) {
22
+ // take last two digits as mins
23
+ const nonSeparated = inputSegments[0];
24
+ let totalMins = 0;
25
+ if (nonSeparated.length <= 2) {
26
+ totalMins = parseInt(nonSeparated);
27
+ }
28
+ else {
29
+ const lastIndex = nonSeparated.length - 2;
30
+ const part1 = nonSeparated.slice(0, lastIndex);
31
+ const part2 = nonSeparated.slice(lastIndex);
32
+ const hrs = parseInt(part1);
33
+ const mins = parseInt(part2);
34
+ totalMins = (hrs * 60) + mins;
35
+ }
36
+ return totalMins;
37
+ }
38
+ return 0;
39
+ }
40
+ isValidInput(input) {
41
+ const regexNumbersOnly = /^[+-]?\d+$/;
42
+ const regexColonSeparated = /^[+-]?\d+:\d+$/;
43
+ return regexNumbersOnly.test(input) || regexColonSeparated.test(input);
44
+ }
45
+ getDefaultValue(min, max) {
46
+ let defaultValue = 0;
47
+ // try keeping the 0 as default
48
+ // if it is outside the min/max then adjust
49
+ if (min) {
50
+ defaultValue = Math.max(defaultValue, min);
51
+ }
52
+ if (max) {
53
+ defaultValue = Math.min(defaultValue, max);
54
+ }
55
+ return defaultValue;
56
+ }
57
+ isValueWithinLimits(value, min, max) {
58
+ return !((min && value < min) || (max && value > max));
59
+ }
60
+ }
61
+ DurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: DurationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
62
+ DurationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: DurationService, providedIn: 'root' });
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: DurationService, decorators: [{
64
+ type: Injectable,
65
+ args: [{
66
+ providedIn: 'root',
67
+ }]
68
+ }], ctorParameters: function () { return []; } });
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVyYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2R1cmF0aW9uLWJveC9kdXJhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxlQUFlO0lBRXhCLGdCQUFlLENBQUM7SUFFVCxPQUFPLENBQUMsS0FBYTtRQUN4QixJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzlCLE9BQU8sQ0FBQyxDQUFDO1NBQ1o7UUFFRCxNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZDLElBQUksYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDMUIsZUFBZTtZQUNmLE9BQU8sQ0FBQyxDQUFDO1NBQ1o7YUFBTSxJQUFJLGFBQWEsQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFDO1lBQ2pDLDBCQUEwQjtZQUMxQixNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2hFLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDakUsTUFBTSxTQUFTLEdBQUcsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBRXBDLE9BQU8sU0FBUyxDQUFDO1NBQ3BCO2FBQU0sSUFBSSxhQUFhLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRTtZQUNsQywrQkFBK0I7WUFDL0IsTUFBTSxZQUFZLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRXRDLElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQztZQUNsQixJQUFJLFlBQVksQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFO2dCQUMxQixTQUFTLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFBO2FBQ3JDO2lCQUFNO2dCQUNILE1BQU0sU0FBUyxHQUFHLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2dCQUMxQyxNQUFNLEtBQUssR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztnQkFDL0MsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDNUMsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUM1QixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzdCLFNBQVMsR0FBRyxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUM7YUFDakM7WUFDRCxPQUFPLFNBQVMsQ0FBQztTQUNwQjtRQUNELE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVNLFlBQVksQ0FBQyxLQUFhO1FBQzdCLE1BQU0sZ0JBQWdCLEdBQUcsWUFBWSxDQUFDO1FBQ3RDLE1BQU0sbUJBQW1CLEdBQUksZ0JBQWdCLENBQUM7UUFDOUMsT0FBTyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFTSxlQUFlLENBQUMsR0FBWSxFQUFFLEdBQVk7UUFDN0MsSUFBSSxZQUFZLEdBQUcsQ0FBQyxDQUFDO1FBQ3JCLCtCQUErQjtRQUMvQiwyQ0FBMkM7UUFDM0MsSUFBSSxHQUFHLEVBQUU7WUFDTCxZQUFZLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDOUM7UUFDRCxJQUFJLEdBQUcsRUFBRTtZQUNMLFlBQVksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxHQUFHLENBQUMsQ0FBQztTQUM5QztRQUNELE9BQU8sWUFBWSxDQUFDO0lBQ3hCLENBQUM7SUFFTSxtQkFBbUIsQ0FBQyxLQUFhLEVBQUUsR0FBWSxFQUFFLEdBQVk7UUFDaEUsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksS0FBSyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLEtBQUssR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFBO0lBQzFELENBQUM7OzRHQTdEUSxlQUFlO2dIQUFmLGVBQWUsY0FGWixNQUFNOzJGQUVULGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHVyYXRpb25TZXJ2aWNlIHtcclxuICAgIFxyXG4gICAgY29uc3RydWN0b3IoKSB7fVxyXG5cclxuICAgIHB1YmxpYyByZXNvbHZlKGlucHV0OiBzdHJpbmcpOiBudW1iZXIgfCBudWxse1xyXG4gICAgICAgIGlmICghaW5wdXQgfHwgaW5wdXQubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgaW5wdXRTZWdtZW50cyA9IGlucHV0LnNwbGl0KCc6Jyk7XHJcbiAgICAgICAgaWYgKGlucHV0U2VnbWVudHMubGVuZ3RoID4gMikge1xyXG4gICAgICAgICAgICAvL2ludmFsaWQgaW5wdXRcclxuICAgICAgICAgICAgcmV0dXJuIDA7XHJcbiAgICAgICAgfSBlbHNlIGlmIChpbnB1dFNlZ21lbnRzLmxlbmd0aCA9PSAyKXtcclxuICAgICAgICAgICAgLy8gd2UgaGF2ZSBocnMgYW5kIG1pbnV0ZXNcclxuICAgICAgICAgICAgY29uc3QgaHJzID0gcGFyc2VJbnQoaW5wdXRTZWdtZW50c1swXSA/IGlucHV0U2VnbWVudHNbMF0gOiAnMCcpO1xyXG4gICAgICAgICAgICBjb25zdCBtaW5zID0gcGFyc2VJbnQoaW5wdXRTZWdtZW50c1sxXSA/IGlucHV0U2VnbWVudHNbMV0gOiAnMCcpO1xyXG4gICAgICAgICAgICBjb25zdCB0b3RhbE1pbnMgPSAoaHJzICogNjApICsgbWlucztcclxuXHJcbiAgICAgICAgICAgIHJldHVybiB0b3RhbE1pbnM7XHJcbiAgICAgICAgfSBlbHNlIGlmIChpbnB1dFNlZ21lbnRzLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICAgIC8vIHRha2UgbGFzdCB0d28gZGlnaXRzIGFzIG1pbnNcclxuICAgICAgICAgICAgY29uc3Qgbm9uU2VwYXJhdGVkID0gaW5wdXRTZWdtZW50c1swXTtcclxuXHJcbiAgICAgICAgICAgIGxldCB0b3RhbE1pbnMgPSAwO1xyXG4gICAgICAgICAgICBpZiAobm9uU2VwYXJhdGVkLmxlbmd0aCA8PSAyKSB7XHJcbiAgICAgICAgICAgICAgICB0b3RhbE1pbnMgPSBwYXJzZUludChub25TZXBhcmF0ZWQpXHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBsYXN0SW5kZXggPSBub25TZXBhcmF0ZWQubGVuZ3RoIC0gMjtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHBhcnQxID0gbm9uU2VwYXJhdGVkLnNsaWNlKDAsIGxhc3RJbmRleCk7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBwYXJ0MiA9IG5vblNlcGFyYXRlZC5zbGljZShsYXN0SW5kZXgpO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgaHJzID0gcGFyc2VJbnQocGFydDEpO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgbWlucyA9IHBhcnNlSW50KHBhcnQyKTtcclxuICAgICAgICAgICAgICAgIHRvdGFsTWlucyA9IChocnMgKiA2MCkgKyBtaW5zOyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiB0b3RhbE1pbnM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiAwOyAgICAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGlzVmFsaWRJbnB1dChpbnB1dDogc3RyaW5nKSB7XHJcbiAgICAgICAgY29uc3QgcmVnZXhOdW1iZXJzT25seSA9IC9eWystXT9cXGQrJC87XHJcbiAgICAgICAgY29uc3QgcmVnZXhDb2xvblNlcGFyYXRlZCA9ICAvXlsrLV0/XFxkKzpcXGQrJC87XHJcbiAgICAgICAgcmV0dXJuIHJlZ2V4TnVtYmVyc09ubHkudGVzdChpbnB1dCkgfHwgcmVnZXhDb2xvblNlcGFyYXRlZC50ZXN0KGlucHV0KTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0RGVmYXVsdFZhbHVlKG1pbj86IG51bWJlciwgbWF4PzogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgICAgICBsZXQgZGVmYXVsdFZhbHVlID0gMDtcclxuICAgICAgICAvLyB0cnkga2VlcGluZyB0aGUgMCBhcyBkZWZhdWx0XHJcbiAgICAgICAgLy8gaWYgaXQgaXMgb3V0c2lkZSB0aGUgbWluL21heCB0aGVuIGFkanVzdFxyXG4gICAgICAgIGlmIChtaW4pIHtcclxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlID0gTWF0aC5tYXgoZGVmYXVsdFZhbHVlLCBtaW4pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAobWF4KSB7XHJcbiAgICAgICAgICAgIGRlZmF1bHRWYWx1ZSA9IE1hdGgubWluKGRlZmF1bHRWYWx1ZSwgbWF4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaXNWYWx1ZVdpdGhpbkxpbWl0cyh2YWx1ZTogbnVtYmVyLCBtaW4/OiBudW1iZXIsIG1heD86IG51bWJlcik6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhKChtaW4gJiYgdmFsdWUgPCBtaW4pIHx8IChtYXggJiYgdmFsdWUgPiBtYXgpKVxyXG4gICAgfSAgXHJcblxyXG59XHJcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './duration-box.module';
2
+ export * from './duration-box.component';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2R1cmF0aW9uLWJveC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZHVyYXRpb24tYm94Lm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZHVyYXRpb24tYm94LmNvbXBvbmVudCc7XHJcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BpY2FpbnRlcm5hdGlvbmFsLW5neC1zZHMtY29tcG9uZW50cy1zcmMtbGliLWR1cmF0aW9uLWJveC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2R1cmF0aW9uLWJveC9zcGljYWludGVybmF0aW9uYWwtbmd4LXNkcy1jb21wb25lbnRzLXNyYy1saWItZHVyYXRpb24tYm94LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -0,0 +1,26 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class SdsDurationFormatPipe {
4
+ transform(value, emptyValueText = '') {
5
+ if (value === null) {
6
+ return emptyValueText;
7
+ }
8
+ else if (typeof value === 'number') {
9
+ const sign = Math.sign(value);
10
+ value = Math.abs(value);
11
+ const hours = Math.floor(value / 60);
12
+ const mins = value % 60;
13
+ return `${sign === -1 ? '-' : ''}${hours.toString().padStart(1, '0')}:${mins.toString().padStart(2, '0')}`;
14
+ }
15
+ return '';
16
+ }
17
+ }
18
+ SdsDurationFormatPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDurationFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
19
+ SdsDurationFormatPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDurationFormatPipe, name: "sdsDurationFormat" });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDurationFormatPipe, decorators: [{
21
+ type: Pipe,
22
+ args: [{
23
+ name: 'sdsDurationFormat',
24
+ }]
25
+ }] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVyYXRpb24tZm9ybWF0LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9kdXJhdGlvbi1waXBlL2R1cmF0aW9uLWZvcm1hdC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQUtwRCxNQUFNLE9BQU8scUJBQXFCO0lBQzlCLFNBQVMsQ0FBQyxLQUFvQixFQUFFLGlCQUF5QixFQUFFO1FBQ3ZELElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtZQUNoQixPQUFPLGNBQWMsQ0FBQztTQUN6QjthQUFNLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1lBQ2xDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDOUIsS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDeEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDckMsTUFBTSxJQUFJLEdBQUcsS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUN4QixPQUFPLEdBQUcsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDO1NBQzlHO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDOztrSEFaUSxxQkFBcUI7Z0hBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUhqQyxJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxtQkFBbUI7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQFBpcGUoe1xyXG4gICAgbmFtZTogJ3Nkc0R1cmF0aW9uRm9ybWF0JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkc0R1cmF0aW9uRm9ybWF0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gICAgdHJhbnNmb3JtKHZhbHVlOiBudW1iZXIgfCBudWxsLCBlbXB0eVZhbHVlVGV4dDogc3RyaW5nID0gJycpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZW1wdHlWYWx1ZVRleHQ7XHJcbiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNpZ24gPSBNYXRoLnNpZ24odmFsdWUpO1xyXG4gICAgICAgICAgICB2YWx1ZSA9IE1hdGguYWJzKHZhbHVlKTtcclxuICAgICAgICAgICAgY29uc3QgaG91cnMgPSBNYXRoLmZsb29yKHZhbHVlIC8gNjApO1xyXG4gICAgICAgICAgICBjb25zdCBtaW5zID0gdmFsdWUgJSA2MDtcclxuICAgICAgICAgICAgcmV0dXJuIGAke3NpZ24gPT09IC0xID8gJy0nIDogJyd9JHtob3Vycy50b1N0cmluZygpLnBhZFN0YXJ0KDEsICcwJyl9OiR7bWlucy50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyl9YDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { SdsDurationFormatPipe } from './duration-format.pipe';
4
+ import * as i0 from "@angular/core";
5
+ export class SdsDurationPipeModule {
6
+ }
7
+ SdsDurationPipeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDurationPipeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ SdsDurationPipeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDurationPipeModule, declarations: [SdsDurationFormatPipe], imports: [CommonModule], exports: [SdsDurationFormatPipe] });
9
+ SdsDurationPipeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDurationPipeModule, imports: [[CommonModule]] });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDurationPipeModule, decorators: [{
11
+ type: NgModule,
12
+ args: [{
13
+ declarations: [SdsDurationFormatPipe],
14
+ imports: [CommonModule],
15
+ exports: [SdsDurationFormatPipe],
16
+ }]
17
+ }] });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVyYXRpb24tcGlwZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9kdXJhdGlvbi1waXBlL2R1cmF0aW9uLXBpcGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQU8vRCxNQUFNLE9BQU8scUJBQXFCOztrSEFBckIscUJBQXFCO21IQUFyQixxQkFBcUIsaUJBSmYscUJBQXFCLGFBQzFCLFlBQVksYUFDWixxQkFBcUI7bUhBRXRCLHFCQUFxQixZQUhyQixDQUFDLFlBQVksQ0FBQzsyRkFHZCxxQkFBcUI7a0JBTGpDLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMscUJBQXFCLENBQUM7b0JBQ3JDLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsT0FBTyxFQUFFLENBQUMscUJBQXFCLENBQUM7aUJBQ25DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgU2RzRHVyYXRpb25Gb3JtYXRQaXBlIH0gZnJvbSAnLi9kdXJhdGlvbi1mb3JtYXQucGlwZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbU2RzRHVyYXRpb25Gb3JtYXRQaXBlXSxcclxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxyXG4gICAgZXhwb3J0czogW1Nkc0R1cmF0aW9uRm9ybWF0UGlwZV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZHNEdXJhdGlvblBpcGVNb2R1bGUge31cclxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './duration-pipe.module';
2
+ export * from './duration-format.pipe';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zZHMtY29tcG9uZW50cy9zcmMvbGliL2R1cmF0aW9uLXBpcGUvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2R1cmF0aW9uLXBpcGUubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9kdXJhdGlvbi1mb3JtYXQucGlwZSc7Il19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BpY2FpbnRlcm5hdGlvbmFsLW5neC1zZHMtY29tcG9uZW50cy1zcmMtbGliLWR1cmF0aW9uLXBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2RzLWNvbXBvbmVudHMvc3JjL2xpYi9kdXJhdGlvbi1waXBlL3NwaWNhaW50ZXJuYXRpb25hbC1uZ3gtc2RzLWNvbXBvbmVudHMtc3JjLWxpYi1kdXJhdGlvbi1waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -48,7 +48,7 @@ export class SdsDialogComponent {
48
48
  }
49
49
  }
50
50
  SdsDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
51
- SdsDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SdsDialogComponent, selector: "sds-dialog", inputs: { title: "title", closeText: "closeText", size: "size", primaryButtonText: "primaryButtonText", secondaryButtonText: "secondaryButtonText", primaryButtonClass: "primaryButtonClass", secondaryButtonClass: "secondaryButtonClass", showHeader: "showHeader", showCloseButton: "showCloseButton", showPrimaryButton: "showPrimaryButton", showSecondaryButton: "showSecondaryButton" }, viewQueries: [{ propertyName: "_modal", first: true, predicate: ["modal"], descendants: true, static: true }], ngImport: i0, template: "<sds-modal\r\n #modal\r\n [modalTitle]=\"title\"\r\n [size]=\"size\"\r\n [showCloseButton]=\"showCloseButton\"\r\n [showHeader]=\"showHeader\"\r\n [translations]=\"{ close: closeText}\"\r\n (closeClick)=\"onCloseClick()\"\r\n>\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <ng-container #footer ngProjectAs='footer'>\r\n <button\r\n *ngIf=\"showSecondaryButton\"\r\n class=\"btn\"\r\n [class]=\"secondaryButtonClass\"\r\n (click)=\"onSecondaryClick()\"\r\n >{{secondaryButtonText}}</button>\r\n <button\r\n *ngIf=\"showPrimaryButton\"\r\n class=\"btn\"\r\n [class]=\"primaryButtonClass\"\r\n (click)=\"onPrimaryClick()\"\r\n >{{primaryButtonText}}</button>\r\n </ng-container>\r\n</sds-modal>\r\n", styles: [""], components: [{ type: i1.SdsModalComponent, selector: "sds-modal", inputs: ["modalTitle", "showHeader", "showFooter", "size", "modalDialogId", "showCloseButton", "translations", "isScrollable"], outputs: ["modalOpen", "modalClose", "closeClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
51
+ SdsDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.1", type: SdsDialogComponent, selector: "sds-dialog", inputs: { title: "title", closeText: "closeText", size: "size", primaryButtonText: "primaryButtonText", secondaryButtonText: "secondaryButtonText", primaryButtonClass: "primaryButtonClass", secondaryButtonClass: "secondaryButtonClass", showHeader: "showHeader", showCloseButton: "showCloseButton", showPrimaryButton: "showPrimaryButton", showSecondaryButton: "showSecondaryButton" }, viewQueries: [{ propertyName: "_modal", first: true, predicate: ["modal"], descendants: true, static: true }], ngImport: i0, template: "<sds-modal\r\n #modal\r\n [modalTitle]=\"title\"\r\n [size]=\"size\"\r\n [showCloseButton]=\"showCloseButton\"\r\n [showHeader]=\"showHeader\"\r\n [translations]=\"{ close: closeText}\"\r\n (closeClick)=\"onCloseClick()\"\r\n>\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <ng-container #footer ngProjectAs='footer'>\r\n <button\r\n *ngIf=\"showSecondaryButton\"\r\n class=\"btn\"\r\n [class]=\"secondaryButtonClass\"\r\n (click)=\"onSecondaryClick()\"\r\n >{{secondaryButtonText}}</button>\r\n <button\r\n *ngIf=\"showPrimaryButton\"\r\n class=\"btn\"\r\n [class]=\"primaryButtonClass\"\r\n (click)=\"onPrimaryClick()\"\r\n >{{primaryButtonText}}</button>\r\n </ng-container>\r\n</sds-modal>\r\n", styles: [""], components: [{ type: i1.SdsModalComponent, selector: "sds-modal", inputs: ["modalTitle", "showHeader", "showFooter", "size", "modalDialogId", "showCloseButton", "translations", "isScrollable", "closeOnEscape"], outputs: ["modalOpen", "modalClose", "closeClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
52
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.1", ngImport: i0, type: SdsDialogComponent, decorators: [{
53
53
  type: Component,
54
54
  args: [{ selector: 'sds-dialog', template: "<sds-modal\r\n #modal\r\n [modalTitle]=\"title\"\r\n [size]=\"size\"\r\n [showCloseButton]=\"showCloseButton\"\r\n [showHeader]=\"showHeader\"\r\n [translations]=\"{ close: closeText}\"\r\n (closeClick)=\"onCloseClick()\"\r\n>\r\n <div>\r\n <ng-content></ng-content>\r\n </div>\r\n\r\n <ng-container #footer ngProjectAs='footer'>\r\n <button\r\n *ngIf=\"showSecondaryButton\"\r\n class=\"btn\"\r\n [class]=\"secondaryButtonClass\"\r\n (click)=\"onSecondaryClick()\"\r\n >{{secondaryButtonText}}</button>\r\n <button\r\n *ngIf=\"showPrimaryButton\"\r\n class=\"btn\"\r\n [class]=\"primaryButtonClass\"\r\n (click)=\"onPrimaryClick()\"\r\n >{{primaryButtonText}}</button>\r\n </ng-container>\r\n</sds-modal>\r\n", styles: [""] }]