@hisptz/dhis2-scorecard 1.1.9 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Scorecard.js +2 -2
- package/dist/Scorecard.js.map +1 -1
- package/dist/components/ColGroup.js +3 -9
- package/dist/components/ColGroup.js.map +1 -1
- package/dist/components/ScorecardHeader.js +8 -7
- package/dist/components/ScorecardHeader.js.map +1 -1
- package/dist/components/ScorecardLegendsView/ScorecardLegendsView.js +2 -2
- package/dist/components/ScorecardLegendsView/ScorecardLegendsView.js.map +1 -1
- package/dist/components/ScorecardLegendsView/components/ArrowLegendView.js +3 -3
- package/dist/components/ScorecardLegendsView/components/ArrowLegendView.js.map +1 -1
- package/dist/components/ScorecardPrint/components/ScorecardPreviewArea.js +32 -37
- package/dist/components/ScorecardPrint/components/ScorecardPreviewArea.js.map +1 -1
- package/dist/components/ScorecardTable/ScorecardTable.js +6 -8
- package/dist/components/ScorecardTable/ScorecardTable.js.map +1 -1
- package/dist/components/ScorecardTable/components/AverageCell.js +2 -5
- package/dist/components/ScorecardTable/components/AverageCell.js.map +1 -1
- package/dist/components/ScorecardTable/components/DataFooterCell.js +2 -5
- package/dist/components/ScorecardTable/components/DataFooterCell.js.map +1 -1
- package/dist/components/ScorecardTable/components/DataValue.js +5 -8
- package/dist/components/ScorecardTable/components/DataValue.js.map +1 -1
- package/dist/components/ScorecardTable/components/ExpandedScorecardTable.js +6 -4
- package/dist/components/ScorecardTable/components/ExpandedScorecardTable.js.map +1 -1
- package/dist/components/ScorecardTable/components/LinkedCell.js +2 -2
- package/dist/components/ScorecardTable/components/LinkedCell.js.map +1 -1
- package/dist/components/ScorecardTable/components/TableFoot.js +2 -5
- package/dist/components/ScorecardTable/components/TableFoot.js.map +1 -1
- package/dist/components/ScorecardTable/components/TableHeader/components/AverageHeaderCell.js +4 -8
- package/dist/components/ScorecardTable/components/TableHeader/components/AverageHeaderCell.js.map +1 -1
- package/dist/components/ScorecardTable/components/TableHeader/components/DataHeaderCell.js +2 -5
- package/dist/components/ScorecardTable/components/TableHeader/components/DataHeaderCell.js.map +1 -1
- package/dist/components/ScorecardTable/components/TableHeader/components/FilterArea.js +2 -5
- package/dist/components/ScorecardTable/components/TableHeader/components/FilterArea.js.map +1 -1
- package/dist/components/ScorecardTable/components/TableHeader/components/LabelCell.js +4 -13
- package/dist/components/ScorecardTable/components/TableHeader/components/LabelCell.js.map +1 -1
- package/dist/components/ScorecardTable/components/TableHeader/components/MetaHeaderCell.js +4 -6
- package/dist/components/ScorecardTable/components/TableHeader/components/MetaHeaderCell.js.map +1 -1
- package/dist/components/StateProvider.js +40 -27
- package/dist/components/StateProvider.js.map +1 -1
- package/dist/esm/Scorecard.js +1 -1
- package/dist/esm/Scorecard.js.map +1 -1
- package/dist/esm/components/ColGroup.js +3 -9
- package/dist/esm/components/ColGroup.js.map +1 -1
- package/dist/esm/components/ScorecardHeader.js +8 -7
- package/dist/esm/components/ScorecardHeader.js.map +1 -1
- package/dist/esm/components/ScorecardLegendsView/ScorecardLegendsView.js +2 -2
- package/dist/esm/components/ScorecardLegendsView/ScorecardLegendsView.js.map +1 -1
- package/dist/esm/components/ScorecardLegendsView/components/ArrowLegendView.js +3 -3
- package/dist/esm/components/ScorecardLegendsView/components/ArrowLegendView.js.map +1 -1
- package/dist/esm/components/ScorecardPrint/components/ScorecardPreviewArea.js +32 -37
- package/dist/esm/components/ScorecardPrint/components/ScorecardPreviewArea.js.map +1 -1
- package/dist/esm/components/ScorecardTable/ScorecardTable.js +6 -8
- package/dist/esm/components/ScorecardTable/ScorecardTable.js.map +1 -1
- package/dist/esm/components/ScorecardTable/components/AverageCell.js +2 -5
- package/dist/esm/components/ScorecardTable/components/AverageCell.js.map +1 -1
- package/dist/esm/components/ScorecardTable/components/DataFooterCell.js +2 -5
- package/dist/esm/components/ScorecardTable/components/DataFooterCell.js.map +1 -1
- package/dist/esm/components/ScorecardTable/components/DataValue.js +5 -8
- package/dist/esm/components/ScorecardTable/components/DataValue.js.map +1 -1
- package/dist/esm/components/ScorecardTable/components/ExpandedScorecardTable.js +6 -4
- package/dist/esm/components/ScorecardTable/components/ExpandedScorecardTable.js.map +1 -1
- package/dist/esm/components/ScorecardTable/components/LinkedCell.js +2 -2
- package/dist/esm/components/ScorecardTable/components/LinkedCell.js.map +1 -1
- package/dist/esm/components/ScorecardTable/components/TableFoot.js +2 -5
- package/dist/esm/components/ScorecardTable/components/TableFoot.js.map +1 -1
- package/dist/esm/components/ScorecardTable/components/TableHeader/components/AverageHeaderCell.js +4 -8
- package/dist/esm/components/ScorecardTable/components/TableHeader/components/AverageHeaderCell.js.map +1 -1
- package/dist/esm/components/ScorecardTable/components/TableHeader/components/DataHeaderCell.js +2 -5
- package/dist/esm/components/ScorecardTable/components/TableHeader/components/DataHeaderCell.js.map +1 -1
- package/dist/esm/components/ScorecardTable/components/TableHeader/components/FilterArea.js +2 -5
- package/dist/esm/components/ScorecardTable/components/TableHeader/components/FilterArea.js.map +1 -1
- package/dist/esm/components/ScorecardTable/components/TableHeader/components/LabelCell.js +4 -13
- package/dist/esm/components/ScorecardTable/components/TableHeader/components/LabelCell.js.map +1 -1
- package/dist/esm/components/ScorecardTable/components/TableHeader/components/MetaHeaderCell.js +4 -6
- package/dist/esm/components/ScorecardTable/components/TableHeader/components/MetaHeaderCell.js.map +1 -1
- package/dist/esm/components/StateProvider.js +40 -29
- package/dist/esm/components/StateProvider.js.map +1 -1
- package/dist/esm/hooks/columns.js +8 -21
- package/dist/esm/hooks/columns.js.map +1 -1
- package/dist/esm/hooks/data.js +1 -1
- package/dist/esm/hooks/data.js.map +1 -1
- package/dist/esm/hooks/metadata.js +3 -7
- package/dist/esm/hooks/metadata.js.map +1 -1
- package/dist/esm/hooks/table.js +12 -34
- package/dist/esm/hooks/table.js.map +1 -1
- package/dist/esm/index.js +0 -1
- package/dist/esm/utils/dimensionState.js +133 -0
- package/dist/esm/utils/dimensionState.js.map +1 -0
- package/dist/esm/utils/viewState.js +85 -0
- package/dist/esm/utils/viewState.js.map +1 -0
- package/dist/hooks/columns.js +8 -21
- package/dist/hooks/columns.js.map +1 -1
- package/dist/hooks/data.js +1 -1
- package/dist/hooks/data.js.map +1 -1
- package/dist/hooks/metadata.js +3 -7
- package/dist/hooks/metadata.js.map +1 -1
- package/dist/hooks/table.js +12 -34
- package/dist/hooks/table.js.map +1 -1
- package/dist/index.js +0 -7
- package/dist/types/components/ColGroup.d.ts.map +1 -1
- package/dist/types/components/ScorecardHeader.d.ts.map +1 -1
- package/dist/types/components/ScorecardLegendsView/components/ArrowLegendView.d.ts +1 -1
- package/dist/types/components/ScorecardLegendsView/components/ArrowLegendView.d.ts.map +1 -1
- package/dist/types/components/ScorecardPrint/components/ScorecardPreviewArea.d.ts.map +1 -1
- package/dist/types/components/ScorecardTable/ScorecardTable.d.ts.map +1 -1
- package/dist/types/components/ScorecardTable/components/AverageCell.d.ts.map +1 -1
- package/dist/types/components/ScorecardTable/components/DataFooterCell.d.ts.map +1 -1
- package/dist/types/components/ScorecardTable/components/DataValue.d.ts.map +1 -1
- package/dist/types/components/ScorecardTable/components/ExpandedScorecardTable.d.ts.map +1 -1
- package/dist/types/components/ScorecardTable/components/TableFoot.d.ts.map +1 -1
- package/dist/types/components/ScorecardTable/components/TableHeader/components/AverageHeaderCell.d.ts.map +1 -1
- package/dist/types/components/ScorecardTable/components/TableHeader/components/DataHeaderCell.d.ts.map +1 -1
- package/dist/types/components/ScorecardTable/components/TableHeader/components/FilterArea.d.ts.map +1 -1
- package/dist/types/components/ScorecardTable/components/TableHeader/components/LabelCell.d.ts.map +1 -1
- package/dist/types/components/ScorecardTable/components/TableHeader/components/MetaHeaderCell.d.ts.map +1 -1
- package/dist/types/components/StateProvider.d.ts +34 -2
- package/dist/types/components/StateProvider.d.ts.map +1 -1
- package/dist/types/hooks/columns.d.ts.map +1 -1
- package/dist/types/hooks/metadata.d.ts.map +1 -1
- package/dist/types/hooks/table.d.ts.map +1 -1
- package/dist/types/index.d.ts +0 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/utils/dimensionState.d.ts +62 -0
- package/dist/types/utils/dimensionState.d.ts.map +1 -0
- package/dist/types/utils/viewState.d.ts +34 -0
- package/dist/types/utils/viewState.d.ts.map +1 -0
- package/dist/utils/dimensionState.js +139 -0
- package/dist/utils/dimensionState.js.map +1 -0
- package/dist/utils/viewState.js +90 -0
- package/dist/utils/viewState.js.map +1 -0
- package/package.json +7 -8
- package/dist/esm/hooks/period.js +0 -13
- package/dist/esm/hooks/period.js.map +0 -1
- package/dist/esm/state/index.js +0 -53
- package/dist/esm/state/index.js.map +0 -1
- package/dist/esm/utils/engine.js +0 -18
- package/dist/esm/utils/engine.js.map +0 -1
- package/dist/hooks/period.js +0 -15
- package/dist/hooks/period.js.map +0 -1
- package/dist/state/index.js +0 -63
- package/dist/state/index.js.map +0 -1
- package/dist/types/hooks/period.d.ts +0 -2
- package/dist/types/hooks/period.d.ts.map +0 -1
- package/dist/types/state/index.d.ts +0 -109
- package/dist/types/state/index.d.ts.map +0 -1
- package/dist/types/utils/engine.d.ts +0 -14
- package/dist/types/utils/engine.d.ts.map +0 -1
- package/dist/utils/engine.js +0 -20
- package/dist/utils/engine.js.map +0 -1
package/dist/hooks/table.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/hooks/table.ts"],"names":["meanBy","emptyRows","isEmpty","getAverageValue","useScorecardMeta","useScorecardData","useScorecardStateSelectorValue","useScorecardConfig","useState","useMemo","rows","getRowsFromMeta","useEffect","useCallback","useTableColumns","getCoreRowModel","getFilteredRowModel","getExpandedRowModel","getPaginationRowModel","getSortedRowModel"],"mappings":"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","file":"table.js","sourcesContent":["import {\n\ttype ColumnFiltersState,\n\ttype ExpandedState,\n\tgetCoreRowModel,\n\tgetExpandedRowModel,\n\tgetFilteredRowModel,\n\tgetPaginationRowModel,\n\tgetSortedRowModel,\n\ttype PaginationState,\n\ttype Row,\n\ttype SortingState,\n\ttype TableOptions,\n\ttype VisibilityState,\n} from \"@tanstack/react-table\";\nimport { useTableColumns } from \"./columns\";\nimport type {\n\tScorecardTableData,\n\tScorecardViewOptions,\n} from \"../schemas/config\";\nimport { useCallback, useEffect, useMemo, useState } from \"react\";\nimport {\n\ttype ScorecardMeta,\n\tuseScorecardConfig,\n\tuseScorecardData,\n\tuseScorecardMeta,\n} from \"../components\";\nimport { type AnalyticsData, getRowsFromMeta } from \"../utils/data\";\nimport { isEmpty, meanBy } from \"lodash\";\nimport type { ScorecardDataEngine } from \"../utils/dataEngine\";\nimport { getAverageValue } from \"../utils/columns\";\nimport { useScorecardStateSelectorValue } from \"../state\";\n\nexport function getRowValues({\n\tdata,\n\tshowDataInRows,\n\trow,\n}: {\n\trow: ScorecardTableData;\n\tdata: AnalyticsData[];\n\tshowDataInRows: boolean;\n}): AnalyticsData[] {\n\treturn data.filter((datum) => {\n\t\tif (showDataInRows) {\n\t\t\treturn row\n\t\t\t\t.dataHolder!.dataSources.map(({ id }) => id)\n\t\t\t\t.includes(datum.dx!);\n\t\t}\n\t\treturn datum.ou === row.orgUnit!.uid;\n\t});\n}\n\nexport function filterRows({\n\trows,\n\temptyRows,\n\tdataEngine,\n\tshowDataInRows,\n\taverageDisplayType,\n\tmeta,\n}: {\n\temptyRows: ScorecardViewOptions[\"emptyRows\"];\n\tshowDataInRows: boolean;\n\taverageDisplayType: ScorecardViewOptions[\"averageDisplayType\"];\n\tdataEngine: ScorecardDataEngine;\n\trows: ScorecardTableData[];\n\tmeta: ScorecardMeta;\n}) {\n\tif (!dataEngine.isDone) {\n\t\treturn [];\n\t}\n\tconst hiddenRows: number[] = [];\n\tconst rowsWithDataValues = rows.map((row, index) => {\n\t\tconst values = getRowValues({\n\t\t\trow,\n\t\t\tdata: dataEngine.data,\n\t\t\tshowDataInRows,\n\t\t});\n\t\tconst average = meanBy(values, ({ value }) => parseFloat(value!));\n\t\treturn {\n\t\t\trow,\n\t\t\tindex,\n\t\t\tvalues,\n\t\t\taverage,\n\t\t};\n\t});\n\tif (!emptyRows) {\n\t\t//Filter out all e\n\t\tconst emptyRows = rowsWithDataValues\n\t\t\t.filter(({ values }) => isEmpty(values))\n\t\t\t.map(({ index }) => index);\n\t\thiddenRows.push(...emptyRows);\n\t}\n\n\tif (averageDisplayType !== \"ALL\") {\n\t\tconst average = getAverageValue({\n\t\t\tdataValues: dataEngine.data,\n\t\t\tmeta,\n\t\t});\n\t\tif (averageDisplayType === \"BELOW_AVERAGE\") {\n\t\t\tconst aboveAverageRows = rowsWithDataValues\n\t\t\t\t.filter(({ average: rowAverage }) => rowAverage > average)\n\t\t\t\t.map(({ index }) => index);\n\t\t\thiddenRows.push(...aboveAverageRows);\n\t\t} else {\n\t\t\tconst belowAverageRows = rowsWithDataValues\n\t\t\t\t.filter(({ average: rowAverage }) => rowAverage < average)\n\t\t\t\t.map(({ index }) => index);\n\t\t\thiddenRows.push(...belowAverageRows);\n\t\t}\n\t}\n\n\treturn hiddenRows;\n}\n\nexport function useTableRows(): ScorecardTableData[] {\n\tconst meta = useScorecardMeta();\n\tconst { data: dataEngine } = useScorecardData();\n\tconst showDataInRows = useScorecardStateSelectorValue<boolean>([\n\t\t\"options\",\n\t\t\"showDataInRows\",\n\t]);\n\tconst emptyRows = useScorecardStateSelectorValue<boolean>([\n\t\t\"options\",\n\t\t\"emptyRows\",\n\t]);\n\tconst averageDisplayType = useScorecardStateSelectorValue<\n\t\tScorecardViewOptions[\"averageDisplayType\"]\n\t>([\"options\", \"averageDisplayType\"]);\n\n\tconst config = useScorecardConfig();\n\n\tconst [hiddenRowIndexes, setHiddenRowIndexes] = useState<number[]>([]);\n\n\tif (meta == null) return [];\n\n\tconst rows = useMemo(() => {\n\t\tconst rows = getRowsFromMeta({\n\t\t\tmeta,\n\t\t\tshowDataInRows,\n\t\t\tconfig,\n\t\t});\n\n\t\tif (isEmpty(hiddenRowIndexes)) {\n\t\t\treturn rows;\n\t\t}\n\n\t\treturn rows.filter((_, index) => !hiddenRowIndexes.includes(index));\n\t}, [meta, showDataInRows, config, hiddenRowIndexes]);\n\n\tuseEffect(() => {\n\t\tconst listener = (completed: boolean) => {\n\t\t\tif (completed) {\n\t\t\t\tsetHiddenRowIndexes(\n\t\t\t\t\tfilterRows({\n\t\t\t\t\t\tmeta,\n\t\t\t\t\t\tdataEngine,\n\t\t\t\t\t\tshowDataInRows,\n\t\t\t\t\t\trows,\n\t\t\t\t\t\taverageDisplayType,\n\t\t\t\t\t\temptyRows,\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t}\n\t\t};\n\t\tif (dataEngine.isDone) {\n\t\t\tsetHiddenRowIndexes(\n\t\t\t\tfilterRows({\n\t\t\t\t\tmeta,\n\t\t\t\t\tdataEngine,\n\t\t\t\t\tshowDataInRows,\n\t\t\t\t\trows,\n\t\t\t\t\taverageDisplayType,\n\t\t\t\t\temptyRows,\n\t\t\t\t}),\n\t\t\t);\n\t\t} else {\n\t\t\treturn dataEngine.addOnCompleteListener(listener);\n\t\t}\n\t}, [averageDisplayType, emptyRows, showDataInRows]);\n\n\treturn rows;\n}\n\nexport function useColumnVisibility() {\n\tconst showAverageColumn = useScorecardStateSelectorValue<boolean>([\n\t\t\"options\",\n\t\t\"averageColumn\",\n\t]);\n\tconst showItemNumber = useScorecardStateSelectorValue<boolean>([\n\t\t\"options\",\n\t\t\"itemNumber\",\n\t]);\n\tconst showDataInRows = useScorecardStateSelectorValue<boolean>([\n\t\t\"options\",\n\t\t\"showDataInRows\",\n\t]);\n\n\tconst disableExpanding =\n\t\tuseScorecardStateSelectorValue<boolean>([\n\t\t\t\"options\",\n\t\t\t\"disableExpanding\",\n\t\t]) ?? false;\n\n\tconst [columnVisibility, setColumnVisibility] = useState<VisibilityState>({\n\t\taverage: showAverageColumn,\n\t\tcount: showItemNumber,\n\t\texpand: !disableExpanding,\n\t});\n\n\tuseEffect(() => {\n\t\tsetColumnVisibility({\n\t\t\taverage: showAverageColumn,\n\t\t\tcount: showItemNumber,\n\t\t\texpand: !disableExpanding && !showDataInRows,\n\t\t});\n\t}, [showAverageColumn, showItemNumber, disableExpanding, showDataInRows]);\n\n\treturn {\n\t\tcolumnVisibility,\n\t\tsetColumnVisibility,\n\t};\n}\n\nexport function useRowExpanding() {\n\tconst [expanded, setExpanded] = useState<ExpandedState>({});\n\tconst disableExpanding =\n\t\tuseScorecardStateSelectorValue<boolean>([\n\t\t\t\"options\",\n\t\t\t\"disableExpanding\",\n\t\t]) ?? false;\n\n\tconst getRowCanExpand = useCallback((row: Row<ScorecardTableData>) => {\n\t\tconst expandCell = row\n\t\t\t.getVisibleCells()\n\t\t\t.find(({ id }) => id.includes(\"expand\"));\n\n\t\tif (!expandCell) return false;\n\t\treturn expandCell.getValue() as boolean;\n\t}, []);\n\n\treturn {\n\t\texpanded,\n\t\tonExpandedChange: disableExpanding ? undefined : setExpanded,\n\t\tgetRowCanExpand,\n\t};\n}\n\nexport function useTableSetup(): TableOptions<ScorecardTableData> {\n\tconst [columnFilters, setColumnFilters] = useState<ColumnFiltersState>([]);\n\tconst disablePagination = useScorecardStateSelectorValue<boolean>([\n\t\t\"options\",\n\t\t\"disablePagination\",\n\t]);\n\tconst [pagination, setPagination] = useState<PaginationState>({\n\t\tpageSize: 50,\n\t\tpageIndex: 0,\n\t});\n\n\tconst { columnVisibility, setColumnVisibility } = useColumnVisibility();\n\tconst { expanded, onExpandedChange, getRowCanExpand } = useRowExpanding();\n\n\tconst [sorting, setSorting] = useState<SortingState>([]);\n\tconst columns = useTableColumns();\n\tconst data = useTableRows();\n\n\treturn useMemo(\n\t\t() => ({\n\t\t\tcolumns,\n\t\t\tdata,\n\t\t\tstate: {\n\t\t\t\tcolumnFilters,\n\t\t\t\tsorting,\n\t\t\t\tcolumnVisibility,\n\t\t\t\texpanded,\n\t\t\t\t...(disablePagination ? {} : { pagination }),\n\t\t\t},\n\t\t\tmeta: {\n\t\t\t\tdisablePagination,\n\t\t\t},\n\t\t\tautoResetPageIndex: true,\n\t\t\tonExpandedChange: onExpandedChange,\n\t\t\trowCount: data.length,\n\t\t\tgetRowCanExpand,\n\t\t\tonColumnFiltersChange: setColumnFilters,\n\t\t\tonSortingChange: setSorting,\n\t\t\tgetCoreRowModel: getCoreRowModel(),\n\t\t\tgetFilteredRowModel: getFilteredRowModel(),\n\t\t\tgetExpandedRowModel: getExpandedRowModel(),\n\t\t\tgetPaginationRowModel: disablePagination\n\t\t\t\t? undefined\n\t\t\t\t: getPaginationRowModel(),\n\t\t\tgetSortedRowModel: getSortedRowModel(),\n\t\t\tonColumnVisibilityChange: setColumnVisibility,\n\t\t\tonPaginationChange: disablePagination ? undefined : setPagination,\n\t\t}),\n\t\t[\n\t\t\tcolumns,\n\t\t\tdata,\n\t\t\tcolumnFilters,\n\t\t\tsorting,\n\t\t\tcolumnVisibility,\n\t\t\tpagination,\n\t\t\tgetRowCanExpand,\n\t\t\texpanded,\n\t\t],\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/hooks/table.ts"],"names":["meanBy","emptyRows","isEmpty","getAverageValue","useScorecardMeta","useScorecardData","useScorecardViewStateValue","useScorecardConfig","useState","useMemo","rows","getRowsFromMeta","useEffect","useCallback","useTableColumns","getCoreRowModel","getFilteredRowModel","getExpandedRowModel","getPaginationRowModel","getSortedRowModel"],"mappings":"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","file":"table.js","sourcesContent":["import {\n\ttype ColumnFiltersState,\n\ttype ExpandedState,\n\tgetCoreRowModel,\n\tgetExpandedRowModel,\n\tgetFilteredRowModel,\n\tgetPaginationRowModel,\n\tgetSortedRowModel,\n\ttype PaginationState,\n\ttype Row,\n\ttype SortingState,\n\ttype TableOptions,\n\ttype VisibilityState,\n} from \"@tanstack/react-table\";\nimport { useTableColumns } from \"./columns\";\nimport type {\n\tScorecardTableData,\n\tScorecardViewOptions,\n} from \"../schemas/config\";\nimport { useCallback, useEffect, useMemo, useState } from \"react\";\nimport {\n\ttype ScorecardMeta,\n\tuseScorecardConfig,\n\tuseScorecardData,\n\tuseScorecardMeta,\n} from \"../components\";\nimport { type AnalyticsData, getRowsFromMeta } from \"../utils/data\";\nimport { isEmpty, meanBy } from \"lodash\";\nimport type { ScorecardDataEngine } from \"../utils/dataEngine\";\nimport { getAverageValue } from \"../utils/columns\";\nimport { useScorecardViewStateValue } from \"../utils/viewState\";\n\nexport function getRowValues({\n\tdata,\n\tshowDataInRows,\n\trow,\n}: {\n\trow: ScorecardTableData;\n\tdata: AnalyticsData[];\n\tshowDataInRows: boolean;\n}): AnalyticsData[] {\n\treturn data.filter((datum) => {\n\t\tif (showDataInRows) {\n\t\t\treturn row\n\t\t\t\t.dataHolder!.dataSources.map(({ id }) => id)\n\t\t\t\t.includes(datum.dx!);\n\t\t}\n\t\treturn datum.ou === row.orgUnit!.uid;\n\t});\n}\n\nexport function filterRows({\n\trows,\n\temptyRows,\n\tdataEngine,\n\tshowDataInRows,\n\taverageDisplayType,\n\tmeta,\n}: {\n\temptyRows: ScorecardViewOptions[\"emptyRows\"];\n\tshowDataInRows: boolean;\n\taverageDisplayType: ScorecardViewOptions[\"averageDisplayType\"];\n\tdataEngine: ScorecardDataEngine;\n\trows: ScorecardTableData[];\n\tmeta: ScorecardMeta;\n}) {\n\tif (!dataEngine.isDone) {\n\t\treturn [];\n\t}\n\tconst hiddenRows: number[] = [];\n\tconst rowsWithDataValues = rows.map((row, index) => {\n\t\tconst values = getRowValues({\n\t\t\trow,\n\t\t\tdata: dataEngine.data,\n\t\t\tshowDataInRows,\n\t\t});\n\t\tconst average = meanBy(values, ({ value }) => parseFloat(value!));\n\t\treturn {\n\t\t\trow,\n\t\t\tindex,\n\t\t\tvalues,\n\t\t\taverage,\n\t\t};\n\t});\n\tif (!emptyRows) {\n\t\t//Filter out all e\n\t\tconst emptyRows = rowsWithDataValues\n\t\t\t.filter(({ values }) => isEmpty(values))\n\t\t\t.map(({ index }) => index);\n\t\thiddenRows.push(...emptyRows);\n\t}\n\n\tif (averageDisplayType !== \"ALL\") {\n\t\tconst average = getAverageValue({\n\t\t\tdataValues: dataEngine.data,\n\t\t\tmeta,\n\t\t});\n\t\tif (averageDisplayType === \"BELOW_AVERAGE\") {\n\t\t\tconst aboveAverageRows = rowsWithDataValues\n\t\t\t\t.filter(({ average: rowAverage }) => rowAverage > average)\n\t\t\t\t.map(({ index }) => index);\n\t\t\thiddenRows.push(...aboveAverageRows);\n\t\t} else {\n\t\t\tconst belowAverageRows = rowsWithDataValues\n\t\t\t\t.filter(({ average: rowAverage }) => rowAverage < average)\n\t\t\t\t.map(({ index }) => index);\n\t\t\thiddenRows.push(...belowAverageRows);\n\t\t}\n\t}\n\n\treturn hiddenRows;\n}\n\nexport function useTableRows(): ScorecardTableData[] {\n\tconst meta = useScorecardMeta();\n\tconst { data: dataEngine } = useScorecardData();\n\tconst showDataInRows =\n\t\tuseScorecardViewStateValue<boolean>(\"showDataInRows\") ?? false;\n\tconst emptyRows = useScorecardViewStateValue<boolean>(\"emptyRows\");\n\tconst averageDisplayType =\n\t\tuseScorecardViewStateValue<ScorecardViewOptions[\"averageDisplayType\"]>(\n\t\t\t\"averageDisplayType\",\n\t\t);\n\n\tconst config = useScorecardConfig();\n\n\tconst [hiddenRowIndexes, setHiddenRowIndexes] = useState<number[]>([]);\n\n\tif (meta == null) return [];\n\n\tconst rows = useMemo(() => {\n\t\tconst rows = getRowsFromMeta({\n\t\t\tmeta,\n\t\t\tshowDataInRows,\n\t\t\tconfig,\n\t\t});\n\n\t\tif (isEmpty(hiddenRowIndexes)) {\n\t\t\treturn rows;\n\t\t}\n\n\t\treturn rows.filter((_, index) => !hiddenRowIndexes.includes(index));\n\t}, [meta, showDataInRows, config, hiddenRowIndexes]);\n\n\tuseEffect(() => {\n\t\tconst listener = (completed: boolean) => {\n\t\t\tif (completed) {\n\t\t\t\tsetHiddenRowIndexes(\n\t\t\t\t\tfilterRows({\n\t\t\t\t\t\tmeta,\n\t\t\t\t\t\tdataEngine,\n\t\t\t\t\t\tshowDataInRows,\n\t\t\t\t\t\trows,\n\t\t\t\t\t\taverageDisplayType,\n\t\t\t\t\t\temptyRows,\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t}\n\t\t};\n\t\tif (dataEngine.isDone) {\n\t\t\tsetHiddenRowIndexes(\n\t\t\t\tfilterRows({\n\t\t\t\t\tmeta,\n\t\t\t\t\tdataEngine,\n\t\t\t\t\tshowDataInRows,\n\t\t\t\t\trows,\n\t\t\t\t\taverageDisplayType,\n\t\t\t\t\temptyRows,\n\t\t\t\t}),\n\t\t\t);\n\t\t} else {\n\t\t\treturn dataEngine.addOnCompleteListener(listener);\n\t\t}\n\t}, [averageDisplayType, emptyRows, showDataInRows]);\n\n\treturn rows;\n}\n\nexport function useColumnVisibility() {\n\tconst showAverageColumn =\n\t\tuseScorecardViewStateValue<boolean>(\"averageColumn\") ?? false;\n\tconst showItemNumber =\n\t\tuseScorecardViewStateValue<boolean>(\"itemNumber\") ?? false;\n\tconst showDataInRows =\n\t\tuseScorecardViewStateValue<boolean>(\"showDataInRows\");\n\n\tconst disableExpanding =\n\t\tuseScorecardViewStateValue<boolean>(\"disableExpanding\") ?? false;\n\n\tconst [columnVisibility, setColumnVisibility] = useState<VisibilityState>({\n\t\taverage: showAverageColumn,\n\t\tcount: showItemNumber,\n\t\texpand: !disableExpanding,\n\t});\n\n\tuseEffect(() => {\n\t\tsetColumnVisibility({\n\t\t\taverage: showAverageColumn,\n\t\t\tcount: showItemNumber,\n\t\t\texpand: !disableExpanding && !showDataInRows,\n\t\t});\n\t}, [showAverageColumn, showItemNumber, disableExpanding, showDataInRows]);\n\n\treturn {\n\t\tcolumnVisibility,\n\t\tsetColumnVisibility,\n\t};\n}\n\nexport function useRowExpanding() {\n\tconst [expanded, setExpanded] = useState<ExpandedState>({});\n\tconst disableExpanding =\n\t\tuseScorecardViewStateValue<boolean>(\"disableExpanding\") ?? false;\n\n\tconst getRowCanExpand = useCallback((row: Row<ScorecardTableData>) => {\n\t\tconst expandCell = row\n\t\t\t.getVisibleCells()\n\t\t\t.find(({ id }) => id.includes(\"expand\"));\n\n\t\tif (!expandCell) return false;\n\t\treturn expandCell.getValue() as boolean;\n\t}, []);\n\n\treturn {\n\t\texpanded,\n\t\tonExpandedChange: disableExpanding ? undefined : setExpanded,\n\t\tgetRowCanExpand,\n\t};\n}\n\nexport function useTableSetup(): TableOptions<ScorecardTableData> {\n\tconst [columnFilters, setColumnFilters] = useState<ColumnFiltersState>([]);\n\tconst disablePagination =\n\t\tuseScorecardViewStateValue<boolean>(\"disablePagination\");\n\tconst [pagination, setPagination] = useState<PaginationState>({\n\t\tpageSize: 50,\n\t\tpageIndex: 0,\n\t});\n\n\tconst { columnVisibility, setColumnVisibility } = useColumnVisibility();\n\tconst { expanded, onExpandedChange, getRowCanExpand } = useRowExpanding();\n\n\tconst [sorting, setSorting] = useState<SortingState>([]);\n\tconst columns = useTableColumns();\n\tconst data = useTableRows();\n\n\treturn useMemo(\n\t\t() => ({\n\t\t\tcolumns,\n\t\t\tdata,\n\t\t\tstate: {\n\t\t\t\tcolumnFilters,\n\t\t\t\tsorting,\n\t\t\t\tcolumnVisibility,\n\t\t\t\texpanded,\n\t\t\t\t...(disablePagination ? {} : { pagination }),\n\t\t\t},\n\t\t\tmeta: {\n\t\t\t\tdisablePagination,\n\t\t\t},\n\t\t\tautoResetPageIndex: true,\n\t\t\tonExpandedChange: onExpandedChange,\n\t\t\trowCount: data.length,\n\t\t\tgetRowCanExpand,\n\t\t\tonColumnFiltersChange: setColumnFilters,\n\t\t\tonSortingChange: setSorting,\n\t\t\tgetCoreRowModel: getCoreRowModel(),\n\t\t\tgetFilteredRowModel: getFilteredRowModel(),\n\t\t\tgetExpandedRowModel: getExpandedRowModel(),\n\t\t\tgetPaginationRowModel: disablePagination\n\t\t\t\t? undefined\n\t\t\t\t: getPaginationRowModel(),\n\t\t\tgetSortedRowModel: getSortedRowModel(),\n\t\t\tonColumnVisibilityChange: setColumnVisibility,\n\t\t\tonPaginationChange: disablePagination ? undefined : setPagination,\n\t\t}),\n\t\t[\n\t\t\tcolumns,\n\t\t\tdata,\n\t\t\tcolumnFilters,\n\t\t\tsorting,\n\t\t\tcolumnVisibility,\n\t\t\tpagination,\n\t\t\tgetRowCanExpand,\n\t\t\texpanded,\n\t\t],\n\t);\n}\n"]}
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,6 @@ var config = require('./schemas/config');
|
|
|
5
5
|
var components = require('./components');
|
|
6
6
|
var hooks = require('./hooks');
|
|
7
7
|
var utils = require('./utils');
|
|
8
|
-
var state = require('./state');
|
|
9
8
|
|
|
10
9
|
|
|
11
10
|
|
|
@@ -39,11 +38,5 @@ Object.keys(utils).forEach(function (k) {
|
|
|
39
38
|
get: function () { return utils[k]; }
|
|
40
39
|
});
|
|
41
40
|
});
|
|
42
|
-
Object.keys(state).forEach(function (k) {
|
|
43
|
-
if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
|
|
44
|
-
enumerable: true,
|
|
45
|
-
get: function () { return state[k]; }
|
|
46
|
-
});
|
|
47
|
-
});
|
|
48
41
|
//# sourceMappingURL=index.js.map
|
|
49
42
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColGroup.d.ts","sourceRoot":"","sources":["../../../src/components/ColGroup.tsx"],"names":[],"mappings":"AAEA,wBAAgB,QAAQ,
|
|
1
|
+
{"version":3,"file":"ColGroup.d.ts","sourceRoot":"","sources":["../../../src/components/ColGroup.tsx"],"names":[],"mappings":"AAEA,wBAAgB,QAAQ,mDAcvB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScorecardHeader.d.ts","sourceRoot":"","sources":["../../../src/components/ScorecardHeader.tsx"],"names":[],"mappings":"AASA,wBAAgB,eAAe,
|
|
1
|
+
{"version":3,"file":"ScorecardHeader.d.ts","sourceRoot":"","sources":["../../../src/components/ScorecardHeader.tsx"],"names":[],"mappings":"AASA,wBAAgB,eAAe,mDA6D9B"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function ArrowLegendsView(
|
|
1
|
+
export declare function ArrowLegendsView(): import("react/jsx-runtime").JSX.Element | null;
|
|
2
2
|
//# sourceMappingURL=ArrowLegendView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ArrowLegendView.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardLegendsView/components/ArrowLegendView.tsx"],"names":[],"mappings":"AAIA,wBAAgB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"ArrowLegendView.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardLegendsView/components/ArrowLegendView.tsx"],"names":[],"mappings":"AAIA,wBAAgB,gBAAgB,mDAqB/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScorecardPreviewArea.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardPrint/components/ScorecardPreviewArea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAQ,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ScorecardPreviewArea.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardPrint/components/ScorecardPreviewArea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAQ,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAUpD,OAAO,cAAc,CAAC;AAOtB,eAAO,MAAM,oBAAoB;gBAGpB,SAAS,CAAC,cAAc,CAAC;EA+CpC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScorecardTable.d.ts","sourceRoot":"","sources":["../../../../src/components/ScorecardTable/ScorecardTable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAU3E,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC;CAAG;AAEhF,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"ScorecardTable.d.ts","sourceRoot":"","sources":["../../../../src/components/ScorecardTable/ScorecardTable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAU3E,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC;CAAG;AAEhF,eAAO,MAAM,cAAc,2DA2DzB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AverageCell.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardTable/components/AverageCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EACX,wBAAwB,EACxB,+BAA+B,EAC/B,kBAAkB,EAClB,MAAM,yBAAyB,CAAC;AAiBjC,wBAAgB,iBAAiB,CAAC,EACjC,UAAU,EACV,IAAI,GACJ,EAAE;IACF,UAAU,EAAE,wBAAwB,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC;CACb,2CAmCA;AAED,wBAAgB,iBAAiB,CAAC,EACjC,WAAW,EACX,IAAI,GACJ,EAAE;IACF,WAAW,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC7C,IAAI,EAAE,MAAM,CAAC;CACb,2CAkDA;AAgED,wBAAgB,WAAW,CAC1B,KAAK,EAAE,WAAW,CAAC,kBAAkB,EAAE,+BAA+B,CAAC,
|
|
1
|
+
{"version":3,"file":"AverageCell.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardTable/components/AverageCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EACX,wBAAwB,EACxB,+BAA+B,EAC/B,kBAAkB,EAClB,MAAM,yBAAyB,CAAC;AAiBjC,wBAAgB,iBAAiB,CAAC,EACjC,UAAU,EACV,IAAI,GACJ,EAAE;IACF,UAAU,EAAE,wBAAwB,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC;CACb,2CAmCA;AAED,wBAAgB,iBAAiB,CAAC,EACjC,WAAW,EACX,IAAI,GACJ,EAAE;IACF,WAAW,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC7C,IAAI,EAAE,MAAM,CAAC;CACb,2CAkDA;AAgED,wBAAgB,WAAW,CAC1B,KAAK,EAAE,WAAW,CAAC,kBAAkB,EAAE,+BAA+B,CAAC,2CAUvE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataFooterCell.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardTable/components/DataFooterCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAEX,wBAAwB,EACxB,kBAAkB,EAClB,MAAM,yBAAyB,CAAC;AAmJjC,wBAAgB,cAAc,CAAC,EAC9B,KAAK,EACL,MAAM,GACN,EAAE,aAAa,CAAC,kBAAkB,EAAE,wBAAwB,CAAC,
|
|
1
|
+
{"version":3,"file":"DataFooterCell.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardTable/components/DataFooterCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAEX,wBAAwB,EACxB,kBAAkB,EAClB,MAAM,yBAAyB,CAAC;AAmJjC,wBAAgB,cAAc,CAAC,EAC9B,KAAK,EACL,MAAM,GACN,EAAE,aAAa,CAAC,kBAAkB,EAAE,wBAAwB,CAAC,2CAwB7D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataValue.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardTable/components/DataValue.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,eAAO,MAAM,SAAS;gBAKT,iBAAiB;YACrB,MAAM;WACP,OAAO;
|
|
1
|
+
{"version":3,"file":"DataValue.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardTable/components/DataValue.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,eAAO,MAAM,SAAS;gBAKT,iBAAiB;YACrB,MAAM;WACP,OAAO;EAmEb,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExpandedScorecardTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardTable/components/ExpandedScorecardTable.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"ExpandedScorecardTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardTable/components/ExpandedScorecardTable.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAaxD,wBAAgB,sBAAsB,CAAC,EACtC,OAAO,EACP,OAAO,GACP,EAAE;IACF,OAAO,EAAE,QAAQ,GAAG;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,OAAO,EAAE,OAAO,CAAC;CACjB,kDA8EA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableFoot.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardTable/components/TableFoot.tsx"],"names":[],"mappings":"AAMA,wBAAgB,SAAS,
|
|
1
|
+
{"version":3,"file":"TableFoot.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScorecardTable/components/TableFoot.tsx"],"names":[],"mappings":"AAMA,wBAAgB,SAAS,mDA4BxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AverageHeaderCell.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/ScorecardTable/components/TableHeader/components/AverageHeaderCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"AverageHeaderCell.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/ScorecardTable/components/TableHeader/components/AverageHeaderCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAOxE,wBAAgB,iBAAiB,CAAC,EACjC,MAAM,GACN,EAAE,aAAa,CAAC,kBAAkB,EAAE,GAAG,CAAC,2CAsBxC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataHeaderCell.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/ScorecardTable/components/TableHeader/components/DataHeaderCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAEN,KAAK,kBAAkB,EACvB,MAAM,+BAA+B,CAAC;AAOvC,wBAAgB,mBAAmB,CAAC,EACnC,MAAM,GACN,EAAE,aAAa,CAAC,kBAAkB,EAAE,GAAG,CAAC,2CAGxC;AAED,wBAAgB,uBAAuB,CAAC,EACvC,MAAM,EACN,MAAM,GACN,EAAE,aAAa,CAAC,kBAAkB,EAAE,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"DataHeaderCell.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/ScorecardTable/components/TableHeader/components/DataHeaderCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAEN,KAAK,kBAAkB,EACvB,MAAM,+BAA+B,CAAC;AAOvC,wBAAgB,mBAAmB,CAAC,EACnC,MAAM,GACN,EAAE,aAAa,CAAC,kBAAkB,EAAE,GAAG,CAAC,2CAGxC;AAED,wBAAgB,uBAAuB,CAAC,EACvC,MAAM,EACN,MAAM,GACN,EAAE,aAAa,CAAC,kBAAkB,EAAE,GAAG,CAAC,2CAgExC;AAED,eAAO,MAAM,cAAc,gCAA0B,CAAC"}
|
package/dist/types/components/ScorecardTable/components/TableHeader/components/FilterArea.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterArea.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/ScorecardTable/components/TableHeader/components/FilterArea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAOpD,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,MAAM,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;CACxC;AAED,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"FilterArea.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/ScorecardTable/components/TableHeader/components/FilterArea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAOpD,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,MAAM,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;CACxC;AAED,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE,eAAe,2CAwBrD"}
|
package/dist/types/components/ScorecardTable/components/TableHeader/components/LabelCell.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LabelCell.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/ScorecardTable/components/TableHeader/components/LabelCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAEN,KAAK,kBAAkB,EACvB,MAAM,+BAA+B,CAAC;AAQvC,wBAAgB,kBAAkB,CACjC,KAAK,EAAE,WAAW,CACjB,kBAAkB,EAClB;IACC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3D,CACD,
|
|
1
|
+
{"version":3,"file":"LabelCell.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/ScorecardTable/components/TableHeader/components/LabelCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAEN,KAAK,kBAAkB,EACvB,MAAM,+BAA+B,CAAC;AAQvC,wBAAgB,kBAAkB,CACjC,KAAK,EAAE,WAAW,CACjB,kBAAkB,EAClB;IACC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3D,CACD,2CAkED;AAED,eAAO,MAAM,SAAS,2BAAqB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MetaHeaderCell.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/ScorecardTable/components/TableHeader/components/MetaHeaderCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"MetaHeaderCell.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/ScorecardTable/components/TableHeader/components/MetaHeaderCell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAUxE,iBAAS,uBAAuB,CAAC,EAChC,MAAM,GACN,EAAE,aAAa,CAAC,kBAAkB,EAAE,GAAG,CAAC,2CAwDxC;AAED,eAAO,MAAM,cAAc,qEAAgC,CAAC"}
|
|
@@ -4,7 +4,39 @@ export interface ScorecardStateProviderProps {
|
|
|
4
4
|
initialState?: ScorecardState;
|
|
5
5
|
config: ScorecardConfig;
|
|
6
6
|
children: ReactNode;
|
|
7
|
-
withRecoilRoot?: boolean;
|
|
8
7
|
}
|
|
9
|
-
export declare function
|
|
8
|
+
export declare function useScorecardViewStateEngine(): {
|
|
9
|
+
options: import("../schemas/config").ScorecardViewOptions;
|
|
10
|
+
listeners: import("../utils/viewState").ViewOptionListener[];
|
|
11
|
+
optionsListeners: Array<(options: import("../schemas/config").ScorecardViewOptions) => void>;
|
|
12
|
+
updateOption(key: keyof import("../schemas/config").ScorecardViewOptions, value: import("../schemas/config").ScorecardViewOptions[keyof import("../schemas/config").ScorecardViewOptions]): void;
|
|
13
|
+
addOptionListener(listener: (options: import("../schemas/config").ScorecardViewOptions) => void): () => void;
|
|
14
|
+
addListener(listener: import("../utils/viewState").ViewOptionListener): () => void;
|
|
15
|
+
removeListener(listener: import("../utils/viewState").ViewOptionListener): void;
|
|
16
|
+
};
|
|
17
|
+
export declare function useScorecardDimensionStateEngine(): {
|
|
18
|
+
orgUnitSelection: {
|
|
19
|
+
orgUnits: {
|
|
20
|
+
id: string;
|
|
21
|
+
}[];
|
|
22
|
+
userOrgUnit?: boolean | undefined;
|
|
23
|
+
userSubUnit?: boolean | undefined;
|
|
24
|
+
userSubX2Unit?: boolean | undefined;
|
|
25
|
+
groups?: string[] | undefined;
|
|
26
|
+
levels?: string[] | undefined;
|
|
27
|
+
};
|
|
28
|
+
periodSelection: {
|
|
29
|
+
periods: {
|
|
30
|
+
id: string;
|
|
31
|
+
}[];
|
|
32
|
+
type?: string | undefined;
|
|
33
|
+
};
|
|
34
|
+
listeners: import("../utils/dimensionState").DimensionListener[];
|
|
35
|
+
addListener(listener: import("../utils/dimensionState").DimensionListener): () => void;
|
|
36
|
+
removeListener(listener: import("../utils/dimensionState").DimensionListener): void;
|
|
37
|
+
update({ orgUnitSelection, periodSelection }: import("../utils/dimensionState").DimensionState): void;
|
|
38
|
+
updatePeriodSelection(periodSelection: import("../schemas/config").PeriodSelection): void;
|
|
39
|
+
updateOrgUnitSelection(orgUnitSelection: import("../schemas/config").OrgUnitSelection): void;
|
|
40
|
+
};
|
|
41
|
+
export declare function ScorecardStateProvider({ children, initialState, config, }: ScorecardStateProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
10
42
|
//# sourceMappingURL=StateProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StateProvider.d.ts","sourceRoot":"","sources":["../../../src/components/StateProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,
|
|
1
|
+
{"version":3,"file":"StateProvider.d.ts","sourceRoot":"","sources":["../../../src/components/StateProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAiB,KAAK,SAAS,EAAsB,MAAM,OAAO,CAAC;AAU1E,MAAM,WAAW,2BAA2B;IAC3C,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,MAAM,EAAE,eAAe,CAAC;IACxB,QAAQ,EAAE,SAAS,CAAC;CACpB;AAOD,wBAAgB,2BAA2B;;;;;;;;EAQ1C;AAED,wBAAgB,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;EAQ/C;AAED,wBAAgB,sBAAsB,CAAC,EACtC,QAAQ,EACR,YAAY,EACZ,MAAM,GACN,EAAE,2BAA2B,2CAuB7B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columns.d.ts","sourceRoot":"","sources":["../../../src/hooks/columns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAsB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"columns.d.ts","sourceRoot":"","sources":["../../../src/hooks/columns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAsB,MAAM,uBAAuB,CAAC;AAO3E,OAAO,EACN,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,MAAM,mBAAmB,CAAC;AAsB3B,wBAAgB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UA4H7B;AAED,wBAAgB,eAAe,IAAI,SAAS,CAC3C,kBAAkB,EAClB,wBAAwB,CACxB,EAAE,CAoDF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../src/hooks/metadata.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../../src/hooks/metadata.ts"],"names":[],"mappings":"AA6CA,MAAM,MAAM,QAAQ,GAAG;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CAC3C,CAAC;AAgCF,wBAAgB,mBAAmB;;;;aAxC7B,MAAM;cACL,MAAM;eACL,MAAM;sBACC,MAAM;oBACR,MAAM;+BACK,MAAM;0BACX,MAAM;;;;;cALlB,MAAM;eACL,MAAM;sBACC,MAAM;oBACR,MAAM;+BACK,MAAM;0BACX,MAAM;;;YA2BlB,MAAM;eACH,MAAM;qBACA,MAAM;;;EAoGrB;AAED,wBAAgB,WAAW,wPAM1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../src/hooks/table.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,aAAa,EAOlB,KAAK,GAAG,EAER,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EACX,kBAAkB,EAClB,oBAAoB,EACpB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACN,KAAK,aAAa,EAIlB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,aAAa,EAAmB,MAAM,eAAe,CAAC;AAEpE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAI/D,wBAAgB,YAAY,CAAC,EAC5B,IAAI,EACJ,cAAc,EACd,GAAG,GACH,EAAE;IACF,GAAG,EAAE,kBAAkB,CAAC;IACxB,IAAI,EAAE,aAAa,EAAE,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;CACxB,GAAG,aAAa,EAAE,CASlB;AAED,wBAAgB,UAAU,CAAC,EAC1B,IAAI,EACJ,SAAS,EACT,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,IAAI,GACJ,EAAE;IACF,SAAS,EAAE,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAC7C,cAAc,EAAE,OAAO,CAAC;IACxB,kBAAkB,EAAE,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;IAC/D,UAAU,EAAE,mBAAmB,CAAC;IAChC,IAAI,EAAE,kBAAkB,EAAE,CAAC;IAC3B,IAAI,EAAE,aAAa,CAAC;CACpB,YA8CA;AAED,wBAAgB,YAAY,IAAI,kBAAkB,EAAE,
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../src/hooks/table.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,aAAa,EAOlB,KAAK,GAAG,EAER,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EACX,kBAAkB,EAClB,oBAAoB,EACpB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACN,KAAK,aAAa,EAIlB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,aAAa,EAAmB,MAAM,eAAe,CAAC;AAEpE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAI/D,wBAAgB,YAAY,CAAC,EAC5B,IAAI,EACJ,cAAc,EACd,GAAG,GACH,EAAE;IACF,GAAG,EAAE,kBAAkB,CAAC;IACxB,IAAI,EAAE,aAAa,EAAE,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;CACxB,GAAG,aAAa,EAAE,CASlB;AAED,wBAAgB,UAAU,CAAC,EAC1B,IAAI,EACJ,SAAS,EACT,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,IAAI,GACJ,EAAE;IACF,SAAS,EAAE,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAC7C,cAAc,EAAE,OAAO,CAAC;IACxB,kBAAkB,EAAE,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;IAC/D,UAAU,EAAE,mBAAmB,CAAC;IAChC,IAAI,EAAE,kBAAkB,EAAE,CAAC;IAC3B,IAAI,EAAE,aAAa,CAAC;CACpB,YA8CA;AAED,wBAAgB,YAAY,IAAI,kBAAkB,EAAE,CA+DnD;AAED,wBAAgB,mBAAmB;;;EA6BlC;AAED,wBAAgB,eAAe;;;2BAKY,GAAG,CAAC,kBAAkB,CAAC;EAcjE;AAED,wBAAgB,aAAa,IAAI,YAAY,CAAC,kBAAkB,CAAC,CAyDhE"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { OrgUnitSelection, PeriodSelection } from "../schemas/config";
|
|
2
|
+
export type DimensionState = {
|
|
3
|
+
orgUnitSelection: OrgUnitSelection;
|
|
4
|
+
periodSelection: PeriodSelection;
|
|
5
|
+
};
|
|
6
|
+
export type OrgUnitListener = {
|
|
7
|
+
type: "orgUnit";
|
|
8
|
+
listener: (orgUnitSelection: OrgUnitSelection) => void;
|
|
9
|
+
};
|
|
10
|
+
export type PeriodListener = {
|
|
11
|
+
type: "period";
|
|
12
|
+
listener: (periodSelection: PeriodSelection) => void;
|
|
13
|
+
};
|
|
14
|
+
export type AllDimensionListener = {
|
|
15
|
+
type: "all";
|
|
16
|
+
listener: (dimensionState: DimensionState) => void;
|
|
17
|
+
};
|
|
18
|
+
export type DimensionListener = OrgUnitListener | PeriodListener | AllDimensionListener;
|
|
19
|
+
export type DimensionStateEngine = ReturnType<typeof createDimensionStateEngine>;
|
|
20
|
+
export declare function createDimensionStateEngine({ orgUnitSelection, periodSelection, }: DimensionState): {
|
|
21
|
+
orgUnitSelection: {
|
|
22
|
+
orgUnits: {
|
|
23
|
+
id: string;
|
|
24
|
+
}[];
|
|
25
|
+
userOrgUnit?: boolean | undefined;
|
|
26
|
+
userSubUnit?: boolean | undefined;
|
|
27
|
+
userSubX2Unit?: boolean | undefined;
|
|
28
|
+
groups?: string[] | undefined;
|
|
29
|
+
levels?: string[] | undefined;
|
|
30
|
+
};
|
|
31
|
+
periodSelection: {
|
|
32
|
+
periods: {
|
|
33
|
+
id: string;
|
|
34
|
+
}[];
|
|
35
|
+
type?: string | undefined;
|
|
36
|
+
};
|
|
37
|
+
listeners: DimensionListener[];
|
|
38
|
+
addListener(listener: DimensionListener): () => void;
|
|
39
|
+
removeListener(listener: DimensionListener): void;
|
|
40
|
+
update({ orgUnitSelection, periodSelection }: DimensionState): void;
|
|
41
|
+
updatePeriodSelection(periodSelection: PeriodSelection): void;
|
|
42
|
+
updateOrgUnitSelection(orgUnitSelection: OrgUnitSelection): void;
|
|
43
|
+
};
|
|
44
|
+
export declare function useUpdateDimensionState(type: "orgUnit" | "period" | "all"): (value: OrgUnitSelection | PeriodSelection | DimensionState) => void;
|
|
45
|
+
export declare function usePeriodSelectionValue(): {
|
|
46
|
+
periods: {
|
|
47
|
+
id: string;
|
|
48
|
+
}[];
|
|
49
|
+
type?: string | undefined;
|
|
50
|
+
};
|
|
51
|
+
export declare function useHasOnePeriod(): boolean;
|
|
52
|
+
export declare function useOrgUnitSelectionValue(): {
|
|
53
|
+
orgUnits: {
|
|
54
|
+
id: string;
|
|
55
|
+
}[];
|
|
56
|
+
userOrgUnit?: boolean | undefined;
|
|
57
|
+
userSubUnit?: boolean | undefined;
|
|
58
|
+
userSubX2Unit?: boolean | undefined;
|
|
59
|
+
groups?: string[] | undefined;
|
|
60
|
+
levels?: string[] | undefined;
|
|
61
|
+
};
|
|
62
|
+
//# sourceMappingURL=dimensionState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dimensionState.d.ts","sourceRoot":"","sources":["../../../src/utils/dimensionState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAI3E,MAAM,MAAM,cAAc,GAAG;IAC5B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,eAAe,EAAE,eAAe,CAAC;CACjC,CAAC;AACF,MAAM,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACvD,CAAC;AACF,MAAM,MAAM,cAAc,GAAG;IAC5B,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,EAAE,CAAC,eAAe,EAAE,eAAe,KAAK,IAAI,CAAC;CACrD,CAAC;AACF,MAAM,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,KAAK,CAAC;IACZ,QAAQ,EAAE,CAAC,cAAc,EAAE,cAAc,KAAK,IAAI,CAAC;CACnD,CAAC;AACF,MAAM,MAAM,iBAAiB,GAC1B,eAAe,GACf,cAAc,GACd,oBAAoB,CAAC;AAExB,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAC5C,OAAO,0BAA0B,CACjC,CAAC;AAEF,wBAAgB,0BAA0B,CAAC,EAC1C,gBAAgB,EAChB,eAAe,GACf,EAAE,cAAc;;;;;;;;;;;;;;;;;eAIE,iBAAiB,EAAE;0BACd,iBAAiB;6BAQd,iBAAiB;kDAKI,cAAc;2CAkBrB,eAAe;6CAcb,gBAAgB;EAe1D;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,KAAK,IAEjE,OAAO,gBAAgB,GAAG,eAAe,GAAG,cAAc,UAclE;AAED,wBAAgB,uBAAuB;;;;;EAoBtC;AAED,wBAAgB,eAAe,YAG9B;AAED,wBAAgB,wBAAwB;;;;;;;;;EAoBvC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { ScorecardViewOptions } from "../schemas/config";
|
|
2
|
+
export type ViewOptionListener = {
|
|
3
|
+
key: keyof ScorecardViewOptions;
|
|
4
|
+
listener: (value?: ScorecardViewOptions[keyof ScorecardViewOptions]) => void;
|
|
5
|
+
};
|
|
6
|
+
export type ScorecardViewStateEngine = ReturnType<typeof createScorecardViewStateEngine>;
|
|
7
|
+
export declare function createScorecardViewStateEngine(defaultOptions: ScorecardViewOptions): {
|
|
8
|
+
options: ScorecardViewOptions;
|
|
9
|
+
listeners: ViewOptionListener[];
|
|
10
|
+
optionsListeners: Array<(options: ScorecardViewOptions) => void>;
|
|
11
|
+
updateOption(key: keyof ScorecardViewOptions, value: ScorecardViewOptions[keyof ScorecardViewOptions]): void;
|
|
12
|
+
addOptionListener(listener: (options: ScorecardViewOptions) => void): () => void;
|
|
13
|
+
addListener(listener: ViewOptionListener): () => void;
|
|
14
|
+
removeListener(listener: ViewOptionListener): void;
|
|
15
|
+
};
|
|
16
|
+
export declare function useScorecardViewStateValue<ValueType extends ScorecardViewOptions[keyof ScorecardViewOptions]>(key: keyof ScorecardViewOptions): ValueType;
|
|
17
|
+
export declare function useScorecardViewOptions(): {
|
|
18
|
+
averageColumn?: boolean | undefined;
|
|
19
|
+
averageDisplayType?: "ALL" | "ABOVE_AVERAGE" | "BELOW_AVERAGE" | undefined;
|
|
20
|
+
averageRow?: boolean | undefined;
|
|
21
|
+
emptyRows?: boolean | undefined;
|
|
22
|
+
highlightedIndicators?: boolean | undefined;
|
|
23
|
+
itemNumber?: boolean | undefined;
|
|
24
|
+
legend?: boolean | undefined;
|
|
25
|
+
showHierarchy?: boolean | undefined;
|
|
26
|
+
title?: boolean | undefined;
|
|
27
|
+
arrows?: boolean | undefined;
|
|
28
|
+
showDataInRows?: boolean | undefined;
|
|
29
|
+
disableExpanding?: boolean | undefined;
|
|
30
|
+
disablePagination?: boolean | undefined;
|
|
31
|
+
printMode?: boolean | undefined;
|
|
32
|
+
};
|
|
33
|
+
export declare function useUpdateScorecardViewState(key: keyof ScorecardViewOptions): (value: ScorecardViewOptions[keyof ScorecardViewOptions]) => void;
|
|
34
|
+
//# sourceMappingURL=viewState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewState.d.ts","sourceRoot":"","sources":["../../../src/utils/viewState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAK9D,MAAM,MAAM,kBAAkB,GAAG;IAChC,GAAG,EAAE,MAAM,oBAAoB,CAAC;IAChC,QAAQ,EAAE,CACT,KAAK,CAAC,EAAE,oBAAoB,CAAC,MAAM,oBAAoB,CAAC,KACpD,IAAI,CAAC;CACV,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAChD,OAAO,8BAA8B,CACrC,CAAC;AAEF,wBAAgB,8BAA8B,CAC7C,cAAc,EAAE,oBAAoB;aAGR,oBAAoB;eAC9B,kBAAkB,EAAE;sBACb,KAAK,CAAC,CAAC,OAAO,EAAE,oBAAoB,KAAK,IAAI,CAAC;sBAEhE,MAAM,oBAAoB,SACxB,oBAAoB,CAAC,MAAM,oBAAoB,CAAC;gCAa5B,CAAC,OAAO,EAAE,oBAAoB,KAAK,IAAI;0BAU7C,kBAAkB;6BAQf,kBAAkB;EAM5C;AAED,wBAAgB,0BAA0B,CACzC,SAAS,SAAS,oBAAoB,CAAC,MAAM,oBAAoB,CAAC,EACjE,GAAG,EAAE,MAAM,oBAAoB,aAiBhC;AAED,wBAAgB,uBAAuB;;;;;;;;;;;;;;;EAetC;AAED,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,oBAAoB,IAElE,OAAO,oBAAoB,CAAC,MAAM,oBAAoB,CAAC,UAG/D"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var components = require('../components');
|
|
4
|
+
var react = require('react');
|
|
5
|
+
|
|
6
|
+
function createDimensionStateEngine({
|
|
7
|
+
orgUnitSelection,
|
|
8
|
+
periodSelection
|
|
9
|
+
}) {
|
|
10
|
+
return {
|
|
11
|
+
orgUnitSelection,
|
|
12
|
+
periodSelection,
|
|
13
|
+
listeners: [],
|
|
14
|
+
addListener(listener) {
|
|
15
|
+
this.listeners.push(listener);
|
|
16
|
+
return () => {
|
|
17
|
+
this.listeners = this.listeners.filter(
|
|
18
|
+
(l) => l !== listener
|
|
19
|
+
);
|
|
20
|
+
};
|
|
21
|
+
},
|
|
22
|
+
removeListener(listener) {
|
|
23
|
+
this.listeners = this.listeners.filter(
|
|
24
|
+
(l) => l !== listener
|
|
25
|
+
);
|
|
26
|
+
},
|
|
27
|
+
update({ orgUnitSelection: orgUnitSelection2, periodSelection: periodSelection2 }) {
|
|
28
|
+
this.orgUnitSelection = orgUnitSelection2;
|
|
29
|
+
this.periodSelection = periodSelection2;
|
|
30
|
+
for (const listener of this.listeners) {
|
|
31
|
+
if (listener.type === "orgUnit") {
|
|
32
|
+
listener.listener(orgUnitSelection2);
|
|
33
|
+
}
|
|
34
|
+
if (listener.type === "period") {
|
|
35
|
+
listener.listener(periodSelection2);
|
|
36
|
+
}
|
|
37
|
+
if (listener.type === "all") {
|
|
38
|
+
listener.listener({
|
|
39
|
+
orgUnitSelection: orgUnitSelection2,
|
|
40
|
+
periodSelection: periodSelection2
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
updatePeriodSelection(periodSelection2) {
|
|
46
|
+
this.periodSelection = periodSelection2;
|
|
47
|
+
for (const listener of this.listeners) {
|
|
48
|
+
if (listener.type === "period") {
|
|
49
|
+
listener.listener(periodSelection2);
|
|
50
|
+
}
|
|
51
|
+
if (listener.type === "all") {
|
|
52
|
+
listener.listener({
|
|
53
|
+
orgUnitSelection: this.orgUnitSelection,
|
|
54
|
+
periodSelection: periodSelection2
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
updateOrgUnitSelection(orgUnitSelection2) {
|
|
60
|
+
this.orgUnitSelection = orgUnitSelection2;
|
|
61
|
+
for (const listener of this.listeners) {
|
|
62
|
+
if (listener.type === "orgUnit") {
|
|
63
|
+
listener.listener(orgUnitSelection2);
|
|
64
|
+
}
|
|
65
|
+
if (listener.type === "all") {
|
|
66
|
+
listener.listener({
|
|
67
|
+
orgUnitSelection: orgUnitSelection2,
|
|
68
|
+
periodSelection: this.periodSelection
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
function useUpdateDimensionState(type) {
|
|
76
|
+
const dimensionEngine = components.useScorecardDimensionStateEngine();
|
|
77
|
+
return (value) => {
|
|
78
|
+
switch (type) {
|
|
79
|
+
case "orgUnit":
|
|
80
|
+
dimensionEngine.updateOrgUnitSelection(
|
|
81
|
+
value
|
|
82
|
+
);
|
|
83
|
+
break;
|
|
84
|
+
case "period":
|
|
85
|
+
dimensionEngine.updatePeriodSelection(value);
|
|
86
|
+
break;
|
|
87
|
+
case "all":
|
|
88
|
+
dimensionEngine.update(value);
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
function usePeriodSelectionValue() {
|
|
93
|
+
const dimensionEngine = components.useScorecardDimensionStateEngine();
|
|
94
|
+
const [periodSelection, setPeriodSelection] = react.useState(
|
|
95
|
+
dimensionEngine.periodSelection
|
|
96
|
+
);
|
|
97
|
+
react.useEffect(() => {
|
|
98
|
+
const unsubscribe = dimensionEngine.addListener({
|
|
99
|
+
type: "period",
|
|
100
|
+
listener: (periodSelection2) => {
|
|
101
|
+
setPeriodSelection(periodSelection2);
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
return () => {
|
|
105
|
+
unsubscribe();
|
|
106
|
+
};
|
|
107
|
+
}, []);
|
|
108
|
+
return periodSelection;
|
|
109
|
+
}
|
|
110
|
+
function useHasOnePeriod() {
|
|
111
|
+
const periodSelection = usePeriodSelectionValue();
|
|
112
|
+
return periodSelection.periods.length === 1;
|
|
113
|
+
}
|
|
114
|
+
function useOrgUnitSelectionValue() {
|
|
115
|
+
const dimensionEngine = components.useScorecardDimensionStateEngine();
|
|
116
|
+
const [orgUnitSelection, setOrgUnitSelection] = react.useState(
|
|
117
|
+
dimensionEngine.orgUnitSelection
|
|
118
|
+
);
|
|
119
|
+
react.useEffect(() => {
|
|
120
|
+
const unsubscribe = dimensionEngine.addListener({
|
|
121
|
+
type: "orgUnit",
|
|
122
|
+
listener: (periodSelection) => {
|
|
123
|
+
setOrgUnitSelection(periodSelection);
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
return () => {
|
|
127
|
+
unsubscribe();
|
|
128
|
+
};
|
|
129
|
+
}, []);
|
|
130
|
+
return orgUnitSelection;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
exports.createDimensionStateEngine = createDimensionStateEngine;
|
|
134
|
+
exports.useHasOnePeriod = useHasOnePeriod;
|
|
135
|
+
exports.useOrgUnitSelectionValue = useOrgUnitSelectionValue;
|
|
136
|
+
exports.usePeriodSelectionValue = usePeriodSelectionValue;
|
|
137
|
+
exports.useUpdateDimensionState = useUpdateDimensionState;
|
|
138
|
+
//# sourceMappingURL=dimensionState.js.map
|
|
139
|
+
//# sourceMappingURL=dimensionState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utils/dimensionState.ts"],"names":["orgUnitSelection","periodSelection","useScorecardDimensionStateEngine","useState","useEffect"],"mappings":"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","file":"dimensionState.js","sourcesContent":["import type { OrgUnitSelection, PeriodSelection } from \"../schemas/config\";\nimport { useScorecardDimensionStateEngine } from \"../components\";\nimport { useEffect, useState } from \"react\";\n\nexport type DimensionState = {\n\torgUnitSelection: OrgUnitSelection;\n\tperiodSelection: PeriodSelection;\n};\nexport type OrgUnitListener = {\n\ttype: \"orgUnit\";\n\tlistener: (orgUnitSelection: OrgUnitSelection) => void;\n};\nexport type PeriodListener = {\n\ttype: \"period\";\n\tlistener: (periodSelection: PeriodSelection) => void;\n};\nexport type AllDimensionListener = {\n\ttype: \"all\";\n\tlistener: (dimensionState: DimensionState) => void;\n};\nexport type DimensionListener =\n\t| OrgUnitListener\n\t| PeriodListener\n\t| AllDimensionListener;\n\nexport type DimensionStateEngine = ReturnType<\n\ttypeof createDimensionStateEngine\n>;\n\nexport function createDimensionStateEngine({\n\torgUnitSelection,\n\tperiodSelection,\n}: DimensionState) {\n\treturn {\n\t\torgUnitSelection,\n\t\tperiodSelection,\n\t\tlisteners: [] as DimensionListener[],\n\t\taddListener(listener: DimensionListener) {\n\t\t\tthis.listeners.push(listener);\n\t\t\treturn () => {\n\t\t\t\tthis.listeners = this.listeners.filter(\n\t\t\t\t\t(l: DimensionListener) => l !== listener,\n\t\t\t\t);\n\t\t\t};\n\t\t},\n\t\tremoveListener(listener: DimensionListener) {\n\t\t\tthis.listeners = this.listeners.filter(\n\t\t\t\t(l: DimensionListener) => l !== listener,\n\t\t\t);\n\t\t},\n\t\tupdate({ orgUnitSelection, periodSelection }: DimensionState) {\n\t\t\tthis.orgUnitSelection = orgUnitSelection;\n\t\t\tthis.periodSelection = periodSelection;\n\t\t\tfor (const listener of this.listeners) {\n\t\t\t\tif (listener.type === \"orgUnit\") {\n\t\t\t\t\tlistener.listener(orgUnitSelection);\n\t\t\t\t}\n\t\t\t\tif (listener.type === \"period\") {\n\t\t\t\t\tlistener.listener(periodSelection);\n\t\t\t\t}\n\t\t\t\tif (listener.type === \"all\") {\n\t\t\t\t\tlistener.listener({\n\t\t\t\t\t\torgUnitSelection,\n\t\t\t\t\t\tperiodSelection,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tupdatePeriodSelection(periodSelection: PeriodSelection) {\n\t\t\tthis.periodSelection = periodSelection;\n\t\t\tfor (const listener of this.listeners) {\n\t\t\t\tif (listener.type === \"period\") {\n\t\t\t\t\tlistener.listener(periodSelection);\n\t\t\t\t}\n\t\t\t\tif (listener.type === \"all\") {\n\t\t\t\t\tlistener.listener({\n\t\t\t\t\t\torgUnitSelection: this.orgUnitSelection,\n\t\t\t\t\t\tperiodSelection,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tupdateOrgUnitSelection(orgUnitSelection: OrgUnitSelection) {\n\t\t\tthis.orgUnitSelection = orgUnitSelection;\n\t\t\tfor (const listener of this.listeners) {\n\t\t\t\tif (listener.type === \"orgUnit\") {\n\t\t\t\t\tlistener.listener(orgUnitSelection);\n\t\t\t\t}\n\t\t\t\tif (listener.type === \"all\") {\n\t\t\t\t\tlistener.listener({\n\t\t\t\t\t\torgUnitSelection: orgUnitSelection,\n\t\t\t\t\t\tperiodSelection: this.periodSelection,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t};\n}\n\nexport function useUpdateDimensionState(type: \"orgUnit\" | \"period\" | \"all\") {\n\tconst dimensionEngine = useScorecardDimensionStateEngine();\n\treturn (value: OrgUnitSelection | PeriodSelection | DimensionState) => {\n\t\tswitch (type) {\n\t\t\tcase \"orgUnit\":\n\t\t\t\tdimensionEngine.updateOrgUnitSelection(\n\t\t\t\t\tvalue as OrgUnitSelection,\n\t\t\t\t);\n\t\t\t\tbreak;\n\t\t\tcase \"period\":\n\t\t\t\tdimensionEngine.updatePeriodSelection(value as PeriodSelection);\n\t\t\t\tbreak;\n\t\t\tcase \"all\":\n\t\t\t\tdimensionEngine.update(value as DimensionState);\n\t\t}\n\t};\n}\n\nexport function usePeriodSelectionValue() {\n\tconst dimensionEngine = useScorecardDimensionStateEngine();\n\tconst [periodSelection, setPeriodSelection] = useState<PeriodSelection>(\n\t\tdimensionEngine.periodSelection,\n\t);\n\n\tuseEffect(() => {\n\t\tconst unsubscribe = dimensionEngine.addListener({\n\t\t\ttype: \"period\",\n\t\t\tlistener: (periodSelection) => {\n\t\t\t\tsetPeriodSelection(periodSelection);\n\t\t\t},\n\t\t});\n\n\t\treturn () => {\n\t\t\tunsubscribe();\n\t\t};\n\t}, []);\n\n\treturn periodSelection;\n}\n\nexport function useHasOnePeriod() {\n\tconst periodSelection = usePeriodSelectionValue();\n\treturn periodSelection.periods.length === 1;\n}\n\nexport function useOrgUnitSelectionValue() {\n\tconst dimensionEngine = useScorecardDimensionStateEngine();\n\tconst [orgUnitSelection, setOrgUnitSelection] = useState<OrgUnitSelection>(\n\t\tdimensionEngine.orgUnitSelection,\n\t);\n\n\tuseEffect(() => {\n\t\tconst unsubscribe = dimensionEngine.addListener({\n\t\t\ttype: \"orgUnit\",\n\t\t\tlistener: (periodSelection) => {\n\t\t\t\tsetOrgUnitSelection(periodSelection);\n\t\t\t},\n\t\t});\n\n\t\treturn () => {\n\t\t\tunsubscribe();\n\t\t};\n\t}, []);\n\n\treturn orgUnitSelection;\n}\n"]}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var lodash = require('lodash');
|
|
4
|
+
var components = require('../components');
|
|
5
|
+
var react = require('react');
|
|
6
|
+
|
|
7
|
+
function createScorecardViewStateEngine(defaultOptions) {
|
|
8
|
+
return {
|
|
9
|
+
options: defaultOptions,
|
|
10
|
+
listeners: [],
|
|
11
|
+
optionsListeners: [],
|
|
12
|
+
updateOption(key, value) {
|
|
13
|
+
lodash.set(this.options, key, value);
|
|
14
|
+
const listeners = this.listeners.filter(
|
|
15
|
+
(listener) => listener.key === key
|
|
16
|
+
);
|
|
17
|
+
for (const listener of listeners) {
|
|
18
|
+
listener.listener(value);
|
|
19
|
+
}
|
|
20
|
+
for (const listener of this.optionsListeners) {
|
|
21
|
+
listener(this.options);
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
addOptionListener(listener) {
|
|
25
|
+
this.optionsListeners.push(listener);
|
|
26
|
+
return () => {
|
|
27
|
+
this.optionsListeners = this.optionsListeners.filter(
|
|
28
|
+
(l) => l !== listener
|
|
29
|
+
);
|
|
30
|
+
};
|
|
31
|
+
},
|
|
32
|
+
addListener(listener) {
|
|
33
|
+
this.listeners.push(listener);
|
|
34
|
+
return () => {
|
|
35
|
+
this.listeners = this.listeners.filter(
|
|
36
|
+
(l) => l !== listener
|
|
37
|
+
);
|
|
38
|
+
};
|
|
39
|
+
},
|
|
40
|
+
removeListener(listener) {
|
|
41
|
+
this.listeners = this.listeners.filter(
|
|
42
|
+
(l) => listener !== l
|
|
43
|
+
);
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
function useScorecardViewStateValue(key) {
|
|
48
|
+
const viewEngine = components.useScorecardViewStateEngine();
|
|
49
|
+
const [value, setValue] = react.useState(
|
|
50
|
+
lodash.get(viewEngine.options, key)
|
|
51
|
+
);
|
|
52
|
+
react.useEffect(() => {
|
|
53
|
+
const unsubscribe = viewEngine.addListener({
|
|
54
|
+
key,
|
|
55
|
+
listener(value2) {
|
|
56
|
+
setValue(value2);
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
return () => {
|
|
60
|
+
unsubscribe();
|
|
61
|
+
};
|
|
62
|
+
}, []);
|
|
63
|
+
return value;
|
|
64
|
+
}
|
|
65
|
+
function useScorecardViewOptions() {
|
|
66
|
+
const viewEngine = components.useScorecardViewStateEngine();
|
|
67
|
+
const [options, setOptions] = react.useState(
|
|
68
|
+
viewEngine.options
|
|
69
|
+
);
|
|
70
|
+
react.useEffect(() => {
|
|
71
|
+
const unsubscribe = viewEngine.addOptionListener(setOptions);
|
|
72
|
+
return () => {
|
|
73
|
+
unsubscribe();
|
|
74
|
+
};
|
|
75
|
+
}, []);
|
|
76
|
+
return options;
|
|
77
|
+
}
|
|
78
|
+
function useUpdateScorecardViewState(key) {
|
|
79
|
+
const viewEngine = components.useScorecardViewStateEngine();
|
|
80
|
+
return (value) => {
|
|
81
|
+
viewEngine.updateOption(key, value);
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
exports.createScorecardViewStateEngine = createScorecardViewStateEngine;
|
|
86
|
+
exports.useScorecardViewOptions = useScorecardViewOptions;
|
|
87
|
+
exports.useScorecardViewStateValue = useScorecardViewStateValue;
|
|
88
|
+
exports.useUpdateScorecardViewState = useUpdateScorecardViewState;
|
|
89
|
+
//# sourceMappingURL=viewState.js.map
|
|
90
|
+
//# sourceMappingURL=viewState.js.map
|