@hisptz/dhis2-analytics 2.0.34 → 2.0.35

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 (102) hide show
  1. package/dist/components/Scorecard/Scorecard.stories.js +61 -38
  2. package/dist/components/Scorecard/Scorecard.stories.js.map +1 -1
  3. package/dist/components/Scorecard/components/DataProvider.js +25 -4
  4. package/dist/components/Scorecard/components/DataProvider.js.map +1 -1
  5. package/dist/components/Scorecard/components/LoadingIndicator.js +24 -8
  6. package/dist/components/Scorecard/components/LoadingIndicator.js.map +1 -1
  7. package/dist/components/Scorecard/components/ScorecardTable/ScorecardTable.js +14 -5
  8. package/dist/components/Scorecard/components/ScorecardTable/ScorecardTable.js.map +1 -1
  9. package/dist/components/Scorecard/components/ScorecardTable/ScorecardTable.module.css +7 -3
  10. package/dist/components/Scorecard/components/ScorecardTable/ScorecardTable.module.css.map +1 -1
  11. package/dist/components/Scorecard/components/ScorecardTable/components/DataRow.js +7 -1
  12. package/dist/components/Scorecard/components/ScorecardTable/components/DataRow.js.map +1 -1
  13. package/dist/components/Scorecard/components/ScorecardTable/components/MetaFooterCell.js +14 -1
  14. package/dist/components/Scorecard/components/ScorecardTable/components/MetaFooterCell.js.map +1 -1
  15. package/dist/components/Scorecard/components/ScorecardTable/components/TableBody.js +20 -3
  16. package/dist/components/Scorecard/components/ScorecardTable/components/TableBody.js.map +1 -1
  17. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/TableHeader.js +6 -1
  18. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/TableHeader.js.map +1 -1
  19. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/TableHeader.module.css +20 -0
  20. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/TableHeader.module.css.map +1 -1
  21. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/components/ExpandCell.js +9 -1
  22. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/components/ExpandCell.js.map +1 -1
  23. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/components/FilterArea.js +3 -0
  24. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/components/FilterArea.js.map +1 -1
  25. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/components/LabelCell.js +18 -1
  26. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/components/LabelCell.js.map +1 -1
  27. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/components/MetaHeaderCell.js +3 -1
  28. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/components/MetaHeaderCell.js.map +1 -1
  29. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/components/NumberCell.js +4 -1
  30. package/dist/components/Scorecard/components/ScorecardTable/components/TableHeader/components/NumberCell.js.map +1 -1
  31. package/dist/components/Scorecard/components/TableStateProvider.js +1 -0
  32. package/dist/components/Scorecard/components/TableStateProvider.js.map +1 -1
  33. package/dist/components/Scorecard/hooks/data.js +13 -19
  34. package/dist/components/Scorecard/hooks/data.js.map +1 -1
  35. package/dist/components/Scorecard/hooks/dataEngine.js +8 -0
  36. package/dist/components/Scorecard/hooks/dataEngine.js.map +1 -0
  37. package/dist/components/Scorecard/hooks/table.js.map +1 -1
  38. package/dist/components/Scorecard/hooks/value.js +7 -1
  39. package/dist/components/Scorecard/hooks/value.js.map +1 -1
  40. package/dist/esm/components/Scorecard/Scorecard.stories.js +61 -38
  41. package/dist/esm/components/Scorecard/Scorecard.stories.js.map +1 -1
  42. package/dist/esm/components/Scorecard/components/DataProvider.js +25 -6
  43. package/dist/esm/components/Scorecard/components/DataProvider.js.map +1 -1
  44. package/dist/esm/components/Scorecard/components/LoadingIndicator.js +21 -9
  45. package/dist/esm/components/Scorecard/components/LoadingIndicator.js.map +1 -1
  46. package/dist/esm/components/Scorecard/components/ScorecardTable/ScorecardTable.js +15 -6
  47. package/dist/esm/components/Scorecard/components/ScorecardTable/ScorecardTable.js.map +1 -1
  48. package/dist/esm/components/Scorecard/components/ScorecardTable/ScorecardTable.module.css +7 -3
  49. package/dist/esm/components/Scorecard/components/ScorecardTable/ScorecardTable.module.css.map +1 -1
  50. package/dist/esm/components/Scorecard/components/ScorecardTable/components/DataRow.js +7 -1
  51. package/dist/esm/components/Scorecard/components/ScorecardTable/components/DataRow.js.map +1 -1
  52. package/dist/esm/components/Scorecard/components/ScorecardTable/components/MetaFooterCell.js +14 -1
  53. package/dist/esm/components/Scorecard/components/ScorecardTable/components/MetaFooterCell.js.map +1 -1
  54. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableBody.js +21 -4
  55. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableBody.js.map +1 -1
  56. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/TableHeader.js +2 -1
  57. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/TableHeader.js.map +1 -1
  58. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/TableHeader.module.css +20 -0
  59. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/TableHeader.module.css.map +1 -1
  60. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/components/ExpandCell.js +9 -1
  61. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/components/ExpandCell.js.map +1 -1
  62. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/components/FilterArea.js +2 -0
  63. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/components/FilterArea.js.map +1 -1
  64. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/components/LabelCell.js +19 -2
  65. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/components/LabelCell.js.map +1 -1
  66. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/components/MetaHeaderCell.js +3 -1
  67. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/components/MetaHeaderCell.js.map +1 -1
  68. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/components/NumberCell.js +4 -1
  69. package/dist/esm/components/Scorecard/components/ScorecardTable/components/TableHeader/components/NumberCell.js.map +1 -1
  70. package/dist/esm/components/Scorecard/components/TableStateProvider.js +1 -0
  71. package/dist/esm/components/Scorecard/components/TableStateProvider.js.map +1 -1
  72. package/dist/esm/components/Scorecard/hooks/data.js +13 -19
  73. package/dist/esm/components/Scorecard/hooks/data.js.map +1 -1
  74. package/dist/esm/components/Scorecard/hooks/dataEngine.js +6 -0
  75. package/dist/esm/components/Scorecard/hooks/dataEngine.js.map +1 -0
  76. package/dist/esm/components/Scorecard/hooks/table.js.map +1 -1
  77. package/dist/esm/components/Scorecard/hooks/value.js +8 -2
  78. package/dist/esm/components/Scorecard/hooks/value.js.map +1 -1
  79. package/dist/types/components/Scorecard/components/DataProvider.d.ts +6 -3
  80. package/dist/types/components/Scorecard/components/DataProvider.d.ts.map +1 -1
  81. package/dist/types/components/Scorecard/components/LoadingIndicator.d.ts +4 -1
  82. package/dist/types/components/Scorecard/components/LoadingIndicator.d.ts.map +1 -1
  83. package/dist/types/components/Scorecard/components/ScorecardTable/ScorecardTable.d.ts.map +1 -1
  84. package/dist/types/components/Scorecard/components/ScorecardTable/components/DataRow.d.ts +4 -1
  85. package/dist/types/components/Scorecard/components/ScorecardTable/components/DataRow.d.ts.map +1 -1
  86. package/dist/types/components/Scorecard/components/ScorecardTable/components/MetaFooterCell.d.ts.map +1 -1
  87. package/dist/types/components/Scorecard/components/ScorecardTable/components/TableBody.d.ts +4 -2
  88. package/dist/types/components/Scorecard/components/ScorecardTable/components/TableBody.d.ts.map +1 -1
  89. package/dist/types/components/Scorecard/components/ScorecardTable/components/TableHeader/TableHeader.d.ts.map +1 -1
  90. package/dist/types/components/Scorecard/components/ScorecardTable/components/TableHeader/components/ExpandCell.d.ts.map +1 -1
  91. package/dist/types/components/Scorecard/components/ScorecardTable/components/TableHeader/components/FilterArea.d.ts.map +1 -1
  92. package/dist/types/components/Scorecard/components/ScorecardTable/components/TableHeader/components/LabelCell.d.ts.map +1 -1
  93. package/dist/types/components/Scorecard/components/ScorecardTable/components/TableHeader/components/MetaHeaderCell.d.ts.map +1 -1
  94. package/dist/types/components/Scorecard/components/ScorecardTable/components/TableHeader/components/NumberCell.d.ts.map +1 -1
  95. package/dist/types/components/Scorecard/components/TableStateProvider.d.ts.map +1 -1
  96. package/dist/types/components/Scorecard/hooks/data.d.ts +2 -11
  97. package/dist/types/components/Scorecard/hooks/data.d.ts.map +1 -1
  98. package/dist/types/components/Scorecard/hooks/dataEngine.d.ts +2 -0
  99. package/dist/types/components/Scorecard/hooks/dataEngine.d.ts.map +1 -0
  100. package/dist/types/components/Scorecard/hooks/table.d.ts.map +1 -1
  101. package/dist/types/components/Scorecard/hooks/value.d.ts.map +1 -1
  102. package/package.json +4 -3
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Scorecard/hooks/value.ts"],"names":["data"],"mappings":"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","sourcesContent":["import { useEffect, useState } from \"react\";\nimport type {\n\tScorecardAverageCellData,\n\tScorecardCellData,\n\tScorecardTableAverageCellConfig,\n\tScorecardTableCellConfig,\n} from \"../schemas/config\";\nimport { useScorecardData } from \"../components/DataProvider\";\nimport type { DataEngineListener } from \"../utils/dataEngine\";\nimport type { AnalyticsData } from \"../utils/data\";\nimport { getValues } from \"../utils/columns\";\nimport { every, meanBy } from \"lodash\";\n\nfunction getDataValues({\n\tdata,\n\tdataConfig,\n}: {\n\tdataConfig: ScorecardTableCellConfig;\n\tdata: AnalyticsData[];\n}): ScorecardCellData[] {\n\treturn dataConfig.dataSources.map((dataSource) => {\n\t\tconst filteredData = data.filter((data) => {\n\t\t\treturn (\n\t\t\t\tdata.dx === dataSource.id &&\n\t\t\t\tdata.ou === dataConfig.orgUnit.uid &&\n\t\t\t\t[dataConfig.currentPeriod, dataConfig.previousPeriod].includes(\n\t\t\t\t\tdata.pe,\n\t\t\t\t)\n\t\t\t);\n\t\t});\n\n\t\tconst value = getValues({\n\t\t\tcurrentPeriod: dataConfig.currentPeriod!,\n\t\t\tpreviousPeriod: dataConfig.previousPeriod,\n\t\t\tvalues: filteredData,\n\t\t});\n\n\t\tif (!value.current) {\n\t\t\treturn {\n\t\t\t\t...dataSource,\n\t\t\t\tdata: {\n\t\t\t\t\tcurrent: undefined,\n\t\t\t\t\tprevious: undefined,\n\t\t\t\t},\n\t\t\t} as ScorecardCellData;\n\t\t}\n\n\t\treturn {\n\t\t\t...dataSource,\n\t\t\tdata: value,\n\t\t} as ScorecardCellData;\n\t});\n}\n\nexport function useCellValue(dataConfig: ScorecardTableCellConfig) {\n\tconst { data: scorecardEngine } = useScorecardData();\n\tconst [loading, setLoading] = useState<boolean>(false);\n\tconst [cellData, setCellData] = useState<ScorecardCellData[]>([]);\n\n\tuseEffect(() => {\n\t\tsetLoading(true);\n\t\tconst listener: DataEngineListener = (data) => {\n\t\t\tif (data === \"done\") {\n\t\t\t\tsetLoading(false);\n\t\t\t\tsetCellData((prevState) => {\n\t\t\t\t\treturn prevState.map((value) => {\n\t\t\t\t\t\tif (!value.data) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...value,\n\t\t\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t\t\tcurrent: undefined,\n\t\t\t\t\t\t\t\t\tprevious: undefined,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn value;\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tconst values = getDataValues({ data, dataConfig });\n\t\t\t\tconst hasValues = every(values, (value) => !!value.data);\n\t\t\t\tsetCellData(values);\n\t\t\t\tif (hasValues) {\n\t\t\t\t\tscorecardEngine.removeListener(listener);\n\t\t\t\t\tsetLoading(false);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tif (scorecardEngine.isDone) {\n\t\t\tconst values = getDataValues({\n\t\t\t\tdata: scorecardEngine.data,\n\t\t\t\tdataConfig,\n\t\t\t});\n\t\t\tsetCellData(values);\n\t\t\tsetLoading(false);\n\t\t} else {\n\t\t\tscorecardEngine.addListener(listener);\n\t\t}\n\t\treturn () => {\n\t\t\tscorecardEngine.removeListener(listener);\n\t\t};\n\t}, [dataConfig]);\n\n\treturn {\n\t\tloading,\n\t\tcellData,\n\t};\n}\n\nfunction getDataHolderAverageValues({\n\tdata,\n\tdataConfig,\n}: {\n\tdataConfig: ScorecardTableAverageCellConfig;\n\tdata: AnalyticsData[];\n}): ScorecardAverageCellData[] {\n\treturn (\n\t\tdataConfig.dataHolder?.dataSources.map((source) => {\n\t\t\tconst dataValues = data.filter((datum) => {\n\t\t\t\treturn datum.dx === source.id;\n\t\t\t});\n\t\t\tconst average = meanBy(dataValues, (value) =>\n\t\t\t\tparseFloat(value.value!),\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\t...source,\n\t\t\t\tdata: {\n\t\t\t\t\taverage,\n\t\t\t\t},\n\t\t\t};\n\t\t}) ?? []\n\t);\n}\n\nexport function useDataHolderAverageCellValue(\n\tdataConfig: ScorecardTableAverageCellConfig,\n) {\n\tconst { data: scorecardEngine } = useScorecardData();\n\tconst [loading, setLoading] = useState<boolean>(false);\n\tconst [cellData, setCellData] = useState<ScorecardAverageCellData[]>([]);\n\n\tuseEffect(() => {\n\t\tsetLoading(true);\n\t\tconst listener: DataEngineListener = (data) => {\n\t\t\tif (data === \"done\") {\n\t\t\t\tsetLoading(false);\n\t\t\t\tsetCellData(\n\t\t\t\t\tgetDataHolderAverageValues({\n\t\t\t\t\t\tdata: scorecardEngine.data,\n\t\t\t\t\t\tdataConfig,\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t}\n\t\t};\n\t\tif (scorecardEngine.isDone) {\n\t\t\tsetLoading(false);\n\t\t\tsetCellData(\n\t\t\t\tgetDataHolderAverageValues({\n\t\t\t\t\tdata: scorecardEngine.data,\n\t\t\t\t\tdataConfig,\n\t\t\t\t}),\n\t\t\t);\n\t\t} else {\n\t\t\tscorecardEngine.addListener(listener);\n\t\t}\n\t\treturn () => {\n\t\t\tscorecardEngine.removeListener(listener);\n\t\t};\n\t}, [dataConfig]);\n\n\treturn {\n\t\tloading,\n\t\tcellData,\n\t};\n}\n\nfunction getOrgUnitAverageValues({\n\tdata,\n\tdataConfig,\n}: {\n\tdataConfig: ScorecardTableAverageCellConfig;\n\tdata: AnalyticsData[];\n}): number {\n\tconst dataValues = data.filter((datum) => {\n\t\treturn datum.ou === dataConfig.orgUnit!.uid;\n\t});\n\n\treturn meanBy(dataValues, (value) => parseFloat(value.value!));\n}\n\nexport function useOrgUnitAverageCellValue(\n\tdataConfig: ScorecardTableAverageCellConfig,\n) {\n\tconst { data: scorecardEngine } = useScorecardData();\n\tconst [loading, setLoading] = useState<boolean>(false);\n\tconst [average, setAverage] = useState<number | null>(null);\n\n\tuseEffect(() => {\n\t\tsetLoading(true);\n\t\tconst listener: DataEngineListener = (data) => {\n\t\t\tif (data === \"done\") {\n\t\t\t\tsetLoading(false);\n\t\t\t\tsetAverage(\n\t\t\t\t\tgetOrgUnitAverageValues({\n\t\t\t\t\t\tdata: scorecardEngine.data,\n\t\t\t\t\t\tdataConfig,\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t}\n\t\t};\n\t\tif (scorecardEngine.isDone) {\n\t\t\tsetLoading(false);\n\t\t\tsetAverage(\n\t\t\t\tgetOrgUnitAverageValues({\n\t\t\t\t\tdata: scorecardEngine.data,\n\t\t\t\t\tdataConfig,\n\t\t\t\t}),\n\t\t\t);\n\t\t} else {\n\t\t\tscorecardEngine.addListener(listener);\n\t\t}\n\t\treturn () => {\n\t\t\tscorecardEngine.removeListener(listener);\n\t\t};\n\t}, [dataConfig]);\n\n\treturn {\n\t\tloading,\n\t\taverage,\n\t};\n}\n"]}
1
+ {"version":3,"sources":["../../../../src/components/Scorecard/hooks/value.ts"],"names":["data"],"mappings":"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","sourcesContent":["import { useEffect, useState } from \"react\";\nimport type {\n\tScorecardAverageCellData,\n\tScorecardCellData,\n\tScorecardTableAverageCellConfig,\n\tScorecardTableCellConfig,\n} from \"../schemas/config\";\nimport { useScorecardData } from \"../components/DataProvider\";\nimport type { DataEngineListener } from \"../utils/dataEngine\";\nimport type { AnalyticsData } from \"../utils/data\";\nimport { getValues } from \"../utils/columns\";\nimport { every, isEqual, meanBy } from \"lodash\";\n\nfunction getDataValues({\n\tdata,\n\tdataConfig,\n}: {\n\tdataConfig: ScorecardTableCellConfig;\n\tdata: AnalyticsData[];\n}): ScorecardCellData[] {\n\treturn dataConfig.dataSources.map((dataSource) => {\n\t\tconst filteredData = data.filter((data) => {\n\t\t\treturn (\n\t\t\t\tdata.dx === dataSource.id &&\n\t\t\t\tdata.ou === dataConfig.orgUnit.uid &&\n\t\t\t\t[dataConfig.currentPeriod, dataConfig.previousPeriod].includes(\n\t\t\t\t\tdata.pe,\n\t\t\t\t)\n\t\t\t);\n\t\t});\n\n\t\tconst value = getValues({\n\t\t\tcurrentPeriod: dataConfig.currentPeriod!,\n\t\t\tpreviousPeriod: dataConfig.previousPeriod,\n\t\t\tvalues: filteredData,\n\t\t});\n\n\t\tif (!value.current) {\n\t\t\treturn {\n\t\t\t\t...dataSource,\n\t\t\t\tdata: {\n\t\t\t\t\tcurrent: undefined,\n\t\t\t\t\tprevious: undefined,\n\t\t\t\t},\n\t\t\t} as ScorecardCellData;\n\t\t}\n\n\t\treturn {\n\t\t\t...dataSource,\n\t\t\tdata: value,\n\t\t} as ScorecardCellData;\n\t});\n}\n\nexport function useCellValue(dataConfig: ScorecardTableCellConfig) {\n\tconst { data: scorecardEngine } = useScorecardData();\n\tconst [loading, setLoading] = useState<boolean>(false);\n\tconst [cellData, setCellData] = useState<ScorecardCellData[]>([]);\n\n\tuseEffect(() => {\n\t\tsetLoading(true);\n\t\tconst listener: DataEngineListener = (data) => {\n\t\t\tif (data === \"done\") {\n\t\t\t\tsetLoading(false);\n\t\t\t\tsetCellData((prevState) => {\n\t\t\t\t\treturn prevState.map((value) => {\n\t\t\t\t\t\tif (!value.data) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...value,\n\t\t\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t\t\tcurrent: undefined,\n\t\t\t\t\t\t\t\t\tprevious: undefined,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn value;\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tconst values = getDataValues({ data, dataConfig });\n\t\t\t\tconst hasValues = every(values, (value) => !!value.data);\n\t\t\t\tsetCellData((prevState) => {\n\t\t\t\t\tif (isEqual(prevState, values)) {\n\t\t\t\t\t\treturn prevState;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn values;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif (hasValues) {\n\t\t\t\t\tscorecardEngine.removeListener(listener);\n\t\t\t\t\tsetLoading(false);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tif (scorecardEngine.isDone) {\n\t\t\tconst values = getDataValues({\n\t\t\t\tdata: scorecardEngine.data,\n\t\t\t\tdataConfig,\n\t\t\t});\n\t\t\tsetCellData(values);\n\t\t\tsetLoading(false);\n\t\t} else {\n\t\t\tscorecardEngine.addListener(listener);\n\t\t}\n\t\treturn () => {\n\t\t\tscorecardEngine.removeListener(listener);\n\t\t};\n\t}, [dataConfig]);\n\n\treturn {\n\t\tloading,\n\t\tcellData,\n\t};\n}\n\nfunction getDataHolderAverageValues({\n\tdata,\n\tdataConfig,\n}: {\n\tdataConfig: ScorecardTableAverageCellConfig;\n\tdata: AnalyticsData[];\n}): ScorecardAverageCellData[] {\n\treturn (\n\t\tdataConfig.dataHolder?.dataSources.map((source) => {\n\t\t\tconst dataValues = data.filter((datum) => {\n\t\t\t\treturn datum.dx === source.id;\n\t\t\t});\n\t\t\tconst average = meanBy(dataValues, (value) =>\n\t\t\t\tparseFloat(value.value!),\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\t...source,\n\t\t\t\tdata: {\n\t\t\t\t\taverage,\n\t\t\t\t},\n\t\t\t};\n\t\t}) ?? []\n\t);\n}\n\nexport function useDataHolderAverageCellValue(\n\tdataConfig: ScorecardTableAverageCellConfig,\n) {\n\tconst { data: scorecardEngine } = useScorecardData();\n\tconst [loading, setLoading] = useState<boolean>(false);\n\tconst [cellData, setCellData] = useState<ScorecardAverageCellData[]>([]);\n\n\tuseEffect(() => {\n\t\tsetLoading(true);\n\t\tconst listener: DataEngineListener = (data) => {\n\t\t\tif (data === \"done\") {\n\t\t\t\tsetLoading(false);\n\t\t\t\tsetCellData(\n\t\t\t\t\tgetDataHolderAverageValues({\n\t\t\t\t\t\tdata: scorecardEngine.data,\n\t\t\t\t\t\tdataConfig,\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t}\n\t\t};\n\t\tif (scorecardEngine.isDone) {\n\t\t\tsetLoading(false);\n\t\t\tsetCellData(\n\t\t\t\tgetDataHolderAverageValues({\n\t\t\t\t\tdata: scorecardEngine.data,\n\t\t\t\t\tdataConfig,\n\t\t\t\t}),\n\t\t\t);\n\t\t} else {\n\t\t\tscorecardEngine.addListener(listener);\n\t\t}\n\t\treturn () => {\n\t\t\tscorecardEngine.removeListener(listener);\n\t\t};\n\t}, [dataConfig]);\n\n\treturn {\n\t\tloading,\n\t\tcellData,\n\t};\n}\n\nfunction getOrgUnitAverageValues({\n\tdata,\n\tdataConfig,\n}: {\n\tdataConfig: ScorecardTableAverageCellConfig;\n\tdata: AnalyticsData[];\n}): number {\n\tconst dataValues = data.filter((datum) => {\n\t\treturn datum.ou === dataConfig.orgUnit!.uid;\n\t});\n\n\treturn meanBy(dataValues, (value) => parseFloat(value.value!));\n}\n\nexport function useOrgUnitAverageCellValue(\n\tdataConfig: ScorecardTableAverageCellConfig,\n) {\n\tconst { data: scorecardEngine } = useScorecardData();\n\tconst [loading, setLoading] = useState<boolean>(false);\n\tconst [average, setAverage] = useState<number | null>(null);\n\n\tuseEffect(() => {\n\t\tsetLoading(true);\n\t\tconst listener: DataEngineListener = (data) => {\n\t\t\tif (data === \"done\") {\n\t\t\t\tsetLoading(false);\n\t\t\t\tsetAverage(\n\t\t\t\t\tgetOrgUnitAverageValues({\n\t\t\t\t\t\tdata: scorecardEngine.data,\n\t\t\t\t\t\tdataConfig,\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t}\n\t\t};\n\t\tif (scorecardEngine.isDone) {\n\t\t\tsetLoading(false);\n\t\t\tsetAverage(\n\t\t\t\tgetOrgUnitAverageValues({\n\t\t\t\t\tdata: scorecardEngine.data,\n\t\t\t\t\tdataConfig,\n\t\t\t\t}),\n\t\t\t);\n\t\t} else {\n\t\t\tscorecardEngine.addListener(listener);\n\t\t}\n\t\treturn () => {\n\t\t\tscorecardEngine.removeListener(listener);\n\t\t};\n\t}, [dataConfig]);\n\n\treturn {\n\t\tloading,\n\t\taverage,\n\t};\n}\n"]}
@@ -392,46 +392,69 @@ const meta = {
392
392
  title: "Scorecard",
393
393
  component: Scorecard,
394
394
  decorators: (Story, context) => {
395
- const form = useForm({
396
- defaultValues: {
397
- options: {
398
- ...config.options,
399
- averageRow: true,
400
- averageColumn: true,
401
- arrows: true,
402
- averageDisplayType: "ALL"
395
+ const form = useForm({});
396
+ return /* @__PURE__ */ jsx(FormProvider, { ...form, children: /* @__PURE__ */ jsxs(
397
+ "div",
398
+ {
399
+ style: {
400
+ maxWidth: 1400,
401
+ maxHeight: "60vh"
403
402
  },
404
- orgUnitSelection: config.orgUnitSelection,
405
- periodSelection: {
406
- ...config.periodSelection
407
- }
403
+ children: [
404
+ /* @__PURE__ */ jsx("div", { style: { display: "flex", gap: 16 }, children: /* @__PURE__ */ jsx(
405
+ RHFCheckboxField,
406
+ {
407
+ label: i18n.t("Show data in rows"),
408
+ name: "options.showDataInRows"
409
+ }
410
+ ) }),
411
+ /* @__PURE__ */ jsx(
412
+ Controller,
413
+ {
414
+ render: ({ field }) => {
415
+ return /* @__PURE__ */ jsx(
416
+ ScorecardContext,
417
+ {
418
+ initialState: {
419
+ options: {
420
+ ...config.options,
421
+ averageRow: true,
422
+ averageColumn: true,
423
+ arrows: true,
424
+ averageDisplayType: "ALL",
425
+ itemNumber: false
426
+ },
427
+ orgUnitSelection: {
428
+ orgUnits: [],
429
+ levels: ["VJJOhuBJSJe"]
430
+ },
431
+ periodSelection: {
432
+ ...config.periodSelection
433
+ }
434
+ },
435
+ config,
436
+ children: /* @__PURE__ */ jsx(
437
+ Story,
438
+ {
439
+ args: {
440
+ ...context.args,
441
+ tableProps: {
442
+ scrollHeight: "800px",
443
+ scrollWidth: "1400px",
444
+ width: "800px"
445
+ }
446
+ }
447
+ }
448
+ )
449
+ }
450
+ );
451
+ },
452
+ name: "options"
453
+ }
454
+ )
455
+ ]
408
456
  }
409
- });
410
- return /* @__PURE__ */ jsx(FormProvider, { ...form, children: /* @__PURE__ */ jsxs("div", { style: { maxWidth: 1400, overflowX: "auto" }, children: [
411
- /* @__PURE__ */ jsx("div", { style: { display: "flex", gap: 16 }, children: /* @__PURE__ */ jsx(
412
- RHFCheckboxField,
413
- {
414
- label: i18n.t("Show data in rows"),
415
- name: "options.showDataInRows"
416
- }
417
- ) }),
418
- /* @__PURE__ */ jsx(
419
- Controller,
420
- {
421
- render: ({ field }) => {
422
- return /* @__PURE__ */ jsx(
423
- ScorecardContext,
424
- {
425
- initialState: form.getValues(),
426
- config,
427
- children: /* @__PURE__ */ jsx(Story, { args: { ...context.args } })
428
- }
429
- );
430
- },
431
- name: "options"
432
- }
433
- )
434
- ] }) });
457
+ ) });
435
458
  }
436
459
  };
437
460
  var Scorecard_stories_default = meta;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Scorecard/Scorecard.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Meta, StoryObj } from \"@storybook/react\";\nimport { Scorecard } from \"./Scorecard\";\nimport type { ScorecardConfig, ScorecardState } from \"./schemas/config\";\nimport { ScorecardContext } from \"./components\";\nimport { Controller, FormProvider, useForm } from \"react-hook-form\";\nimport { RHFCheckboxField } from \"@hisptz/dhis2-ui\";\nimport i18n from \"@dhis2/d2-i18n\";\n\nconst config: ScorecardConfig = {\n\tadditionalLabels: [\"Data label\"],\n\tcustomHeader: \"<p>W</p>\\n\",\n\tdataSelection: {\n\t\tdataGroups: [\n\t\t\t{\n\t\t\t\tdataHolders: [\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"EzE8xZ31zfC\",\n\t\t\t\t\t\t\t\tlabel: \"Availability of Vaccines: BCG (no stockout)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"XWUMmCmeM6o\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 80,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 80,\n\t\t\t\t\t\t\t\t\t\tid: \"TOey7YmIgVW\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"PeTnkJSrh0N\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"Availability of Vaccines: BCG (no stockout)\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 3,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"uNau1zjH08I\",\n\t\t\t\t\t\t\t\tlabel: \"Availability of Vaccines DPT (no stockout)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"BwTObmlCQJ9\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 67,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 67,\n\t\t\t\t\t\t\t\t\t\tid: \"VBf0tTk0FAg\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"Bi2wvoRTFtg\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"Availability of Vaccines DPT (no stockout)\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 6,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"Dca85UJ7O40\",\n\t\t\t\t\t\t\t\tlabel: \"DPT1 coverage\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"uClcTQnvGjo\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 67,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 67,\n\t\t\t\t\t\t\t\t\t\tid: \"VM7MrPcAzVY\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"IgXxzTrOdfA\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"DPT1 coverage\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 10,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"YT5UD0H7875\",\n\t\t\t\t\t\t\t\tlabel: \"DPT2 Coverage\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"AvNvnIHhPL9\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 67,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 67,\n\t\t\t\t\t\t\t\t\t\tid: \"L6SjYX2Ob7X\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"FDlibzlPjKa\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"DPT2 Coverage\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 4,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"E31SemmmFGb\",\n\t\t\t\t\t\t\t\tlabel: \"DPT3 coverage\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"vIzqi9I5U5W\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 67,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 67,\n\t\t\t\t\t\t\t\t\t\tid: \"p8iuaIFYrVh\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"IAawVVFlrHW\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"DPT3 coverage\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 9,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"k7S2WEEZeWO\",\n\t\t\t\t\t\t\t\tlabel: \"BCG coverage\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"HTxdj0lqOni\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 67,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 67,\n\t\t\t\t\t\t\t\t\t\tid: \"QDRGsOkTFRo\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"ijCUM3ePjXe\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"BCG coverage\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 5,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"wpgvPjYTBba\",\n\t\t\t\t\t\t\t\tlabel: \"MCV1 Coverage\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"cORYIx7oEkM\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 80,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 80,\n\t\t\t\t\t\t\t\t\t\tid: \"yCulcK3litW\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"uHU6IMpweu1\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"MCV1 Coverage\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 8,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"TGFBdsVUobf\",\n\t\t\t\t\t\t\t\tlabel: \"Fully Immunized\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"aGVS5sqcRd4\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 67,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 67,\n\t\t\t\t\t\t\t\t\t\tid: \"EKIY64Ferh3\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"EfSaPcUQvUA\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"Fully Immunized\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 7,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tid: 1,\n\t\t\t\tstyle: {\n\t\t\t\t\tbackgroundColor: \"#ffffff\",\n\t\t\t\t\tcolor: \"#000000\",\n\t\t\t\t},\n\t\t\t\ttitle: \"Default\",\n\t\t\t},\n\t\t],\n\t},\n\tdescription: \"Immunization scorecard\",\n\thighlightedIndicators: [],\n\tid: \"VQ4ipFr7YHx\",\n\tlegendDefinitions: [\n\t\t{\n\t\t\tcolor: \"#008000\",\n\t\t\tid: \"#008000\",\n\t\t\tname: \"Target achieved / on track\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#FFFF00\",\n\t\t\tid: \"#FFFF00\",\n\t\t\tname: \"Progress, but more effort required\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#FF0000\",\n\t\t\tid: \"#FF0000\",\n\t\t\tname: \"Not on track\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#D3D3D3\",\n\t\t\tid: \"N/A\",\n\t\t\tisDefault: true,\n\t\t\tname: \"N/A\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#FFFFFF\",\n\t\t\tid: \"No data\",\n\t\t\tisDefault: true,\n\t\t\tname: \"No data\",\n\t\t},\n\t],\n\toptions: {\n\t\taverageColumn: false,\n\t\taverageDisplayType: \"ALL\",\n\t\taverageRow: false,\n\t\temptyRows: true,\n\t\thighlightedIndicators: false,\n\t\titemNumber: true,\n\t\tlegend: true,\n\t\tshowHierarchy: false,\n\t\ttitle: true,\n\t},\n\torgUnitSelection: {\n\t\tgroups: [],\n\t\tlevels: [\"P0QFTFfTl2X\"],\n\t\torgUnits: [\n\t\t\t{\n\t\t\t\tid: \"GD7TowwI46c\",\n\t\t\t},\n\t\t],\n\t\tuserOrgUnit: false,\n\t\tuserSubUnit: false,\n\t\tuserSubX2Unit: false,\n\t},\n\tperiodSelection: {\n\t\tperiods: [\n\t\t\t{\n\t\t\t\tid: \"2018Q2\",\n\t\t\t},\n\t\t],\n\t\ttype: \"Quarterly\",\n\t},\n\tsharing: {\n\t\texternal: false,\n\t\towner: \"M5zQapPyTZI\",\n\t\tpublic: \"------\",\n\t\tuserGroups: {\n\t\t\tji3bRmgKwkS: {\n\t\t\t\taccess: \"------\",\n\t\t\t\tid: \"ji3bRmgKwkS\",\n\t\t\t},\n\t\t},\n\t\tusers: {},\n\t},\n\tsubtitle: \"\",\n\ttitle: \"Immunization scorecard\",\n};\n\nconst linkedConfig: ScorecardConfig = {\n\tadditionalLabels: [],\n\tcustomHeader:\n\t\t'<p style=\"text-align: center;\"><strong><span style=\"font-size: 14pt;\">Reproductive Mother Newborn Child Adolescent Health Scorecard</span></strong></p>',\n\tdataSelection: {\n\t\tdataGroups: [\n\t\t\t{\n\t\t\t\tdataHolders: [\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"UT1DJmtzyox\",\n\t\t\t\t\t\t\t\tlabel: \"ANC 1st visit coverage (%)\",\n\t\t\t\t\t\t\t\tlegends: {\n\t\t\t\t\t\t\t\t\tBNQIkbGlA00: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"KpYHhHJn6TW\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"D7p3mOofXV5\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"h53u0qtfWrm\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tP0QFTFfTl2X: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"Gu1MEoKBM9z\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"Ov1gJoUyWGA\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"kdr4mFvCXeF\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tVJJOhuBJSJe: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"ZRel5tdDTxP\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"ZdkqaQjk4dy\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"yHqYRGJTuZ7\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tZqI1kKnH7ve: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"M8SRVFU7qaJ\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"t0kMCebyKa3\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"qQWheNiAv5H\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"FgNnsRgCs8r\",\n\t\t\t\t\t\t\t\tlabel: \"ANC 4th visit coverage (%)\",\n\t\t\t\t\t\t\t\tlegends: {\n\t\t\t\t\t\t\t\t\tBNQIkbGlA00: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"XMzI6YTRjnh\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"XaSA3Wbd8ev\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"zTVnWeobd1W\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tP0QFTFfTl2X: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"uMqW1iTVZbk\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"KF017pCID2N\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"L3PNXKkZlKn\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tVJJOhuBJSJe: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"lpPPAVPWAHa\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"qtzhYa0YOZe\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"rcPPIBAegMP\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tZqI1kKnH7ve: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"w31XD1NVKYc\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"Yka97h8Gp5S\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"rq5CQddHPzj\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: \"kJx1Eg83H1A\",\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tid: \"uRgQI4ArrDc\",\n\t\t\t\tstyle: {\n\t\t\t\t\tbackgroundColor: \"#FFFFFF\",\n\t\t\t\t\tcolor: \"#000000\",\n\t\t\t\t},\n\t\t\t\ttitle: \"ANC\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tdataHolders: [\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"S0IzYPGQLnN\",\n\t\t\t\t\t\t\t\tlabel: \"PCV 3 coverage (%)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\tid: \"bnLSP7FW4CD\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\tid: \"eIQjXQYMwYF\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\tid: \"eeXyZVN0FCX\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"ZNz5XzwJZK5\",\n\t\t\t\t\t\t\t\tlabel: \"RMNCH IPTp1 coverage (%)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\tid: \"M3O2zlFt2QR\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\tid: \"XrYIKCaK5uO\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\tid: \"yAfwEbfXWab\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: \"kfl50Ej7lDu\",\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tid: \"QcZw8mJ1Rze\",\n\t\t\t\tstyle: {\n\t\t\t\t\tbackgroundColor: \"#FFFFFF\",\n\t\t\t\t\tcolor: \"#000000\",\n\t\t\t\t},\n\t\t\t\ttitle: \"Child Health\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tdataHolders: [\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"wc3XYCyuxyE\",\n\t\t\t\t\t\t\t\tlabel: \"Post partum care coverage (within 2 days) (%)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\tid: \"b3UiR0upygY\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\tid: \"Qws2zJ6nnhO\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\tid: \"EjYfDZUMrvh\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"NV6Xc9oGJZV\",\n\t\t\t\t\t\t\t\tlabel: \"Breastfeeding within 1 hour after delivery (%)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\tid: \"wqt6J8rW5Gg\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\tid: \"BoXJK9Y7xfL\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\tid: \"leioF1u23By\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: \"w8XIm3FYgHf\",\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tid: \"UVvskRg3Q3O\",\n\t\t\t\tstyle: {\n\t\t\t\t\tbackgroundColor: \"#FFFFFF\",\n\t\t\t\t\tcolor: \"#000000\",\n\t\t\t\t},\n\t\t\t\ttitle: \"PNC\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tdataHolders: [\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"XXDXVGzvSx1\",\n\t\t\t\t\t\t\t\tlabel: \"Caesarean section delivery rate (%)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\tid: \"nYuMTV2paEd\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\tid: \"iRmHVCt9uCF\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\tid: \"oZC6QPZ7AAS\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"lMRhTK17SDQ\",\n\t\t\t\t\t\t\t\tlabel: \"Institutional delivery rate (%)\",\n\t\t\t\t\t\t\t\tlegends: {\n\t\t\t\t\t\t\t\t\tBNQIkbGlA00: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"mOYx4YWdhVl\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"gxG34EbioX8\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"MBAKh3ZG2dK\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tP0QFTFfTl2X: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"MmQldQ7jgAH\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"WF1kso6rvDr\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"JcaFJoC6kNi\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tVJJOhuBJSJe: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"L07Gb3JDHVS\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"jZ9fu7sOQDr\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"EoTSwqHRfZV\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tZqI1kKnH7ve: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"CO0eiIoCRty\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"YWySiVblPtQ\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"paJxvmioynV\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: \"yZsI8HZOKab\",\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tid: \"erF3HyaFtYs\",\n\t\t\t\tstyle: {\n\t\t\t\t\tbackgroundColor: \"#FFFFFF\",\n\t\t\t\t\tcolor: \"#000000\",\n\t\t\t\t},\n\t\t\t\ttitle: \"Birth\",\n\t\t\t},\n\t\t],\n\t},\n\tdescription:\n\t\t\"Reproductive Mother Newborn Child Adolescent Health Score Card\",\n\thighlightedIndicators: [\n\t\t{\n\t\t\tdisplayArrows: true,\n\t\t\teffectiveGap: 5,\n\t\t\thighIsGood: true,\n\t\t\tid: \"BvG8P80QxqZ\",\n\t\t\tlabel: \"Access to ANC Services\",\n\t\t\tlegends: [\n\t\t\t\t{\n\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\tid: \"gpxLYDFnZmu\",\n\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\tstartValue: \"80\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tendValue: \"80\",\n\t\t\t\t\tid: \"nG6xsue9WBm\",\n\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\tstartValue: \"60\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tendValue: \"60\",\n\t\t\t\t\tid: \"UeAJV56yLPg\",\n\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\tstartValue: \"40\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tendValue: \"40\",\n\t\t\t\t\tid: \"Gop7mo2IUdC\",\n\t\t\t\t\tlegendDefinitionId: \"N/A\",\n\t\t\t\t\tstartValue: \"20\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tendValue: \"20\",\n\t\t\t\t\tid: \"RE0ln0cImOf\",\n\t\t\t\t\tlegendDefinitionId: \"No Data\",\n\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t},\n\t\t\t],\n\t\t\tshowColors: true,\n\t\t\ttype: \"indicator\",\n\t\t\tweight: 100,\n\t\t},\n\t],\n\tid: \"KKQrggIIOlT\",\n\tlegendDefinitions: [\n\t\t{\n\t\t\tcolor: \"#008000\",\n\t\t\tid: \"Hp7RQEOkeeI\",\n\t\t\tname: \"Target Reached/ On Track\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#FFFF00\",\n\t\t\tid: \"Tdn0N0KCkfS\",\n\t\t\tname: \"Progress, but more effort required\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#FF0000\",\n\t\t\tid: \"wvkMv3ABWbT\",\n\t\t\tname: \"Not on track\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#D3D3D3\",\n\t\t\tid: \"N/A\",\n\t\t\tisDefault: true,\n\t\t\tname: \"N/A\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#FFFFFF\",\n\t\t\tid: \"No Data\",\n\t\t\tisDefault: true,\n\t\t\tname: \"No Data\",\n\t\t},\n\t],\n\toptions: {\n\t\tarrows: true,\n\t\taverageColumn: false,\n\t\taverageDisplayType: \"ALL\",\n\t\taverageRow: false,\n\t\temptyRows: false,\n\t\thighlightedIndicators: false,\n\t\titemNumber: true,\n\t\tlegend: true,\n\t\tshowDataInRows: false,\n\t\tshowHierarchy: true,\n\t\ttitle: true,\n\t},\n\torgUnitSelection: {\n\t\tgroups: [],\n\t\tlevels: [\"P0QFTFfTl2X\"],\n\t\torgUnits: [\n\t\t\t{\n\t\t\t\tid: \"GD7TowwI46c\",\n\t\t\t},\n\t\t],\n\t\tuserOrgUnit: false,\n\t\tuserSubUnit: false,\n\t\tuserSubX2Unit: false,\n\t},\n\tperiodSelection: {\n\t\tperiods: [\n\t\t\t{\n\t\t\t\tid: \"2018\",\n\t\t\t},\n\t\t],\n\t},\n\tsubtitle: \"\",\n\ttitle: \"RMNCAH Score Card Revised\",\n};\n\nconst meta: Meta<typeof Scorecard> = {\n\ttitle: \"Scorecard\",\n\tcomponent: Scorecard,\n\tdecorators: (Story, context) => {\n\t\tconst form = useForm<ScorecardState>({\n\t\t\tdefaultValues: {\n\t\t\t\toptions: {\n\t\t\t\t\t...config.options,\n\t\t\t\t\taverageRow: true,\n\t\t\t\t\taverageColumn: true,\n\t\t\t\t\tarrows: true,\n\t\t\t\t\taverageDisplayType: \"ALL\",\n\t\t\t\t},\n\t\t\t\torgUnitSelection: config.orgUnitSelection,\n\t\t\t\tperiodSelection: {\n\t\t\t\t\t...config.periodSelection,\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t\treturn (\n\t\t\t<FormProvider {...form}>\n\t\t\t\t<div style={{ maxWidth: 1400, overflowX: \"auto\" }}>\n\t\t\t\t\t<div style={{ display: \"flex\", gap: 16 }}>\n\t\t\t\t\t\t<RHFCheckboxField\n\t\t\t\t\t\t\tlabel={i18n.t(\"Show data in rows\")}\n\t\t\t\t\t\t\tname=\"options.showDataInRows\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t\t<Controller\n\t\t\t\t\t\trender={({ field }) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<ScorecardContext\n\t\t\t\t\t\t\t\t\tinitialState={form.getValues()}\n\t\t\t\t\t\t\t\t\tconfig={config}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Story args={{ ...context.args }} />\n\t\t\t\t\t\t\t\t</ScorecardContext>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tname={\"options\"}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</FormProvider>\n\t\t);\n\t},\n};\n\nexport default meta;\n\ntype Story = StoryObj<typeof ScorecardContext>;\n\nexport const Default: Story = {\n\tname: \"Default View\",\n\targs: {\n\t\tconfig,\n\t\tinitialState: {\n\t\t\t...config,\n\t\t\tperiodSelection: {},\n\t\t},\n\t},\n};\n// export const DataInRows: Story = {\n// \tname: \"Data in rows view\",\n// \targs: {},\n// };\n// export const FilteredAboveAverage: Story = {\n// \tname: \"Filtered above average\",\n// \targs: {},\n// };\n// export const FilteredBelowAverage: Story = {\n// \tname: \"Filtered below average\",\n// \targs: {},\n// };\n// export const WithLinkedCells: Story = {\n// \tname: \"With linked cells\",\n// \targs: {},\n// };\n// export const WithLinkedCellsDataInRows: Story = {\n// \tname: \"With linked cells and data in rows\",\n// \targs: {},\n// };\n"]}
1
+ {"version":3,"sources":["../../../../src/components/Scorecard/Scorecard.stories.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { Meta, StoryObj } from \"@storybook/react\";\nimport { Scorecard } from \"./Scorecard\";\nimport type { ScorecardConfig, ScorecardState } from \"./schemas/config\";\nimport { ScorecardContext } from \"./components\";\nimport { Controller, FormProvider, useForm } from \"react-hook-form\";\nimport { RHFCheckboxField } from \"@hisptz/dhis2-ui\";\nimport i18n from \"@dhis2/d2-i18n\";\n\nconst config: ScorecardConfig = {\n\tadditionalLabels: [\"Data label\"],\n\tcustomHeader: \"<p>W</p>\\n\",\n\tdataSelection: {\n\t\tdataGroups: [\n\t\t\t{\n\t\t\t\tdataHolders: [\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"EzE8xZ31zfC\",\n\t\t\t\t\t\t\t\tlabel: \"Availability of Vaccines: BCG (no stockout)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"XWUMmCmeM6o\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 80,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 80,\n\t\t\t\t\t\t\t\t\t\tid: \"TOey7YmIgVW\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"PeTnkJSrh0N\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"Availability of Vaccines: BCG (no stockout)\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 3,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"uNau1zjH08I\",\n\t\t\t\t\t\t\t\tlabel: \"Availability of Vaccines DPT (no stockout)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"BwTObmlCQJ9\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 67,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 67,\n\t\t\t\t\t\t\t\t\t\tid: \"VBf0tTk0FAg\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"Bi2wvoRTFtg\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"Availability of Vaccines DPT (no stockout)\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 6,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"Dca85UJ7O40\",\n\t\t\t\t\t\t\t\tlabel: \"DPT1 coverage\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"uClcTQnvGjo\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 67,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 67,\n\t\t\t\t\t\t\t\t\t\tid: \"VM7MrPcAzVY\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"IgXxzTrOdfA\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"DPT1 coverage\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 10,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"YT5UD0H7875\",\n\t\t\t\t\t\t\t\tlabel: \"DPT2 Coverage\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"AvNvnIHhPL9\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 67,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 67,\n\t\t\t\t\t\t\t\t\t\tid: \"L6SjYX2Ob7X\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"FDlibzlPjKa\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"DPT2 Coverage\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 4,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"E31SemmmFGb\",\n\t\t\t\t\t\t\t\tlabel: \"DPT3 coverage\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"vIzqi9I5U5W\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 67,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 67,\n\t\t\t\t\t\t\t\t\t\tid: \"p8iuaIFYrVh\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"IAawVVFlrHW\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"DPT3 coverage\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 9,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"k7S2WEEZeWO\",\n\t\t\t\t\t\t\t\tlabel: \"BCG coverage\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"HTxdj0lqOni\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 67,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 67,\n\t\t\t\t\t\t\t\t\t\tid: \"QDRGsOkTFRo\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"ijCUM3ePjXe\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"BCG coverage\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 5,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"wpgvPjYTBba\",\n\t\t\t\t\t\t\t\tlabel: \"MCV1 Coverage\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"cORYIx7oEkM\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 80,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 80,\n\t\t\t\t\t\t\t\t\t\tid: \"yCulcK3litW\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"uHU6IMpweu1\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"MCV1 Coverage\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 8,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"TGFBdsVUobf\",\n\t\t\t\t\t\t\t\tlabel: \"Fully Immunized\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 100,\n\t\t\t\t\t\t\t\t\t\tid: \"aGVS5sqcRd4\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#008000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 67,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 67,\n\t\t\t\t\t\t\t\t\t\tid: \"EKIY64Ferh3\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FFFF00\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 34,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: 34,\n\t\t\t\t\t\t\t\t\t\tid: \"EfSaPcUQvUA\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"#FF0000\",\n\t\t\t\t\t\t\t\t\t\tstartValue: 1,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tname: \"Fully Immunized\",\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: 7,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tid: 1,\n\t\t\t\tstyle: {\n\t\t\t\t\tbackgroundColor: \"#ffffff\",\n\t\t\t\t\tcolor: \"#000000\",\n\t\t\t\t},\n\t\t\t\ttitle: \"Default\",\n\t\t\t},\n\t\t],\n\t},\n\tdescription: \"Immunization scorecard\",\n\thighlightedIndicators: [],\n\tid: \"VQ4ipFr7YHx\",\n\tlegendDefinitions: [\n\t\t{\n\t\t\tcolor: \"#008000\",\n\t\t\tid: \"#008000\",\n\t\t\tname: \"Target achieved / on track\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#FFFF00\",\n\t\t\tid: \"#FFFF00\",\n\t\t\tname: \"Progress, but more effort required\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#FF0000\",\n\t\t\tid: \"#FF0000\",\n\t\t\tname: \"Not on track\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#D3D3D3\",\n\t\t\tid: \"N/A\",\n\t\t\tisDefault: true,\n\t\t\tname: \"N/A\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#FFFFFF\",\n\t\t\tid: \"No data\",\n\t\t\tisDefault: true,\n\t\t\tname: \"No data\",\n\t\t},\n\t],\n\toptions: {\n\t\taverageColumn: false,\n\t\taverageDisplayType: \"ALL\",\n\t\taverageRow: false,\n\t\temptyRows: true,\n\t\thighlightedIndicators: false,\n\t\titemNumber: true,\n\t\tlegend: true,\n\t\tshowHierarchy: false,\n\t\ttitle: true,\n\t},\n\torgUnitSelection: {\n\t\tgroups: [],\n\t\tlevels: [\"P0QFTFfTl2X\"],\n\t\torgUnits: [\n\t\t\t{\n\t\t\t\tid: \"GD7TowwI46c\",\n\t\t\t},\n\t\t],\n\t\tuserOrgUnit: false,\n\t\tuserSubUnit: false,\n\t\tuserSubX2Unit: false,\n\t},\n\tperiodSelection: {\n\t\tperiods: [\n\t\t\t{\n\t\t\t\tid: \"2018Q2\",\n\t\t\t},\n\t\t],\n\t\ttype: \"Quarterly\",\n\t},\n\tsharing: {\n\t\texternal: false,\n\t\towner: \"M5zQapPyTZI\",\n\t\tpublic: \"------\",\n\t\tuserGroups: {\n\t\t\tji3bRmgKwkS: {\n\t\t\t\taccess: \"------\",\n\t\t\t\tid: \"ji3bRmgKwkS\",\n\t\t\t},\n\t\t},\n\t\tusers: {},\n\t},\n\tsubtitle: \"\",\n\ttitle: \"Immunization scorecard\",\n};\n\nconst linkedConfig: ScorecardConfig = {\n\tadditionalLabels: [],\n\tcustomHeader:\n\t\t'<p style=\"text-align: center;\"><strong><span style=\"font-size: 14pt;\">Reproductive Mother Newborn Child Adolescent Health Scorecard</span></strong></p>',\n\tdataSelection: {\n\t\tdataGroups: [\n\t\t\t{\n\t\t\t\tdataHolders: [\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"UT1DJmtzyox\",\n\t\t\t\t\t\t\t\tlabel: \"ANC 1st visit coverage (%)\",\n\t\t\t\t\t\t\t\tlegends: {\n\t\t\t\t\t\t\t\t\tBNQIkbGlA00: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"KpYHhHJn6TW\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"D7p3mOofXV5\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"h53u0qtfWrm\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tP0QFTFfTl2X: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"Gu1MEoKBM9z\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"Ov1gJoUyWGA\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"kdr4mFvCXeF\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tVJJOhuBJSJe: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"ZRel5tdDTxP\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"ZdkqaQjk4dy\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"yHqYRGJTuZ7\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tZqI1kKnH7ve: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"M8SRVFU7qaJ\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"t0kMCebyKa3\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"qQWheNiAv5H\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"FgNnsRgCs8r\",\n\t\t\t\t\t\t\t\tlabel: \"ANC 4th visit coverage (%)\",\n\t\t\t\t\t\t\t\tlegends: {\n\t\t\t\t\t\t\t\t\tBNQIkbGlA00: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"XMzI6YTRjnh\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"XaSA3Wbd8ev\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"zTVnWeobd1W\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tP0QFTFfTl2X: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"uMqW1iTVZbk\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"KF017pCID2N\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"L3PNXKkZlKn\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tVJJOhuBJSJe: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"lpPPAVPWAHa\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"qtzhYa0YOZe\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"rcPPIBAegMP\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tZqI1kKnH7ve: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"w31XD1NVKYc\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"Yka97h8Gp5S\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"rq5CQddHPzj\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: \"kJx1Eg83H1A\",\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tid: \"uRgQI4ArrDc\",\n\t\t\t\tstyle: {\n\t\t\t\t\tbackgroundColor: \"#FFFFFF\",\n\t\t\t\t\tcolor: \"#000000\",\n\t\t\t\t},\n\t\t\t\ttitle: \"ANC\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tdataHolders: [\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"S0IzYPGQLnN\",\n\t\t\t\t\t\t\t\tlabel: \"PCV 3 coverage (%)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\tid: \"bnLSP7FW4CD\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\tid: \"eIQjXQYMwYF\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\tid: \"eeXyZVN0FCX\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"ZNz5XzwJZK5\",\n\t\t\t\t\t\t\t\tlabel: \"RMNCH IPTp1 coverage (%)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\tid: \"M3O2zlFt2QR\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\tid: \"XrYIKCaK5uO\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\tid: \"yAfwEbfXWab\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: \"kfl50Ej7lDu\",\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tid: \"QcZw8mJ1Rze\",\n\t\t\t\tstyle: {\n\t\t\t\t\tbackgroundColor: \"#FFFFFF\",\n\t\t\t\t\tcolor: \"#000000\",\n\t\t\t\t},\n\t\t\t\ttitle: \"Child Health\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tdataHolders: [\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"wc3XYCyuxyE\",\n\t\t\t\t\t\t\t\tlabel: \"Post partum care coverage (within 2 days) (%)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\tid: \"b3UiR0upygY\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\tid: \"Qws2zJ6nnhO\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\tid: \"EjYfDZUMrvh\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"NV6Xc9oGJZV\",\n\t\t\t\t\t\t\t\tlabel: \"Breastfeeding within 1 hour after delivery (%)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\tid: \"wqt6J8rW5Gg\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\tid: \"BoXJK9Y7xfL\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\tid: \"leioF1u23By\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: \"w8XIm3FYgHf\",\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tid: \"UVvskRg3Q3O\",\n\t\t\t\tstyle: {\n\t\t\t\t\tbackgroundColor: \"#FFFFFF\",\n\t\t\t\t\tcolor: \"#000000\",\n\t\t\t\t},\n\t\t\t\ttitle: \"PNC\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tdataHolders: [\n\t\t\t\t\t{\n\t\t\t\t\t\tdataSources: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"XXDXVGzvSx1\",\n\t\t\t\t\t\t\t\tlabel: \"Caesarean section delivery rate (%)\",\n\t\t\t\t\t\t\t\tlegends: [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\tid: \"nYuMTV2paEd\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\tid: \"iRmHVCt9uCF\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\tid: \"oZC6QPZ7AAS\",\n\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdisplayArrows: true,\n\t\t\t\t\t\t\t\teffectiveGap: 5,\n\t\t\t\t\t\t\t\thighIsGood: true,\n\t\t\t\t\t\t\t\tid: \"lMRhTK17SDQ\",\n\t\t\t\t\t\t\t\tlabel: \"Institutional delivery rate (%)\",\n\t\t\t\t\t\t\t\tlegends: {\n\t\t\t\t\t\t\t\t\tBNQIkbGlA00: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"mOYx4YWdhVl\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"gxG34EbioX8\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"MBAKh3ZG2dK\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tP0QFTFfTl2X: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"MmQldQ7jgAH\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"WF1kso6rvDr\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"JcaFJoC6kNi\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tVJJOhuBJSJe: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"L07Gb3JDHVS\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"jZ9fu7sOQDr\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"EoTSwqHRfZV\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tZqI1kKnH7ve: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"CO0eiIoCRty\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"66\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"YWySiVblPtQ\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tendValue: \"33\",\n\t\t\t\t\t\t\t\t\t\t\tid: \"paJxvmioynV\",\n\t\t\t\t\t\t\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\t\t\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tshowColors: true,\n\t\t\t\t\t\t\t\ttype: \"dataElement\",\n\t\t\t\t\t\t\t\tweight: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tid: \"yZsI8HZOKab\",\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tid: \"erF3HyaFtYs\",\n\t\t\t\tstyle: {\n\t\t\t\t\tbackgroundColor: \"#FFFFFF\",\n\t\t\t\t\tcolor: \"#000000\",\n\t\t\t\t},\n\t\t\t\ttitle: \"Birth\",\n\t\t\t},\n\t\t],\n\t},\n\tdescription:\n\t\t\"Reproductive Mother Newborn Child Adolescent Health Score Card\",\n\thighlightedIndicators: [\n\t\t{\n\t\t\tdisplayArrows: true,\n\t\t\teffectiveGap: 5,\n\t\t\thighIsGood: true,\n\t\t\tid: \"BvG8P80QxqZ\",\n\t\t\tlabel: \"Access to ANC Services\",\n\t\t\tlegends: [\n\t\t\t\t{\n\t\t\t\t\tendValue: \"100\",\n\t\t\t\t\tid: \"gpxLYDFnZmu\",\n\t\t\t\t\tlegendDefinitionId: \"Hp7RQEOkeeI\",\n\t\t\t\t\tstartValue: \"80\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tendValue: \"80\",\n\t\t\t\t\tid: \"nG6xsue9WBm\",\n\t\t\t\t\tlegendDefinitionId: \"Tdn0N0KCkfS\",\n\t\t\t\t\tstartValue: \"60\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tendValue: \"60\",\n\t\t\t\t\tid: \"UeAJV56yLPg\",\n\t\t\t\t\tlegendDefinitionId: \"wvkMv3ABWbT\",\n\t\t\t\t\tstartValue: \"40\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tendValue: \"40\",\n\t\t\t\t\tid: \"Gop7mo2IUdC\",\n\t\t\t\t\tlegendDefinitionId: \"N/A\",\n\t\t\t\t\tstartValue: \"20\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tendValue: \"20\",\n\t\t\t\t\tid: \"RE0ln0cImOf\",\n\t\t\t\t\tlegendDefinitionId: \"No Data\",\n\t\t\t\t\tstartValue: \"0\",\n\t\t\t\t},\n\t\t\t],\n\t\t\tshowColors: true,\n\t\t\ttype: \"indicator\",\n\t\t\tweight: 100,\n\t\t},\n\t],\n\tid: \"KKQrggIIOlT\",\n\tlegendDefinitions: [\n\t\t{\n\t\t\tcolor: \"#008000\",\n\t\t\tid: \"Hp7RQEOkeeI\",\n\t\t\tname: \"Target Reached/ On Track\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#FFFF00\",\n\t\t\tid: \"Tdn0N0KCkfS\",\n\t\t\tname: \"Progress, but more effort required\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#FF0000\",\n\t\t\tid: \"wvkMv3ABWbT\",\n\t\t\tname: \"Not on track\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#D3D3D3\",\n\t\t\tid: \"N/A\",\n\t\t\tisDefault: true,\n\t\t\tname: \"N/A\",\n\t\t},\n\t\t{\n\t\t\tcolor: \"#FFFFFF\",\n\t\t\tid: \"No Data\",\n\t\t\tisDefault: true,\n\t\t\tname: \"No Data\",\n\t\t},\n\t],\n\toptions: {\n\t\tarrows: true,\n\t\taverageColumn: false,\n\t\taverageDisplayType: \"ALL\",\n\t\taverageRow: false,\n\t\temptyRows: false,\n\t\thighlightedIndicators: false,\n\t\titemNumber: true,\n\t\tlegend: true,\n\t\tshowDataInRows: false,\n\t\tshowHierarchy: true,\n\t\ttitle: true,\n\t},\n\torgUnitSelection: {\n\t\tgroups: [],\n\t\tlevels: [\"P0QFTFfTl2X\"],\n\t\torgUnits: [\n\t\t\t{\n\t\t\t\tid: \"GD7TowwI46c\",\n\t\t\t},\n\t\t],\n\t\tuserOrgUnit: false,\n\t\tuserSubUnit: false,\n\t\tuserSubX2Unit: false,\n\t},\n\tperiodSelection: {\n\t\tperiods: [\n\t\t\t{\n\t\t\t\tid: \"2018\",\n\t\t\t},\n\t\t],\n\t},\n\tsubtitle: \"\",\n\ttitle: \"RMNCAH Score Card Revised\",\n};\n\nconst meta: Meta<typeof Scorecard> = {\n\ttitle: \"Scorecard\",\n\tcomponent: Scorecard,\n\tdecorators: (Story, context) => {\n\t\tconst form = useForm<ScorecardState>({});\n\t\treturn (\n\t\t\t<FormProvider {...form}>\n\t\t\t\t<div\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tmaxWidth: 1400,\n\t\t\t\t\t\tmaxHeight: \"60vh\",\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<div style={{ display: \"flex\", gap: 16 }}>\n\t\t\t\t\t\t<RHFCheckboxField\n\t\t\t\t\t\t\tlabel={i18n.t(\"Show data in rows\")}\n\t\t\t\t\t\t\tname=\"options.showDataInRows\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t\t<Controller\n\t\t\t\t\t\trender={({ field }) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<ScorecardContext\n\t\t\t\t\t\t\t\t\tinitialState={{\n\t\t\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\t\t\t...config.options,\n\t\t\t\t\t\t\t\t\t\t\taverageRow: true,\n\t\t\t\t\t\t\t\t\t\t\taverageColumn: true,\n\t\t\t\t\t\t\t\t\t\t\tarrows: true,\n\t\t\t\t\t\t\t\t\t\t\taverageDisplayType: \"ALL\",\n\t\t\t\t\t\t\t\t\t\t\titemNumber: false,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\torgUnitSelection: {\n\t\t\t\t\t\t\t\t\t\t\torgUnits: [],\n\t\t\t\t\t\t\t\t\t\t\tlevels: [\"VJJOhuBJSJe\"],\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tperiodSelection: {\n\t\t\t\t\t\t\t\t\t\t\t...config.periodSelection,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\tconfig={config}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Story\n\t\t\t\t\t\t\t\t\t\targs={{\n\t\t\t\t\t\t\t\t\t\t\t...context.args,\n\t\t\t\t\t\t\t\t\t\t\ttableProps: {\n\t\t\t\t\t\t\t\t\t\t\t\tscrollHeight: \"800px\",\n\t\t\t\t\t\t\t\t\t\t\t\tscrollWidth: \"1400px\",\n\t\t\t\t\t\t\t\t\t\t\t\twidth: \"800px\",\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</ScorecardContext>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tname={\"options\"}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</FormProvider>\n\t\t);\n\t},\n};\n\nexport default meta;\n\ntype Story = StoryObj<typeof ScorecardContext>;\n\nexport const Default: Story = {\n\tname: \"Default View\",\n\targs: {\n\t\tconfig,\n\t\tinitialState: {\n\t\t\t...config,\n\t\t\tperiodSelection: {},\n\t\t},\n\t},\n};\n// export const DataInRows: Story = {\n// \tname: \"Data in rows view\",\n// \targs: {},\n// };\n// export const FilteredAboveAverage: Story = {\n// \tname: \"Filtered above average\",\n// \targs: {},\n// };\n// export const FilteredBelowAverage: Story = {\n// \tname: \"Filtered below average\",\n// \targs: {},\n// };\n// export const WithLinkedCells: Story = {\n// \tname: \"With linked cells\",\n// \targs: {},\n// };\n// export const WithLinkedCellsDataInRows: Story = {\n// \tname: \"With linked cells and data in rows\",\n// \targs: {},\n// };\n"]}
@@ -1,21 +1,40 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
- import { createContext, useContext } from 'react';
2
+ import { createContext, useContext, useRef } from 'react';
3
3
  import { useGetScorecardData } from '../hooks/data';
4
4
  import { createScorecardDataEngine } from '../utils/dataEngine';
5
5
 
6
6
  const ScorecardDataContext = createContext({
7
- data: createScorecardDataEngine(),
8
- rawData: [],
7
+ data: createScorecardDataEngine()
8
+ });
9
+ const ScorecardDataFetchProgress = createContext({
9
10
  progress: 0
10
11
  });
11
12
  function useScorecardData() {
12
13
  return useContext(ScorecardDataContext);
13
14
  }
15
+ function useScorecardDataFetchProgress() {
16
+ return useContext(ScorecardDataFetchProgress);
17
+ }
18
+ function ScorecardDataFetchProgressProvider({
19
+ children
20
+ }) {
21
+ const { data: dataEngine } = useScorecardData();
22
+ const value = useGetScorecardData(dataEngine);
23
+ return /* @__PURE__ */ jsx(ScorecardDataFetchProgress.Provider, { value, children });
24
+ }
14
25
  function ScorecardDataProvider({ children }) {
15
- const value = useGetScorecardData();
16
- return /* @__PURE__ */ jsx(ScorecardDataContext.Provider, { value, children });
26
+ const dataEngine = useRef(createScorecardDataEngine());
27
+ return /* @__PURE__ */ jsx(
28
+ ScorecardDataContext.Provider,
29
+ {
30
+ value: {
31
+ data: dataEngine.current
32
+ },
33
+ children
34
+ }
35
+ );
17
36
  }
18
37
 
19
- export { ScorecardDataProvider, useScorecardData };
38
+ export { ScorecardDataFetchProgressProvider, ScorecardDataProvider, useScorecardData, useScorecardDataFetchProgress };
20
39
  //# sourceMappingURL=out.js.map
21
40
  //# sourceMappingURL=DataProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/Scorecard/components/DataProvider.tsx"],"names":[],"mappings":"AA2BE;AA3BF,SAAS,eAA+B,kBAAkB;AAE1D,SAAS,2BAA2B;AACpC;AAAA,EACC;AAAA,OAEM;AAQP,MAAM,uBAAuB,cAA6B;AAAA,EACzD,MAAM,0BAA0B;AAAA,EAChC,SAAS,CAAC;AAAA,EACV,UAAU;AACX,CAAC;AAEM,SAAS,mBAAmB;AAClC,SAAO,WAAW,oBAAoB;AACvC;AAEO,SAAS,sBAAsB,EAAE,SAAS,GAA4B;AAC5E,QAAM,QAAQ,oBAAoB;AAClC,SACC,oBAAC,qBAAqB,UAArB,EAA8B,OAC7B,UACF;AAEF","sourcesContent":["import { createContext, type ReactNode, useContext } from \"react\";\nimport type { ScorecardAnalyticsData } from \"../schemas/config\";\nimport { useGetScorecardData } from \"../hooks/data\";\nimport {\n\tcreateScorecardDataEngine,\n\ttype ScorecardDataEngine,\n} from \"../utils/dataEngine\";\n\nexport interface ScorecardData {\n\tprogress?: number;\n\tdata: ScorecardDataEngine;\n\trawData: ScorecardAnalyticsData[];\n}\n\nconst ScorecardDataContext = createContext<ScorecardData>({\n\tdata: createScorecardDataEngine(),\n\trawData: [],\n\tprogress: 0,\n});\n\nexport function useScorecardData() {\n\treturn useContext(ScorecardDataContext);\n}\n\nexport function ScorecardDataProvider({ children }: { children: ReactNode }) {\n\tconst value = useGetScorecardData();\n\treturn (\n\t\t<ScorecardDataContext.Provider value={value}>\n\t\t\t{children}\n\t\t</ScorecardDataContext.Provider>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["../../../../../src/components/Scorecard/components/DataProvider.tsx"],"names":[],"mappings":"AAoCE;AApCF,SAAS,eAA+B,YAAY,cAAc;AAClE,SAAS,2BAA2B;AACpC;AAAA,EACC;AAAA,OAEM;AAMP,MAAM,uBAAuB,cAA6B;AAAA,EACzD,MAAM,0BAA0B;AACjC,CAAC;AAED,MAAM,6BAA6B,cAAoC;AAAA,EACtE,UAAU;AACX,CAAC;AAEM,SAAS,mBAAmB;AAClC,SAAO,WAAW,oBAAoB;AACvC;AAEO,SAAS,gCAAgC;AAC/C,SAAO,WAAW,0BAA0B;AAC7C;AAEO,SAAS,mCAAmC;AAAA,EAClD;AACD,GAEG;AACF,QAAM,EAAE,MAAM,WAAW,IAAI,iBAAiB;AAC9C,QAAM,QAAQ,oBAAoB,UAAU;AAE5C,SACC,oBAAC,2BAA2B,UAA3B,EAAoC,OACnC,UACF;AAEF;AAEO,SAAS,sBAAsB,EAAE,SAAS,GAA4B;AAC5E,QAAM,aAAa,OAA4B,0BAA0B,CAAC;AAC1E,SACC;AAAA,IAAC,qBAAqB;AAAA,IAArB;AAAA,MACA,OAAO;AAAA,QACN,MAAM,WAAW;AAAA,MAClB;AAAA,MAEC;AAAA;AAAA,EACF;AAEF","sourcesContent":["import { createContext, type ReactNode, useContext, useRef } from \"react\";\nimport { useGetScorecardData } from \"../hooks/data\";\nimport {\n\tcreateScorecardDataEngine,\n\ttype ScorecardDataEngine,\n} from \"../utils/dataEngine\";\n\nexport interface ScorecardData {\n\tdata: ScorecardDataEngine;\n}\n\nconst ScorecardDataContext = createContext<ScorecardData>({\n\tdata: createScorecardDataEngine(),\n});\n\nconst ScorecardDataFetchProgress = createContext<{ progress: number }>({\n\tprogress: 0,\n});\n\nexport function useScorecardData() {\n\treturn useContext(ScorecardDataContext);\n}\n\nexport function useScorecardDataFetchProgress() {\n\treturn useContext(ScorecardDataFetchProgress);\n}\n\nexport function ScorecardDataFetchProgressProvider({\n\tchildren,\n}: {\n\tchildren: ReactNode;\n}) {\n\tconst { data: dataEngine } = useScorecardData();\n\tconst value = useGetScorecardData(dataEngine);\n\n\treturn (\n\t\t<ScorecardDataFetchProgress.Provider value={value}>\n\t\t\t{children}\n\t\t</ScorecardDataFetchProgress.Provider>\n\t);\n}\n\nexport function ScorecardDataProvider({ children }: { children: ReactNode }) {\n\tconst dataEngine = useRef<ScorecardDataEngine>(createScorecardDataEngine());\n\treturn (\n\t\t<ScorecardDataContext.Provider\n\t\t\tvalue={{\n\t\t\t\tdata: dataEngine.current,\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</ScorecardDataContext.Provider>\n\t);\n}\n"]}
@@ -1,23 +1,35 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
- import { useScorecardData } from './DataProvider';
2
+ import { useScorecardDataFetchProgress } from './DataProvider';
3
3
  import { DataTableRow, LinearLoader } from '@dhis2/ui';
4
4
  import { useTableState } from './TableStateProvider';
5
+ import styles from './ScorecardTable/ScorecardTable.module.css';
5
6
 
6
- function LoadingIndicator() {
7
- const { progress } = useScorecardData();
7
+ function LoadingIndicator({
8
+ tableRef
9
+ }) {
10
+ const { progress } = useScorecardDataFetchProgress();
8
11
  const table = useTableState();
9
12
  const colSpan = table.getVisibleFlatColumns().length;
13
+ const width = tableRef.current?.parentElement?.getBoundingClientRect().width;
10
14
  if (progress === 1 || isNaN(progress)) {
11
15
  return null;
12
16
  }
13
- return /* @__PURE__ */ jsx(DataTableRow, { children: /* @__PURE__ */ jsx("td", { colSpan, children: /* @__PURE__ */ jsx(
14
- LinearLoader,
17
+ return /* @__PURE__ */ jsx(DataTableRow, { children: /* @__PURE__ */ jsx(
18
+ "td",
15
19
  {
16
- margin: "0",
17
- width: "100%",
18
- amount: (progress ?? 0) * 100
20
+ style: { position: "static", left: 0, top: 0 },
21
+ colSpan,
22
+ children: /* @__PURE__ */ jsx(
23
+ LinearLoader,
24
+ {
25
+ className: styles["loader"],
26
+ margin: "0",
27
+ width: width ? `${Math.trunc(width)}px` : "100%",
28
+ amount: (progress ?? 0) * 100
29
+ }
30
+ )
19
31
  }
20
- ) }) });
32
+ ) });
21
33
  }
22
34
 
23
35
  export { LoadingIndicator };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/Scorecard/components/LoadingIndicator.tsx"],"names":[],"mappings":"AAgBI;AAhBJ,SAAS,wBAAwB;AACjC,SAAS,cAAc,oBAAoB;AAC3C,SAAS,qBAAqB;AAEvB,SAAS,mBAAmB;AAClC,QAAM,EAAE,SAAS,IAAI,iBAAiB;AACtC,QAAM,QAAQ,cAAc;AAC5B,QAAM,UAAU,MAAM,sBAAsB,EAAE;AAE9C,MAAI,aAAa,KAAK,MAAM,QAAS,GAAG;AACvC,WAAO;AAAA,EACR;AAEA,SACC,oBAAC,gBACA,8BAAC,QAAG,SACH;AAAA,IAAC;AAAA;AAAA,MACA,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,SAAS,YAAY,KAAK;AAAA;AAAA,EAC3B,GACD,GACD;AAEF","sourcesContent":["import { useScorecardData } from \"./DataProvider\";\nimport { DataTableRow, LinearLoader } from \"@dhis2/ui\";\nimport { useTableState } from \"./TableStateProvider\";\n\nexport function LoadingIndicator() {\n\tconst { progress } = useScorecardData();\n\tconst table = useTableState();\n\tconst colSpan = table.getVisibleFlatColumns().length;\n\n\tif (progress === 1 || isNaN(progress!)) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<DataTableRow>\n\t\t\t<td colSpan={colSpan}>\n\t\t\t\t<LinearLoader\n\t\t\t\t\tmargin={\"0\"}\n\t\t\t\t\twidth={\"100%\"}\n\t\t\t\t\tamount={(progress ?? 0) * 100}\n\t\t\t\t/>\n\t\t\t</td>\n\t\t</DataTableRow>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["../../../../../src/components/Scorecard/components/LoadingIndicator.tsx"],"names":[],"mappings":"AA4BI;AA5BJ,SAAS,qCAAqC;AAC9C,SAAS,cAAc,oBAAoB;AAC3C,SAAS,qBAAqB;AAE9B,OAAO,YAAY;AAEZ,SAAS,iBAAiB;AAAA,EAChC;AACD,GAEG;AACF,QAAM,EAAE,SAAS,IAAI,8BAA8B;AACnD,QAAM,QAAQ,cAAc;AAC5B,QAAM,UAAU,MAAM,sBAAsB,EAAE;AAE9C,QAAM,QACL,SAAS,SAAS,eAAe,sBAAsB,EAAE;AAE1D,MAAI,aAAa,KAAK,MAAM,QAAS,GAAG;AACvC,WAAO;AAAA,EACR;AAEA,SACC,oBAAC,gBACA;AAAA,IAAC;AAAA;AAAA,MACA,OAAO,EAAE,UAAU,UAAU,MAAM,GAAG,KAAK,EAAE;AAAA,MAC7C;AAAA,MAEA;AAAA,QAAC;AAAA;AAAA,UACA,WAAW,OAAO,QAAQ;AAAA,UAC1B,QAAQ;AAAA,UACR,OAAO,QAAQ,GAAG,KAAK,MAAM,KAAK,CAAC,OAAO;AAAA,UAC1C,SAAS,YAAY,KAAK;AAAA;AAAA,MAC3B;AAAA;AAAA,EACD,GACD;AAEF","sourcesContent":["import { useScorecardDataFetchProgress } from \"./DataProvider\";\nimport { DataTableRow, LinearLoader } from \"@dhis2/ui\";\nimport { useTableState } from \"./TableStateProvider\";\nimport type { RefObject } from \"react\";\nimport styles from \"./ScorecardTable/ScorecardTable.module.css\";\n\nexport function LoadingIndicator({\n\ttableRef,\n}: {\n\ttableRef: RefObject<HTMLTableElement>;\n}) {\n\tconst { progress } = useScorecardDataFetchProgress();\n\tconst table = useTableState();\n\tconst colSpan = table.getVisibleFlatColumns().length;\n\n\tconst width =\n\t\ttableRef.current?.parentElement?.getBoundingClientRect().width;\n\n\tif (progress === 1 || isNaN(progress!)) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<DataTableRow>\n\t\t\t<td\n\t\t\t\tstyle={{ position: \"static\", left: 0, top: 0 }}\n\t\t\t\tcolSpan={colSpan}\n\t\t\t>\n\t\t\t\t<LinearLoader\n\t\t\t\t\tclassName={styles[\"loader\"]}\n\t\t\t\t\tmargin={\"0\"}\n\t\t\t\t\twidth={width ? `${Math.trunc(width)}px` : \"100%\"}\n\t\t\t\t\tamount={(progress ?? 0) * 100}\n\t\t\t\t/>\n\t\t\t</td>\n\t\t</DataTableRow>\n\t);\n}\n"]}
@@ -5,9 +5,10 @@ import { TableBody } from './components/TableBody';
5
5
  import { TableFoot } from './components/TableFoot';
6
6
  import { DndContext } from '@dnd-kit/core';
7
7
  import { useScorecardSetState } from '../StateProvider';
8
- import { memo, useTransition } from 'react';
8
+ import { memo, useRef, useTransition } from 'react';
9
9
 
10
10
  const ScorecardTable = memo(function TableComponent(props) {
11
+ const tableRef = useRef(null);
11
12
  const [isPending, startTransition] = useTransition();
12
13
  const updateState = useScorecardSetState();
13
14
  if (isPending) {
@@ -45,11 +46,19 @@ const ScorecardTable = memo(function TableComponent(props) {
45
46
  }
46
47
  });
47
48
  },
48
- children: /* @__PURE__ */ jsxs(DataTable, { ...props, layout: "auto", children: [
49
- /* @__PURE__ */ jsx(TableHeader, {}),
50
- /* @__PURE__ */ jsx(TableBody, {}),
51
- /* @__PURE__ */ jsx(TableFoot, {})
52
- ] })
49
+ children: /* @__PURE__ */ jsxs(
50
+ DataTable,
51
+ {
52
+ layout: "auto",
53
+ ...props,
54
+ ref: tableRef,
55
+ children: [
56
+ /* @__PURE__ */ jsx(TableHeader, {}),
57
+ /* @__PURE__ */ jsx(TableBody, { tableRef }),
58
+ /* @__PURE__ */ jsx(TableFoot, {})
59
+ ]
60
+ }
61
+ )
53
62
  }
54
63
  );
55
64
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/components/Scorecard/components/ScorecardTable/ScorecardTable.tsx"],"names":[],"mappings":"AA2BI,cA0BD,YA1BC;AA3BJ,SAAS,gBAAgB,iBAAsC;AAC/D,SAAS,mBAAmB;AAC5B,SAAS,iBAAiB;AAC1B,SAAS,iBAAiB;AAC1B,SAAS,kBAAkB;AAC3B,SAAS,4BAA4B;AACrC,SAAS,MAAM,qBAAqB;AAI7B,MAAM,iBAAiB,KAAK,SAAS,eAC3C,OACC;AACD,QAAM,CAAC,WAAW,eAAe,IAAI,cAAc;AACnD,QAAM,cAAc,qBAAqB;AAEzC,MAAI,WAAW;AACd,WACC;AAAA,MAAC;AAAA;AAAA,QACA,OAAO;AAAA,UACN,QAAQ;AAAA,UACR,OAAO;AAAA,UACP,SAAS;AAAA,UACT,YAAY;AAAA,UACZ,gBAAgB;AAAA,QACjB;AAAA,QAEA,8BAAC,kBAAe,OAAK,MAAC;AAAA;AAAA,IACvB;AAAA,EAEF;AAEA,SACC;AAAA,IAAC;AAAA;AAAA,MACA,WAAW,CAAC,UAAU;AACrB,wBAAgB,MAAM;AACrB,cAAI,aAAa;AAChB,gBAAI,CAAC,MAAM,QAAQ,MAAM,KAAK,OAAO,MAAM,OAAO,IAAI;AACrD,0BAAY,CAAC,cAAc;AAC1B,uBAAO;AAAA,kBACN,GAAG;AAAA,kBACH,SAAS;AAAA,oBACR,GAAG,UAAU;AAAA,oBACb,gBACC,CAAC,UAAU,QAAQ;AAAA,kBACrB;AAAA,gBACD;AAAA,cACD,CAAC;AAAA,YACF;AAAA,UACD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,MAEA,+BAAC,aAAW,GAAG,OAAO,QAAO,QAC5B;AAAA,4BAAC,eAAY;AAAA,QACb,oBAAC,aAAU;AAAA,QACX,oBAAC,aAAU;AAAA,SACZ;AAAA;AAAA,EACD;AAEF,CAAC","sourcesContent":["import { CircularLoader, DataTable, type DataTableProps } from \"@dhis2/ui\";\nimport { TableHeader } from \"./components/TableHeader\";\nimport { TableBody } from \"./components/TableBody\";\nimport { TableFoot } from \"./components/TableFoot\";\nimport { DndContext } from \"@dnd-kit/core\";\nimport { useScorecardSetState } from \"../StateProvider\";\nimport { memo, useTransition } from \"react\";\n\nexport interface ScorecardTableProps extends Omit<DataTableProps, \"children\"> {}\n\nexport const ScorecardTable = memo(function TableComponent(\n\tprops: ScorecardTableProps,\n) {\n\tconst [isPending, startTransition] = useTransition();\n\tconst updateState = useScorecardSetState();\n\n\tif (isPending) {\n\t\treturn (\n\t\t\t<div\n\t\t\t\tstyle={{\n\t\t\t\t\theight: \"100%\",\n\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\tdisplay: \"flex\",\n\t\t\t\t\talignItems: \"center\",\n\t\t\t\t\tjustifyContent: \"center\",\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<CircularLoader small />\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<DndContext\n\t\t\tonDragEnd={(event) => {\n\t\t\t\tstartTransition(() => {\n\t\t\t\t\tif (updateState) {\n\t\t\t\t\t\tif (!event.over || event.over.id === event.active.id) {\n\t\t\t\t\t\t\tupdateState((prevState) => {\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t...prevState,\n\t\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\t\t...prevState.options,\n\t\t\t\t\t\t\t\t\t\tshowDataInRows:\n\t\t\t\t\t\t\t\t\t\t\t!prevState.options.showDataInRows,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}}\n\t\t>\n\t\t\t<DataTable {...props} layout=\"auto\">\n\t\t\t\t<TableHeader />\n\t\t\t\t<TableBody />\n\t\t\t\t<TableFoot />\n\t\t\t</DataTable>\n\t\t</DndContext>\n\t);\n});\n"]}
1
+ {"version":3,"sources":["../../../../../../src/components/Scorecard/components/ScorecardTable/ScorecardTable.tsx"],"names":[],"mappings":"AA4BI,cA0BD,YA1BC;AA5BJ,SAAS,gBAAgB,iBAAsC;AAC/D,SAAS,mBAAmB;AAC5B,SAAS,iBAAiB;AAC1B,SAAS,iBAAiB;AAC1B,SAAS,kBAAkB;AAC3B,SAAS,4BAA4B;AACrC,SAAS,MAAM,QAAQ,qBAAqB;AAIrC,MAAM,iBAAiB,KAAK,SAAS,eAC3C,OACC;AACD,QAAM,WAAW,OAAyB,IAAI;AAC9C,QAAM,CAAC,WAAW,eAAe,IAAI,cAAc;AACnD,QAAM,cAAc,qBAAqB;AAEzC,MAAI,WAAW;AACd,WACC;AAAA,MAAC;AAAA;AAAA,QACA,OAAO;AAAA,UACN,QAAQ;AAAA,UACR,OAAO;AAAA,UACP,SAAS;AAAA,UACT,YAAY;AAAA,UACZ,gBAAgB;AAAA,QACjB;AAAA,QAEA,8BAAC,kBAAe,OAAK,MAAC;AAAA;AAAA,IACvB;AAAA,EAEF;AAEA,SACC;AAAA,IAAC;AAAA;AAAA,MACA,WAAW,CAAC,UAAU;AACrB,wBAAgB,MAAM;AACrB,cAAI,aAAa;AAChB,gBAAI,CAAC,MAAM,QAAQ,MAAM,KAAK,OAAO,MAAM,OAAO,IAAI;AACrD,0BAAY,CAAC,cAAc;AAC1B,uBAAO;AAAA,kBACN,GAAG;AAAA,kBACH,SAAS;AAAA,oBACR,GAAG,UAAU;AAAA,oBACb,gBACC,CAAC,UAAU,QAAQ;AAAA,kBACrB;AAAA,gBACD;AAAA,cACD,CAAC;AAAA,YACF;AAAA,UACD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,MAEA;AAAA,QAAC;AAAA;AAAA,UACA,QAAO;AAAA,UACN,GAAG;AAAA,UAEJ,KAAK;AAAA,UAEL;AAAA,gCAAC,eAAY;AAAA,YACb,oBAAC,aAAU,UAAoB;AAAA,YAC/B,oBAAC,aAAU;AAAA;AAAA;AAAA,MACZ;AAAA;AAAA,EACD;AAEF,CAAC","sourcesContent":["import { CircularLoader, DataTable, type DataTableProps } from \"@dhis2/ui\";\nimport { TableHeader } from \"./components/TableHeader\";\nimport { TableBody } from \"./components/TableBody\";\nimport { TableFoot } from \"./components/TableFoot\";\nimport { DndContext } from \"@dnd-kit/core\";\nimport { useScorecardSetState } from \"../StateProvider\";\nimport { memo, useRef, useTransition } from \"react\";\n\nexport interface ScorecardTableProps extends Omit<DataTableProps, \"children\"> {}\n\nexport const ScorecardTable = memo(function TableComponent(\n\tprops: ScorecardTableProps,\n) {\n\tconst tableRef = useRef<HTMLTableElement>(null);\n\tconst [isPending, startTransition] = useTransition();\n\tconst updateState = useScorecardSetState();\n\n\tif (isPending) {\n\t\treturn (\n\t\t\t<div\n\t\t\t\tstyle={{\n\t\t\t\t\theight: \"100%\",\n\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\tdisplay: \"flex\",\n\t\t\t\t\talignItems: \"center\",\n\t\t\t\t\tjustifyContent: \"center\",\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<CircularLoader small />\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<DndContext\n\t\t\tonDragEnd={(event) => {\n\t\t\t\tstartTransition(() => {\n\t\t\t\t\tif (updateState) {\n\t\t\t\t\t\tif (!event.over || event.over.id === event.active.id) {\n\t\t\t\t\t\t\tupdateState((prevState) => {\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t...prevState,\n\t\t\t\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\t\t\t\t...prevState.options,\n\t\t\t\t\t\t\t\t\t\tshowDataInRows:\n\t\t\t\t\t\t\t\t\t\t\t!prevState.options.showDataInRows,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}}\n\t\t>\n\t\t\t<DataTable\n\t\t\t\tlayout=\"auto\"\n\t\t\t\t{...props} /*\n // @ts-ignore */\n\t\t\t\tref={tableRef}\n\t\t\t>\n\t\t\t\t<TableHeader />\n\t\t\t\t<TableBody tableRef={tableRef} />\n\t\t\t\t<TableFoot />\n\t\t\t</DataTable>\n\t\t</DndContext>\n\t);\n});\n"]}
@@ -1,10 +1,10 @@
1
1
  .expandCell > td:first-child {
2
- left: auto;
2
+ left: 0;
3
3
  top: auto;
4
4
  text-align: left;
5
- width: auto;
5
+ width: 40px !important;
6
6
  background-color: rgb(243, 245, 247);
7
- position: sticky;
7
+ position: sticky !important;
8
8
  z-index: 1;
9
9
  padding: 10px 12px;
10
10
  }
@@ -26,4 +26,8 @@
26
26
  background-position: 250px 0;
27
27
  }
28
28
  }
29
+ .loader {
30
+ position: sticky !important;
31
+ left: 0;
32
+ }
29
33
  /*# sourceMappingURL=ScorecardTable.module.css.map */
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/components/Scorecard/components/ScorecardTable/ScorecardTable.module.css"],"sourcesContent":["\n.expandCell > td:first-child {\n left: auto;\n top: auto;\n text-align: left;\n width: auto;\n background-color: rgb(243, 245, 247);\n position: sticky;\n z-index: 1;\n padding: 10px 12px;\n}\n\n\n.loading-cell {\n animation: shimmer 2s infinite linear;\n background: linear-gradient(to right, #eee 40%, #ddd 50%, #eee 80%);\n background-size: 500px 100px;\n animation-name: moving-gradient;\n animation-duration: 1s;\n animation-iteration-count: infinite;\n animation-timing-function: linear;\n animation-fill-mode: forwards;\n}\n\n@-webkit-keyframes moving-gradient {\n 0% { background-position: -250px 0; }\n 100% { background-position: 250px 0; }\n}\n"],"mappings":"AACA,CAAC,WAAW,EAAE,EAAE;AACZ,QAAM;AACN,OAAK;AACL,cAAY;AACZ,SAAO;AACP,oBAAkB,IAAI,GAAG,EAAE,GAAG,EAAE;AAChC,YAAU;AACV,WAAS;AACT,WAAS,KAAK;AAClB;AAGA,CAAC;AACG,aAAW,QAAQ,GAAG,SAAS;AAC/B,cAAY,gBAAgB,GAAG,KAAK,EAAE,KAAK,GAAG,EAAE,KAAK,GAAG,EAAE,KAAK;AAC/D,mBAAiB,MAAM;AACvB,kBAAgB;AAChB,sBAAoB;AACpB,6BAA2B;AAC3B,6BAA2B;AAC3B,uBAAqB;AACzB;AAEA,mBAPoB;AAQhB;AAAK,yBAAqB,OAAO;AAAG;AACpC;AAAO,yBAAqB,MAAM;AAAG;AACzC;","names":[]}
1
+ {"version":3,"sources":["../../../../../../src/components/Scorecard/components/ScorecardTable/ScorecardTable.module.css"],"sourcesContent":["\n.expandCell > td:first-child {\n left: 0;\n top: auto;\n text-align: left;\n width: 40px !important;\n background-color: rgb(243, 245, 247);\n position: sticky !important;\n z-index: 1;\n padding: 10px 12px;\n}\n\n\n.loading-cell {\n animation: shimmer 2s infinite linear;\n background: linear-gradient(to right, #eee 40%, #ddd 50%, #eee 80%);\n background-size: 500px 100px;\n animation-name: moving-gradient;\n animation-duration: 1s;\n animation-iteration-count: infinite;\n animation-timing-function: linear;\n animation-fill-mode: forwards;\n}\n\n@-webkit-keyframes moving-gradient {\n 0% {\n background-position: -250px 0;\n }\n 100% {\n background-position: 250px 0;\n }\n}\n\n.loader {\n position: sticky !important;\n left: 0;\n}\n\n\n"],"mappings":"AACA,CAAC,WAAW,EAAE,EAAE;AACZ,QAAM;AACN,OAAK;AACL,cAAY;AACZ,SAAO;AACP,oBAAkB,IAAI,GAAG,EAAE,GAAG,EAAE;AAChC,YAAU;AACV,WAAS;AACT,WAAS,KAAK;AAClB;AAGA,CAAC;AACG,aAAW,QAAQ,GAAG,SAAS;AAC/B,cAAY,gBAAgB,GAAG,KAAK,EAAE,KAAK,GAAG,EAAE,KAAK,GAAG,EAAE,KAAK;AAC/D,mBAAiB,MAAM;AACvB,kBAAgB;AAChB,sBAAoB;AACpB,6BAA2B;AAC3B,6BAA2B;AAC3B,uBAAqB;AACzB;AAEA,mBAPoB;AAQhB;AACI,yBAAqB,OAAO;AAChC;AACA;AACI,yBAAqB,MAAM;AAC/B;AACJ;AAEA,CAAC;AACG,YAAU;AACV,QAAM;AACV;","names":[]}