@iapps/ng-dhis2-ui 1.0.5 → 1.0.8
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/README.md +60 -3
- package/fesm2022/iapps-ng-dhis2-ui.mjs +86 -72
- package/fesm2022/iapps-ng-dhis2-ui.mjs.map +1 -1
- package/lib/modules/organisation-unit-selector/components/OrgUnitDimension.d.ts +3 -1
- package/lib/modules/organisation-unit-selector/containers/organisation-unit-selector/organisation-unit-selector.component.d.ts +3 -2
- package/lib/modules/organisation-unit-selector/index.d.ts +1 -0
- package/lib/modules/period-selector/containers/period-selector/period-selector.component.d.ts +3 -2
- package/lib/shared/utils/axis.d.ts +1 -1
- package/lib/shared/utils/dimension.d.ts +20 -10
- package/lib/shared/utils/dimensionIsEmpty.d.ts +3 -1
- package/lib/shared/utils/dimensionIsValid.d.ts +3 -1
- package/lib/shared/utils/predefinedDimensions.d.ts +6 -6
- package/package.json +6 -8
- package/esm2022/iapps-ng-dhis2-ui.mjs +0 -5
- package/esm2022/index.mjs +0 -6
- package/esm2022/lib/modules/button/button.component.mjs +0 -60
- package/esm2022/lib/modules/button/button.module.mjs +0 -19
- package/esm2022/lib/modules/button/index.mjs +0 -6
- package/esm2022/lib/modules/header-bar/header-bar.component.mjs +0 -38
- package/esm2022/lib/modules/header-bar/header-bar.module.mjs +0 -19
- package/esm2022/lib/modules/header-bar/index.mjs +0 -6
- package/esm2022/lib/modules/header-bar/models/header-bar-app.model.mjs +0 -20
- package/esm2022/lib/modules/header-bar/models/header-bar-data.model.mjs +0 -46
- package/esm2022/lib/modules/header-bar/models/header-bar-notification.model.mjs +0 -11
- package/esm2022/lib/modules/header-bar/models/index.mjs +0 -6
- package/esm2022/lib/modules/header-bar/utils/apps.mjs +0 -221
- package/esm2022/lib/modules/header-bar/utils/debug-info/debug-info-menu-item.mjs +0 -51
- package/esm2022/lib/modules/header-bar/utils/debug-info/debug-info-modal.mjs +0 -30
- package/esm2022/lib/modules/header-bar/utils/debug-info/debug-info-table.mjs +0 -39
- package/esm2022/lib/modules/header-bar/utils/debug-info/use-debug-info.mjs +0 -12
- package/esm2022/lib/modules/header-bar/utils/header-bar-context.mjs +0 -17
- package/esm2022/lib/modules/header-bar/utils/header-bar.mjs +0 -56
- package/esm2022/lib/modules/header-bar/utils/join-path.mjs +0 -5
- package/esm2022/lib/modules/header-bar/utils/logo-image.mjs +0 -52
- package/esm2022/lib/modules/header-bar/utils/logo.mjs +0 -35
- package/esm2022/lib/modules/header-bar/utils/notification-icon.mjs +0 -76
- package/esm2022/lib/modules/header-bar/utils/notifications.mjs +0 -35
- package/esm2022/lib/modules/header-bar/utils/profile/use-on-doc-click.mjs +0 -21
- package/esm2022/lib/modules/header-bar/utils/profile-menu/index.mjs +0 -2
- package/esm2022/lib/modules/header-bar/utils/profile-menu/profile-header.mjs +0 -95
- package/esm2022/lib/modules/header-bar/utils/profile-menu/profile-menu.mjs +0 -101
- package/esm2022/lib/modules/header-bar/utils/profile-menu/update-notification.mjs +0 -54
- package/esm2022/lib/modules/header-bar/utils/profile.mjs +0 -58
- package/esm2022/lib/modules/header-bar/utils/title.mjs +0 -22
- package/esm2022/lib/modules/organisation-unit-selector/components/OrgUnitDimension.mjs +0 -216
- package/esm2022/lib/modules/organisation-unit-selector/components/index.mjs +0 -6
- package/esm2022/lib/modules/organisation-unit-selector/components/styles/OrgUnitDimension.style.mjs +0 -83
- package/esm2022/lib/modules/organisation-unit-selector/components/utils/index.mjs +0 -6
- package/esm2022/lib/modules/organisation-unit-selector/components/utils/ouIdHelper/index.mjs +0 -18
- package/esm2022/lib/modules/organisation-unit-selector/components/utils/ouLevelUtils/index.mjs +0 -27
- package/esm2022/lib/modules/organisation-unit-selector/containers/organisation-unit-selector/organisation-unit-selector.component.mjs +0 -88
- package/esm2022/lib/modules/organisation-unit-selector/containers/organisation-unit-selector-modal/organisation-unit-selector-modal.component-modal.mjs +0 -114
- package/esm2022/lib/modules/organisation-unit-selector/index.mjs +0 -7
- package/esm2022/lib/modules/organisation-unit-selector/models/index.mjs +0 -5
- package/esm2022/lib/modules/organisation-unit-selector/models/organisation-unit-config.model.mjs +0 -16
- package/esm2022/lib/modules/organisation-unit-selector/organisation-unit-selector.module.mjs +0 -28
- package/esm2022/lib/modules/period-selector/components/FixedPeriodFilter.mjs +0 -44
- package/esm2022/lib/modules/period-selector/components/PeriodDimension.mjs +0 -41
- package/esm2022/lib/modules/period-selector/components/PeriodTransfer.mjs +0 -110
- package/esm2022/lib/modules/period-selector/components/RelativePeriodFilter.mjs +0 -28
- package/esm2022/lib/modules/period-selector/components/utils/fixedPeriods.mjs +0 -308
- package/esm2022/lib/modules/period-selector/components/utils/index.mjs +0 -5
- package/esm2022/lib/modules/period-selector/components/utils/periodTypes.mjs +0 -23
- package/esm2022/lib/modules/period-selector/components/utils/relativePeriods.mjs +0 -139
- package/esm2022/lib/modules/period-selector/containers/period-selector/period-selector.component.mjs +0 -66
- package/esm2022/lib/modules/period-selector/containers/period-selector-modal/period-selector-modal.component.mjs +0 -82
- package/esm2022/lib/modules/period-selector/index.mjs +0 -7
- package/esm2022/lib/modules/period-selector/period-selector.module.mjs +0 -20
- package/esm2022/lib/modules/react-wrapper/index.mjs +0 -6
- package/esm2022/lib/modules/react-wrapper/react-wrapper.component.mjs +0 -55
- package/esm2022/lib/modules/react-wrapper/react-wrapper.module.mjs +0 -18
- package/esm2022/lib/shared/assets/AssignedCategoriesIcon.mjs +0 -12
- package/esm2022/lib/shared/assets/DimensionItemIcons/PeriodIcon.mjs +0 -4
- package/esm2022/lib/shared/components/TransferOption.mjs +0 -130
- package/esm2022/lib/shared/components/index.mjs +0 -6
- package/esm2022/lib/shared/index.mjs +0 -7
- package/esm2022/lib/shared/shared.module.mjs +0 -18
- package/esm2022/lib/shared/styles/DimensionSelector.style.mjs +0 -39
- package/esm2022/lib/shared/styles/index.mjs +0 -5
- package/esm2022/lib/shared/utils/axis.mjs +0 -25
- package/esm2022/lib/shared/utils/axisGetDimension.mjs +0 -5
- package/esm2022/lib/shared/utils/axisHasDimension.mjs +0 -3
- package/esm2022/lib/shared/utils/dimension.mjs +0 -52
- package/esm2022/lib/shared/utils/dimensionGetItems.mjs +0 -6
- package/esm2022/lib/shared/utils/dimensionIs.mjs +0 -3
- package/esm2022/lib/shared/utils/dimensionIsEmpty.mjs +0 -5
- package/esm2022/lib/shared/utils/dimensionIsValid.mjs +0 -16
- package/esm2022/lib/shared/utils/dimensionSelectorHelper.mjs +0 -4
- package/esm2022/lib/shared/utils/index.mjs +0 -15
- package/esm2022/lib/shared/utils/layoutGetAllAxes.mjs +0 -7
- package/esm2022/lib/shared/utils/layoutGetAllDimensions.mjs +0 -6
- package/esm2022/lib/shared/utils/layoutGetDimension.mjs +0 -4
- package/esm2022/lib/shared/utils/layoutReplaceDimension.mjs +0 -17
- package/esm2022/lib/shared/utils/list.mjs +0 -15
- package/esm2022/lib/shared/utils/predefinedDimensions.mjs +0 -47
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { DIMENSION, DIMENSION_PROPS } from './dimension';
|
|
2
|
-
import { dimensionIsEmpty } from './dimensionIsEmpty';
|
|
3
|
-
export const dimensionIsValid = (dimension, { requireItems } = {}) => {
|
|
4
|
-
if (!DIMENSION.isValid(dimension)) {
|
|
5
|
-
return false;
|
|
6
|
-
}
|
|
7
|
-
const requiredProps = DIMENSION_PROPS.filter((prop) => prop.required);
|
|
8
|
-
if (!requiredProps.every((prop) => prop.isValid(dimension[prop.name]))) {
|
|
9
|
-
return false;
|
|
10
|
-
}
|
|
11
|
-
if (requireItems === true && dimensionIsEmpty(dimension)) {
|
|
12
|
-
return false;
|
|
13
|
-
}
|
|
14
|
-
return true;
|
|
15
|
-
};
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGltZW5zaW9uSXNWYWxpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL25nLWRoaXMyLXVpL3NyYy9saWIvc2hhcmVkL3V0aWxzL2RpbWVuc2lvbklzVmFsaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdEQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FDOUIsU0FBYyxFQUNkLEVBQUUsWUFBWSxLQUFVLEVBQUUsRUFDMUIsRUFBRTtJQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7UUFDbEMsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsTUFBTSxhQUFhLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRXRFLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDdkUsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsSUFBSSxZQUFZLEtBQUssSUFBSSxJQUFJLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7UUFDekQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBESU1FTlNJT04sIERJTUVOU0lPTl9QUk9QUyB9IGZyb20gJy4vZGltZW5zaW9uJztcbmltcG9ydCB7IGRpbWVuc2lvbklzRW1wdHkgfSBmcm9tICcuL2RpbWVuc2lvbklzRW1wdHknO1xuXG5leHBvcnQgY29uc3QgZGltZW5zaW9uSXNWYWxpZCA9IChcbiAgZGltZW5zaW9uOiBhbnksXG4gIHsgcmVxdWlyZUl0ZW1zIH06IGFueSA9IHt9XG4pID0+IHtcbiAgaWYgKCFESU1FTlNJT04uaXNWYWxpZChkaW1lbnNpb24pKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3QgcmVxdWlyZWRQcm9wcyA9IERJTUVOU0lPTl9QUk9QUy5maWx0ZXIoKHByb3ApID0+IHByb3AucmVxdWlyZWQpO1xuXG4gIGlmICghcmVxdWlyZWRQcm9wcy5ldmVyeSgocHJvcCkgPT4gcHJvcC5pc1ZhbGlkKGRpbWVuc2lvbltwcm9wLm5hbWVdKSkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBpZiAocmVxdWlyZUl0ZW1zID09PSB0cnVlICYmIGRpbWVuc2lvbklzRW1wdHkoZGltZW5zaW9uKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufTtcbiJdfQ==
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export const TRANSFER_OPTIONS_WIDTH = '420px';
|
|
2
|
-
export const TRANSFER_SELECTED_WIDTH = '298px';
|
|
3
|
-
export const TRANSFER_HEIGHT = '512px';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGltZW5zaW9uU2VsZWN0b3JIZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9uZy1kaGlzMi11aS9zcmMvbGliL3NoYXJlZC91dGlscy9kaW1lbnNpb25TZWxlY3RvckhlbHBlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsT0FBTyxDQUFDO0FBRTlDLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLE9BQU8sQ0FBQztBQUUvQyxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFRSQU5TRkVSX09QVElPTlNfV0lEVEggPSAnNDIwcHgnO1xuXG5leHBvcnQgY29uc3QgVFJBTlNGRVJfU0VMRUNURURfV0lEVEggPSAnMjk4cHgnO1xuXG5leHBvcnQgY29uc3QgVFJBTlNGRVJfSEVJR0hUID0gJzUxMnB4JztcbiJdfQ==
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
// Copyright 2023 UDSM DHIS2 Lab. All rights reserved.
|
|
2
|
-
// Use of this source code is governed by a BSD-style
|
|
3
|
-
// license that can be found in the LICENSE file.
|
|
4
|
-
export * from './dimensionSelectorHelper';
|
|
5
|
-
export * from './predefinedDimensions';
|
|
6
|
-
export * from './list';
|
|
7
|
-
export * from './axis';
|
|
8
|
-
export * from './axisHasDimension';
|
|
9
|
-
export * from './dimension';
|
|
10
|
-
export * from './dimensionSelectorHelper';
|
|
11
|
-
export * from './layoutReplaceDimension';
|
|
12
|
-
export * from './layoutGetDimension';
|
|
13
|
-
export * from './layoutGetAllDimensions';
|
|
14
|
-
export * from './dimensionGetItems';
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9uZy1kaGlzMi11aS9zcmMvbGliL3NoYXJlZC91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzREFBc0Q7QUFDdEQscURBQXFEO0FBQ3JELGlEQUFpRDtBQUNqRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyMyBVRFNNIERISVMyIExhYi4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbi8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlXG4vLyBsaWNlbnNlIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuXG5leHBvcnQgKiBmcm9tICcuL2RpbWVuc2lvblNlbGVjdG9ySGVscGVyJztcbmV4cG9ydCAqIGZyb20gJy4vcHJlZGVmaW5lZERpbWVuc2lvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saXN0JztcbmV4cG9ydCAqIGZyb20gJy4vYXhpcyc7XG5leHBvcnQgKiBmcm9tICcuL2F4aXNIYXNEaW1lbnNpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9kaW1lbnNpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9kaW1lbnNpb25TZWxlY3RvckhlbHBlcic7XG5leHBvcnQgKiBmcm9tICcuL2xheW91dFJlcGxhY2VEaW1lbnNpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9sYXlvdXRHZXREaW1lbnNpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9sYXlvdXRHZXRBbGxEaW1lbnNpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vZGltZW5zaW9uR2V0SXRlbXMnO1xuIl19
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { AXIS_ID_COLUMNS, AXIS_ID_ROWS, AXIS_ID_FILTERS } from './axis';
|
|
2
|
-
export const layoutGetAllAxes = (layout) => [
|
|
3
|
-
layout[AXIS_ID_COLUMNS],
|
|
4
|
-
layout[AXIS_ID_ROWS],
|
|
5
|
-
layout[AXIS_ID_FILTERS],
|
|
6
|
-
];
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0R2V0QWxsQXhlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL25nLWRoaXMyLXVpL3NyYy9saWIvc2hhcmVkL3V0aWxzL2xheW91dEdldEFsbEF4ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRXhFLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsTUFBVyxFQUFFLEVBQUUsQ0FBQztJQUMvQyxNQUFNLENBQUMsZUFBZSxDQUFDO0lBQ3ZCLE1BQU0sQ0FBQyxZQUFZLENBQUM7SUFDcEIsTUFBTSxDQUFDLGVBQWUsQ0FBQztDQUN4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhJU19JRF9DT0xVTU5TLCBBWElTX0lEX1JPV1MsIEFYSVNfSURfRklMVEVSUyB9IGZyb20gJy4vYXhpcyc7XG5cbmV4cG9ydCBjb25zdCBsYXlvdXRHZXRBbGxBeGVzID0gKGxheW91dDogYW55KSA9PiBbXG4gIGxheW91dFtBWElTX0lEX0NPTFVNTlNdLFxuICBsYXlvdXRbQVhJU19JRF9ST1dTXSxcbiAgbGF5b3V0W0FYSVNfSURfRklMVEVSU10sXG5dO1xuIl19
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { layoutGetAllAxes } from './layoutGetAllAxes';
|
|
2
|
-
export const layoutGetAllDimensions = (layout) => layoutGetAllAxes(layout).reduce((allDimensions, axis) => {
|
|
3
|
-
allDimensions.push(...axis);
|
|
4
|
-
return allDimensions;
|
|
5
|
-
}, []);
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0R2V0QWxsRGltZW5zaW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL25nLWRoaXMyLXVpL3NyYy9saWIvc2hhcmVkL3V0aWxzL2xheW91dEdldEFsbERpbWVuc2lvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdEQsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsQ0FBQyxNQUFXLEVBQUUsRUFBRSxDQUNwRCxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxhQUFrQixFQUFFLElBQVMsRUFBRSxFQUFFO0lBQ2hFLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUM1QixPQUFPLGFBQWEsQ0FBQztBQUN2QixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBsYXlvdXRHZXRBbGxBeGVzIH0gZnJvbSAnLi9sYXlvdXRHZXRBbGxBeGVzJztcblxuZXhwb3J0IGNvbnN0IGxheW91dEdldEFsbERpbWVuc2lvbnMgPSAobGF5b3V0OiBhbnkpID0+XG4gIGxheW91dEdldEFsbEF4ZXMobGF5b3V0KS5yZWR1Y2UoKGFsbERpbWVuc2lvbnM6IGFueSwgYXhpczogYW55KSA9PiB7XG4gICAgYWxsRGltZW5zaW9ucy5wdXNoKC4uLmF4aXMpO1xuICAgIHJldHVybiBhbGxEaW1lbnNpb25zO1xuICB9LCBbXSk7XG4iXX0=
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { dimensionIs } from './dimensionIs';
|
|
2
|
-
import { layoutGetAllDimensions } from './layoutGetAllDimensions';
|
|
3
|
-
export const layoutGetDimension = (layout, dimensionId) => layoutGetAllDimensions(layout).find((dimension) => dimensionIs(dimension, dimensionId));
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0R2V0RGltZW5zaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvbmctZGhpczItdWkvc3JjL2xpYi9zaGFyZWQvdXRpbHMvbGF5b3V0R2V0RGltZW5zaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFbEUsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxNQUFXLEVBQUUsV0FBbUIsRUFBRSxFQUFFLENBQ3JFLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQWMsRUFBRSxFQUFFLENBQ3JELFdBQVcsQ0FBQyxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQ3BDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBkaW1lbnNpb25JcyB9IGZyb20gJy4vZGltZW5zaW9uSXMnO1xuaW1wb3J0IHsgbGF5b3V0R2V0QWxsRGltZW5zaW9ucyB9IGZyb20gJy4vbGF5b3V0R2V0QWxsRGltZW5zaW9ucyc7XG5cbmV4cG9ydCBjb25zdCBsYXlvdXRHZXREaW1lbnNpb24gPSAobGF5b3V0OiBhbnksIGRpbWVuc2lvbklkOiBzdHJpbmcpID0+XG4gIGxheW91dEdldEFsbERpbWVuc2lvbnMobGF5b3V0KS5maW5kKChkaW1lbnNpb246IGFueSkgPT5cbiAgICBkaW1lbnNpb25JcyhkaW1lbnNpb24sIGRpbWVuc2lvbklkKVxuICApO1xuIl19
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { DEFAULT_AXIS_IDS } from './axis';
|
|
2
|
-
import { axisHasDimension } from './axisHasDimension';
|
|
3
|
-
import { dimensionIs } from './dimensionIs';
|
|
4
|
-
export const layoutReplaceDimension = (layout, dimensionId, items) => {
|
|
5
|
-
const axisId = DEFAULT_AXIS_IDS.find((a) => axisHasDimension(layout[a], dimensionId));
|
|
6
|
-
if (!axisId) {
|
|
7
|
-
return Object.assign({}, layout);
|
|
8
|
-
}
|
|
9
|
-
const newAxisDimensions = layout[axisId].map((dimension) => {
|
|
10
|
-
if (dimensionIs(dimension, dimensionId)) {
|
|
11
|
-
return Object.assign({}, dimension, { items });
|
|
12
|
-
}
|
|
13
|
-
return dimension;
|
|
14
|
-
});
|
|
15
|
-
return Object.assign({}, layout, { [axisId]: newAxisDimensions });
|
|
16
|
-
};
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0UmVwbGFjZURpbWVuc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL25nLWRoaXMyLXVpL3NyYy9saWIvc2hhcmVkL3V0aWxzL2xheW91dFJlcGxhY2VEaW1lbnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUMsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsQ0FDcEMsTUFBVyxFQUNYLFdBQWdCLEVBQ2hCLEtBQVUsRUFDVixFQUFFO0lBQ0YsTUFBTSxNQUFNLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDekMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUN6QyxDQUFDO0lBRUYsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ1osT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBYyxFQUFFLEVBQUU7UUFDOUQsSUFBSSxXQUFXLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxFQUFFLENBQUM7WUFDeEMsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELENBQUM7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUM7QUFDcEUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgREVGQVVMVF9BWElTX0lEUyB9IGZyb20gJy4vYXhpcyc7XG5pbXBvcnQgeyBheGlzSGFzRGltZW5zaW9uIH0gZnJvbSAnLi9heGlzSGFzRGltZW5zaW9uJztcbmltcG9ydCB7IGRpbWVuc2lvbklzIH0gZnJvbSAnLi9kaW1lbnNpb25Jcyc7XG5cbmV4cG9ydCBjb25zdCBsYXlvdXRSZXBsYWNlRGltZW5zaW9uID0gKFxuICBsYXlvdXQ6IGFueSxcbiAgZGltZW5zaW9uSWQ6IGFueSxcbiAgaXRlbXM6IGFueVxuKSA9PiB7XG4gIGNvbnN0IGF4aXNJZCA9IERFRkFVTFRfQVhJU19JRFMuZmluZCgoYSkgPT5cbiAgICBheGlzSGFzRGltZW5zaW9uKGxheW91dFthXSwgZGltZW5zaW9uSWQpXG4gICk7XG5cbiAgaWYgKCFheGlzSWQpIHtcbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgbGF5b3V0KTtcbiAgfVxuXG4gIGNvbnN0IG5ld0F4aXNEaW1lbnNpb25zID0gbGF5b3V0W2F4aXNJZF0ubWFwKChkaW1lbnNpb246IGFueSkgPT4ge1xuICAgIGlmIChkaW1lbnNpb25JcyhkaW1lbnNpb24sIGRpbWVuc2lvbklkKSkge1xuICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIGRpbWVuc2lvbiwgeyBpdGVtcyB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGRpbWVuc2lvbjtcbiAgfSk7XG5cbiAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIGxheW91dCwgeyBbYXhpc0lkXTogbmV3QXhpc0RpbWVuc2lvbnMgfSk7XG59O1xuIl19
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import i18n from '@dhis2/d2-i18n';
|
|
2
|
-
export const formatList = (items) => {
|
|
3
|
-
// Wrap Intl.ListFormat in try/catch as DHIS2 locales are not always ISO 639 compliant
|
|
4
|
-
try {
|
|
5
|
-
const formatter = new Intl.ListFormat(i18n.language, {
|
|
6
|
-
style: 'long',
|
|
7
|
-
type: 'conjunction',
|
|
8
|
-
});
|
|
9
|
-
return formatter.format(items);
|
|
10
|
-
}
|
|
11
|
-
catch (error) {
|
|
12
|
-
return items.join(', ');
|
|
13
|
-
}
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL25nLWRoaXMyLXVpL3NyYy9saWIvc2hhcmVkL3V0aWxzL2xpc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7SUFDdkMsc0ZBQXNGO0lBQ3RGLElBQUksQ0FBQztRQUNILE1BQU0sU0FBUyxHQUFHLElBQUssSUFBWSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQzVELEtBQUssRUFBRSxNQUFNO1lBQ2IsSUFBSSxFQUFFLGFBQWE7U0FDcEIsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUM7QUFDSCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgaTE4biBmcm9tICdAZGhpczIvZDItaTE4bic7XG5cbmV4cG9ydCBjb25zdCBmb3JtYXRMaXN0ID0gKGl0ZW1zOiBhbnkpID0+IHtcbiAgLy8gV3JhcCBJbnRsLkxpc3RGb3JtYXQgaW4gdHJ5L2NhdGNoIGFzIERISVMyIGxvY2FsZXMgYXJlIG5vdCBhbHdheXMgSVNPIDYzOSBjb21wbGlhbnRcbiAgdHJ5IHtcbiAgICBjb25zdCBmb3JtYXR0ZXIgPSBuZXcgKEludGwgYXMgYW55KS5MaXN0Rm9ybWF0KGkxOG4ubGFuZ3VhZ2UsIHtcbiAgICAgIHN0eWxlOiAnbG9uZycsXG4gICAgICB0eXBlOiAnY29uanVuY3Rpb24nLFxuICAgIH0pO1xuICAgIHJldHVybiBmb3JtYXR0ZXIuZm9ybWF0KGl0ZW1zKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICByZXR1cm4gaXRlbXMuam9pbignLCAnKTtcbiAgfVxufTtcbiJdfQ==
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { IconClock16, IconDimensionData16, IconDimensionOrgUnit16, } from '@dhis2/ui';
|
|
2
|
-
import i18n from '@dhis2/d2-i18n';
|
|
3
|
-
import { AssignedCategoriesIcon } from '../assets/AssignedCategoriesIcon';
|
|
4
|
-
export const DIMENSION_ID_DATA = 'dx';
|
|
5
|
-
export const DIMENSION_ID_PERIOD = 'pe';
|
|
6
|
-
export const DIMENSION_ID_ORGUNIT = 'ou';
|
|
7
|
-
export const DIMENSION_ID_ORGUNIT_LEVEL = 'ouLevel';
|
|
8
|
-
export const DIMENSION_ID_ORGUNIT_GROUP = 'ouGroup';
|
|
9
|
-
export const DIMENSION_ID_ASSIGNED_CATEGORIES = 'co';
|
|
10
|
-
export const DIMENSION_PROP_NO_ITEMS = 'noItems';
|
|
11
|
-
export const getFixedDimensions = () => ({
|
|
12
|
-
[DIMENSION_ID_DATA]: {
|
|
13
|
-
id: DIMENSION_ID_DATA,
|
|
14
|
-
name: i18n.t('Data'),
|
|
15
|
-
iconName: 'DataIcon',
|
|
16
|
-
icon: IconDimensionData16,
|
|
17
|
-
},
|
|
18
|
-
[DIMENSION_ID_PERIOD]: {
|
|
19
|
-
id: DIMENSION_ID_PERIOD,
|
|
20
|
-
name: i18n.t('Period'),
|
|
21
|
-
iconName: 'PeriodIcon',
|
|
22
|
-
icon: IconClock16,
|
|
23
|
-
},
|
|
24
|
-
[DIMENSION_ID_ORGUNIT]: {
|
|
25
|
-
id: DIMENSION_ID_ORGUNIT,
|
|
26
|
-
name: i18n.t('Organisation unit'),
|
|
27
|
-
iconName: 'OrgUnitIcon',
|
|
28
|
-
icon: IconDimensionOrgUnit16,
|
|
29
|
-
},
|
|
30
|
-
});
|
|
31
|
-
export const getDynamicDimensions = () => ({
|
|
32
|
-
[DIMENSION_ID_ASSIGNED_CATEGORIES]: {
|
|
33
|
-
id: DIMENSION_ID_ASSIGNED_CATEGORIES,
|
|
34
|
-
name: i18n.t('Assigned Categories'),
|
|
35
|
-
iconName: 'AssignedCategoriesIcon',
|
|
36
|
-
icon: AssignedCategoriesIcon,
|
|
37
|
-
[DIMENSION_PROP_NO_ITEMS]: true,
|
|
38
|
-
},
|
|
39
|
-
});
|
|
40
|
-
export const getPredefinedDimensions = () => ({
|
|
41
|
-
...getFixedDimensions(),
|
|
42
|
-
...getDynamicDimensions(),
|
|
43
|
-
});
|
|
44
|
-
export const filterOutPredefinedDimensions = (dimensionIds) => dimensionIds.filter((dimensionId) => !Object.keys(getPredefinedDimensions()).includes(dimensionId));
|
|
45
|
-
export const getPredefinedDimensionProp = (dimensionId, propName) => (getPredefinedDimensions()[dimensionId] || {})[propName];
|
|
46
|
-
export const getDimensionById = (dimensionId) => getPredefinedDimensions()[dimensionId];
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZGVmaW5lZERpbWVuc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9uZy1kaGlzMi11aS9zcmMvbGliL3NoYXJlZC91dGlscy9wcmVkZWZpbmVkRGltZW5zaW9ucy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFdBQVcsRUFDWCxtQkFBbUIsRUFDbkIsc0JBQXNCLEdBQ3ZCLE1BQU0sV0FBVyxDQUFDO0FBQ25CLE9BQU8sSUFBSSxNQUFNLGdCQUFnQixDQUFDO0FBRWxDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTFFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQztBQUN0QyxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLENBQUM7QUFDeEMsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxDQUFDO0FBQ3pDLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLFNBQVMsQ0FBQztBQUNwRCxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxTQUFTLENBQUM7QUFDcEQsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQUcsSUFBSSxDQUFDO0FBQ3JELE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLFNBQVMsQ0FBQztBQUVqRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLENBQUMsaUJBQWlCLENBQUMsRUFBRTtRQUNuQixFQUFFLEVBQUUsaUJBQWlCO1FBQ3JCLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUNwQixRQUFRLEVBQUUsVUFBVTtRQUNwQixJQUFJLEVBQUUsbUJBQW1CO0tBQzFCO0lBQ0QsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFO1FBQ3JCLEVBQUUsRUFBRSxtQkFBbUI7UUFDdkIsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO1FBQ3RCLFFBQVEsRUFBRSxZQUFZO1FBQ3RCLElBQUksRUFBRSxXQUFXO0tBQ2xCO0lBQ0QsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFO1FBQ3RCLEVBQUUsRUFBRSxvQkFBb0I7UUFDeEIsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUM7UUFDakMsUUFBUSxFQUFFLGFBQWE7UUFDdkIsSUFBSSxFQUFFLHNCQUFzQjtLQUM3QjtDQUNGLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDekMsQ0FBQyxnQ0FBZ0MsQ0FBQyxFQUFFO1FBQ2xDLEVBQUUsRUFBRSxnQ0FBZ0M7UUFDcEMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMscUJBQXFCLENBQUM7UUFDbkMsUUFBUSxFQUFFLHdCQUF3QjtRQUNsQyxJQUFJLEVBQUUsc0JBQXNCO1FBQzVCLENBQUMsdUJBQXVCLENBQUMsRUFBRSxJQUFJO0tBQ2hDO0NBQ0YsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUM1QyxHQUFHLGtCQUFrQixFQUFFO0lBQ3ZCLEdBQUcsb0JBQW9CLEVBQUU7Q0FDMUIsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsQ0FBQyxZQUFzQixFQUFFLEVBQUUsQ0FDdEUsWUFBWSxDQUFDLE1BQU0sQ0FDakIsQ0FBQyxXQUFtQixFQUFFLEVBQUUsQ0FDdEIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQ2hFLENBQUM7QUFFSixNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxDQUN4QyxXQUFtQixFQUNuQixRQUFnQixFQUNoQixFQUFFLENBQUMsQ0FBRSx1QkFBdUIsRUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBRXZFLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsV0FBbUIsRUFBRSxFQUFFLENBQ3JELHVCQUF1QixFQUFVLENBQUMsV0FBVyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJY29uQ2xvY2sxNixcbiAgSWNvbkRpbWVuc2lvbkRhdGExNixcbiAgSWNvbkRpbWVuc2lvbk9yZ1VuaXQxNixcbn0gZnJvbSAnQGRoaXMyL3VpJztcbmltcG9ydCBpMThuIGZyb20gJ0BkaGlzMi9kMi1pMThuJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBBc3NpZ25lZENhdGVnb3JpZXNJY29uIH0gZnJvbSAnLi4vYXNzZXRzL0Fzc2lnbmVkQ2F0ZWdvcmllc0ljb24nO1xuXG5leHBvcnQgY29uc3QgRElNRU5TSU9OX0lEX0RBVEEgPSAnZHgnO1xuZXhwb3J0IGNvbnN0IERJTUVOU0lPTl9JRF9QRVJJT0QgPSAncGUnO1xuZXhwb3J0IGNvbnN0IERJTUVOU0lPTl9JRF9PUkdVTklUID0gJ291JztcbmV4cG9ydCBjb25zdCBESU1FTlNJT05fSURfT1JHVU5JVF9MRVZFTCA9ICdvdUxldmVsJztcbmV4cG9ydCBjb25zdCBESU1FTlNJT05fSURfT1JHVU5JVF9HUk9VUCA9ICdvdUdyb3VwJztcbmV4cG9ydCBjb25zdCBESU1FTlNJT05fSURfQVNTSUdORURfQ0FURUdPUklFUyA9ICdjbyc7XG5leHBvcnQgY29uc3QgRElNRU5TSU9OX1BST1BfTk9fSVRFTVMgPSAnbm9JdGVtcyc7XG5cbmV4cG9ydCBjb25zdCBnZXRGaXhlZERpbWVuc2lvbnMgPSAoKSA9PiAoe1xuICBbRElNRU5TSU9OX0lEX0RBVEFdOiB7XG4gICAgaWQ6IERJTUVOU0lPTl9JRF9EQVRBLFxuICAgIG5hbWU6IGkxOG4udCgnRGF0YScpLFxuICAgIGljb25OYW1lOiAnRGF0YUljb24nLFxuICAgIGljb246IEljb25EaW1lbnNpb25EYXRhMTYsXG4gIH0sXG4gIFtESU1FTlNJT05fSURfUEVSSU9EXToge1xuICAgIGlkOiBESU1FTlNJT05fSURfUEVSSU9ELFxuICAgIG5hbWU6IGkxOG4udCgnUGVyaW9kJyksXG4gICAgaWNvbk5hbWU6ICdQZXJpb2RJY29uJyxcbiAgICBpY29uOiBJY29uQ2xvY2sxNixcbiAgfSxcbiAgW0RJTUVOU0lPTl9JRF9PUkdVTklUXToge1xuICAgIGlkOiBESU1FTlNJT05fSURfT1JHVU5JVCxcbiAgICBuYW1lOiBpMThuLnQoJ09yZ2FuaXNhdGlvbiB1bml0JyksXG4gICAgaWNvbk5hbWU6ICdPcmdVbml0SWNvbicsXG4gICAgaWNvbjogSWNvbkRpbWVuc2lvbk9yZ1VuaXQxNixcbiAgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgZ2V0RHluYW1pY0RpbWVuc2lvbnMgPSAoKSA9PiAoe1xuICBbRElNRU5TSU9OX0lEX0FTU0lHTkVEX0NBVEVHT1JJRVNdOiB7XG4gICAgaWQ6IERJTUVOU0lPTl9JRF9BU1NJR05FRF9DQVRFR09SSUVTLFxuICAgIG5hbWU6IGkxOG4udCgnQXNzaWduZWQgQ2F0ZWdvcmllcycpLFxuICAgIGljb25OYW1lOiAnQXNzaWduZWRDYXRlZ29yaWVzSWNvbicsXG4gICAgaWNvbjogQXNzaWduZWRDYXRlZ29yaWVzSWNvbixcbiAgICBbRElNRU5TSU9OX1BST1BfTk9fSVRFTVNdOiB0cnVlLFxuICB9LFxufSk7XG5cbmV4cG9ydCBjb25zdCBnZXRQcmVkZWZpbmVkRGltZW5zaW9ucyA9ICgpID0+ICh7XG4gIC4uLmdldEZpeGVkRGltZW5zaW9ucygpLFxuICAuLi5nZXREeW5hbWljRGltZW5zaW9ucygpLFxufSk7XG5cbmV4cG9ydCBjb25zdCBmaWx0ZXJPdXRQcmVkZWZpbmVkRGltZW5zaW9ucyA9IChkaW1lbnNpb25JZHM6IHN0cmluZ1tdKSA9PlxuICBkaW1lbnNpb25JZHMuZmlsdGVyKFxuICAgIChkaW1lbnNpb25JZDogc3RyaW5nKSA9PlxuICAgICAgIU9iamVjdC5rZXlzKGdldFByZWRlZmluZWREaW1lbnNpb25zKCkpLmluY2x1ZGVzKGRpbWVuc2lvbklkKVxuICApO1xuXG5leHBvcnQgY29uc3QgZ2V0UHJlZGVmaW5lZERpbWVuc2lvblByb3AgPSAoXG4gIGRpbWVuc2lvbklkOiBzdHJpbmcsXG4gIHByb3BOYW1lOiBzdHJpbmdcbikgPT4gKChnZXRQcmVkZWZpbmVkRGltZW5zaW9ucygpIGFzIGFueSlbZGltZW5zaW9uSWRdIHx8IHt9KVtwcm9wTmFtZV07XG5cbmV4cG9ydCBjb25zdCBnZXREaW1lbnNpb25CeUlkID0gKGRpbWVuc2lvbklkOiBzdHJpbmcpID0+XG4gIChnZXRQcmVkZWZpbmVkRGltZW5zaW9ucygpIGFzIGFueSlbZGltZW5zaW9uSWRdO1xuIl19
|