@iapps/ng-dhis2-ui 1.0.7 → 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.
Files changed (88) hide show
  1. package/fesm2022/iapps-ng-dhis2-ui.mjs +59 -52
  2. package/fesm2022/iapps-ng-dhis2-ui.mjs.map +1 -1
  3. package/lib/modules/organisation-unit-selector/components/OrgUnitDimension.d.ts +3 -1
  4. package/lib/modules/organisation-unit-selector/index.d.ts +1 -0
  5. package/lib/shared/utils/predefinedDimensions.d.ts +6 -6
  6. package/package.json +6 -8
  7. package/esm2022/iapps-ng-dhis2-ui.mjs +0 -5
  8. package/esm2022/index.mjs +0 -6
  9. package/esm2022/lib/modules/button/button.component.mjs +0 -60
  10. package/esm2022/lib/modules/button/button.module.mjs +0 -19
  11. package/esm2022/lib/modules/button/index.mjs +0 -6
  12. package/esm2022/lib/modules/header-bar/header-bar.component.mjs +0 -38
  13. package/esm2022/lib/modules/header-bar/header-bar.module.mjs +0 -19
  14. package/esm2022/lib/modules/header-bar/index.mjs +0 -6
  15. package/esm2022/lib/modules/header-bar/models/header-bar-app.model.mjs +0 -20
  16. package/esm2022/lib/modules/header-bar/models/header-bar-data.model.mjs +0 -46
  17. package/esm2022/lib/modules/header-bar/models/header-bar-notification.model.mjs +0 -11
  18. package/esm2022/lib/modules/header-bar/models/index.mjs +0 -6
  19. package/esm2022/lib/modules/header-bar/utils/apps.mjs +0 -221
  20. package/esm2022/lib/modules/header-bar/utils/debug-info/debug-info-menu-item.mjs +0 -51
  21. package/esm2022/lib/modules/header-bar/utils/debug-info/debug-info-modal.mjs +0 -30
  22. package/esm2022/lib/modules/header-bar/utils/debug-info/debug-info-table.mjs +0 -39
  23. package/esm2022/lib/modules/header-bar/utils/debug-info/use-debug-info.mjs +0 -12
  24. package/esm2022/lib/modules/header-bar/utils/header-bar-context.mjs +0 -17
  25. package/esm2022/lib/modules/header-bar/utils/header-bar.mjs +0 -56
  26. package/esm2022/lib/modules/header-bar/utils/join-path.mjs +0 -5
  27. package/esm2022/lib/modules/header-bar/utils/logo-image.mjs +0 -52
  28. package/esm2022/lib/modules/header-bar/utils/logo.mjs +0 -35
  29. package/esm2022/lib/modules/header-bar/utils/notification-icon.mjs +0 -76
  30. package/esm2022/lib/modules/header-bar/utils/notifications.mjs +0 -35
  31. package/esm2022/lib/modules/header-bar/utils/profile/use-on-doc-click.mjs +0 -21
  32. package/esm2022/lib/modules/header-bar/utils/profile-menu/index.mjs +0 -2
  33. package/esm2022/lib/modules/header-bar/utils/profile-menu/profile-header.mjs +0 -95
  34. package/esm2022/lib/modules/header-bar/utils/profile-menu/profile-menu.mjs +0 -101
  35. package/esm2022/lib/modules/header-bar/utils/profile-menu/update-notification.mjs +0 -54
  36. package/esm2022/lib/modules/header-bar/utils/profile.mjs +0 -58
  37. package/esm2022/lib/modules/header-bar/utils/title.mjs +0 -22
  38. package/esm2022/lib/modules/organisation-unit-selector/components/OrgUnitDimension.mjs +0 -216
  39. package/esm2022/lib/modules/organisation-unit-selector/components/index.mjs +0 -6
  40. package/esm2022/lib/modules/organisation-unit-selector/components/styles/OrgUnitDimension.style.mjs +0 -83
  41. package/esm2022/lib/modules/organisation-unit-selector/components/utils/index.mjs +0 -6
  42. package/esm2022/lib/modules/organisation-unit-selector/components/utils/ouIdHelper/index.mjs +0 -18
  43. package/esm2022/lib/modules/organisation-unit-selector/components/utils/ouLevelUtils/index.mjs +0 -27
  44. package/esm2022/lib/modules/organisation-unit-selector/containers/organisation-unit-selector/organisation-unit-selector.component.mjs +0 -91
  45. package/esm2022/lib/modules/organisation-unit-selector/containers/organisation-unit-selector-modal/organisation-unit-selector-modal.component-modal.mjs +0 -114
  46. package/esm2022/lib/modules/organisation-unit-selector/index.mjs +0 -7
  47. package/esm2022/lib/modules/organisation-unit-selector/models/index.mjs +0 -5
  48. package/esm2022/lib/modules/organisation-unit-selector/models/organisation-unit-config.model.mjs +0 -16
  49. package/esm2022/lib/modules/organisation-unit-selector/organisation-unit-selector.module.mjs +0 -28
  50. package/esm2022/lib/modules/period-selector/components/FixedPeriodFilter.mjs +0 -44
  51. package/esm2022/lib/modules/period-selector/components/PeriodDimension.mjs +0 -41
  52. package/esm2022/lib/modules/period-selector/components/PeriodTransfer.mjs +0 -110
  53. package/esm2022/lib/modules/period-selector/components/RelativePeriodFilter.mjs +0 -28
  54. package/esm2022/lib/modules/period-selector/components/utils/fixedPeriods.mjs +0 -308
  55. package/esm2022/lib/modules/period-selector/components/utils/index.mjs +0 -5
  56. package/esm2022/lib/modules/period-selector/components/utils/periodTypes.mjs +0 -23
  57. package/esm2022/lib/modules/period-selector/components/utils/relativePeriods.mjs +0 -139
  58. package/esm2022/lib/modules/period-selector/containers/period-selector/period-selector.component.mjs +0 -69
  59. package/esm2022/lib/modules/period-selector/containers/period-selector-modal/period-selector-modal.component.mjs +0 -82
  60. package/esm2022/lib/modules/period-selector/index.mjs +0 -7
  61. package/esm2022/lib/modules/period-selector/period-selector.module.mjs +0 -20
  62. package/esm2022/lib/modules/react-wrapper/index.mjs +0 -6
  63. package/esm2022/lib/modules/react-wrapper/react-wrapper.component.mjs +0 -55
  64. package/esm2022/lib/modules/react-wrapper/react-wrapper.module.mjs +0 -18
  65. package/esm2022/lib/shared/assets/AssignedCategoriesIcon.mjs +0 -12
  66. package/esm2022/lib/shared/assets/DimensionItemIcons/PeriodIcon.mjs +0 -4
  67. package/esm2022/lib/shared/components/TransferOption.mjs +0 -130
  68. package/esm2022/lib/shared/components/index.mjs +0 -6
  69. package/esm2022/lib/shared/index.mjs +0 -7
  70. package/esm2022/lib/shared/shared.module.mjs +0 -18
  71. package/esm2022/lib/shared/styles/DimensionSelector.style.mjs +0 -39
  72. package/esm2022/lib/shared/styles/index.mjs +0 -5
  73. package/esm2022/lib/shared/utils/axis.mjs +0 -25
  74. package/esm2022/lib/shared/utils/axisGetDimension.mjs +0 -5
  75. package/esm2022/lib/shared/utils/axisHasDimension.mjs +0 -3
  76. package/esm2022/lib/shared/utils/dimension.mjs +0 -52
  77. package/esm2022/lib/shared/utils/dimensionGetItems.mjs +0 -6
  78. package/esm2022/lib/shared/utils/dimensionIs.mjs +0 -3
  79. package/esm2022/lib/shared/utils/dimensionIsEmpty.mjs +0 -5
  80. package/esm2022/lib/shared/utils/dimensionIsValid.mjs +0 -17
  81. package/esm2022/lib/shared/utils/dimensionSelectorHelper.mjs +0 -4
  82. package/esm2022/lib/shared/utils/index.mjs +0 -15
  83. package/esm2022/lib/shared/utils/layoutGetAllAxes.mjs +0 -7
  84. package/esm2022/lib/shared/utils/layoutGetAllDimensions.mjs +0 -6
  85. package/esm2022/lib/shared/utils/layoutGetDimension.mjs +0 -4
  86. package/esm2022/lib/shared/utils/layoutReplaceDimension.mjs +0 -17
  87. package/esm2022/lib/shared/utils/list.mjs +0 -15
  88. package/esm2022/lib/shared/utils/predefinedDimensions.mjs +0 -47
@@ -1,17 +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 &&
12
- dimensionIsEmpty(dimension)) {
13
- return false;
14
- }
15
- return true;
16
- };
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGltZW5zaW9uSXNWYWxpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL25nLWRoaXMyLXVpL3NyYy9saWIvc2hhcmVkL3V0aWxzL2RpbWVuc2lvbklzVmFsaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdEQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FDOUIsU0FBbUMsRUFDbkMsRUFBRSxZQUFZLEtBQVUsRUFBRSxFQUMxQixFQUFFO0lBQ0YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztRQUNsQyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFdEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN2RSxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxJQUNFLFlBQVksS0FBSyxJQUFJO1FBQ3JCLGdCQUFnQixDQUFDLFNBQW1DLENBQUMsRUFDckQsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRElNRU5TSU9OLCBESU1FTlNJT05fUFJPUFMgfSBmcm9tICcuL2RpbWVuc2lvbic7XG5pbXBvcnQgeyBkaW1lbnNpb25Jc0VtcHR5IH0gZnJvbSAnLi9kaW1lbnNpb25Jc0VtcHR5JztcblxuZXhwb3J0IGNvbnN0IGRpbWVuc2lvbklzVmFsaWQgPSAoXG4gIGRpbWVuc2lvbjogeyBbeDogc3RyaW5nXTogdW5rbm93biB9LFxuICB7IHJlcXVpcmVJdGVtcyB9OiBhbnkgPSB7fVxuKSA9PiB7XG4gIGlmICghRElNRU5TSU9OLmlzVmFsaWQoZGltZW5zaW9uKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IHJlcXVpcmVkUHJvcHMgPSBESU1FTlNJT05fUFJPUFMuZmlsdGVyKChwcm9wKSA9PiBwcm9wLnJlcXVpcmVkKTtcblxuICBpZiAoIXJlcXVpcmVkUHJvcHMuZXZlcnkoKHByb3ApID0+IHByb3AuaXNWYWxpZChkaW1lbnNpb25bcHJvcC5uYW1lXSkpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaWYgKFxuICAgIHJlcXVpcmVJdGVtcyA9PT0gdHJ1ZSAmJlxuICAgIGRpbWVuc2lvbklzRW1wdHkoZGltZW5zaW9uIGFzIHsgW3g6IHN0cmluZ106IGFueVtdIH0pXG4gICkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufTtcbiJdfQ==
@@ -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