geonetwork-ui 2.4.2 → 2.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +31 -16
- package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +2 -2
- package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +18 -16
- package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +17 -7
- package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +12 -17
- package/esm2022/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.mjs +11 -11
- package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +3 -3
- package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +6 -7
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +46 -1
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +3 -2
- package/esm2022/libs/ui/dataviz/src/index.mjs +3 -3
- package/esm2022/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.mjs +51 -0
- package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.component.mjs +133 -0
- package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.data.source.mjs +24 -0
- package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.mjs +82 -0
- package/esm2022/libs/ui/elements/src/index.mjs +2 -1
- package/esm2022/libs/ui/elements/src/lib/application-banner/application-banner.component.mjs +78 -0
- package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +18 -10
- package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +2 -1
- package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +10 -4
- package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +7 -2
- package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +14 -12
- package/esm2022/libs/util/data-fetcher/src/index.mjs +3 -1
- package/esm2022/libs/util/data-fetcher/src/lib/model.mjs +7 -3
- package/esm2022/libs/util/data-fetcher/src/lib/readers/wfs.mjs +20 -2
- package/esm2022/libs/util/data-fetcher/src/lib/utils.mjs +3 -3
- package/esm2022/libs/util/shared/src/lib/services/date.service.mjs +41 -0
- package/esm2022/libs/util/shared/src/lib/services/index.mjs +2 -1
- package/esm2022/libs/util/shared/src/lib/utils/temporal-extent-union.mjs +4 -4
- package/esm2022/translations/de.json +7 -0
- package/esm2022/translations/en.json +7 -0
- package/esm2022/translations/es.json +7 -0
- package/esm2022/translations/fr.json +7 -0
- package/esm2022/translations/it.json +7 -0
- package/esm2022/translations/nl.json +7 -0
- package/esm2022/translations/pt.json +7 -0
- package/fesm2022/geonetwork-ui.mjs +828 -390
- package/fesm2022/geonetwork-ui.mjs.map +1 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +2 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts +7 -9
- package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +3 -6
- package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts +3 -3
- package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/feature-record.module.d.ts +2 -2
- package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
- package/libs/feature/search/src/lib/utils/service/fields.d.ts +10 -0
- package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
- package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
- package/libs/ui/dataviz/src/index.d.ts +2 -2
- package/libs/ui/dataviz/src/index.d.ts.map +1 -1
- package/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.d.ts +14 -0
- package/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.d.ts.map +1 -0
- package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts +45 -0
- package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts.map +1 -0
- package/libs/ui/dataviz/src/lib/data-table/data-table.data.source.d.ts +12 -0
- package/libs/ui/dataviz/src/lib/data-table/data-table.data.source.d.ts.map +1 -0
- package/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.d.ts +10 -0
- package/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.d.ts.map +1 -0
- package/libs/ui/elements/src/index.d.ts +1 -0
- package/libs/ui/elements/src/index.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/application-banner/application-banner.component.d.ts +16 -0
- package/libs/ui/elements/src/lib/application-banner/application-banner.component.d.ts.map +1 -0
- package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +5 -0
- package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts +2 -1
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
- package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +3 -2
- package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
- package/libs/util/data-fetcher/src/index.d.ts +3 -1
- package/libs/util/data-fetcher/src/index.d.ts.map +1 -1
- package/libs/util/data-fetcher/src/lib/model.d.ts +1 -1
- package/libs/util/data-fetcher/src/lib/model.d.ts.map +1 -1
- package/libs/util/data-fetcher/src/lib/readers/wfs.d.ts.map +1 -1
- package/libs/util/shared/src/lib/services/date.service.d.ts +13 -0
- package/libs/util/shared/src/lib/services/date.service.d.ts.map +1 -0
- package/libs/util/shared/src/lib/services/index.d.ts +1 -0
- package/libs/util/shared/src/lib/services/index.d.ts.map +1 -1
- package/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts +2 -1
- package/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +33 -16
- package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +1 -5
- package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.html +3 -3
- package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.ts +17 -15
- package/src/libs/feature/dataviz/src/lib/service/data.service.ts +21 -11
- package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.html +4 -3
- package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +9 -18
- package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.ts +3 -4
- package/src/libs/feature/record/src/lib/data-view/data-view.component.html +1 -1
- package/src/libs/feature/record/src/lib/feature-record.module.ts +6 -4
- package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +2 -0
- package/src/libs/feature/search/src/lib/utils/service/fields.ts +55 -0
- package/src/libs/ui/dataviz/src/index.ts +2 -2
- package/src/libs/ui/dataviz/src/lib/data-table/custom.mat.paginator.intl.ts +52 -0
- package/src/libs/ui/dataviz/src/lib/{table/table.component.css → data-table/data-table.component.css} +4 -0
- package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.html +67 -0
- package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.ts +173 -0
- package/src/libs/ui/dataviz/src/lib/data-table/data-table.data.source.ts +33 -0
- package/src/libs/ui/dataviz/src/lib/data-table/data-table.fixtures.ts +84 -0
- package/src/libs/ui/elements/src/index.ts +1 -0
- package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.css +0 -0
- package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.html +25 -0
- package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.ts +70 -0
- package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +3 -3
- package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +12 -2
- package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +2 -0
- package/src/libs/ui/elements/src/lib/ui-elements.module.ts +3 -0
- package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +6 -0
- package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +4 -2
- package/src/libs/util/data-fetcher/src/index.ts +3 -0
- package/src/libs/util/data-fetcher/src/lib/model.ts +6 -2
- package/src/libs/util/data-fetcher/src/lib/readers/wfs.ts +23 -1
- package/src/libs/util/data-fetcher/src/lib/utils.ts +2 -2
- package/src/libs/util/shared/src/lib/services/date.service.ts +45 -0
- package/src/libs/util/shared/src/lib/services/index.ts +1 -0
- package/src/libs/util/shared/src/lib/utils/temporal-extent-union.ts +6 -3
- package/translations/de.json +7 -0
- package/translations/en.json +7 -0
- package/translations/es.json +7 -0
- package/translations/fr.json +7 -0
- package/translations/it.json +7 -0
- package/translations/nl.json +7 -0
- package/translations/pt.json +7 -0
- package/translations/sk.json +7 -0
- package/esm2022/libs/ui/dataviz/src/lib/table/table.component.mjs +0 -61
- package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +0 -40
- package/libs/ui/dataviz/src/lib/table/table.component.d.ts +0 -29
- package/libs/ui/dataviz/src/lib/table/table.component.d.ts.map +0 -1
- package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts +0 -11
- package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts.map +0 -1
- package/src/libs/ui/dataviz/src/lib/table/table.component.html +0 -40
- package/src/libs/ui/dataviz/src/lib/table/table.component.ts +0 -80
- package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +0 -40
|
@@ -43,7 +43,7 @@ export function fetchDataAsText(url) {
|
|
|
43
43
|
})
|
|
44
44
|
.then(async (response) => {
|
|
45
45
|
if (!response.ok) {
|
|
46
|
-
throw FetchError.http(response.status);
|
|
46
|
+
throw FetchError.http(response.status, await response.text());
|
|
47
47
|
}
|
|
48
48
|
return response.text();
|
|
49
49
|
}), url, 'asText');
|
|
@@ -55,7 +55,7 @@ export function fetchDataAsArrayBuffer(url) {
|
|
|
55
55
|
})
|
|
56
56
|
.then(async (response) => {
|
|
57
57
|
if (!response.ok) {
|
|
58
|
-
throw FetchError.http(response.status);
|
|
58
|
+
throw FetchError.http(response.status, await response.text());
|
|
59
59
|
}
|
|
60
60
|
// convert to a numeric array so that we can store the response in cache
|
|
61
61
|
return Array.from(new Uint8Array(await response.arrayBuffer()));
|
|
@@ -204,4 +204,4 @@ export function getJsonDataItemsProxy(items) {
|
|
|
204
204
|
},
|
|
205
205
|
});
|
|
206
206
|
}
|
|
207
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYy9saWIvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFVBQVUsRUFHVixjQUFjLEdBQ2YsTUFBTSxTQUFTLENBQUE7QUFDaEIsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxLQUFLLElBQUksU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDbkQsT0FBTyxFQUFFLFFBQVEsSUFBSSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUU1RCxNQUFNLENBQUMsS0FBSyxVQUFVLGdCQUFnQixDQUNwQyxHQUFXLEVBQ1gsUUFBd0I7SUFFeEIsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLEdBQUcsQ0FDbEMsR0FBRyxFQUNILE9BQU8sTUFBTSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUN2RSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDM0IsTUFBTSxhQUFhLEdBQ2pCLG9CQUFvQixJQUFJLG9CQUFvQixDQUFDLE1BQU07UUFDakQsQ0FBQyxDQUFFLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBb0I7UUFDMUQsQ0FBQyxDQUFDLElBQUksQ0FBQTtJQUVWLGVBQWU7SUFDZixJQUFJLFFBQVE7UUFBRSxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUE7SUFFOUMseUJBQXlCO0lBQ3pCLE1BQU0sT0FBTyxHQUFHLE1BQU0sWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ3ZD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LFVBQVUsQ0FBQTtZQUM3QixDQUFDO1lBQ0QsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDbEIsQ0FBQztRQUNELEdBQUc7WUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixDQUFDLENBQUE7UUFDN0MsQ0FBQztLQUNGLENBQUMsQ0FBQTtBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEYXRhSXRlbSxcbiAgRGF0YXNldEhlYWRlcnMsXG4gIEZldGNoRXJyb3IsXG4gIFByb3BlcnR5SW5mbyxcbiAgU3VwcG9ydGVkVHlwZSxcbiAgU3VwcG9ydGVkVHlwZXMsXG59IGZyb20gJy4vbW9kZWwnXG5pbXBvcnQgeyBzaGFyZWRGZXRjaCwgdXNlQ2FjaGUgfSBmcm9tICdAY2FtcHRvY2FtcC9vZ2MtY2xpZW50J1xuaW1wb3J0IHsgcGFyc2VIZWFkZXJzIH0gZnJvbSAnLi9oZWFkZXJzJ1xuaW1wb3J0IHsgcGFyc2UgYXMgcGFyc2VEYXRlIH0gZnJvbSAnZGF0ZS1mbnMvcGFyc2UnXG5pbXBvcnQgeyBwYXJzZUlTTyBhcyBwYXJzZUlzb0RhdGUgfSBmcm9tICdkYXRlLWZucy9wYXJzZUlTTydcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGluZmVyRGF0YXNldFR5cGUoXG4gIHVybDogc3RyaW5nLFxuICB0eXBlSGludD86IFN1cHBvcnRlZFR5cGVcbik6IFByb21pc2U8U3VwcG9ydGVkVHlwZT4ge1xuICBjb25zdCBmaWxlRXh0ZW5zaW9uTWF0Y2hlcyA9IG5ldyBVUkwoXG4gICAgdXJsLFxuICAgIHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnID8gd2luZG93LmxvY2F0aW9uLnRvU3RyaW5nKCkgOiB1bmRlZmluZWRcbiAgKS5wYXRobmFtZS5tYXRjaCgvXFwuKC4rKSQvKVxuICBjb25zdCBmaWxlRXh0ZW5zaW9uID1cbiAgICBmaWxlRXh0ZW5zaW9uTWF0Y2hlcyAmJiBmaWxlRXh0ZW5zaW9uTWF0Y2hlcy5sZW5ndGhcbiAgICAgID8gKGZpbGVFeHRlbnNpb25NYXRjaGVzWzFdLnRvTG93ZXJDYXNlKCkgYXMgU3VwcG9ydGVkVHlwZSlcbiAgICAgIDogbnVsbFxuXG4gIC8vIDEuIHR5cGUgaGludFxuICBpZiAodHlwZUhpbnQpIHJldHVybiBQcm9taXNlLnJlc29sdmUodHlwZUhpbnQpXG5cbiAgLy8gMi4gY29udGVudC10eXBlIGhlYWRlclxuICBjb25zdCBoZWFkZXJzID0gYXdhaXQgZmV0Y2hIZWFkZXJzKHVybClcbiAgaWYgKCdzdXBwb3J0ZWRUeXBlJyBpbiBoZWFkZXJzKSByZXR1cm4gaGVhZGVycy5zdXBwb3J0ZWRUeXBlXG4gIC8vIDMuIGZpbGUgZXh0ZW5zaW9uIGZyb20gdXJsXG4gIGVsc2UgaWYgKFN1cHBvcnRlZFR5cGVzLmluZGV4T2YoZmlsZUV4dGVuc2lvbikgPiAtMSkgcmV0dXJuIGZpbGVFeHRlbnNpb25cblxuICAvLyBubyB0eXBlIGluZmVycmVkIG9yIGhpbnRlZFxuICBpZiAoJ21pbWVUeXBlJyBpbiBoZWFkZXJzKSB0aHJvdyBGZXRjaEVycm9yLnVuc3VwcG9ydGVkVHlwZShoZWFkZXJzLm1pbWVUeXBlKVxuICBlbHNlIHRocm93IEZldGNoRXJyb3IudW5rbm93blR5cGUoKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZmV0Y2hIZWFkZXJzKHVybDogc3RyaW5nKTogUHJvbWlzZTxEYXRhc2V0SGVhZGVycz4ge1xuICByZXR1cm4gc2hhcmVkRmV0Y2godXJsLCAnSEVBRCcpXG4gICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgdGhyb3cgRmV0Y2hFcnJvci5jb3JzT3JOZXR3b3JrKGVycm9yLm1lc3NhZ2UpXG4gICAgfSlcbiAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgdGhyb3cgRmV0Y2hFcnJvci5odHRwKHJlc3BvbnNlLnN0YXR1cylcbiAgICAgIH1cbiAgICAgIHJldHVybiBwYXJzZUhlYWRlcnMocmVzcG9uc2UuaGVhZGVycylcbiAgICB9KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZmV0Y2hEYXRhQXNUZXh0KHVybDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgcmV0dXJuIHVzZUNhY2hlKFxuICAgICgpID0+XG4gICAgICBzaGFyZWRGZXRjaCh1cmwpXG4gICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICB0aHJvdyBGZXRjaEVycm9yLmNvcnNPck5ldHdvcmsoZXJyb3IubWVzc2FnZSlcbiAgICAgICAgfSlcbiAgICAgICAgLnRoZW4oYXN5bmMgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgICAgICAgICAgdGhyb3cgRmV0Y2hFcnJvci5odHRwKHJlc3BvbnNlLnN0YXR1cylcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLnRleHQoKVxuICAgICAgICB9KSxcbiAgICB1cmwsXG4gICAgJ2FzVGV4dCdcbiAgKVxufVxuZXhwb3J0IGZ1bmN0aW9uIGZldGNoRGF0YUFzQXJyYXlCdWZmZXIodXJsOiBzdHJpbmcpOiBQcm9taXNlPEFycmF5QnVmZmVyPiB7XG4gIHJldHVybiB1c2VDYWNoZShcbiAgICAoKSA9PlxuICAgICAgc2hhcmVkRmV0Y2godXJsKVxuICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgICAgdGhyb3cgRmV0Y2hFcnJvci5jb3JzT3JOZXR3b3JrKGVycm9yLm1lc3NhZ2UpXG4gICAgICAgIH0pXG4gICAgICAgIC50aGVuKGFzeW5jIChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgICAgIHRocm93IEZldGNoRXJyb3IuaHR0cChyZXNwb25zZS5zdGF0dXMpXG4gICAgICAgICAgfVxuICAgICAgICAgIC8vIGNvbnZlcnQgdG8gYSBudW1lcmljIGFycmF5IHNvIHRoYXQgd2UgY2FuIHN0b3JlIHRoZSByZXNwb25zZSBpbiBjYWNoZVxuICAgICAgICAgIHJldHVybiBBcnJheS5mcm9tKG5ldyBVaW50OEFycmF5KGF3YWl0IHJlc3BvbnNlLmFycmF5QnVmZmVyKCkpKVxuICAgICAgICB9KSxcbiAgICB1cmwsXG4gICAgJ2FzQXJyYXlCdWZmZXInXG4gICkudGhlbigoYXJyYXkpID0+IHtcbiAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYXJyYXkpLmJ1ZmZlclxuICB9KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJ5UGFyc2VEYXRlKGlucHV0OiB1bmtub3duKTogRGF0ZSB8IG51bGwge1xuICBpZiAodHlwZW9mIGlucHV0ICE9PSAnc3RyaW5nJykgcmV0dXJuIG51bGxcblxuICBmdW5jdGlvbiB0cnlJc28odmFsdWU6IHN0cmluZykge1xuICAgIGNvbnN0IHBhcnNlZCA9IHBhcnNlSXNvRGF0ZSh2YWx1ZSlcbiAgICByZXR1cm4gaXNOYU4ocGFyc2VkLmdldERhdGUoKSkgPyBudWxsIDogcGFyc2VkXG4gIH1cbiAgZnVuY3Rpb24gdHJ5Rm9ybWF0KHZhbHVlOiBzdHJpbmcsIGZvcm1hdDogc3RyaW5nKSB7XG4gICAgY29uc3QgcGFyc2VkID0gcGFyc2VEYXRlKHZhbHVlLCBmb3JtYXQsIG5ldyBEYXRlKCkpXG4gICAgcmV0dXJuIGlzTmFOKHBhcnNlZC5nZXREYXRlKCkpID8gbnVsbCA6IHBhcnNlZFxuICB9XG4gIHJldHVybiAoXG4gICAgdHJ5SXNvKGlucHV0KSB8fFxuICAgIHRyeUZvcm1hdChpbnB1dCwgJ2RkL01NL3l5eXknKSB8fFxuICAgIHRyeUZvcm1hdChpbnB1dCwgJ2RkLk1NLnl5eXknKSB8fFxuICAgIHRyeUZvcm1hdChpbnB1dCwgJ01NL2RkL3l5eXknKSB8fFxuICAgIG51bGxcbiAgKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdHJ5UGFyc2VOdW1iZXIoaW5wdXQ6IHN0cmluZyk6IG51bWJlciB8IG51bGwge1xuICBpZiAoaXNOYU4oaW5wdXQgYXMgYW55KSkgcmV0dXJuIG51bGxcbiAgY29uc3QgcGFyc2VkID0gcGFyc2VGbG9hdChpbnB1dClcbiAgcmV0dXJuIGlzTmFOKHBhcnNlZCkgPyBudWxsIDogcGFyc2VkXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBqc29uVG9HZW9qc29uRmVhdHVyZShvYmplY3Q6IHsgW2tleTogc3RyaW5nXTogYW55IH0pOiBEYXRhSXRlbSB7XG4gIGNvbnN0IHsgaWQsIHByb3BlcnRpZXMgfSA9IE9iamVjdC5rZXlzKG9iamVjdClcbiAgICAubWFwKChwcm9wZXJ0eSkgPT4gKHByb3BlcnR5ID8gcHJvcGVydHkgOiAndW5rbm93bicpKSAvL3ByZXZlbnQgZW1wdHkgc3RyaW5nc1xuICAgIC5yZWR1Y2UoXG4gICAgICAocHJldiwgY3VycikgPT5cbiAgICAgICAgY3Vyci50b0xvd2VyQ2FzZSgpLmVuZHNXaXRoKCdpZCcpXG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIC4uLnByZXYsXG4gICAgICAgICAgICAgIGlkOiBvYmplY3RbY3Vycl0sXG4gICAgICAgICAgICB9XG4gICAgICAgICAgOiB7XG4gICAgICAgICAgICAgIC4uLnByZXYsXG4gICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsgLi4ucHJldi5wcm9wZXJ0aWVzLCBbY3Vycl06IG9iamVjdFtjdXJyXSB9LFxuICAgICAgICAgICAgfSxcbiAgICAgIHsgaWQ6IHVuZGVmaW5lZCwgcHJvcGVydGllczoge30gfVxuICAgIClcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiAnRmVhdHVyZScsXG4gICAgZ2VvbWV0cnk6IG51bGwsXG4gICAgcHJvcGVydGllcyxcbiAgICAuLi4oaWQgIT09IHVuZGVmaW5lZCAmJiB7IGlkIH0pLFxuICB9XG59XG5cbmZ1bmN0aW9uIG11dGF0ZVByb3BlcnRpZXMoXG4gIGl0ZW1zOiBEYXRhSXRlbVtdLFxuICBtdXRhdG9yczogeyBbZmllbGROYW1lOiBzdHJpbmddOiAodmFsdWU6IHVua25vd24pID0+IHVua25vd24gfVxuKTogRGF0YUl0ZW1bXSB7XG4gIGNvbnN0IG11dGF0b3JLZXlzID0gT2JqZWN0LmtleXMobXV0YXRvcnMpXG4gIGZvciAobGV0IGkgPSAwLCBpaSA9IGl0ZW1zLmxlbmd0aDsgaSA8IGlpOyBpKyspIHtcbiAgICBjb25zdCBpdGVtID0gaXRlbXNbaV1cbiAgICBmb3IgKGNvbnN0IG11dGF0b3JGaWVsZCBvZiBtdXRhdG9yS2V5cykge1xuICAgICAgaWYgKCEobXV0YXRvckZpZWxkIGluIGl0ZW0ucHJvcGVydGllcykpIGNvbnRpbnVlXG4gICAgICBpdGVtLnByb3BlcnRpZXNbbXV0YXRvckZpZWxkXSA9IG11dGF0b3JzW211dGF0b3JGaWVsZF0oXG4gICAgICAgIGl0ZW0ucHJvcGVydGllc1ttdXRhdG9yRmllbGRdXG4gICAgICApXG4gICAgfVxuICB9XG4gIHJldHVybiBpdGVtc1xufVxuXG5jb25zdCBTQU1QTEVfU0laRSA9IDIwXG5cbi8qKlxuICogVGhpcyB3aWxsIGluZmVyIGZpZWxkIHR5cGVzIGZyb20gYSBsaXN0IG9mIGRhdGEgaXRlbXMgYW5kIGNhc3QgdGhlIHZhbHVlcyBhY2NvcmRpbmdseVxuICogQHBhcmFtIGl0ZW1zXG4gKiBAcGFyYW0gaW5mZXJUeXBlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvY2Vzc0l0ZW1Qcm9wZXJ0aWVzKFxuICBpdGVtczogRGF0YUl0ZW1bXSxcbiAgaW5mZXJUeXBlcyA9IGZhbHNlXG4pOiB7XG4gIGl0ZW1zOiBEYXRhSXRlbVtdXG4gIHByb3BlcnRpZXM6IFByb3BlcnR5SW5mb1tdXG59IHtcbiAgY29uc3QgZm91bmRGaWVsZHM6IHsgW25hbWU6IHN0cmluZ106IFByb3BlcnR5SW5mbyB9ID0ge31cbiAgZm9yIChsZXQgaSA9IDAsIGlpID0gTWF0aC5taW4oU0FNUExFX1NJWkUsIGl0ZW1zLmxlbmd0aCk7IGkgPCBpaTsgaSsrKSB7XG4gICAgY29uc3QgaXRlbSA9IGl0ZW1zW2ldXG4gICAgY29uc3QgZmllbGRzID0gT2JqZWN0LmtleXMoaXRlbS5wcm9wZXJ0aWVzKVxuICAgIGZvciAoY29uc3QgZmllbGQgb2YgZmllbGRzKSB7XG4gICAgICBpZiAoIShmaWVsZCBpbiBmb3VuZEZpZWxkcykpIHtcbiAgICAgICAgZm91bmRGaWVsZHNbZmllbGRdID0ge1xuICAgICAgICAgIGxhYmVsOiBmaWVsZCxcbiAgICAgICAgICBuYW1lOiBmaWVsZCxcbiAgICAgICAgICB0eXBlOiBudWxsLFxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjb25zdCB2YWx1ZSA9IGl0ZW0ucHJvcGVydGllc1tmaWVsZF1cbiAgICAgIGNvbnN0IGluZm8gPSBmb3VuZEZpZWxkc1tmaWVsZF1cbiAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSAnJyB8fCB2YWx1ZSA9PT0gbnVsbCkgY29udGludWVcblxuICAgICAgaWYgKCFpbmZlclR5cGVzKSB7XG4gICAgICAgIGlmIChpbmZvLnR5cGUgPT09IG51bGwgJiYgdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgICAgICAgIGluZm8udHlwZSA9ICdudW1iZXInXG4gICAgICAgIH0gZWxzZSBpZiAoaW5mby50eXBlID09PSAnbnVtYmVyJyAmJiB0eXBlb2YgdmFsdWUgIT09ICdudW1iZXInKSB7XG4gICAgICAgICAgaW5mby50eXBlID0gJ3N0cmluZydcbiAgICAgICAgfVxuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuXG4gICAgICBjb25zdCBwYXJzZWROdW1iZXIgPSB0cnlQYXJzZU51bWJlcih2YWx1ZSlcbiAgICAgIGlmIChpbmZvLnR5cGUgPT09IG51bGwgJiYgcGFyc2VkTnVtYmVyICE9PSBudWxsKSB7XG4gICAgICAgIGluZm8udHlwZSA9ICdudW1iZXInXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9IGVsc2UgaWYgKGluZm8udHlwZSA9PT0gJ251bWJlcicgJiYgcGFyc2VkTnVtYmVyID09PSBudWxsKSB7XG4gICAgICAgIGluZm8udHlwZSA9ICdzdHJpbmcnXG4gICAgICAgIGNvbnRpbnVlXG4gICAgICB9XG4gICAgICBjb25zdCBwYXJzZWREYXRlID0gdHJ5UGFyc2VEYXRlKHZhbHVlKVxuICAgICAgaWYgKGluZm8udHlwZSA9PT0gbnVsbCAmJiBwYXJzZWREYXRlICE9PSBudWxsKSB7XG4gICAgICAgIGluZm8udHlwZSA9ICdkYXRlJ1xuICAgICAgfSBlbHNlIGlmIChpbmZvLnR5cGUgPT09ICdkYXRlJyAmJiBwYXJzZWREYXRlID09PSBudWxsKSB7XG4gICAgICAgIGluZm8udHlwZSA9ICdzdHJpbmcnXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29uc3QgcHJvcGVydGllczogUHJvcGVydHlJbmZvW10gPSBbXVxuICBjb25zdCBtdXRhdG9ycyA9IHt9XG4gIGZvciAoY29uc3QgZmllbGQgaW4gZm91bmRGaWVsZHMpIHtcbiAgICBjb25zdCBpbmZvID0gZm91bmRGaWVsZHNbZmllbGRdXG4gICAgaWYgKGluZm8udHlwZSA9PT0gJ251bWJlcicpIHtcbiAgICAgIG11dGF0b3JzW2ZpZWxkXSA9IHRyeVBhcnNlTnVtYmVyXG4gICAgfSBlbHNlIGlmIChpbmZvLnR5cGUgPT09ICdkYXRlJykge1xuICAgICAgbXV0YXRvcnNbZmllbGRdID0gdHJ5UGFyc2VEYXRlXG4gICAgfVxuICAgIHByb3BlcnRpZXMucHVzaCh7IC4uLmluZm8sIHR5cGU6IGluZm8udHlwZSB8fCAnc3RyaW5nJyB9KVxuICB9XG4gIGlmIChpbmZlclR5cGVzKSB7XG4gICAgbXV0YXRlUHJvcGVydGllcyhpdGVtcywgbXV0YXRvcnMpXG4gIH1cbiAgcmV0dXJuIHsgaXRlbXMsIHByb3BlcnRpZXMgfVxufVxuXG4vKipcbiAqIFRoaXMgY3JlYXRlcyBhIFByb3h5IHRoYXQgYWxsb3dzIHJlYWRpbmcgYW5kIHdyaXRpbmcgdG8gdGhlIGRhdGEgaXRlbSBwcm9wZXJ0aWVzXG4gKiBhcyBpZiBpdCB3YXMgYSBzaW1wbGUgYXJyYXkgb2YgSlNPTiBvYmplY3RzXG4gKiBAcGFyYW0gaXRlbXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEpzb25EYXRhSXRlbXNQcm94eShcbiAgaXRlbXM6IERhdGFJdGVtW11cbik6IFJlY29yZDxzdHJpbmcsIHVua25vd24+W10ge1xuICByZXR1cm4gbmV3IFByb3h5PFJlY29yZDxzdHJpbmcsIHVua25vd24+W10+KGl0ZW1zIGFzIGFueSwge1xuICAgIGdldCh0YXJnZXQ6IFJlY29yZDxzdHJpbmcsIHVua25vd24+W10sIHA6IHN0cmluZyB8IHN5bWJvbCkge1xuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2YgcCA9PT0gJ3N0cmluZycgJiZcbiAgICAgICAgIU51bWJlci5pc05hTihwYXJzZUludChwKSkgJiZcbiAgICAgICAgdGFyZ2V0W3BdPy5wcm9wZXJ0aWVzXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIHRhcmdldFtwXS5wcm9wZXJ0aWVzXG4gICAgICB9XG4gICAgICByZXR1cm4gdGFyZ2V0W3BdXG4gICAgfSxcbiAgICBzZXQoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoaXMgb2JqZWN0IGlzIHJlYWQtb25seScpXG4gICAgfSxcbiAgfSlcbn1cbiJdfQ==
|
|
207
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvZGF0YS1mZXRjaGVyL3NyYy9saWIvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLFVBQVUsRUFHVixjQUFjLEdBQ2YsTUFBTSxTQUFTLENBQUE7QUFDaEIsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxLQUFLLElBQUksU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDbkQsT0FBTyxFQUFFLFFBQVEsSUFBSSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUU1RCxNQUFNLENBQUMsS0FBSyxVQUFVLGdCQUFnQixDQUNwQyxHQUFXLEVBQ1gsUUFBd0I7SUFFeEIsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLEdBQUcsQ0FDbEMsR0FBRyxFQUNILE9BQU8sTUFBTSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUN2RSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDM0IsTUFBTSxhQUFhLEdBQ2pCLG9CQUFvQixJQUFJLG9CQUFvQixDQUFDLE1BQU07UUFDakQsQ0FBQyxDQUFFLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBb0I7UUFDMUQsQ0FBQyxDQUFDLElBQUksQ0FBQTtJQUVWLGVBQWU7SUFDZixJQUFJLFFBQVE7UUFBRSxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUE7SUFFOUMseUJBQXlCO0lBQ3pCLE1BQU0sT0FBTyxHQUFHLE1BQU0sWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ3ZD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QUFDLEVBQUUsVUFBVSxFQUNyQixDQUFDO2dCQUNELE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQTtZQUM3QixDQUFDO1lBQ0QsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDbEIsQ0FBQztRQUNELEdBQUc7WUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixDQUFDLENBQUE7UUFDN0MsQ0FBQztLQUNGLENBQUMsQ0FBQTtBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEYXRhSXRlbSxcbiAgRGF0YXNldEhlYWRlcnMsXG4gIEZldGNoRXJyb3IsXG4gIFByb3BlcnR5SW5mbyxcbiAgU3VwcG9ydGVkVHlwZSxcbiAgU3VwcG9ydGVkVHlwZXMsXG59IGZyb20gJy4vbW9kZWwnXG5pbXBvcnQgeyBzaGFyZWRGZXRjaCwgdXNlQ2FjaGUgfSBmcm9tICdAY2FtcHRvY2FtcC9vZ2MtY2xpZW50J1xuaW1wb3J0IHsgcGFyc2VIZWFkZXJzIH0gZnJvbSAnLi9oZWFkZXJzJ1xuaW1wb3J0IHsgcGFyc2UgYXMgcGFyc2VEYXRlIH0gZnJvbSAnZGF0ZS1mbnMvcGFyc2UnXG5pbXBvcnQgeyBwYXJzZUlTTyBhcyBwYXJzZUlzb0RhdGUgfSBmcm9tICdkYXRlLWZucy9wYXJzZUlTTydcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGluZmVyRGF0YXNldFR5cGUoXG4gIHVybDogc3RyaW5nLFxuICB0eXBlSGludD86IFN1cHBvcnRlZFR5cGVcbik6IFByb21pc2U8U3VwcG9ydGVkVHlwZT4ge1xuICBjb25zdCBmaWxlRXh0ZW5zaW9uTWF0Y2hlcyA9IG5ldyBVUkwoXG4gICAgdXJsLFxuICAgIHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnID8gd2luZG93LmxvY2F0aW9uLnRvU3RyaW5nKCkgOiB1bmRlZmluZWRcbiAgKS5wYXRobmFtZS5tYXRjaCgvXFwuKC4rKSQvKVxuICBjb25zdCBmaWxlRXh0ZW5zaW9uID1cbiAgICBmaWxlRXh0ZW5zaW9uTWF0Y2hlcyAmJiBmaWxlRXh0ZW5zaW9uTWF0Y2hlcy5sZW5ndGhcbiAgICAgID8gKGZpbGVFeHRlbnNpb25NYXRjaGVzWzFdLnRvTG93ZXJDYXNlKCkgYXMgU3VwcG9ydGVkVHlwZSlcbiAgICAgIDogbnVsbFxuXG4gIC8vIDEuIHR5cGUgaGludFxuICBpZiAodHlwZUhpbnQpIHJldHVybiBQcm9taXNlLnJlc29sdmUodHlwZUhpbnQpXG5cbiAgLy8gMi4gY29udGVudC10eXBlIGhlYWRlclxuICBjb25zdCBoZWFkZXJzID0gYXdhaXQgZmV0Y2hIZWFkZXJzKHVybClcbiAgaWYgKCdzdXBwb3J0ZWRUeXBlJyBpbiBoZWFkZXJzKSByZXR1cm4gaGVhZGVycy5zdXBwb3J0ZWRUeXBlXG4gIC8vIDMuIGZpbGUgZXh0ZW5zaW9uIGZyb20gdXJsXG4gIGVsc2UgaWYgKFN1cHBvcnRlZFR5cGVzLmluZGV4T2YoZmlsZUV4dGVuc2lvbikgPiAtMSkgcmV0dXJuIGZpbGVFeHRlbnNpb25cblxuICAvLyBubyB0eXBlIGluZmVycmVkIG9yIGhpbnRlZFxuICBpZiAoJ21pbWVUeXBlJyBpbiBoZWFkZXJzKSB0aHJvdyBGZXRjaEVycm9yLnVuc3VwcG9ydGVkVHlwZShoZWFkZXJzLm1pbWVUeXBlKVxuICBlbHNlIHRocm93IEZldGNoRXJyb3IudW5rbm93blR5cGUoKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZmV0Y2hIZWFkZXJzKHVybDogc3RyaW5nKTogUHJvbWlzZTxEYXRhc2V0SGVhZGVycz4ge1xuICByZXR1cm4gc2hhcmVkRmV0Y2godXJsLCAnSEVBRCcpXG4gICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgdGhyb3cgRmV0Y2hFcnJvci5jb3JzT3JOZXR3b3JrKGVycm9yLm1lc3NhZ2UpXG4gICAgfSlcbiAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgdGhyb3cgRmV0Y2hFcnJvci5odHRwKHJlc3BvbnNlLnN0YXR1cylcbiAgICAgIH1cbiAgICAgIHJldHVybiBwYXJzZUhlYWRlcnMocmVzcG9uc2UuaGVhZGVycylcbiAgICB9KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZmV0Y2hEYXRhQXNUZXh0KHVybDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgcmV0dXJuIHVzZUNhY2hlKFxuICAgICgpID0+XG4gICAgICBzaGFyZWRGZXRjaCh1cmwpXG4gICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICB0aHJvdyBGZXRjaEVycm9yLmNvcnNPck5ldHdvcmsoZXJyb3IubWVzc2FnZSlcbiAgICAgICAgfSlcbiAgICAgICAgLnRoZW4oYXN5bmMgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgICAgICAgICAgdGhyb3cgRmV0Y2hFcnJvci5odHRwKHJlc3BvbnNlLnN0YXR1cywgYXdhaXQgcmVzcG9uc2UudGV4dCgpKVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gcmVzcG9uc2UudGV4dCgpXG4gICAgICAgIH0pLFxuICAgIHVybCxcbiAgICAnYXNUZXh0J1xuICApXG59XG5leHBvcnQgZnVuY3Rpb24gZmV0Y2hEYXRhQXNBcnJheUJ1ZmZlcih1cmw6IHN0cmluZyk6IFByb21pc2U8QXJyYXlCdWZmZXI+IHtcbiAgcmV0dXJuIHVzZUNhY2hlKFxuICAgICgpID0+XG4gICAgICBzaGFyZWRGZXRjaCh1cmwpXG4gICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgICB0aHJvdyBGZXRjaEVycm9yLmNvcnNPck5ldHdvcmsoZXJyb3IubWVzc2FnZSlcbiAgICAgICAgfSlcbiAgICAgICAgLnRoZW4oYXN5bmMgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgICAgICAgICAgdGhyb3cgRmV0Y2hFcnJvci5odHRwKHJlc3BvbnNlLnN0YXR1cywgYXdhaXQgcmVzcG9uc2UudGV4dCgpKVxuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBjb252ZXJ0IHRvIGEgbnVtZXJpYyBhcnJheSBzbyB0aGF0IHdlIGNhbiBzdG9yZSB0aGUgcmVzcG9uc2UgaW4gY2FjaGVcbiAgICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShuZXcgVWludDhBcnJheShhd2FpdCByZXNwb25zZS5hcnJheUJ1ZmZlcigpKSlcbiAgICAgICAgfSksXG4gICAgdXJsLFxuICAgICdhc0FycmF5QnVmZmVyJ1xuICApLnRoZW4oKGFycmF5KSA9PiB7XG4gICAgcmV0dXJuIG5ldyBVaW50OEFycmF5KGFycmF5KS5idWZmZXJcbiAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyeVBhcnNlRGF0ZShpbnB1dDogdW5rbm93bik6IERhdGUgfCBudWxsIHtcbiAgaWYgKHR5cGVvZiBpbnB1dCAhPT0gJ3N0cmluZycpIHJldHVybiBudWxsXG5cbiAgZnVuY3Rpb24gdHJ5SXNvKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBjb25zdCBwYXJzZWQgPSBwYXJzZUlzb0RhdGUodmFsdWUpXG4gICAgcmV0dXJuIGlzTmFOKHBhcnNlZC5nZXREYXRlKCkpID8gbnVsbCA6IHBhcnNlZFxuICB9XG4gIGZ1bmN0aW9uIHRyeUZvcm1hdCh2YWx1ZTogc3RyaW5nLCBmb3JtYXQ6IHN0cmluZykge1xuICAgIGNvbnN0IHBhcnNlZCA9IHBhcnNlRGF0ZSh2YWx1ZSwgZm9ybWF0LCBuZXcgRGF0ZSgpKVxuICAgIHJldHVybiBpc05hTihwYXJzZWQuZ2V0RGF0ZSgpKSA/IG51bGwgOiBwYXJzZWRcbiAgfVxuICByZXR1cm4gKFxuICAgIHRyeUlzbyhpbnB1dCkgfHxcbiAgICB0cnlGb3JtYXQoaW5wdXQsICdkZC9NTS95eXl5JykgfHxcbiAgICB0cnlGb3JtYXQoaW5wdXQsICdkZC5NTS55eXl5JykgfHxcbiAgICB0cnlGb3JtYXQoaW5wdXQsICdNTS9kZC95eXl5JykgfHxcbiAgICBudWxsXG4gIClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyeVBhcnNlTnVtYmVyKGlucHV0OiBzdHJpbmcpOiBudW1iZXIgfCBudWxsIHtcbiAgaWYgKGlzTmFOKGlucHV0IGFzIGFueSkpIHJldHVybiBudWxsXG4gIGNvbnN0IHBhcnNlZCA9IHBhcnNlRmxvYXQoaW5wdXQpXG4gIHJldHVybiBpc05hTihwYXJzZWQpID8gbnVsbCA6IHBhcnNlZFxufVxuXG5leHBvcnQgZnVuY3Rpb24ganNvblRvR2VvanNvbkZlYXR1cmUob2JqZWN0OiB7IFtrZXk6IHN0cmluZ106IGFueSB9KTogRGF0YUl0ZW0ge1xuICBjb25zdCB7IGlkLCBwcm9wZXJ0aWVzIH0gPSBPYmplY3Qua2V5cyhvYmplY3QpXG4gICAgLm1hcCgocHJvcGVydHkpID0+IChwcm9wZXJ0eSA/IHByb3BlcnR5IDogJ3Vua25vd24nKSkgLy9wcmV2ZW50IGVtcHR5IHN0cmluZ3NcbiAgICAucmVkdWNlKFxuICAgICAgKHByZXYsIGN1cnIpID0+XG4gICAgICAgIGN1cnIudG9Mb3dlckNhc2UoKS5lbmRzV2l0aCgnaWQnKVxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAuLi5wcmV2LFxuICAgICAgICAgICAgICBpZDogb2JqZWN0W2N1cnJdLFxuICAgICAgICAgICAgfVxuICAgICAgICAgIDoge1xuICAgICAgICAgICAgICAuLi5wcmV2LFxuICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7IC4uLnByZXYucHJvcGVydGllcywgW2N1cnJdOiBvYmplY3RbY3Vycl0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICB7IGlkOiB1bmRlZmluZWQsIHByb3BlcnRpZXM6IHt9IH1cbiAgICApXG4gIHJldHVybiB7XG4gICAgdHlwZTogJ0ZlYXR1cmUnLFxuICAgIGdlb21ldHJ5OiBudWxsLFxuICAgIHByb3BlcnRpZXMsXG4gICAgLi4uKGlkICE9PSB1bmRlZmluZWQgJiYgeyBpZCB9KSxcbiAgfVxufVxuXG5mdW5jdGlvbiBtdXRhdGVQcm9wZXJ0aWVzKFxuICBpdGVtczogRGF0YUl0ZW1bXSxcbiAgbXV0YXRvcnM6IHsgW2ZpZWxkTmFtZTogc3RyaW5nXTogKHZhbHVlOiB1bmtub3duKSA9PiB1bmtub3duIH1cbik6IERhdGFJdGVtW10ge1xuICBjb25zdCBtdXRhdG9yS2V5cyA9IE9iamVjdC5rZXlzKG11dGF0b3JzKVxuICBmb3IgKGxldCBpID0gMCwgaWkgPSBpdGVtcy5sZW5ndGg7IGkgPCBpaTsgaSsrKSB7XG4gICAgY29uc3QgaXRlbSA9IGl0ZW1zW2ldXG4gICAgZm9yIChjb25zdCBtdXRhdG9yRmllbGQgb2YgbXV0YXRvcktleXMpIHtcbiAgICAgIGlmICghKG11dGF0b3JGaWVsZCBpbiBpdGVtLnByb3BlcnRpZXMpKSBjb250aW51ZVxuICAgICAgaXRlbS5wcm9wZXJ0aWVzW211dGF0b3JGaWVsZF0gPSBtdXRhdG9yc1ttdXRhdG9yRmllbGRdKFxuICAgICAgICBpdGVtLnByb3BlcnRpZXNbbXV0YXRvckZpZWxkXVxuICAgICAgKVxuICAgIH1cbiAgfVxuICByZXR1cm4gaXRlbXNcbn1cblxuY29uc3QgU0FNUExFX1NJWkUgPSAyMFxuXG4vKipcbiAqIFRoaXMgd2lsbCBpbmZlciBmaWVsZCB0eXBlcyBmcm9tIGEgbGlzdCBvZiBkYXRhIGl0ZW1zIGFuZCBjYXN0IHRoZSB2YWx1ZXMgYWNjb3JkaW5nbHlcbiAqIEBwYXJhbSBpdGVtc1xuICogQHBhcmFtIGluZmVyVHlwZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHByb2Nlc3NJdGVtUHJvcGVydGllcyhcbiAgaXRlbXM6IERhdGFJdGVtW10sXG4gIGluZmVyVHlwZXMgPSBmYWxzZVxuKToge1xuICBpdGVtczogRGF0YUl0ZW1bXVxuICBwcm9wZXJ0aWVzOiBQcm9wZXJ0eUluZm9bXVxufSB7XG4gIGNvbnN0IGZvdW5kRmllbGRzOiB7IFtuYW1lOiBzdHJpbmddOiBQcm9wZXJ0eUluZm8gfSA9IHt9XG4gIGZvciAobGV0IGkgPSAwLCBpaSA9IE1hdGgubWluKFNBTVBMRV9TSVpFLCBpdGVtcy5sZW5ndGgpOyBpIDwgaWk7IGkrKykge1xuICAgIGNvbnN0IGl0ZW0gPSBpdGVtc1tpXVxuICAgIGNvbnN0IGZpZWxkcyA9IE9iamVjdC5rZXlzKGl0ZW0ucHJvcGVydGllcylcbiAgICBmb3IgKGNvbnN0IGZpZWxkIG9mIGZpZWxkcykge1xuICAgICAgaWYgKCEoZmllbGQgaW4gZm91bmRGaWVsZHMpKSB7XG4gICAgICAgIGZvdW5kRmllbGRzW2ZpZWxkXSA9IHtcbiAgICAgICAgICBsYWJlbDogZmllbGQsXG4gICAgICAgICAgbmFtZTogZmllbGQsXG4gICAgICAgICAgdHlwZTogbnVsbCxcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgdmFsdWUgPSBpdGVtLnByb3BlcnRpZXNbZmllbGRdXG4gICAgICBjb25zdCBpbmZvID0gZm91bmRGaWVsZHNbZmllbGRdXG4gICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gJycgfHwgdmFsdWUgPT09IG51bGwpIGNvbnRpbnVlXG5cbiAgICAgIGlmICghaW5mZXJUeXBlcykge1xuICAgICAgICBpZiAoaW5mby50eXBlID09PSBudWxsICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICBpbmZvLnR5cGUgPSAnbnVtYmVyJ1xuICAgICAgICB9IGVsc2UgaWYgKGluZm8udHlwZSA9PT0gJ251bWJlcicgJiYgdHlwZW9mIHZhbHVlICE9PSAnbnVtYmVyJykge1xuICAgICAgICAgIGluZm8udHlwZSA9ICdzdHJpbmcnXG4gICAgICAgIH1cbiAgICAgICAgY29udGludWVcbiAgICAgIH1cblxuICAgICAgY29uc3QgcGFyc2VkTnVtYmVyID0gdHJ5UGFyc2VOdW1iZXIodmFsdWUpXG4gICAgICBpZiAoaW5mby50eXBlID09PSBudWxsICYmIHBhcnNlZE51bWJlciAhPT0gbnVsbCkge1xuICAgICAgICBpbmZvLnR5cGUgPSAnbnVtYmVyJ1xuICAgICAgICBjb250aW51ZVxuICAgICAgfSBlbHNlIGlmIChpbmZvLnR5cGUgPT09ICdudW1iZXInICYmIHBhcnNlZE51bWJlciA9PT0gbnVsbCkge1xuICAgICAgICBpbmZvLnR5cGUgPSAnc3RyaW5nJ1xuICAgICAgICBjb250aW51ZVxuICAgICAgfVxuICAgICAgY29uc3QgcGFyc2VkRGF0ZSA9IHRyeVBhcnNlRGF0ZSh2YWx1ZSlcbiAgICAgIGlmIChpbmZvLnR5cGUgPT09IG51bGwgJiYgcGFyc2VkRGF0ZSAhPT0gbnVsbCkge1xuICAgICAgICBpbmZvLnR5cGUgPSAnZGF0ZSdcbiAgICAgIH0gZWxzZSBpZiAoaW5mby50eXBlID09PSAnZGF0ZScgJiYgcGFyc2VkRGF0ZSA9PT0gbnVsbCkge1xuICAgICAgICBpbmZvLnR5cGUgPSAnc3RyaW5nJ1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IHByb3BlcnRpZXM6IFByb3BlcnR5SW5mb1tdID0gW11cbiAgY29uc3QgbXV0YXRvcnMgPSB7fVxuICBmb3IgKGNvbnN0IGZpZWxkIGluIGZvdW5kRmllbGRzKSB7XG4gICAgY29uc3QgaW5mbyA9IGZvdW5kRmllbGRzW2ZpZWxkXVxuICAgIGlmIChpbmZvLnR5cGUgPT09ICdudW1iZXInKSB7XG4gICAgICBtdXRhdG9yc1tmaWVsZF0gPSB0cnlQYXJzZU51bWJlclxuICAgIH0gZWxzZSBpZiAoaW5mby50eXBlID09PSAnZGF0ZScpIHtcbiAgICAgIG11dGF0b3JzW2ZpZWxkXSA9IHRyeVBhcnNlRGF0ZVxuICAgIH1cbiAgICBwcm9wZXJ0aWVzLnB1c2goeyAuLi5pbmZvLCB0eXBlOiBpbmZvLnR5cGUgfHwgJ3N0cmluZycgfSlcbiAgfVxuICBpZiAoaW5mZXJUeXBlcykge1xuICAgIG11dGF0ZVByb3BlcnRpZXMoaXRlbXMsIG11dGF0b3JzKVxuICB9XG4gIHJldHVybiB7IGl0ZW1zLCBwcm9wZXJ0aWVzIH1cbn1cblxuLyoqXG4gKiBUaGlzIGNyZWF0ZXMgYSBQcm94eSB0aGF0IGFsbG93cyByZWFkaW5nIGFuZCB3cml0aW5nIHRvIHRoZSBkYXRhIGl0ZW0gcHJvcGVydGllc1xuICogYXMgaWYgaXQgd2FzIGEgc2ltcGxlIGFycmF5IG9mIEpTT04gb2JqZWN0c1xuICogQHBhcmFtIGl0ZW1zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRKc29uRGF0YUl0ZW1zUHJveHkoXG4gIGl0ZW1zOiBEYXRhSXRlbVtdXG4pOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdIHtcbiAgcmV0dXJuIG5ldyBQcm94eTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdPihpdGVtcyBhcyBhbnksIHtcbiAgICBnZXQodGFyZ2V0OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdLCBwOiBzdHJpbmcgfCBzeW1ib2wpIHtcbiAgICAgIGlmIChcbiAgICAgICAgdHlwZW9mIHAgPT09ICdzdHJpbmcnICYmXG4gICAgICAgICFOdW1iZXIuaXNOYU4ocGFyc2VJbnQocCkpICYmXG4gICAgICAgIHRhcmdldFtwXT8ucHJvcGVydGllc1xuICAgICAgKSB7XG4gICAgICAgIHJldHVybiB0YXJnZXRbcF0ucHJvcGVydGllc1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRhcmdldFtwXVxuICAgIH0sXG4gICAgc2V0KCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGlzIG9iamVjdCBpcyByZWFkLW9ubHknKVxuICAgIH0sXG4gIH0pXG59XG4iXX0=
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { TranslateService } from '@ngx-translate/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@ngx-translate/core";
|
|
5
|
+
export class DateService {
|
|
6
|
+
constructor(translateService) {
|
|
7
|
+
this.translateService = translateService;
|
|
8
|
+
}
|
|
9
|
+
getDateObject(date) {
|
|
10
|
+
if (typeof date === 'string') {
|
|
11
|
+
const dateObj = new Date(date);
|
|
12
|
+
if (isNaN(dateObj.getTime())) {
|
|
13
|
+
throw new Error('Invalid date string');
|
|
14
|
+
}
|
|
15
|
+
return dateObj;
|
|
16
|
+
}
|
|
17
|
+
return date;
|
|
18
|
+
}
|
|
19
|
+
getLocaleAndDate(date) {
|
|
20
|
+
const locale = this.translateService.currentLang || 'en-US';
|
|
21
|
+
const dateObj = this.getDateObject(date);
|
|
22
|
+
return { locale, dateObj };
|
|
23
|
+
}
|
|
24
|
+
formatDate(date, options) {
|
|
25
|
+
const { locale, dateObj } = this.getLocaleAndDate(date);
|
|
26
|
+
return dateObj.toLocaleDateString(locale, options);
|
|
27
|
+
}
|
|
28
|
+
formatDateTime(date, options) {
|
|
29
|
+
const { locale, dateObj } = this.getLocaleAndDate(date);
|
|
30
|
+
return dateObj.toLocaleString(locale, options);
|
|
31
|
+
}
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateService, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
33
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateService, providedIn: 'root' }); }
|
|
34
|
+
}
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateService, decorators: [{
|
|
36
|
+
type: Injectable,
|
|
37
|
+
args: [{
|
|
38
|
+
providedIn: 'root',
|
|
39
|
+
}]
|
|
40
|
+
}], ctorParameters: () => [{ type: i1.TranslateService }] });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMvbGliL3NlcnZpY2VzL2RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBOzs7QUFLdEQsTUFBTSxPQUFPLFdBQVc7SUFDdEIsWUFBb0IsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFBRyxDQUFDO0lBRWxELGFBQWEsQ0FBQyxJQUFtQjtRQUN2QyxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzdCLE1BQU0sT0FBTyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQzlCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0JBQzdCLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQTtZQUN4QyxDQUFDO1lBQ0QsT0FBTyxPQUFPLENBQUE7UUFDaEIsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQztJQUVPLGdCQUFnQixDQUFDLElBQW1CO1FBSTFDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLElBQUksT0FBTyxDQUFBO1FBQzNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDeEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQTtJQUM1QixDQUFDO0lBRUQsVUFBVSxDQUNSLElBQW1CLEVBQ25CLE9BQW9DO1FBRXBDLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ3ZELE9BQU8sT0FBTyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQTtJQUNwRCxDQUFDO0lBRUQsY0FBYyxDQUNaLElBQW1CLEVBQ25CLE9BQW9DO1FBRXBDLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ3ZELE9BQU8sT0FBTyxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUE7SUFDaEQsQ0FBQzsrR0FyQ1UsV0FBVzttSEFBWCxXQUFXLGNBRlYsTUFBTTs7NEZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRGF0ZVNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UpIHt9XG5cbiAgcHJpdmF0ZSBnZXREYXRlT2JqZWN0KGRhdGU6IERhdGUgfCBzdHJpbmcpOiBEYXRlIHtcbiAgICBpZiAodHlwZW9mIGRhdGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjb25zdCBkYXRlT2JqID0gbmV3IERhdGUoZGF0ZSlcbiAgICAgIGlmIChpc05hTihkYXRlT2JqLmdldFRpbWUoKSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGRhdGUgc3RyaW5nJylcbiAgICAgIH1cbiAgICAgIHJldHVybiBkYXRlT2JqXG4gICAgfVxuICAgIHJldHVybiBkYXRlXG4gIH1cblxuICBwcml2YXRlIGdldExvY2FsZUFuZERhdGUoZGF0ZTogRGF0ZSB8IHN0cmluZyk6IHtcbiAgICBsb2NhbGU6IHN0cmluZ1xuICAgIGRhdGVPYmo6IERhdGVcbiAgfSB7XG4gICAgY29uc3QgbG9jYWxlID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmN1cnJlbnRMYW5nIHx8ICdlbi1VUydcbiAgICBjb25zdCBkYXRlT2JqID0gdGhpcy5nZXREYXRlT2JqZWN0KGRhdGUpXG4gICAgcmV0dXJuIHsgbG9jYWxlLCBkYXRlT2JqIH1cbiAgfVxuXG4gIGZvcm1hdERhdGUoXG4gICAgZGF0ZTogRGF0ZSB8IHN0cmluZyxcbiAgICBvcHRpb25zPzogSW50bC5EYXRlVGltZUZvcm1hdE9wdGlvbnNcbiAgKTogc3RyaW5nIHtcbiAgICBjb25zdCB7IGxvY2FsZSwgZGF0ZU9iaiB9ID0gdGhpcy5nZXRMb2NhbGVBbmREYXRlKGRhdGUpXG4gICAgcmV0dXJuIGRhdGVPYmoudG9Mb2NhbGVEYXRlU3RyaW5nKGxvY2FsZSwgb3B0aW9ucylcbiAgfVxuXG4gIGZvcm1hdERhdGVUaW1lKFxuICAgIGRhdGU6IERhdGUgfCBzdHJpbmcsXG4gICAgb3B0aW9ucz86IEludGwuRGF0ZVRpbWVGb3JtYXRPcHRpb25zXG4gICk6IHN0cmluZyB7XG4gICAgY29uc3QgeyBsb2NhbGUsIGRhdGVPYmogfSA9IHRoaXMuZ2V0TG9jYWxlQW5kRGF0ZShkYXRlKVxuICAgIHJldHVybiBkYXRlT2JqLnRvTG9jYWxlU3RyaW5nKGxvY2FsZSwgb3B0aW9ucylcbiAgfVxufVxuIl19
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from './theme.service';
|
|
2
2
|
export * from './log.service';
|
|
3
3
|
export * from './proxy.service';
|
|
4
|
-
|
|
4
|
+
export * from './date.service';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYy9saWIvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLGVBQWUsQ0FBQTtBQUM3QixjQUFjLGlCQUFpQixDQUFBO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3RoZW1lLnNlcnZpY2UnXG5leHBvcnQgKiBmcm9tICcuL2xvZy5zZXJ2aWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9wcm94eS5zZXJ2aWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlLnNlcnZpY2UnXG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export function getTemporalRangeUnion(ranges) {
|
|
1
|
+
export function getTemporalRangeUnion(ranges, dateService) {
|
|
2
2
|
let earliestStartDate = Infinity;
|
|
3
3
|
let latestEndDate = -Infinity;
|
|
4
4
|
if (ranges.length) {
|
|
@@ -18,10 +18,10 @@ export function getTemporalRangeUnion(ranges) {
|
|
|
18
18
|
}
|
|
19
19
|
return {
|
|
20
20
|
start: earliestStartDate !== -Infinity
|
|
21
|
-
? new Date(earliestStartDate)
|
|
21
|
+
? dateService.formatDate(new Date(earliestStartDate))
|
|
22
22
|
: undefined,
|
|
23
23
|
end: latestEndDate !== Infinity
|
|
24
|
-
? new Date(latestEndDate)
|
|
24
|
+
? dateService.formatDate(new Date(latestEndDate))
|
|
25
25
|
: undefined,
|
|
26
26
|
};
|
|
27
27
|
}
|
|
@@ -29,4 +29,4 @@ export function getTemporalRangeUnion(ranges) {
|
|
|
29
29
|
return undefined;
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcG9yYWwtZXh0ZW50LXVuaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91dGlsL3NoYXJlZC9zcmMvbGliL3V0aWxzL3RlbXBvcmFsLWV4dGVudC11bmlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUscUJBQXFCLENBQ25DLE1BR0csRUFDSCxXQUF3QjtJQUV4QixJQUFJLGlCQUFpQixHQUFHLFFBQVEsQ0FBQTtJQUNoQyxJQUFJLGFBQWEsR0FBRyxDQUFDLFFBQVEsQ0FBQTtJQUM3QixJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNsQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ3ZDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLO2dCQUNoQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sRUFBRTtnQkFDckMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFBO1lBQ2IsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUc7Z0JBQzVCLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFO2dCQUNuQyxDQUFDLENBQUMsUUFBUSxDQUFBO1lBQ1osSUFBSSxVQUFVLEdBQUcsaUJBQWlCLEVBQUUsQ0FBQztnQkFDbkMsaUJBQWlCLEdBQUcsVUFBVSxDQUFBO1lBQ2hDLENBQUM7WUFDRCxJQUFJLFFBQVEsR0FBRyxhQUFhLEVBQUUsQ0FBQztnQkFDN0IsYUFBYSxHQUFHLFFBQVEsQ0FBQTtZQUMxQixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU87WUFDTCxLQUFLLEVBQ0gsaUJBQWlCLEtBQUssQ0FBQyxRQUFRO2dCQUM3QixDQUFDLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO2dCQUNyRCxDQUFDLENBQUMsU0FBUztZQUNmLEdBQUcsRUFDRCxhQUFhLEtBQUssUUFBUTtnQkFDeEIsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7Z0JBQ2pELENBQUMsQ0FBQyxTQUFTO1NBQ2hCLENBQUE7SUFDSCxDQUFDO1NBQU0sQ0FBQztRQUNOLE9BQU8sU0FBUyxDQUFBO0lBQ2xCLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0ZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcydcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFRlbXBvcmFsUmFuZ2VVbmlvbihcbiAgcmFuZ2VzOiB7XG4gICAgc3RhcnQ/OiBEYXRlXG4gICAgZW5kPzogRGF0ZVxuICB9W10sXG4gIGRhdGVTZXJ2aWNlOiBEYXRlU2VydmljZVxuKSB7XG4gIGxldCBlYXJsaWVzdFN0YXJ0RGF0ZSA9IEluZmluaXR5XG4gIGxldCBsYXRlc3RFbmREYXRlID0gLUluZmluaXR5XG4gIGlmIChyYW5nZXMubGVuZ3RoKSB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCByYW5nZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IHJhbmdlU3RhcnQgPSByYW5nZXNbaV0uc3RhcnRcbiAgICAgICAgPyBuZXcgRGF0ZShyYW5nZXNbaV0uc3RhcnQpLmdldFRpbWUoKVxuICAgICAgICA6IC1JbmZpbml0eVxuICAgICAgY29uc3QgcmFuZ2VFbmQgPSByYW5nZXNbaV0uZW5kXG4gICAgICAgID8gbmV3IERhdGUocmFuZ2VzW2ldLmVuZCkuZ2V0VGltZSgpXG4gICAgICAgIDogSW5maW5pdHlcbiAgICAgIGlmIChyYW5nZVN0YXJ0IDwgZWFybGllc3RTdGFydERhdGUpIHtcbiAgICAgICAgZWFybGllc3RTdGFydERhdGUgPSByYW5nZVN0YXJ0XG4gICAgICB9XG4gICAgICBpZiAocmFuZ2VFbmQgPiBsYXRlc3RFbmREYXRlKSB7XG4gICAgICAgIGxhdGVzdEVuZERhdGUgPSByYW5nZUVuZFxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgc3RhcnQ6XG4gICAgICAgIGVhcmxpZXN0U3RhcnREYXRlICE9PSAtSW5maW5pdHlcbiAgICAgICAgICA/IGRhdGVTZXJ2aWNlLmZvcm1hdERhdGUobmV3IERhdGUoZWFybGllc3RTdGFydERhdGUpKVxuICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgZW5kOlxuICAgICAgICBsYXRlc3RFbmREYXRlICE9PSBJbmZpbml0eVxuICAgICAgICAgID8gZGF0ZVNlcnZpY2UuZm9ybWF0RGF0ZShuZXcgRGF0ZShsYXRlc3RFbmREYXRlKSlcbiAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZFxuICB9XG59XG4iXX0=
|
|
@@ -589,6 +589,12 @@
|
|
|
589
589
|
"share.tab.webComponent": "Integrieren",
|
|
590
590
|
"table.loading.data": "Daten werden geladen...",
|
|
591
591
|
"table.object.count": "Objekte in diesem Datensatz",
|
|
592
|
+
"table.paginator.firstPage": "Erste Seite",
|
|
593
|
+
"table.paginator.itemsPerPage": "Elemente pro Seite",
|
|
594
|
+
"table.paginator.lastPage": "Letzte Seite",
|
|
595
|
+
"table.paginator.nextPage": "Nächste Seite",
|
|
596
|
+
"table.paginator.previousPage": "Vorherige Seite",
|
|
597
|
+
"table.paginator.rangeLabel": "{startIndex} - {endIndex} von {length}",
|
|
592
598
|
"table.select.data": "Datenquelle",
|
|
593
599
|
"tooltip.html.copy": "HTML kopieren",
|
|
594
600
|
"tooltip.id.copy": "Eindeutige Kennung kopieren",
|
|
@@ -596,6 +602,7 @@
|
|
|
596
602
|
"tooltip.url.open": "URL öffnen",
|
|
597
603
|
"ui.readLess": "Weniger lesen",
|
|
598
604
|
"ui.readMore": "Weiterlesen",
|
|
605
|
+
"wfs.aggregations.notsupported": "",
|
|
599
606
|
"wfs.feature.limit": "Zu viele Features, um den WFS-Layer anzuzeigen!",
|
|
600
607
|
"wfs.featuretype.notfound": "Kein passender Feature-Typ wurde im Dienst gefunden",
|
|
601
608
|
"wfs.geojsongml.notsupported": "Dieser Dienst unterstützt das GeoJSON- oder GML-Format nicht",
|
|
@@ -589,6 +589,12 @@
|
|
|
589
589
|
"share.tab.webComponent": "Integrate",
|
|
590
590
|
"table.loading.data": "Loading data...",
|
|
591
591
|
"table.object.count": "Objects in this dataset",
|
|
592
|
+
"table.paginator.firstPage": "First page",
|
|
593
|
+
"table.paginator.itemsPerPage": "Items per page",
|
|
594
|
+
"table.paginator.lastPage": "Last page",
|
|
595
|
+
"table.paginator.nextPage": "Next page",
|
|
596
|
+
"table.paginator.previousPage": "Previous page",
|
|
597
|
+
"table.paginator.rangeLabel": "{startIndex} - {endIndex} of {length}",
|
|
592
598
|
"table.select.data": "Data source",
|
|
593
599
|
"tooltip.html.copy": "Copy HTML",
|
|
594
600
|
"tooltip.id.copy": "Copy unique identifier",
|
|
@@ -596,6 +602,7 @@
|
|
|
596
602
|
"tooltip.url.open": "Open URL",
|
|
597
603
|
"ui.readLess": "Read less",
|
|
598
604
|
"ui.readMore": "Read more",
|
|
605
|
+
"wfs.aggregations.notsupported": "Aggregations are currently not supported for WFS services",
|
|
599
606
|
"wfs.feature.limit": "Too many features to display the WFS layer!",
|
|
600
607
|
"wfs.featuretype.notfound": "No matching feature type was found in the service",
|
|
601
608
|
"wfs.geojsongml.notsupported": "This service does not support the GeoJSON or GML format",
|
|
@@ -589,6 +589,12 @@
|
|
|
589
589
|
"share.tab.webComponent": "",
|
|
590
590
|
"table.loading.data": "",
|
|
591
591
|
"table.object.count": "",
|
|
592
|
+
"table.paginator.firstPage": "Primera página",
|
|
593
|
+
"table.paginator.itemsPerPage": "Elementos por página",
|
|
594
|
+
"table.paginator.lastPage": "Última página",
|
|
595
|
+
"table.paginator.nextPage": "Página siguiente",
|
|
596
|
+
"table.paginator.previousPage": "Página anterior",
|
|
597
|
+
"table.paginator.rangeLabel": "{startIndex} - {endIndex} de {length}",
|
|
592
598
|
"table.select.data": "",
|
|
593
599
|
"tooltip.html.copy": "",
|
|
594
600
|
"tooltip.id.copy": "",
|
|
@@ -596,6 +602,7 @@
|
|
|
596
602
|
"tooltip.url.open": "",
|
|
597
603
|
"ui.readLess": "",
|
|
598
604
|
"ui.readMore": "",
|
|
605
|
+
"wfs.aggregations.notsupported": "",
|
|
599
606
|
"wfs.feature.limit": "",
|
|
600
607
|
"wfs.featuretype.notfound": "",
|
|
601
608
|
"wfs.geojsongml.notsupported": "",
|
|
@@ -589,6 +589,12 @@
|
|
|
589
589
|
"share.tab.webComponent": "Intégrer",
|
|
590
590
|
"table.loading.data": "Chargement des données...",
|
|
591
591
|
"table.object.count": "enregistrements dans ces données",
|
|
592
|
+
"table.paginator.firstPage": "Première page",
|
|
593
|
+
"table.paginator.itemsPerPage": "Éléments par page",
|
|
594
|
+
"table.paginator.lastPage": "Dernière page",
|
|
595
|
+
"table.paginator.nextPage": "Page suivante",
|
|
596
|
+
"table.paginator.previousPage": "Page précédente",
|
|
597
|
+
"table.paginator.rangeLabel": "{startIndex} - {endIndex} sur {length}",
|
|
592
598
|
"table.select.data": "Source de données",
|
|
593
599
|
"tooltip.html.copy": "Copier le HTML",
|
|
594
600
|
"tooltip.id.copy": "Copier l'identifiant unique",
|
|
@@ -596,6 +602,7 @@
|
|
|
596
602
|
"tooltip.url.open": "Ouvrir l'URL",
|
|
597
603
|
"ui.readLess": "Réduire",
|
|
598
604
|
"ui.readMore": "Lire la suite",
|
|
605
|
+
"wfs.aggregations.notsupported": "Agrégations non supportées pour les services WFS",
|
|
599
606
|
"wfs.feature.limit": "Trop d'objets pour afficher la couche WFS !",
|
|
600
607
|
"wfs.featuretype.notfound": "La classe d'objets n'a pas été trouvée dans le service",
|
|
601
608
|
"wfs.geojsongml.notsupported": "Le service ne supporte pas le format GeoJSON ou GML",
|
|
@@ -589,6 +589,12 @@
|
|
|
589
589
|
"share.tab.webComponent": "Incorporare",
|
|
590
590
|
"table.loading.data": "Caricamento dei dati...",
|
|
591
591
|
"table.object.count": "record in questi dati",
|
|
592
|
+
"table.paginator.firstPage": "Prima pagina",
|
|
593
|
+
"table.paginator.itemsPerPage": "Elementi per pagina",
|
|
594
|
+
"table.paginator.lastPage": "Ultima pagina",
|
|
595
|
+
"table.paginator.nextPage": "Pagina successiva",
|
|
596
|
+
"table.paginator.previousPage": "Pagina precedente",
|
|
597
|
+
"table.paginator.rangeLabel": "{startIndex} - {endIndex} di {total}",
|
|
592
598
|
"table.select.data": "Sorgente dati",
|
|
593
599
|
"tooltip.html.copy": "Copiare il HTML",
|
|
594
600
|
"tooltip.id.copy": "Copiare l'identificatore unico",
|
|
@@ -596,6 +602,7 @@
|
|
|
596
602
|
"tooltip.url.open": "Aprire l'URL",
|
|
597
603
|
"ui.readLess": "Ridurre",
|
|
598
604
|
"ui.readMore": "Leggere di più",
|
|
605
|
+
"wfs.aggregations.notsupported": "",
|
|
599
606
|
"wfs.feature.limit": "Troppi oggetti per visualizzare il WFS layer!",
|
|
600
607
|
"wfs.featuretype.notfound": "La classe di oggetto non è stata trovata nel servizio",
|
|
601
608
|
"wfs.geojsongml.notsupported": "Il servizio non supporta il formato GeoJSON o GML",
|
|
@@ -589,6 +589,12 @@
|
|
|
589
589
|
"share.tab.webComponent": "",
|
|
590
590
|
"table.loading.data": "",
|
|
591
591
|
"table.object.count": "",
|
|
592
|
+
"table.paginator.firstPage": "",
|
|
593
|
+
"table.paginator.itemsPerPage": "",
|
|
594
|
+
"table.paginator.lastPage": "",
|
|
595
|
+
"table.paginator.nextPage": "",
|
|
596
|
+
"table.paginator.previousPage": "",
|
|
597
|
+
"table.paginator.rangeLabel": "",
|
|
592
598
|
"table.select.data": "",
|
|
593
599
|
"tooltip.html.copy": "",
|
|
594
600
|
"tooltip.id.copy": "",
|
|
@@ -596,6 +602,7 @@
|
|
|
596
602
|
"tooltip.url.open": "",
|
|
597
603
|
"ui.readLess": "",
|
|
598
604
|
"ui.readMore": "",
|
|
605
|
+
"wfs.aggregations.notsupported": "",
|
|
599
606
|
"wfs.feature.limit": "",
|
|
600
607
|
"wfs.featuretype.notfound": "",
|
|
601
608
|
"wfs.geojsongml.notsupported": "",
|
|
@@ -589,6 +589,12 @@
|
|
|
589
589
|
"share.tab.webComponent": "",
|
|
590
590
|
"table.loading.data": "",
|
|
591
591
|
"table.object.count": "",
|
|
592
|
+
"table.paginator.firstPage": "",
|
|
593
|
+
"table.paginator.itemsPerPage": "",
|
|
594
|
+
"table.paginator.lastPage": "",
|
|
595
|
+
"table.paginator.nextPage": "",
|
|
596
|
+
"table.paginator.previousPage": "",
|
|
597
|
+
"table.paginator.rangeLabel": "",
|
|
592
598
|
"table.select.data": "",
|
|
593
599
|
"tooltip.html.copy": "",
|
|
594
600
|
"tooltip.id.copy": "",
|
|
@@ -596,6 +602,7 @@
|
|
|
596
602
|
"tooltip.url.open": "",
|
|
597
603
|
"ui.readLess": "",
|
|
598
604
|
"ui.readMore": "",
|
|
605
|
+
"wfs.aggregations.notsupported": "",
|
|
599
606
|
"wfs.feature.limit": "",
|
|
600
607
|
"wfs.featuretype.notfound": "",
|
|
601
608
|
"wfs.geojsongml.notsupported": "",
|