@datarailsshared/datarailsshared 1.2.1 → 1.3.1

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 (70) hide show
  1. package/bundles/datarailsshared-datarailsshared.umd.js +1378 -0
  2. package/bundles/datarailsshared-datarailsshared.umd.js.map +1 -0
  3. package/datarailsshared-datarailsshared-1.3.1.tgz +0 -0
  4. package/datarailsshared-datarailsshared.d.ts +5 -0
  5. package/datarailsshared-datarailsshared.metadata.json +1 -0
  6. package/esm2015/datarailsshared-datarailsshared.js +6 -0
  7. package/esm2015/lib/date-tags/date-tag.component.js +70 -0
  8. package/esm2015/lib/date-tags/date-tag.module.js +50 -0
  9. package/esm2015/lib/date-tags/day-tag/day-tag.component.js +79 -0
  10. package/esm2015/lib/date-tags/forecast-tag/forecast-tag.component.js +143 -0
  11. package/esm2015/lib/date-tags/month-tag/month-tag.component.js +86 -0
  12. package/esm2015/lib/date-tags/quarter-tag/quarter-tag.component.js +101 -0
  13. package/esm2015/lib/date-tags/week-tag/week-tag.component.js +124 -0
  14. package/esm2015/lib/date-tags/year-tag/year-tag.component.js +92 -0
  15. package/esm2015/lib/dr-inputs/checkbox/checkbox.component.js +46 -0
  16. package/esm2015/lib/dr-inputs/dr-inputs.module.js +18 -0
  17. package/esm2015/lib/dr-inputs/radio-button/radio-button.component.js +50 -0
  18. package/esm2015/lib/dr-tags/dr-tag.component.js +54 -0
  19. package/esm2015/lib/dr-tags/dr-tag.module.js +22 -0
  20. package/esm2015/lib/list-tags/list-tag.component.js +41 -0
  21. package/esm2015/lib/list-tags/list-tag.module.js +29 -0
  22. package/esm2015/lib/models/serverTags.js +2 -0
  23. package/esm2015/public-api.js +19 -0
  24. package/fesm2015/datarailsshared-datarailsshared.js +955 -0
  25. package/fesm2015/datarailsshared-datarailsshared.js.map +1 -0
  26. package/{DateTags/dateTag.component.d.ts → lib/date-tags/date-tag.component.d.ts} +1 -0
  27. package/lib/date-tags/date-tag.module.d.ts +4 -0
  28. package/lib/date-tags/day-tag/day-tag.component.d.ts +12 -0
  29. package/{DateTags/forecastTag/forecastTag.component.d.ts → lib/date-tags/forecast-tag/forecast-tag.component.d.ts} +4 -1
  30. package/lib/date-tags/month-tag/month-tag.component.d.ts +14 -0
  31. package/{DateTags/quarterTag/quarterTag.component.d.ts → lib/date-tags/quarter-tag/quarter-tag.component.d.ts} +3 -1
  32. package/{DateTags/weekTag/weekTag.component.d.ts → lib/date-tags/week-tag/week-tag.component.d.ts} +6 -2
  33. package/lib/date-tags/year-tag/year-tag.component.d.ts +14 -0
  34. package/lib/dr-inputs/checkbox/checkbox.component.d.ts +14 -0
  35. package/lib/dr-inputs/dr-inputs.module.d.ts +2 -0
  36. package/lib/dr-inputs/radio-button/radio-button.component.d.ts +15 -0
  37. package/{DrTags/drTag.component.d.ts → lib/dr-tags/dr-tag.component.d.ts} +1 -0
  38. package/{DrTags/drTag.module.d.ts → lib/dr-tags/dr-tag.module.d.ts} +0 -0
  39. package/{ListTags/listTag.component.d.ts → lib/list-tags/list-tag.component.d.ts} +0 -0
  40. package/{ListTags/listTag.module.d.ts → lib/list-tags/list-tag.module.d.ts} +0 -0
  41. package/{models → lib/models}/serverTags.d.ts +3 -0
  42. package/package.json +11 -11
  43. package/public-api.d.ts +16 -0
  44. package/DateTags/dateTag.module.d.ts +0 -2
  45. package/DateTags/dayTag/dayTag.component.d.ts +0 -7
  46. package/DateTags/monthTag/monthTag.component.d.ts +0 -7
  47. package/DateTags/yearTag/yearTag.component.d.ts +0 -7
  48. package/bundles/ng-datarails.umd.js +0 -980
  49. package/bundles/ng-datarails.umd.js.map +0 -1
  50. package/datarailsshared-datarailsshared-1.2.1.tgz +0 -0
  51. package/esm2015/DateTags/dateTag.component.js +0 -71
  52. package/esm2015/DateTags/dateTag.module.js +0 -54
  53. package/esm2015/DateTags/dayTag/dayTag.component.js +0 -41
  54. package/esm2015/DateTags/forecastTag/forecastTag.component.js +0 -118
  55. package/esm2015/DateTags/monthTag/monthTag.component.js +0 -41
  56. package/esm2015/DateTags/quarterTag/quarterTag.component.js +0 -82
  57. package/esm2015/DateTags/weekTag/weekTag.component.js +0 -84
  58. package/esm2015/DateTags/yearTag/yearTag.component.js +0 -43
  59. package/esm2015/DrTags/drTag.component.js +0 -52
  60. package/esm2015/DrTags/drTag.module.js +0 -26
  61. package/esm2015/ListTags/listTag.component.js +0 -41
  62. package/esm2015/ListTags/listTag.module.js +0 -33
  63. package/esm2015/index.js +0 -5
  64. package/esm2015/models/serverTags.js +0 -2
  65. package/esm2015/ng-datarails.js +0 -14
  66. package/fesm2015/ng-datarails.js +0 -647
  67. package/fesm2015/ng-datarails.js.map +0 -1
  68. package/index.d.ts +0 -4
  69. package/ng-datarails.d.ts +0 -13
  70. package/ng-datarails.metadata.json +0 -1
@@ -1,118 +0,0 @@
1
- import { Component, Input } from "@angular/core";
2
- import * as momentImported from "moment";
3
- const moment = momentImported;
4
- import { AnyTagComponent } from "../dateTag.component";
5
- export class ForecastTagComponent extends AnyTagComponent {
6
- constructor() {
7
- super();
8
- this.forecastValue = undefined;
9
- this.forecastTags = [
10
- { "value": 0, "label": "0+12" },
11
- { "value": 1, "label": "1+11" },
12
- { "value": 2, "label": "2+10" },
13
- { "value": 3, "label": "3+9" },
14
- { "value": 4, "label": "4+8" },
15
- { "value": 5, "label": "5+7" },
16
- { "value": 6, "label": "6+6" },
17
- { "value": 7, "label": "7+5" },
18
- { "value": 8, "label": "8+4" },
19
- { "value": 9, "label": "9+3" },
20
- { "value": 10, "label": "10+2" },
21
- { "value": 11, "label": "11+1" }
22
- ];
23
- }
24
- initDate() {
25
- let dateVal = new Date();
26
- if (this.defaultValue) {
27
- dateVal = new Date(this.defaultValue * 1000);
28
- }
29
- let fiscal_year_starts_from = this.fiscalYearStartsFrom || 1;
30
- let fiscal_year_back = this.fiscalYearBack || false;
31
- this.forecastValue = this.getFiscalMonthFromDate(dateVal, fiscal_year_starts_from) - 1;
32
- let fiscal_year = this.getFiscalYearFromDate(dateVal, fiscal_year_starts_from, fiscal_year_back);
33
- console.log("test", dateVal, fiscal_year_starts_from, this.forecastValue, fiscal_year);
34
- this.dateObj.date = moment(new Date(fiscal_year, 0, 1)).format("YYYY");
35
- }
36
- initName() {
37
- if (!this.name) {
38
- this.name = "Forecast";
39
- }
40
- }
41
- getFiscalMonthFromDate(dateObj, fiscal_year_starts_from) {
42
- let all_months = [];
43
- for (let i = fiscal_year_starts_from; i < 13; i++) {
44
- all_months.push(i);
45
- }
46
- for (let i = 1; i < fiscal_year_starts_from; i++) {
47
- all_months.push(i);
48
- }
49
- return all_months.indexOf(dateObj.getMonth() + 1) + 1;
50
- }
51
- getFiscalYearFromDate(dateObj, fiscal_year_starts_from, fiscal_year_back) {
52
- let fiscal_year = dateObj.getFullYear();
53
- if (!fiscal_year_back) {
54
- if (dateObj.getMonth() + 1 >= fiscal_year_starts_from && fiscal_year_starts_from !== 1) {
55
- fiscal_year += 1;
56
- }
57
- }
58
- else {
59
- if (dateObj.getMonth() + 1 < fiscal_year_starts_from && fiscal_year_starts_from !== 1) {
60
- fiscal_year -= 1;
61
- }
62
- }
63
- return fiscal_year;
64
- }
65
- getForecastLabelFromValue(value, fiscal_year_starts_from, fiscal_year_back) {
66
- let label = "";
67
- if (value) {
68
- let dateObj = new Date(value * 1000);
69
- let fiscal_month = this.getFiscalMonthFromDate(dateObj, fiscal_year_starts_from);
70
- let fiscal_year = this.getFiscalYearFromDate(dateObj, fiscal_year_starts_from, fiscal_year_back);
71
- label = (fiscal_month - 1) + "+" + (13 - fiscal_month) + " (" + fiscal_year + ")";
72
- }
73
- return label;
74
- }
75
- changeTagInputHandler(event) {
76
- this.chosenTagHandler();
77
- }
78
- changeYearInputHandler(event) {
79
- this.chosenTagHandler();
80
- }
81
- chosenTagHandler() {
82
- let month = this.forecastValue;
83
- let year = Number.parseInt(this.dateObj.date);
84
- let timeStampVal = 0;
85
- let label = "";
86
- if (!Number.isNaN(month) && !Number.isNaN(year)) {
87
- let date = new Date(year, month, 1, 12, 0, 0, 0);
88
- let fiscal_year_starts_from = this.fiscalYearStartsFrom || 1;
89
- let fiscal_year_back = this.fiscalYearBack || false;
90
- if (fiscal_year_starts_from !== 1) {
91
- if (!fiscal_year_back)
92
- date.setMonth(date.getMonth() - 13 + fiscal_year_starts_from);
93
- else
94
- date.setMonth(date.getMonth() - 1 + fiscal_year_starts_from);
95
- }
96
- timeStampVal = date.getTime() / 1000;
97
- label = this.getForecastLabelFromValue(timeStampVal, fiscal_year_starts_from, fiscal_year_back);
98
- }
99
- const resultTag = {
100
- "name": this.name,
101
- "value": timeStampVal,
102
- "label": label
103
- };
104
- this.dateChange.emit(resultTag);
105
- }
106
- }
107
- ForecastTagComponent.decorators = [
108
- { type: Component, args: [{
109
- template: "<div>\n <mat-form-field style=\"margin-right: 3px; margin-bottom:3px\">\n <mat-select placeholder=\"{{name}}\" (selectionChange)=\"changeTagInputHandler($event)\" [(value)]=\"forecastValue\">\n <mat-option *ngFor=\"let forecastTag of forecastTags\" [value]=\"forecastTag.value\">{{forecastTag.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n <mat-form-field class=\"date-select-box\">\n <input matInput placeholder=\"Year\" type=\"number\" name=\"Year\"\n (change)=\"changeYearInputHandler($event)\"\n [(ngModel)]=\"dateObj.date\">\n </mat-form-field>\n</div>\n",
110
- selector: "forecast-tag"
111
- },] }
112
- ];
113
- ForecastTagComponent.ctorParameters = () => [];
114
- ForecastTagComponent.propDecorators = {
115
- fiscalYearStartsFrom: [{ type: Input }],
116
- fiscalYearBack: [{ type: Input }]
117
- };
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yZWNhc3RUYWcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRGF0ZVRhZ3MvZm9yZWNhc3RUYWcvZm9yZWNhc3RUYWcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sS0FBSyxjQUFjLE1BQU0sUUFBUSxDQUFDO0FBQUMsTUFBTSxNQUFNLEdBQUcsY0FBYyxDQUFDO0FBR3hFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQVNyRCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsZUFBZTtJQW9CdkQ7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQWxCVixrQkFBYSxHQUF1QixTQUFTLENBQUM7UUFFOUMsaUJBQVksR0FBVTtZQUNwQixFQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBQztZQUM3QixFQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBQztZQUM3QixFQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBQztZQUM3QixFQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBQztZQUM1QixFQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBQztZQUM1QixFQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBQztZQUM1QixFQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBQztZQUM1QixFQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBQztZQUM1QixFQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBQztZ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akQsSUFBSSx1QkFBdUIsR0FBRyxJQUFJLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDO1lBQzdELElBQUksZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGNBQWMsSUFBSSxLQUFLLENBQUM7WUFDcEQsSUFBSSx1QkFBdUIsS0FBSyxDQUFDLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyxnQkFBZ0I7b0JBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUUsR0FBRyx1QkFBdUIsQ0FBQyxDQUFDOztvQkFFOUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxHQUFHLHVCQUF1QixDQUFDLENBQUM7YUFDaEU7WUFFRCxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQztZQUNyQyxLQUFLLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFlBQVksRUFBRSx1QkFBdUIsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1NBQ2pHO1FBRUQsTUFBTSxTQUFTLEdBQWE7WUFDdEIsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2pCLE9BQU8sRUFBRSxZQUFZO1lBQ3JCLE9BQU8sRUFBRSxLQUFLO1NBQ2pCLENBQUM7UUFFSixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsQyxDQUFDOzs7WUFwSUYsU0FBUyxTQUFDO2dCQUNQLHVvQkFBeUM7Z0JBQ3pDLFFBQVEsRUFBRSxjQUFjO2FBQzNCOzs7O21DQUdFLEtBQUs7NkJBQ0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCAqIGFzIG1vbWVudEltcG9ydGVkIGZyb20gXCJtb21lbnRcIjsgY29uc3QgbW9tZW50ID0gbW9tZW50SW1wb3J0ZWQ7XG5pbXBvcnQge01vbWVudH0gZnJvbSBcIm1vbWVudFwiO1xuaW1wb3J0IHtJRGF0ZVRhZ30gZnJvbSBcIi4uLy4uL21vZGVscy9zZXJ2ZXJUYWdzXCI7XG5pbXBvcnQge0FueVRhZ0NvbXBvbmVudH0gZnJvbSBcIi4uL2RhdGVUYWcuY29tcG9uZW50XCI7XG5pbXBvcnQge01hdFNlbGVjdENoYW5nZX0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NlbGVjdFwiO1xuaW1wb3J0IHtNYXRCdXR0b25Ub2dnbGVDaGFuZ2V9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9idXR0b24tdG9nZ2xlXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHRlbXBsYXRlVXJsOiBcImZvcmVjYXN0VGFnLmNvbXBvbmVudC5odG1sXCIsXG4gICAgc2VsZWN0b3I6IFwiZm9yZWNhc3QtdGFnXCIsXG59KVxuXG5leHBvcnQgY2xhc3MgRm9yZWNhc3RUYWdDb21wb25lbnQgZXh0ZW5kcyBBbnlUYWdDb21wb25lbnQge1xuICBASW5wdXQoKSBmaXNjYWxZZWFyU3RhcnRzRnJvbT86IG51bWJlcjtcbiAgQElucHV0KCkgZmlzY2FsWWVhckJhY2s/OiBib29sZWFuO1xuICBmb3JlY2FzdFZhbHVlOiBudW1iZXIgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG5cbiAgZm9yZWNhc3RUYWdzOiBhbnlbXSA9IFtcbiAgICB7XCJ2YWx1ZVwiOiAwLCBcImxhYmVsXCI6IFwiMCsxMlwifSxcbiAgICB7XCJ2YWx1ZVwiOiAxLCBcImxhYmVsXCI6IFwiMSsxMVwifSxcbiAgICB7XCJ2YWx1ZVwiOiAyLCBcImxhYmVsXCI6IFwiMisxMFwifSxcbiAgICB7XCJ2YWx1ZVwiOiAzLCBcImxhYmVsXCI6IFwiMys5XCJ9LFxuICAgIHtcInZhbHVlXCI6IDQsIFwibGFiZWxcIjogXCI0KzhcIn0sXG4gICAge1widmFsdWVcIjogNSwgXCJsYWJlbFwiOiBcIjUrN1wifSxcbiAgICB7XCJ2YWx1ZVwiOiA2LCBcImxhYmVsXCI6IFwiNis2XCJ9LFxuICAgIHtcInZhbHVlXCI6IDcsIFwibGFiZWxcIjogXCI3KzVcIn0sXG4gICAge1widmFsdWVcIjogOCwgXCJsYWJlbFwiOiBcIjgrNFwifSxcbiAgICB7XCJ2YWx1ZVwiOiA5LCBcImxhYmVsXCI6IFwiOSszXCJ9LFxuICAgIHtcInZhbHVlXCI6IDEwLCBcImxhYmVsXCI6IFwiMTArMlwifSxcbiAgICB7XCJ2YWx1ZVwiOiAxMSwgXCJsYWJlbFwiOiBcIjExKzFcIn1cbiAgXTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgaW5pdERhdGUoKSB7XG4gICAgbGV0IGRhdGVWYWwgPSBuZXcgRGF0ZSgpO1xuICAgIGlmICh0aGlzLmRlZmF1bHRWYWx1ZSkge1xuICAgICAgZGF0ZVZhbCA9IG5ldyBEYXRlKHRoaXMuZGVmYXVsdFZhbHVlICogMTAwMCk7XG4gICAgfVxuICAgIGxldCBmaXNjYWxfeWVhcl9zdGFydHNfZnJvbSA9IHRoaXMuZmlzY2FsWWVhclN0YXJ0c0Zyb20gfHwgMTtcbiAgICBsZXQgZmlzY2FsX3llYXJfYmFjayA9IHRoaXMuZmlzY2FsWWVhckJhY2sgfHwgZmFsc2U7XG4gICAgdGhpcy5mb3JlY2FzdFZhbHVlID0gdGhpcy5nZXRGaXNjYWxNb250aEZyb21EYXRlKGRhdGVWYWwsIGZpc2NhbF95ZWFyX3N0YXJ0c19mcm9tKSAtIDE7XG4gICAgbGV0IGZpc2NhbF95ZWFyID0gdGhpcy5nZXRGaXNjYWxZZWFyRnJvbURhdGUoZGF0ZVZhbCwgZmlzY2FsX3llYXJfc3RhcnRzX2Zyb20sIGZpc2NhbF95ZWFyX2JhY2spO1xuXG4gICAgY29uc29sZS5sb2coXCJ0ZXN0XCIsIGRhdGVWYWwsIGZpc2NhbF95ZWFyX3N0YXJ0c19mcm9tLCB0aGlzLmZvcmVjYXN0VmFsdWUsIGZpc2NhbF95ZWFyKTtcblxuICAgIHRoaXMuZGF0ZU9iai5kYXRlID0gbW9tZW50KG5ldyBEYXRlKGZpc2NhbF95ZWFyLCAwLCAxKSkuZm9ybWF0KFwiWVlZWVwiKTtcbiAgfVxuXG4gIGluaXROYW1lKCkge1xuICAgIGlmICghdGhpcy5uYW1lKSB7XG4gICAgICB0aGlzLm5hbWUgPSBcIkZvcmVjYXN0XCI7XG4gICAgfVxuICB9XG5cbiAgZ2V0RmlzY2FsTW9udGhGcm9tRGF0ZShkYXRlT2JqLCBmaXNjYWxfeWVhcl9zdGFydHNfZnJvbSkge1xuICAgIGxldCBhbGxfbW9udGhzID0gW107XG5cbiAgICBmb3IgKGxldCBpID0gZmlzY2FsX3llYXJfc3RhcnRzX2Zyb207IGkgPCAxMzsgaSsrKSB7XG4gICAgICBhbGxfbW9udGhzLnB1c2goaSk7XG4gICAgfVxuXG4gICAgZm9yIChsZXQgaSA9IDE7IGkgPCBmaXNjYWxfeWVhcl9zdGFydHNfZnJvbTsgaSsrKSB7XG4gICAgICBhbGxfbW9udGhzLnB1c2goaSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGFsbF9tb250aHMuaW5kZXhPZihkYXRlT2JqLmdldE1vbnRoKCkgKyAxKSArIDE7XG4gIH1cblxuICBnZXRGaXNjYWxZZWFyRnJvbURhdGUoZGF0ZU9iaiwgZmlzY2FsX3llYXJfc3RhcnRzX2Zyb20sIGZpc2NhbF95ZWFyX2JhY2spIHtcbiAgICBsZXQgZmlzY2FsX3llYXIgPSBkYXRlT2JqLmdldEZ1bGxZZWFyKCk7XG5cbiAgICBpZiAoIWZpc2NhbF95ZWFyX2JhY2spIHtcbiAgICAgIGlmIChkYXRlT2JqLmdldE1vbnRoKCkgKyAxID49IGZpc2NhbF95ZWFyX3N0YXJ0c19mcm9tICYmIGZpc2NhbF95ZWFyX3N0YXJ0c19mcm9tICE9PSAxKSB7XG4gICAgICAgIGZpc2NhbF95ZWFyICs9IDE7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChkYXRlT2JqLmdldE1vbnRoKCkgKyAxIDwgZmlzY2FsX3llYXJfc3RhcnRzX2Zyb20gJiYgZmlzY2FsX3llYXJfc3RhcnRzX2Zyb20gIT09IDEpIHtcbiAgICAgICAgZmlzY2FsX3llYXIgLT0gMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZmlzY2FsX3llYXI7XG4gIH1cblxuICBnZXRGb3JlY2FzdExhYmVsRnJvbVZhbHVlKHZhbHVlLCBmaXNjYWxfeWVhcl9zdGFydHNfZnJvbSwgZmlzY2FsX3llYXJfYmFjaykge1xuICAgIGxldCBsYWJlbCA9IFwiXCI7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBsZXQgZGF0ZU9iaiA9IG5ldyBEYXRlKHZhbHVlICogMTAwMCk7XG5cbiAgICAgIGxldCBmaXNjYWxfbW9udGggPSB0aGlzLmdldEZpc2NhbE1vbnRoRnJvbURhdGUoZGF0ZU9iaiwgZmlzY2FsX3llYXJfc3RhcnRzX2Zyb20pO1xuICAgICAgbGV0IGZpc2NhbF95ZWFyID0gdGhpcy5nZXRGaXNjYWxZZWFyRnJvbURhdGUoZGF0ZU9iaiwgZmlzY2FsX3llYXJfc3RhcnRzX2Zyb20sIGZpc2NhbF95ZWFyX2JhY2spO1xuXG4gICAgICBsYWJlbCA9IChmaXNjYWxfbW9udGggLSAxKSArIFwiK1wiICsgKDEzIC0gZmlzY2FsX21vbnRoKSArIFwiIChcIiArIGZpc2NhbF95ZWFyICsgXCIpXCI7XG4gICAgfVxuICAgIHJldHVybiBsYWJlbDtcbiAgfVxuXG4gIGNoYW5nZVRhZ0lucHV0SGFuZGxlcihldmVudDogTWF0U2VsZWN0Q2hhbmdlIHwgTWF0QnV0dG9uVG9nZ2xlQ2hhbmdlKSB7XG4gICAgdGhpcy5jaG9zZW5UYWdIYW5kbGVyKCk7XG4gIH1cblxuICBjaGFuZ2VZZWFySW5wdXRIYW5kbGVyKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuY2hvc2VuVGFnSGFuZGxlcigpO1xuICB9XG5cbiAgY2hvc2VuVGFnSGFuZGxlcigpIHtcbiAgICBsZXQgbW9udGggPSB0aGlzLmZvcmVjYXN0VmFsdWU7XG4gICAgbGV0IHllYXIgPSBOdW1iZXIucGFyc2VJbnQodGhpcy5kYXRlT2JqLmRhdGUpO1xuXG4gICAgbGV0IHRpbWVTdGFtcFZhbCA9IDA7XG4gICAgbGV0IGxhYmVsID0gXCJcIjtcblxuICAgIGlmICghTnVtYmVyLmlzTmFOKG1vbnRoKSAmJiAhTnVtYmVyLmlzTmFOKHllYXIpKSB7XG5cblxuICAgICAgbGV0IGRhdGUgPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCwgMSwgMTIsIDAsIDAsIDApO1xuICAgICAgbGV0IGZpc2NhbF95ZWFyX3N0YXJ0c19mcm9tID0gdGhpcy5maXNjYWxZZWFyU3RhcnRzRnJvbSB8fCAxO1xuICAgICAgbGV0IGZpc2NhbF95ZWFyX2JhY2sgPSB0aGlzLmZpc2NhbFllYXJCYWNrIHx8IGZhbHNlO1xuICAgICAgaWYgKGZpc2NhbF95ZWFyX3N0YXJ0c19mcm9tICE9PSAxKSB7XG4gICAgICAgIGlmICghZmlzY2FsX3llYXJfYmFjaylcbiAgICAgICAgICBkYXRlLnNldE1vbnRoKGRhdGUuZ2V0TW9udGgoKSAtIDEzICsgZmlzY2FsX3llYXJfc3RhcnRzX2Zyb20pO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgZGF0ZS5zZXRNb250aChkYXRlLmdldE1vbnRoKCkgLSAxICsgZmlzY2FsX3llYXJfc3RhcnRzX2Zyb20pO1xuICAgICAgfVxuXG4gICAgICB0aW1lU3RhbXBWYWwgPSBkYXRlLmdldFRpbWUoKSAvIDEwMDA7XG4gICAgICBsYWJlbCA9IHRoaXMuZ2V0Rm9yZWNhc3RMYWJlbEZyb21WYWx1ZSh0aW1lU3RhbXBWYWwsIGZpc2NhbF95ZWFyX3N0YXJ0c19mcm9tLCBmaXNjYWxfeWVhcl9iYWNrKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXN1bHRUYWc6IElEYXRlVGFnID0ge1xuICAgICAgICAgIFwibmFtZVwiOiB0aGlzLm5hbWUsXG4gICAgICAgICAgXCJ2YWx1ZVwiOiB0aW1lU3RhbXBWYWwsXG4gICAgICAgICAgXCJsYWJlbFwiOiBsYWJlbFxuICAgICAgfTtcblxuICAgIHRoaXMuZGF0ZUNoYW5nZS5lbWl0KHJlc3VsdFRhZyk7XG4gIH1cbn1cbiJdfQ==
@@ -1,41 +0,0 @@
1
- import { Component } from "@angular/core";
2
- import * as momentImported from "moment";
3
- const moment = momentImported;
4
- import { AnyTagComponent } from "../dateTag.component";
5
- export class MonthTagComponent extends AnyTagComponent {
6
- constructor() {
7
- super();
8
- }
9
- initDate() {
10
- if (this.defaultValue) {
11
- this.dateObj.date = moment(new Date(this.defaultValue * 1000)).utc().format("YYYY-MM");
12
- }
13
- else {
14
- this.dateObj.date = moment(new Date()).format("YYYY-MM");
15
- }
16
- }
17
- initName() {
18
- if (!this.name) {
19
- this.name = "Month and Year";
20
- }
21
- }
22
- chosenTagHandler(value) {
23
- const resultDate = moment.utc(value);
24
- resultDate.hour(12);
25
- const resultTag = {
26
- name: this.name,
27
- value: parseInt(resultDate.format("X"), 10),
28
- label: resultDate.format("MMMM YYYY"),
29
- };
30
- console.log(resultTag, value);
31
- this.dateChange.emit(resultTag);
32
- }
33
- }
34
- MonthTagComponent.decorators = [
35
- { type: Component, args: [{
36
- template: "<div>\n <mat-form-field class=\"date-select-box\">\n <input matInput placeholder=\"{{name}}\" type=\"month\" name=\"Month\"\n (change)=\"changeInputHandler($event)\"\n [(ngModel)]=\"dateObj.date\">\n </mat-form-field>\n</div>\n",
37
- selector: "month-tag"
38
- },] }
39
- ];
40
- MonthTagComponent.ctorParameters = () => [];
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGhUYWcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRGF0ZVRhZ3MvbW9udGhUYWcvbW9udGhUYWcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQStCLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sS0FBSyxjQUFjLE1BQU0sUUFBUSxDQUFDO0FBQUMsTUFBTSxNQUFNLEdBQUcsY0FBYyxDQUFDO0FBR3hFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQU9yRCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsZUFBZTtJQUNsRDtRQUNJLEtBQUssRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDeEY7YUFBTTtZQUNMLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQzFEO0lBQ0gsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNkLElBQUksQ0FBQyxJQUFJLEdBQUcsZ0JBQWdCLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBSztRQUNsQixNQUFNLFVBQVUsR0FBVyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDcEIsTUFBTSxTQUFTLEdBQWE7WUFDeEIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsS0FBSyxFQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMzQyxLQUFLLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7U0FDeEMsQ0FBQztRQUNGLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7OztZQWxDSixTQUFTLFNBQUM7Z0JBQ1Asd1JBQXNDO2dCQUN0QyxRQUFRLEVBQUUsV0FBVzthQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3V0cHV0fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0ICogYXMgbW9tZW50SW1wb3J0ZWQgZnJvbSBcIm1vbWVudFwiOyBjb25zdCBtb21lbnQgPSBtb21lbnRJbXBvcnRlZDtcbmltcG9ydCB7TW9tZW50fSBmcm9tIFwibW9tZW50XCI7XG5pbXBvcnQge0lEYXRlVGFnfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3NlcnZlclRhZ3NcIjtcbmltcG9ydCB7QW55VGFnQ29tcG9uZW50fSBmcm9tIFwiLi4vZGF0ZVRhZy5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6IFwibW9udGhUYWcuY29tcG9uZW50Lmh0bWxcIixcbiAgICBzZWxlY3RvcjogXCJtb250aC10YWdcIixcbn0pXG5cbmV4cG9ydCBjbGFzcyBNb250aFRhZ0NvbXBvbmVudCBleHRlbmRzIEFueVRhZ0NvbXBvbmVudCB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgaW5pdERhdGUoKSB7XG4gICAgICBpZiAodGhpcy5kZWZhdWx0VmFsdWUpIHtcbiAgICAgICAgdGhpcy5kYXRlT2JqLmRhdGUgPSBtb21lbnQobmV3IERhdGUodGhpcy5kZWZhdWx0VmFsdWUgKiAxMDAwKSkudXRjKCkuZm9ybWF0KFwiWVlZWS1NTVwiKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZGF0ZU9iai5kYXRlID0gbW9tZW50KG5ldyBEYXRlKCkpLmZvcm1hdChcIllZWVktTU1cIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW5pdE5hbWUoKSB7XG4gICAgICBpZiAoIXRoaXMubmFtZSkge1xuICAgICAgICB0aGlzLm5hbWUgPSBcIk1vbnRoIGFuZCBZZWFyXCI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY2hvc2VuVGFnSGFuZGxlcih2YWx1ZSkge1xuICAgICAgICBjb25zdCByZXN1bHREYXRlOiBNb21lbnQgPSBtb21lbnQudXRjKHZhbHVlKTtcbiAgICAgICAgcmVzdWx0RGF0ZS5ob3VyKDEyKTtcbiAgICAgICAgY29uc3QgcmVzdWx0VGFnOiBJRGF0ZVRhZyA9IHtcbiAgICAgICAgICAgIG5hbWU6IHRoaXMubmFtZSxcbiAgICAgICAgICAgIHZhbHVlOiBwYXJzZUludChyZXN1bHREYXRlLmZvcm1hdChcIlhcIiksIDEwKSxcbiAgICAgICAgICAgIGxhYmVsOiByZXN1bHREYXRlLmZvcm1hdChcIk1NTU0gWVlZWVwiKSxcbiAgICAgICAgfTtcbiAgICAgICAgY29uc29sZS5sb2cocmVzdWx0VGFnLCB2YWx1ZSk7XG4gICAgICAgIHRoaXMuZGF0ZUNoYW5nZS5lbWl0KHJlc3VsdFRhZyk7XG4gICAgfVxufVxuIl19
@@ -1,82 +0,0 @@
1
- import { Component } from "@angular/core";
2
- import * as momentImported from "moment";
3
- const moment = momentImported;
4
- import { AnyTagComponent } from "../dateTag.component";
5
- export class QuarterTagComponent extends AnyTagComponent {
6
- constructor() {
7
- super();
8
- this.selectedValue = 0;
9
- this.quarters = [];
10
- }
11
- ngOnInit() {
12
- this.initName();
13
- this.quarters = this.getQuarterOptions();
14
- for (const quarter of this.quarters) {
15
- if (quarter.isSelected) {
16
- this.selectedValue = quarter.value;
17
- this.chosenTagHandler(quarter.value);
18
- }
19
- }
20
- }
21
- initName() {
22
- if (!this.name) {
23
- this.name = "Quarter";
24
- }
25
- }
26
- changeSelectHandler(event) {
27
- this.chosenTagHandler(event.value);
28
- }
29
- chosenTagHandler(value) {
30
- const date = new Date(value * 1000);
31
- const resultDate = moment.utc(date);
32
- const resultTag = {
33
- name: this.name,
34
- value: parseInt(resultDate.format("X"), 10),
35
- label: this.getQuarterLabel(resultDate.toString()),
36
- };
37
- this.dateChange.emit(resultTag);
38
- }
39
- getQuarterOptions() {
40
- const quartersBeforeToday = 8;
41
- const quartersAfterToday = 8;
42
- const dateNow = new Date();
43
- const dateNowUnix = this.getUTCTimestamp(dateNow);
44
- let defaultValue = dateNowUnix;
45
- let tempDate = new Date();
46
- if (this.defaultValue) {
47
- defaultValue = this.defaultValue * 1000;
48
- }
49
- let afterDefault = Math.round(Math.abs(dateNowUnix - defaultValue) / 7776000000) + quartersAfterToday;
50
- afterDefault = Math.min(afterDefault, 100);
51
- let i, tempValue;
52
- const to_return = [];
53
- for (i = 0 - quartersBeforeToday; i <= afterDefault; i++) {
54
- tempDate = new Date(defaultValue);
55
- tempDate.setDate(15);
56
- tempDate.setMonth(tempDate.getMonth() + 3 * i);
57
- tempValue = this.getUTCTimestamp(tempDate);
58
- to_return.push({
59
- value: tempValue / 1000,
60
- label: this.getQuarterLabel(tempValue),
61
- isSelected: (i === 0),
62
- });
63
- }
64
- return to_return;
65
- }
66
- getQuarterLabel(timeValue) {
67
- const date = new Date(timeValue);
68
- return "Q" + Math.floor((date.getMonth() / 3) + 1) + " " + date.getFullYear();
69
- }
70
- getUTCTimestamp(date) {
71
- const month = Math.floor(date.getMonth() / 3) * 3;
72
- return Date.UTC(date.getFullYear(), month, 1, 12, 0, 0, 0);
73
- }
74
- }
75
- QuarterTagComponent.decorators = [
76
- { type: Component, args: [{
77
- template: "<div>\n <mat-form-field>\n <mat-select placeholder=\"{{name}}\" (selectionChange)=\"changeSelectHandler($event)\" [(value)]=\"selectedValue\">\n <mat-option *ngFor=\"let quarter of quarters\" [value]=\"quarter.value\">{{quarter.label}}</mat-option>\n </mat-select>\n </mat-form-field>\n</div>\n",
78
- selector: "quarter-tag"
79
- },] }
80
- ];
81
- QuarterTagComponent.ctorParameters = () => [];
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVhcnRlclRhZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9EYXRlVGFncy9xdWFydGVyVGFnL3F1YXJ0ZXJUYWcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxLQUFLLGNBQWMsTUFBTSxRQUFRLENBQUM7QUFBQyxNQUFNLE1BQU0sR0FBRyxjQUFjLENBQUM7QUFHeEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBT3JELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxlQUFlO0lBSXBEO1FBQ0ksS0FBSyxFQUFFLENBQUM7UUFKWixrQkFBYSxHQUFHLENBQUMsQ0FBQztRQUNsQixhQUFRLEdBQVUsRUFBRSxDQUFDO0lBSXJCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFFekMsS0FBSyxNQUFNLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pDLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRTtnQkFDcEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO2dCQUNuQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3hDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7U0FDdkI7SUFDSCxDQUFDO0lBRUQsbUJBQW1CLENBQUMsS0FBc0I7UUFDeEMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxLQUFLLENB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RCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQzs7O1lBbEZKLFNBQVMsU0FBQztnQkFDUCxpVkFBd0M7Z0JBQ3hDLFFBQVEsRUFBRSxhQUFhO2FBQzFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIE9uSW5pdH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCAqIGFzIG1vbWVudEltcG9ydGVkIGZyb20gXCJtb21lbnRcIjsgY29uc3QgbW9tZW50ID0gbW9tZW50SW1wb3J0ZWQ7XG5pbXBvcnQge0lEYXRlVGFnfSBmcm9tIFwiLi4vLi4vbW9kZWxzL3NlcnZlclRhZ3NcIjtcbmltcG9ydCB7TW9tZW50fSBmcm9tIFwibW9tZW50XCI7XG5pbXBvcnQge0FueVRhZ0NvbXBvbmVudH0gZnJvbSBcIi4uL2RhdGVUYWcuY29tcG9uZW50XCI7XG5pbXBvcnQge01hdFNlbGVjdENoYW5nZX0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NlbGVjdFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogXCJxdWFydGVyVGFnLmNvbXBvbmVudC5odG1sXCIsXG4gICAgc2VsZWN0b3I6IFwicXVhcnRlci10YWdcIixcbn0pXG5leHBvcnQgY2xhc3MgUXVhcnRlclRhZ0NvbXBvbmVudCBleHRlbmRzIEFueVRhZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgc2VsZWN0ZWRWYWx1ZSA9IDA7XG4gICAgcXVhcnRlcnM6IGFueVtdID0gW107XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgIHRoaXMuaW5pdE5hbWUoKTtcbiAgICAgIHRoaXMucXVhcnRlcnMgPSB0aGlzLmdldFF1YXJ0ZXJPcHRpb25zKCk7XG5cbiAgICAgIGZvciAoY29uc3QgcXVhcnRlciBvZiB0aGlzLnF1YXJ0ZXJzKSB7XG4gICAgICAgICAgaWYgKHF1YXJ0ZXIuaXNTZWxlY3RlZCkge1xuICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSBxdWFydGVyLnZhbHVlO1xuICAgICAgICAgICAgICB0aGlzLmNob3NlblRhZ0hhbmRsZXIocXVhcnRlci52YWx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGluaXROYW1lKCkge1xuICAgICAgaWYgKCF0aGlzLm5hbWUpIHtcbiAgICAgICAgdGhpcy5uYW1lID0gXCJRdWFydGVyXCI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY2hhbmdlU2VsZWN0SGFuZGxlcihldmVudDogTWF0U2VsZWN0Q2hhbmdlKSB7XG4gICAgICB0aGlzLmNob3NlblRhZ0hhbmRsZXIoZXZlbnQudmFsdWUpO1xuICAgIH1cblxuICAgIGNob3NlblRhZ0hhbmRsZXIodmFsdWUpIHtcbiAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKHZhbHVlICogMTAwMCk7XG4gICAgICAgIGNvbnN0IHJlc3VsdERhdGU6IE1vbWVudCA9IG1vbWVudC51dGMoZGF0ZSk7XG4gICAgICAgIGNvbnN0IHJlc3VsdFRhZzogSURhdGVUYWcgPSB7XG4gICAgICAgICAgICBuYW1lOiB0aGlzLm5hbWUsXG4gICAgICAgICAgICB2YWx1ZTogcGFyc2VJbnQocmVzdWx0RGF0ZS5mb3JtYXQoXCJYXCIpLCAxMCksXG4gICAgICAgICAgICBsYWJlbDogdGhpcy5nZXRRdWFydGVyTGFiZWwocmVzdWx0RGF0ZS50b1N0cmluZygpKSxcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5kYXRlQ2hhbmdlLmVtaXQocmVzdWx0VGFnKTtcbiAgICB9XG5cbiAgICBnZXRRdWFydGVyT3B0aW9ucygpIHtcbiAgICAgICAgY29uc3QgcXVhcnRlcnNCZWZvcmVUb2RheSA9IDg7XG4gICAgICAgIGNvbnN0IHF1YXJ0ZXJzQWZ0ZXJUb2RheSA9IDg7XG4gICAgICAgIGNvbnN0IGRhdGVOb3cgPSBuZXcgRGF0ZSgpO1xuICAgICAgICBjb25zdCBkYXRlTm93VW5peCA9IHRoaXMuZ2V0VVRDVGltZXN0YW1wKGRhdGVOb3cpO1xuICAgICAgICBsZXQgZGVmYXVsdFZhbHVlID0gZGF0ZU5vd1VuaXg7XG4gICAgICAgIGxldCB0ZW1wRGF0ZSA9ICBuZXcgRGF0ZSgpO1xuICAgICAgICBpZiAodGhpcy5kZWZhdWx0VmFsdWUpIHtcbiAgICAgICAgICBkZWZhdWx0VmFsdWUgPSB0aGlzLmRlZmF1bHRWYWx1ZSAqIDEwMDA7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgYWZ0ZXJEZWZhdWx0ID0gTWF0aC5yb3VuZChNYXRoLmFicyhkYXRlTm93VW5peCAtIGRlZmF1bHRWYWx1ZSkgLyA3Nzc2MDAwMDAwKSArIHF1YXJ0ZXJzQWZ0ZXJUb2RheTtcbiAgICAgICAgYWZ0ZXJEZWZhdWx0ID0gTWF0aC5taW4oYWZ0ZXJEZWZhdWx0LCAxMDApO1xuICAgICAgICBsZXQgaSwgdGVtcFZhbHVlO1xuICAgICAgICBjb25zdCB0b19yZXR1cm46IGFueVtdID0gW107XG4gICAgICAgIGZvciAoaSA9IDAgLSBxdWFydGVyc0JlZm9yZVRvZGF5OyBpIDw9IGFmdGVyRGVmYXVsdDsgaSsrKSB7XG4gICAgICAgICAgICB0ZW1wRGF0ZSA9IG5ldyBEYXRlKGRlZmF1bHRWYWx1ZSk7XG4gICAgICAgICAgICB0ZW1wRGF0ZS5zZXREYXRlKDE1KTtcbiAgICAgICAgICAgIHRlbXBEYXRlLnNldE1vbnRoKHRlbXBEYXRlLmdldE1vbnRoKCkgKyAzICogaSk7XG4gICAgICAgICAgICB0ZW1wVmFsdWUgPSB0aGlzLmdldFVUQ1RpbWVzdGFtcCh0ZW1wRGF0ZSk7XG4gICAgICAgICAgICB0b19yZXR1cm4ucHVzaCh7XG4gICAgICAgICAgICAgICAgdmFsdWU6IHRlbXBWYWx1ZSAvIDEwMDAsXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMuZ2V0UXVhcnRlckxhYmVsKHRlbXBWYWx1ZSksXG4gICAgICAgICAgICAgICAgaXNTZWxlY3RlZDogKGkgPT09IDApLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRvX3JldHVybjtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFF1YXJ0ZXJMYWJlbCh0aW1lVmFsdWUpIHtcbiAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKHRpbWVWYWx1ZSk7XG4gICAgICAgIHJldHVybiBcIlFcIiArIE1hdGguZmxvb3IoKGRhdGUuZ2V0TW9udGgoKSAvIDMpICsgMSkgKyBcIiBcIiArIGRhdGUuZ2V0RnVsbFllYXIoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFVUQ1RpbWVzdGFtcChkYXRlKSB7XG4gICAgICAgIGNvbnN0IG1vbnRoID0gTWF0aC5mbG9vcihkYXRlLmdldE1vbnRoKCkgLyAzKSAqIDM7XG4gICAgICAgIHJldHVybiBEYXRlLlVUQyhkYXRlLmdldEZ1bGxZZWFyKCksIG1vbnRoLCAxLCAxMiwgMCwgMCwgMCk7XG4gICAgfVxufVxuIl19
@@ -1,84 +0,0 @@
1
- import { Component } from "@angular/core";
2
- import * as momentImported from "moment";
3
- const moment = momentImported;
4
- import { AnyTagComponent } from "../dateTag.component";
5
- export class WeekTagComponent extends AnyTagComponent {
6
- constructor() {
7
- super();
8
- this.selectedValue = "";
9
- }
10
- ngOnInit() {
11
- this.initName();
12
- const now = new Date();
13
- now.setHours(0, 0, 0, 0);
14
- const dateUnix = this.getUTCTimestamp(this.getMonday(now));
15
- let default_value_time = dateUnix;
16
- const one_day_in_seconds = 86400;
17
- if (this.defaultValue) {
18
- default_value_time = (this.defaultValue + one_day_in_seconds) * 1000;
19
- }
20
- const default_date = new Date(default_value_time);
21
- const weekNumber = this.getWeekNumberByDate(default_date);
22
- const yearNumber = default_date.getFullYear();
23
- const dateStr = `${yearNumber}-W${weekNumber}`;
24
- this.dateObj.date = dateStr;
25
- this.selectedValue = dateStr;
26
- this.chosenTagHandler(default_date);
27
- }
28
- initName() {
29
- if (!this.name) {
30
- this.name = "Week";
31
- }
32
- }
33
- changeInputHandler(event) {
34
- const input = event.target;
35
- this.chosenTagHandler(input.valueAsNumber);
36
- }
37
- chosenTagHandler(value) {
38
- let date;
39
- console.log("chosenTag", value);
40
- if (value > 1000000000000) {
41
- date = new Date(value);
42
- }
43
- else {
44
- date = new Date(value * 1000);
45
- }
46
- const resultDate = moment(date);
47
- const resultTag = {
48
- name: this.name,
49
- value: parseInt(resultDate.format("X"), 10),
50
- label: this.getWeekLabel(date),
51
- };
52
- this.dateChange.emit(resultTag);
53
- }
54
- getWeekLabel(date) {
55
- return "W" + this.pad(moment(date).isoWeek(), 2) +
56
- " " + moment(date).year();
57
- }
58
- getUTCTimestamp(date) {
59
- return Date.UTC(date.getFullYear(), date.getMonth(), date.getDate(), 12, 0, 0, 0);
60
- }
61
- getMonday(date) {
62
- const day = date.getDay() || 7;
63
- if (day !== 1) {
64
- date.setHours(-24 * (day - 1));
65
- }
66
- return date;
67
- }
68
- getWeekNumberByDate(date) {
69
- return this.pad(moment(date).isoWeek(), 2);
70
- }
71
- pad(n, width, z = "0") {
72
- z = z || "0";
73
- n = n + "";
74
- return n.length >= width ? n : new Array(width - n.length + 1).join(z) + n;
75
- }
76
- }
77
- WeekTagComponent.decorators = [
78
- { type: Component, args: [{
79
- template: "<div>\n <mat-form-field class=\"date-select-box\">\n <input matInput placeholder=\"{{name}}\" type=\"week\" name=\"week\"\n [(value)]=\"selectedValue\"\n (change)=\"changeInputHandler($event)\"\n [(ngModel)]=\"dateObj.date\">\n </mat-form-field>\n</div>\n",
80
- selector: "week-tag"
81
- },] }
82
- ];
83
- WeekTagComponent.ctorParameters = () => [];
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vla1RhZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9EYXRlVGFncy93ZWVrVGFnL3dlZWtUYWcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxLQUFLLGNBQWMsTUFBTSxRQUFRLENBQUM7QUFBQyxNQUFNLE1BQU0sR0FBRyxjQUFjLENBQUM7QUFHeEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBT3JELE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxlQUFlO0lBR2pEO1FBQ0ksS0FBSyxFQUFFLENBQUM7UUFIWixrQkFBYSxHQUFHLEVBQUUsQ0FBQztJQUluQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUVoQixNQUFNLEdBQUcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3ZCLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFekIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDM0QsSUFBSSxrQkFBa0IsR0FBRyxRQUFRLENBQUM7UUFDbEMsTUFBTSxrQkFBa0IsR0FBRyxLQUFLLENBQUM7UUFDakMsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLGtCQUFrQixHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksR0FBRyxrQkFBa0IsQ0FBQyxHQUFHLElBQUksQ0FBQztTQUN0RTtRQUVELE1BQU0sWUFBWSxHQUFHLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDbEQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLG1C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QUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ1gsT0FBTyxDQUFDLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzdFLENBQUM7OztZQXZGSixTQUFTLFNBQUM7Z0JBQ1Asa1VBQXFDO2dCQUNyQyxRQUFRLEVBQUUsVUFBVTthQUN2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBPbkluaXR9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgKiBhcyBtb21lbnRJbXBvcnRlZCBmcm9tIFwibW9tZW50XCI7IGNvbnN0IG1vbWVudCA9IG1vbWVudEltcG9ydGVkO1xuaW1wb3J0IHtJRGF0ZVRhZ30gZnJvbSBcIi4uLy4uL21vZGVscy9zZXJ2ZXJUYWdzXCI7XG5pbXBvcnQge01vbWVudH0gZnJvbSBcIm1vbWVudFwiO1xuaW1wb3J0IHtBbnlUYWdDb21wb25lbnR9IGZyb20gXCIuLi9kYXRlVGFnLmNvbXBvbmVudFwiO1xuXG5cbkBDb21wb25lbnQoe1xuICAgIHRlbXBsYXRlVXJsOiBcIndlZWtUYWcuY29tcG9uZW50Lmh0bWxcIixcbiAgICBzZWxlY3RvcjogXCJ3ZWVrLXRhZ1wiLFxufSlcbmV4cG9ydCBjbGFzcyBXZWVrVGFnQ29tcG9uZW50IGV4dGVuZHMgQW55VGFnQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBzZWxlY3RlZFZhbHVlID0gXCJcIjtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgdGhpcy5pbml0TmFtZSgpO1xuXG4gICAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpO1xuICAgICAgbm93LnNldEhvdXJzKDAsIDAsIDAsIDApO1xuXG4gICAgICBjb25zdCBkYXRlVW5peCA9IHRoaXMuZ2V0VVRDVGltZXN0YW1wKHRoaXMuZ2V0TW9uZGF5KG5vdykpO1xuICAgICAgbGV0IGRlZmF1bHRfdmFsdWVfdGltZSA9IGRhdGVVbml4O1xuICAgICAgY29uc3Qgb25lX2RheV9pbl9zZWNvbmRzID0gODY0MDA7XG4gICAgICBpZiAodGhpcy5kZWZhdWx0VmFsdWUpIHtcbiAgICAgICAgZGVmYXVsdF92YWx1ZV90aW1lID0gKHRoaXMuZGVmYXVsdFZhbHVlICsgb25lX2RheV9pbl9zZWNvbmRzKSAqIDEwMDA7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGRlZmF1bHRfZGF0ZSA9IG5ldyBEYXRlKGRlZmF1bHRfdmFsdWVfdGltZSk7XG4gICAgICBjb25zdCB3ZWVrTnVtYmVyID0gdGhpcy5nZXRXZWVrTnVtYmVyQnlEYXRlKGRlZmF1bHRfZGF0ZSk7XG4gICAgICBjb25zdCB5ZWFyTnVtYmVyID0gZGVmYXVsdF9kYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgICBjb25zdCBkYXRlU3RyID0gYCR7eWVhck51bWJlcn0tVyR7d2Vla051bWJlcn1gO1xuICAgICAgdGhpcy5kYXRlT2JqLmRhdGUgPSBkYXRlU3RyO1xuICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlID0gZGF0ZVN0cjtcbiAgICAgIHRoaXMuY2hvc2VuVGFnSGFuZGxlcihkZWZhdWx0X2RhdGUpO1xuICAgIH1cblxuICAgIGluaXROYW1lKCkge1xuICAgICAgaWYgKCF0aGlzLm5hbWUpIHtcbiAgICAgICAgdGhpcy5uYW1lID0gXCJXZWVrXCI7XG4gICAgICB9XG4gICAgfVxuXG4gIGNoYW5nZUlucHV0SGFuZGxlcihldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCBpbnB1dDogSFRNTElucHV0RWxlbWVudCA9IDxIVE1MSW5wdXRFbGVtZW50PmV2ZW50LnRhcmdldDtcbiAgICB0aGlzLmNob3NlblRhZ0hhbmRsZXIoaW5wdXQudmFsdWVBc051bWJlcik7XG4gIH1cblxuICBjaG9zZW5UYWdIYW5kbGVyKHZhbHVlKSB7XG4gICAgICBsZXQgZGF0ZTtcbiAgICAgIGNvbnNvbGUubG9nKFwiY2hvc2VuVGFnXCIsIHZhbHVlKTtcbiAgICAgIGlmICh2YWx1ZSA+IDEwMDAwMDAwMDAwMDApIHtcbiAgICAgICAgZGF0ZSA9IG5ldyBEYXRlKHZhbHVlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRhdGUgPSBuZXcgRGF0ZSh2YWx1ZSAqIDEwMDApO1xuICAgICAgfVxuXG4gICAgICBjb25zdCByZXN1bHREYXRlOiBNb21lbnQgPSBtb21lbnQoZGF0ZSk7XG4gICAgICBjb25zdCByZXN1bHRUYWc6IElEYXRlVGFnID0ge1xuICAgICAgICAgIG5hbWU6IHRoaXMubmFtZSxcbiAgICAgICAgICB2YWx1ZTogcGFyc2VJbnQocmVzdWx0RGF0ZS5mb3JtYXQoXCJYXCIpLCAxMCksXG4gICAgICAgICAgbGFiZWw6IHRoaXMuZ2V0V2Vla0xhYmVsKGRhdGUpLFxuICAgICAgfTtcbiAgICAgIHRoaXMuZGF0ZUNoYW5nZS5lbWl0KHJlc3VsdFRhZyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRXZWVrTGFiZWwoZGF0ZSkge1xuICAgICAgcmV0dXJuIFwiV1wiICsgdGhpcy5wYWQoIG1vbWVudChkYXRlKS5pc29XZWVrKCksIDIpICtcbiAgICAgICAgXCIgXCIgKyBtb21lbnQoZGF0ZSkueWVhcigpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0VVRDVGltZXN0YW1wKGRhdGUpIHtcbiAgICAgICAgcmV0dXJuIERhdGUuVVRDKGRhdGUuZ2V0RnVsbFllYXIoKSwgZGF0ZS5nZXRNb250aCgpLCBkYXRlLmdldERhdGUoKSwgMTIsIDAsIDAsIDApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TW9uZGF5KGRhdGUpIHtcbiAgICAgICAgY29uc3QgZGF5ID0gZGF0ZS5nZXREYXkoKSB8fCA3O1xuICAgICAgICBpZiAoZGF5ICE9PSAxKSB7XG4gICAgICAgICAgICBkYXRlLnNldEhvdXJzKC0yNCAqIChkYXkgLSAxKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGRhdGU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRXZWVrTnVtYmVyQnlEYXRlKGRhdGU6IERhdGUpIHtcbiAgICAgIHJldHVybiB0aGlzLnBhZChtb21lbnQoZGF0ZSkuaXNvV2VlaygpLCAyKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHBhZChuLCB3aWR0aCwgeiA9IFwiMFwiKSB7XG4gICAgICB6ID0geiB8fCBcIjBcIjtcbiAgICAgIG4gPSBuICsgXCJcIjtcbiAgICAgIHJldHVybiBuLmxlbmd0aCA+PSB3aWR0aCA/IG4gOiBuZXcgQXJyYXkod2lkdGggLSBuLmxlbmd0aCArIDEpLmpvaW4oeikgKyBuO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,43 +0,0 @@
1
- import { Component } from "@angular/core";
2
- import * as momentImported from "moment";
3
- const moment = momentImported;
4
- import { AnyTagComponent } from "../dateTag.component";
5
- export class YearTagComponent extends AnyTagComponent {
6
- constructor() {
7
- super();
8
- }
9
- initDate() {
10
- if (this.defaultValue) {
11
- this.dateObj.date = moment(new Date(this.defaultValue * 1000)).utc().format("YYYY");
12
- }
13
- else {
14
- this.dateObj.date = moment(new Date()).format("YYYY");
15
- }
16
- }
17
- initName() {
18
- if (!this.name) {
19
- this.name = "Year";
20
- }
21
- }
22
- chosenTagHandler(value) {
23
- const date = new Date();
24
- date.setTime(0);
25
- date.setFullYear(value, 0, 1);
26
- const resultDate = moment.utc(date);
27
- resultDate.hour(12);
28
- const resultTag = {
29
- name: this.name,
30
- value: parseInt(resultDate.format("X"), 10),
31
- label: resultDate.format("YYYY"),
32
- };
33
- this.dateChange.emit(resultTag);
34
- }
35
- }
36
- YearTagComponent.decorators = [
37
- { type: Component, args: [{
38
- template: "<div>\n <mat-form-field class=\"date-select-box\">\n <input matInput placeholder=\"{{name}}\" type=\"number\" name=\"Year\"\n (change)=\"changeInputHandler($event)\"\n [(ngModel)]=\"dateObj.date\">\n </mat-form-field>\n</div>\n",
39
- selector: "year-tag"
40
- },] }
41
- ];
42
- YearTagComponent.ctorParameters = () => [];
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWVhclRhZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9EYXRlVGFncy95ZWFyVGFnL3llYXJUYWcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxLQUFLLGNBQWMsTUFBTSxRQUFRLENBQUM7QUFBQyxNQUFNLE1BQU0sR0FBRyxjQUFjLENBQUM7QUFHeEUsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBT3JELE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxlQUFlO0lBRW5EO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNyQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNyRjthQUFNO1lBQ0wsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDdkQ7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUM7U0FDcEI7SUFDSCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBSztRQUNsQixNQUFNLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzlCLE1BQU0sVUFBVSxHQUFXLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNwQixNQUFNLFNBQVMsR0FBYTtZQUN4QixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixLQUFLLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzNDLEtBQUssRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztTQUNuQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDcEMsQ0FBQzs7O1lBckNGLFNBQVMsU0FBQztnQkFDUCx3UkFBcUM7Z0JBQ3JDLFFBQVEsRUFBRSxVQUFVO2FBQ3ZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnR9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgKiBhcyBtb21lbnRJbXBvcnRlZCBmcm9tIFwibW9tZW50XCI7IGNvbnN0IG1vbWVudCA9IG1vbWVudEltcG9ydGVkO1xuaW1wb3J0IHtNb21lbnR9IGZyb20gXCJtb21lbnRcIjtcbmltcG9ydCB7SURhdGVUYWd9IGZyb20gXCIuLi8uLi9tb2RlbHMvc2VydmVyVGFnc1wiO1xuaW1wb3J0IHtBbnlUYWdDb21wb25lbnR9IGZyb20gXCIuLi9kYXRlVGFnLmNvbXBvbmVudFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogXCJ5ZWFyVGFnLmNvbXBvbmVudC5odG1sXCIsXG4gICAgc2VsZWN0b3I6IFwieWVhci10YWdcIixcbn0pXG5cbmV4cG9ydCBjbGFzcyBZZWFyVGFnQ29tcG9uZW50IGV4dGVuZHMgQW55VGFnQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgaW5pdERhdGUoKSB7XG4gICAgaWYgKHRoaXMuZGVmYXVsdFZhbHVlKSB7XG4gICAgICB0aGlzLmRhdGVPYmouZGF0ZSA9IG1vbWVudChuZXcgRGF0ZSh0aGlzLmRlZmF1bHRWYWx1ZSAqIDEwMDApKS51dGMoKS5mb3JtYXQoXCJZWVlZXCIpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRhdGVPYmouZGF0ZSA9IG1vbWVudChuZXcgRGF0ZSgpKS5mb3JtYXQoXCJZWVlZXCIpO1xuICAgIH1cbiAgfVxuXG4gIGluaXROYW1lKCkge1xuICAgIGlmICghdGhpcy5uYW1lKSB7XG4gICAgICB0aGlzLm5hbWUgPSBcIlllYXJcIjtcbiAgICB9XG4gIH1cblxuICBjaG9zZW5UYWdIYW5kbGVyKHZhbHVlKSB7XG4gICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcbiAgICAgIGRhdGUuc2V0VGltZSgwKTtcbiAgICAgIGRhdGUuc2V0RnVsbFllYXIodmFsdWUsIDAsIDEpO1xuICAgICAgY29uc3QgcmVzdWx0RGF0ZTogTW9tZW50ID0gbW9tZW50LnV0YyhkYXRlKTtcbiAgICAgIHJlc3VsdERhdGUuaG91cigxMik7XG4gICAgICBjb25zdCByZXN1bHRUYWc6IElEYXRlVGFnID0ge1xuICAgICAgICAgIG5hbWU6IHRoaXMubmFtZSxcbiAgICAgICAgICB2YWx1ZTogcGFyc2VJbnQocmVzdWx0RGF0ZS5mb3JtYXQoXCJYXCIpLCAxMCksXG4gICAgICAgICAgbGFiZWw6IHJlc3VsdERhdGUuZm9ybWF0KFwiWVlZWVwiKSxcbiAgICAgIH07XG4gICAgICB0aGlzLmRhdGVDaGFuZ2UuZW1pdChyZXN1bHRUYWcpO1xuICB9XG59XG4iXX0=