@sproutsocial/seeds-react-chart-legend 1.0.0 → 1.0.1
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/.turbo/turbo-build.log +6 -6
- package/CHANGELOG.md +12 -0
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/package.json +6 -6
package/.turbo/turbo-build.log
CHANGED
|
@@ -8,14 +8,14 @@ CLI Target: es2022
|
|
|
8
8
|
CLI Cleaning output folder
|
|
9
9
|
CJS Build start
|
|
10
10
|
ESM Build start
|
|
11
|
-
ESM dist/esm/index.js 4.03 KB
|
|
12
|
-
ESM dist/esm/index.js.map 9.13 KB
|
|
13
|
-
ESM ⚡️ Build success in 149ms
|
|
14
11
|
CJS dist/index.js 6.08 KB
|
|
15
12
|
CJS dist/index.js.map 9.25 KB
|
|
16
|
-
CJS ⚡️ Build success in
|
|
13
|
+
CJS ⚡️ Build success in 186ms
|
|
14
|
+
ESM dist/esm/index.js 4.03 KB
|
|
15
|
+
ESM dist/esm/index.js.map 9.14 KB
|
|
16
|
+
ESM ⚡️ Build success in 196ms
|
|
17
17
|
DTS Build start
|
|
18
|
-
DTS ⚡️ Build success in
|
|
18
|
+
DTS ⚡️ Build success in 38815ms
|
|
19
19
|
DTS dist/index.d.ts 1.39 KB
|
|
20
20
|
DTS dist/index.d.mts 1.39 KB
|
|
21
|
-
Done in
|
|
21
|
+
Done in 47.60s.
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @sproutsocial/seeds-react-chart-legend
|
|
2
2
|
|
|
3
|
+
## 1.0.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 9fd8bac: Update dependencies to use semantic package version instead of wildcards
|
|
8
|
+
- Updated dependencies [9fd8bac]
|
|
9
|
+
- @sproutsocial/seeds-react-system-props@3.0.2
|
|
10
|
+
- @sproutsocial/seeds-react-theme@2.2.1
|
|
11
|
+
- @sproutsocial/seeds-react-icon@1.1.2
|
|
12
|
+
- @sproutsocial/seeds-react-text@1.3.1
|
|
13
|
+
- @sproutsocial/seeds-react-box@1.1.2
|
|
14
|
+
|
|
3
15
|
## 1.0.0
|
|
4
16
|
|
|
5
17
|
### Major Changes
|
package/dist/esm/index.js
CHANGED
|
@@ -123,9 +123,9 @@ var ChartLegend_default = ChartLegend;
|
|
|
123
123
|
import "react";
|
|
124
124
|
|
|
125
125
|
// src/index.ts
|
|
126
|
-
var
|
|
126
|
+
var index_default = ChartLegend_default;
|
|
127
127
|
export {
|
|
128
128
|
ChartLegend_default as ChartLegend,
|
|
129
|
-
|
|
129
|
+
index_default as default
|
|
130
130
|
};
|
|
131
131
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/ChartLegend.tsx","../../src/styles.ts","../../src/useChartLabels.tsx","../../src/ChartLegendTypes.ts","../../src/index.ts"],"sourcesContent":["import * as React from \"react\";\nimport Container from \"./styles\";\nimport type { TypeChartLegendProps } from \"./ChartLegendTypes\";\nimport { useChartLabels } from \"./useChartLabels\";\n\nconst ChartLegend = ({\n legendLabels,\n stacked,\n theme = \"datavizRotation\",\n qa,\n ...rest\n}: TypeChartLegendProps) => {\n const chartLabels = useChartLabels(legendLabels, theme);\n\n return (\n <Container inline={!stacked} data-qa-chartlegend=\"\" qa={qa} {...rest}>\n {chartLabels}\n </Container>\n );\n};\n\nexport default ChartLegend;\n","import styled, { css } from \"styled-components\";\nimport { COMMON, LAYOUT } from \"@sproutsocial/seeds-react-system-props\";\nimport type { TypeChartLegendProps } from \"./ChartLegendTypes\";\nimport type {\n TypeSystemCommonProps,\n TypeSystemLayoutProps,\n} from \"@sproutsocial/seeds-react-system-props\";\n\nexport const Label = styled.span`\n display: flex;\n align-items: center;\n color: ${(props) => props.theme.colors.text.subtext};\n white-space: nowrap;\n text-transform: capitalize;\n`;\n\nexport const Swatch = styled.span<TypeSystemCommonProps>`\n margin-right: ${(props) => props.theme.space[300]};\n width: ${(props) => props.theme.space[350]};\n height: ${(props) => props.theme.space[350]};\n border-radius: 4px;\n\n ${COMMON}\n`;\n\nexport interface ChartLegendContainerTypes\n extends Omit<TypeChartLegendProps, \"stacked\" | \"legendLabels\">,\n TypeSystemCommonProps,\n TypeSystemLayoutProps {\n inline: boolean;\n}\n\nconst Container = styled.div<ChartLegendContainerTypes>`\n ${(props) =>\n props.inline &&\n css`\n display: flex;\n justify-content: center;\n\n ${Label} + ${Label} {\n margin-left: ${(props) => props.theme.space[450]};\n }\n `}\n\n ${COMMON}\n ${LAYOUT}\n`;\n\nLabel.displayName = \"ChartLegendLabel\";\nSwatch.displayName = \"ChartLegendSwatch\";\n\nexport default Container;\n","import React from \"react\";\nimport type {\n TypeChartLegendTheme,\n TypeLegendLabels,\n} from \"./ChartLegendTypes\";\nimport type { TypeColor } from \"@sproutsocial/seeds-react-theme\";\nimport { useTheme } from \"styled-components\";\nimport { Label, Swatch } from \"./styles\";\nimport { Text } from \"@sproutsocial/seeds-react-text\";\n\nconst getSwatchColor = (\n theme: TypeChartLegendTheme,\n index: number,\n RacineThemeColors: TypeColor\n) => {\n const COMPARE_THEME = [\n RacineThemeColors.dataviz.map[\"1\"],\n RacineThemeColors.dataviz.map[\"10\"],\n RacineThemeColors.dataviz.map[\"11\"],\n RacineThemeColors.dataviz.map[\"2\"],\n ];\n\n const CONTRAST_THEME = [\n RacineThemeColors.dataviz.map[\"1\"],\n RacineThemeColors.dataviz.map[\"2\"],\n RacineThemeColors.dataviz.map[\"3\"],\n RacineThemeColors.dataviz.map[\"4\"],\n RacineThemeColors.dataviz.map[\"5\"],\n RacineThemeColors.dataviz.map[\"6\"],\n RacineThemeColors.dataviz.map[\"4\"],\n RacineThemeColors.dataviz.map[\"5\"],\n RacineThemeColors.dataviz.map[\"6\"],\n RacineThemeColors.dataviz.map[\"7\"],\n RacineThemeColors.dataviz.map[\"8\"],\n RacineThemeColors.dataviz.map[\"9\"],\n RacineThemeColors.dataviz.map[\"10\"],\n ];\n\n const EXTENDED_THEME = [\n RacineThemeColors.dataviz.map[\"7\"],\n RacineThemeColors.dataviz.map[\"1\"],\n RacineThemeColors.dataviz.map[\"5\"],\n RacineThemeColors.dataviz.map[\"11\"],\n RacineThemeColors.dataviz.map[\"6\"],\n RacineThemeColors.dataviz.map[\"3\"],\n RacineThemeColors.dataviz.map[\"18\"],\n RacineThemeColors.dataviz.map[\"8\"],\n RacineThemeColors.dataviz.map[\"4\"],\n RacineThemeColors.dataviz.map[\"13\"],\n RacineThemeColors.dataviz.map[\"16\"],\n RacineThemeColors.dataviz.map[\"10\"],\n RacineThemeColors.dataviz.map[\"14\"],\n RacineThemeColors.dataviz.map[\"2\"],\n RacineThemeColors.dataviz.map[\"15\"],\n RacineThemeColors.dataviz.map[\"12\"],\n RacineThemeColors.dataviz.map[\"9\"],\n RacineThemeColors.dataviz.map[\"17\"],\n RacineThemeColors.dataviz.map[\"20\"],\n RacineThemeColors.dataviz.map[\"19\"],\n ];\n\n type ThemeKeys = \"COMPARE\" | \"CONTRAST\" | \"EXTENDED\" | \"DATAVIZROTATION\";\n\n const THEME_MAP: Record<ThemeKeys, any> = {\n COMPARE: COMPARE_THEME,\n CONTRAST: CONTRAST_THEME,\n EXTENDED: EXTENDED_THEME,\n DATAVIZROTATION: RacineThemeColors.dataviz.list,\n };\n\n return THEME_MAP[theme.toUpperCase() as ThemeKeys][index];\n};\n\nexport const useChartLabels = (\n legendLabels: TypeLegendLabels[],\n theme: TypeChartLegendTheme\n) => {\n const racineTheme = useTheme();\n const colors = racineTheme.colors;\n\n return legendLabels.map((label, i) => {\n const labelColor = label.color\n ? label.color\n : getSwatchColor(theme, i, colors);\n\n return (\n <Label key={`chart-legend-label-${i}`}>\n <Swatch bg={labelColor} data-qa-swatch=\"\" />\n <Text as=\"div\" fontSize={200} breakWord>\n {label.name}\n </Text>\n </Label>\n );\n });\n};\n","import * as React from \"react\";\nimport type {\n TypeStyledComponentsCommonProps,\n TypeSystemCommonProps,\n TypeSystemLayoutProps,\n} from \"@sproutsocial/seeds-react-system-props\";\n\n/** @deprecated legend themes will be handled automatically by the standard dataviz rotation in a future version */\nexport type TypeChartLegendTheme =\n | \"compare\"\n | \"contrast\"\n | \"extended\"\n | \"datavizRotation\";\nexport interface TypeLegendLabels {\n name: React.ReactNode;\n color?: string;\n}\nexport interface TypeChartLegendProps\n extends TypeStyledComponentsCommonProps,\n TypeSystemCommonProps,\n TypeSystemLayoutProps,\n Omit<React.ComponentPropsWithoutRef<\"div\">, \"color\"> {\n /** Inline or stacked y plots */\n stacked?: boolean;\n /** @deprecated legend themes will be handled automatically by the standard dataviz rotation in a future version */\n theme?: TypeChartLegendTheme;\n /** Array of names with optional color to display. If no color is specified, index of label will be used to determine color based on the theme. */\n legendLabels: TypeLegendLabels[];\n /** Orientation of the legend */\n orientation?: string;\n qa?: object;\n}\n","import ChartLegend from \"./ChartLegend\";\n\nexport default ChartLegend;\nexport { ChartLegend };\nexport * from \"./ChartLegendTypes\";\n"],"mappings":"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
|
|
1
|
+
{"version":3,"sources":["../../src/ChartLegend.tsx","../../src/styles.ts","../../src/useChartLabels.tsx","../../src/ChartLegendTypes.ts","../../src/index.ts"],"sourcesContent":["import * as React from \"react\";\nimport Container from \"./styles\";\nimport type { TypeChartLegendProps } from \"./ChartLegendTypes\";\nimport { useChartLabels } from \"./useChartLabels\";\n\nconst ChartLegend = ({\n legendLabels,\n stacked,\n theme = \"datavizRotation\",\n qa,\n ...rest\n}: TypeChartLegendProps) => {\n const chartLabels = useChartLabels(legendLabels, theme);\n\n return (\n <Container inline={!stacked} data-qa-chartlegend=\"\" qa={qa} {...rest}>\n {chartLabels}\n </Container>\n );\n};\n\nexport default ChartLegend;\n","import styled, { css } from \"styled-components\";\nimport { COMMON, LAYOUT } from \"@sproutsocial/seeds-react-system-props\";\nimport type { TypeChartLegendProps } from \"./ChartLegendTypes\";\nimport type {\n TypeSystemCommonProps,\n TypeSystemLayoutProps,\n} from \"@sproutsocial/seeds-react-system-props\";\n\nexport const Label = styled.span`\n display: flex;\n align-items: center;\n color: ${(props) => props.theme.colors.text.subtext};\n white-space: nowrap;\n text-transform: capitalize;\n`;\n\nexport const Swatch = styled.span<TypeSystemCommonProps>`\n margin-right: ${(props) => props.theme.space[300]};\n width: ${(props) => props.theme.space[350]};\n height: ${(props) => props.theme.space[350]};\n border-radius: 4px;\n\n ${COMMON}\n`;\n\nexport interface ChartLegendContainerTypes\n extends Omit<TypeChartLegendProps, \"stacked\" | \"legendLabels\">,\n TypeSystemCommonProps,\n TypeSystemLayoutProps {\n inline: boolean;\n}\n\nconst Container = styled.div<ChartLegendContainerTypes>`\n ${(props) =>\n props.inline &&\n css`\n display: flex;\n justify-content: center;\n\n ${Label} + ${Label} {\n margin-left: ${(props) => props.theme.space[450]};\n }\n `}\n\n ${COMMON}\n ${LAYOUT}\n`;\n\nLabel.displayName = \"ChartLegendLabel\";\nSwatch.displayName = \"ChartLegendSwatch\";\n\nexport default Container;\n","import React from \"react\";\nimport type {\n TypeChartLegendTheme,\n TypeLegendLabels,\n} from \"./ChartLegendTypes\";\nimport type { TypeColor } from \"@sproutsocial/seeds-react-theme\";\nimport { useTheme } from \"styled-components\";\nimport { Label, Swatch } from \"./styles\";\nimport { Text } from \"@sproutsocial/seeds-react-text\";\n\nconst getSwatchColor = (\n theme: TypeChartLegendTheme,\n index: number,\n RacineThemeColors: TypeColor\n) => {\n const COMPARE_THEME = [\n RacineThemeColors.dataviz.map[\"1\"],\n RacineThemeColors.dataviz.map[\"10\"],\n RacineThemeColors.dataviz.map[\"11\"],\n RacineThemeColors.dataviz.map[\"2\"],\n ];\n\n const CONTRAST_THEME = [\n RacineThemeColors.dataviz.map[\"1\"],\n RacineThemeColors.dataviz.map[\"2\"],\n RacineThemeColors.dataviz.map[\"3\"],\n RacineThemeColors.dataviz.map[\"4\"],\n RacineThemeColors.dataviz.map[\"5\"],\n RacineThemeColors.dataviz.map[\"6\"],\n RacineThemeColors.dataviz.map[\"4\"],\n RacineThemeColors.dataviz.map[\"5\"],\n RacineThemeColors.dataviz.map[\"6\"],\n RacineThemeColors.dataviz.map[\"7\"],\n RacineThemeColors.dataviz.map[\"8\"],\n RacineThemeColors.dataviz.map[\"9\"],\n RacineThemeColors.dataviz.map[\"10\"],\n ];\n\n const EXTENDED_THEME = [\n RacineThemeColors.dataviz.map[\"7\"],\n RacineThemeColors.dataviz.map[\"1\"],\n RacineThemeColors.dataviz.map[\"5\"],\n RacineThemeColors.dataviz.map[\"11\"],\n RacineThemeColors.dataviz.map[\"6\"],\n RacineThemeColors.dataviz.map[\"3\"],\n RacineThemeColors.dataviz.map[\"18\"],\n RacineThemeColors.dataviz.map[\"8\"],\n RacineThemeColors.dataviz.map[\"4\"],\n RacineThemeColors.dataviz.map[\"13\"],\n RacineThemeColors.dataviz.map[\"16\"],\n RacineThemeColors.dataviz.map[\"10\"],\n RacineThemeColors.dataviz.map[\"14\"],\n RacineThemeColors.dataviz.map[\"2\"],\n RacineThemeColors.dataviz.map[\"15\"],\n RacineThemeColors.dataviz.map[\"12\"],\n RacineThemeColors.dataviz.map[\"9\"],\n RacineThemeColors.dataviz.map[\"17\"],\n RacineThemeColors.dataviz.map[\"20\"],\n RacineThemeColors.dataviz.map[\"19\"],\n ];\n\n type ThemeKeys = \"COMPARE\" | \"CONTRAST\" | \"EXTENDED\" | \"DATAVIZROTATION\";\n\n const THEME_MAP: Record<ThemeKeys, any> = {\n COMPARE: COMPARE_THEME,\n CONTRAST: CONTRAST_THEME,\n EXTENDED: EXTENDED_THEME,\n DATAVIZROTATION: RacineThemeColors.dataviz.list,\n };\n\n return THEME_MAP[theme.toUpperCase() as ThemeKeys][index];\n};\n\nexport const useChartLabels = (\n legendLabels: TypeLegendLabels[],\n theme: TypeChartLegendTheme\n) => {\n const racineTheme = useTheme();\n const colors = racineTheme.colors;\n\n return legendLabels.map((label, i) => {\n const labelColor = label.color\n ? label.color\n : getSwatchColor(theme, i, colors);\n\n return (\n <Label key={`chart-legend-label-${i}`}>\n <Swatch bg={labelColor} data-qa-swatch=\"\" />\n <Text as=\"div\" fontSize={200} breakWord>\n {label.name}\n </Text>\n </Label>\n );\n });\n};\n","import * as React from \"react\";\nimport type {\n TypeStyledComponentsCommonProps,\n TypeSystemCommonProps,\n TypeSystemLayoutProps,\n} from \"@sproutsocial/seeds-react-system-props\";\n\n/** @deprecated legend themes will be handled automatically by the standard dataviz rotation in a future version */\nexport type TypeChartLegendTheme =\n | \"compare\"\n | \"contrast\"\n | \"extended\"\n | \"datavizRotation\";\nexport interface TypeLegendLabels {\n name: React.ReactNode;\n color?: string;\n}\nexport interface TypeChartLegendProps\n extends TypeStyledComponentsCommonProps,\n TypeSystemCommonProps,\n TypeSystemLayoutProps,\n Omit<React.ComponentPropsWithoutRef<\"div\">, \"color\"> {\n /** Inline or stacked y plots */\n stacked?: boolean;\n /** @deprecated legend themes will be handled automatically by the standard dataviz rotation in a future version */\n theme?: TypeChartLegendTheme;\n /** Array of names with optional color to display. If no color is specified, index of label will be used to determine color based on the theme. */\n legendLabels: TypeLegendLabels[];\n /** Orientation of the legend */\n orientation?: string;\n qa?: object;\n}\n","import ChartLegend from \"./ChartLegend\";\n\nexport default ChartLegend;\nexport { ChartLegend };\nexport * from \"./ChartLegendTypes\";\n"],"mappings":"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","names":["props","jsx"]}
|
package/dist/index.js
CHANGED
|
@@ -28,12 +28,12 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
29
|
|
|
30
30
|
// src/index.ts
|
|
31
|
-
var
|
|
32
|
-
__export(
|
|
31
|
+
var index_exports = {};
|
|
32
|
+
__export(index_exports, {
|
|
33
33
|
ChartLegend: () => ChartLegend_default,
|
|
34
|
-
default: () =>
|
|
34
|
+
default: () => index_default
|
|
35
35
|
});
|
|
36
|
-
module.exports = __toCommonJS(
|
|
36
|
+
module.exports = __toCommonJS(index_exports);
|
|
37
37
|
|
|
38
38
|
// src/ChartLegend.tsx
|
|
39
39
|
var React2 = require("react");
|
|
@@ -160,7 +160,7 @@ var ChartLegend_default = ChartLegend;
|
|
|
160
160
|
var React3 = require("react");
|
|
161
161
|
|
|
162
162
|
// src/index.ts
|
|
163
|
-
var
|
|
163
|
+
var index_default = ChartLegend_default;
|
|
164
164
|
// Annotate the CommonJS export names for ESM import in node:
|
|
165
165
|
0 && (module.exports = {
|
|
166
166
|
ChartLegend
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/ChartLegend.tsx","../src/styles.ts","../src/useChartLabels.tsx","../src/ChartLegendTypes.ts"],"sourcesContent":["import ChartLegend from \"./ChartLegend\";\n\nexport default ChartLegend;\nexport { ChartLegend };\nexport * from \"./ChartLegendTypes\";\n","import * as React from \"react\";\nimport Container from \"./styles\";\nimport type { TypeChartLegendProps } from \"./ChartLegendTypes\";\nimport { useChartLabels } from \"./useChartLabels\";\n\nconst ChartLegend = ({\n legendLabels,\n stacked,\n theme = \"datavizRotation\",\n qa,\n ...rest\n}: TypeChartLegendProps) => {\n const chartLabels = useChartLabels(legendLabels, theme);\n\n return (\n <Container inline={!stacked} data-qa-chartlegend=\"\" qa={qa} {...rest}>\n {chartLabels}\n </Container>\n );\n};\n\nexport default ChartLegend;\n","import styled, { css } from \"styled-components\";\nimport { COMMON, LAYOUT } from \"@sproutsocial/seeds-react-system-props\";\nimport type { TypeChartLegendProps } from \"./ChartLegendTypes\";\nimport type {\n TypeSystemCommonProps,\n TypeSystemLayoutProps,\n} from \"@sproutsocial/seeds-react-system-props\";\n\nexport const Label = styled.span`\n display: flex;\n align-items: center;\n color: ${(props) => props.theme.colors.text.subtext};\n white-space: nowrap;\n text-transform: capitalize;\n`;\n\nexport const Swatch = styled.span<TypeSystemCommonProps>`\n margin-right: ${(props) => props.theme.space[300]};\n width: ${(props) => props.theme.space[350]};\n height: ${(props) => props.theme.space[350]};\n border-radius: 4px;\n\n ${COMMON}\n`;\n\nexport interface ChartLegendContainerTypes\n extends Omit<TypeChartLegendProps, \"stacked\" | \"legendLabels\">,\n TypeSystemCommonProps,\n TypeSystemLayoutProps {\n inline: boolean;\n}\n\nconst Container = styled.div<ChartLegendContainerTypes>`\n ${(props) =>\n props.inline &&\n css`\n display: flex;\n justify-content: center;\n\n ${Label} + ${Label} {\n margin-left: ${(props) => props.theme.space[450]};\n }\n `}\n\n ${COMMON}\n ${LAYOUT}\n`;\n\nLabel.displayName = \"ChartLegendLabel\";\nSwatch.displayName = \"ChartLegendSwatch\";\n\nexport default Container;\n","import React from \"react\";\nimport type {\n TypeChartLegendTheme,\n TypeLegendLabels,\n} from \"./ChartLegendTypes\";\nimport type { TypeColor } from \"@sproutsocial/seeds-react-theme\";\nimport { useTheme } from \"styled-components\";\nimport { Label, Swatch } from \"./styles\";\nimport { Text } from \"@sproutsocial/seeds-react-text\";\n\nconst getSwatchColor = (\n theme: TypeChartLegendTheme,\n index: number,\n RacineThemeColors: TypeColor\n) => {\n const COMPARE_THEME = [\n RacineThemeColors.dataviz.map[\"1\"],\n RacineThemeColors.dataviz.map[\"10\"],\n RacineThemeColors.dataviz.map[\"11\"],\n RacineThemeColors.dataviz.map[\"2\"],\n ];\n\n const CONTRAST_THEME = [\n RacineThemeColors.dataviz.map[\"1\"],\n RacineThemeColors.dataviz.map[\"2\"],\n RacineThemeColors.dataviz.map[\"3\"],\n RacineThemeColors.dataviz.map[\"4\"],\n RacineThemeColors.dataviz.map[\"5\"],\n RacineThemeColors.dataviz.map[\"6\"],\n RacineThemeColors.dataviz.map[\"4\"],\n RacineThemeColors.dataviz.map[\"5\"],\n RacineThemeColors.dataviz.map[\"6\"],\n RacineThemeColors.dataviz.map[\"7\"],\n RacineThemeColors.dataviz.map[\"8\"],\n RacineThemeColors.dataviz.map[\"9\"],\n RacineThemeColors.dataviz.map[\"10\"],\n ];\n\n const EXTENDED_THEME = [\n RacineThemeColors.dataviz.map[\"7\"],\n RacineThemeColors.dataviz.map[\"1\"],\n RacineThemeColors.dataviz.map[\"5\"],\n RacineThemeColors.dataviz.map[\"11\"],\n RacineThemeColors.dataviz.map[\"6\"],\n RacineThemeColors.dataviz.map[\"3\"],\n RacineThemeColors.dataviz.map[\"18\"],\n RacineThemeColors.dataviz.map[\"8\"],\n RacineThemeColors.dataviz.map[\"4\"],\n RacineThemeColors.dataviz.map[\"13\"],\n RacineThemeColors.dataviz.map[\"16\"],\n RacineThemeColors.dataviz.map[\"10\"],\n RacineThemeColors.dataviz.map[\"14\"],\n RacineThemeColors.dataviz.map[\"2\"],\n RacineThemeColors.dataviz.map[\"15\"],\n RacineThemeColors.dataviz.map[\"12\"],\n RacineThemeColors.dataviz.map[\"9\"],\n RacineThemeColors.dataviz.map[\"17\"],\n RacineThemeColors.dataviz.map[\"20\"],\n RacineThemeColors.dataviz.map[\"19\"],\n ];\n\n type ThemeKeys = \"COMPARE\" | \"CONTRAST\" | \"EXTENDED\" | \"DATAVIZROTATION\";\n\n const THEME_MAP: Record<ThemeKeys, any> = {\n COMPARE: COMPARE_THEME,\n CONTRAST: CONTRAST_THEME,\n EXTENDED: EXTENDED_THEME,\n DATAVIZROTATION: RacineThemeColors.dataviz.list,\n };\n\n return THEME_MAP[theme.toUpperCase() as ThemeKeys][index];\n};\n\nexport const useChartLabels = (\n legendLabels: TypeLegendLabels[],\n theme: TypeChartLegendTheme\n) => {\n const racineTheme = useTheme();\n const colors = racineTheme.colors;\n\n return legendLabels.map((label, i) => {\n const labelColor = label.color\n ? label.color\n : getSwatchColor(theme, i, colors);\n\n return (\n <Label key={`chart-legend-label-${i}`}>\n <Swatch bg={labelColor} data-qa-swatch=\"\" />\n <Text as=\"div\" fontSize={200} breakWord>\n {label.name}\n </Text>\n </Label>\n );\n });\n};\n","import * as React from \"react\";\nimport type {\n TypeStyledComponentsCommonProps,\n TypeSystemCommonProps,\n TypeSystemLayoutProps,\n} from \"@sproutsocial/seeds-react-system-props\";\n\n/** @deprecated legend themes will be handled automatically by the standard dataviz rotation in a future version */\nexport type TypeChartLegendTheme =\n | \"compare\"\n | \"contrast\"\n | \"extended\"\n | \"datavizRotation\";\nexport interface TypeLegendLabels {\n name: React.ReactNode;\n color?: string;\n}\nexport interface TypeChartLegendProps\n extends TypeStyledComponentsCommonProps,\n TypeSystemCommonProps,\n TypeSystemLayoutProps,\n Omit<React.ComponentPropsWithoutRef<\"div\">, \"color\"> {\n /** Inline or stacked y plots */\n stacked?: boolean;\n /** @deprecated legend themes will be handled automatically by the standard dataviz rotation in a future version */\n theme?: TypeChartLegendTheme;\n /** Array of names with optional color to display. If no color is specified, index of label will be used to determine color based on the theme. */\n legendLabels: TypeLegendLabels[];\n /** Orientation of the legend */\n orientation?: string;\n qa?: object;\n}\n"],"mappings":"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
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/ChartLegend.tsx","../src/styles.ts","../src/useChartLabels.tsx","../src/ChartLegendTypes.ts"],"sourcesContent":["import ChartLegend from \"./ChartLegend\";\n\nexport default ChartLegend;\nexport { ChartLegend };\nexport * from \"./ChartLegendTypes\";\n","import * as React from \"react\";\nimport Container from \"./styles\";\nimport type { TypeChartLegendProps } from \"./ChartLegendTypes\";\nimport { useChartLabels } from \"./useChartLabels\";\n\nconst ChartLegend = ({\n legendLabels,\n stacked,\n theme = \"datavizRotation\",\n qa,\n ...rest\n}: TypeChartLegendProps) => {\n const chartLabels = useChartLabels(legendLabels, theme);\n\n return (\n <Container inline={!stacked} data-qa-chartlegend=\"\" qa={qa} {...rest}>\n {chartLabels}\n </Container>\n );\n};\n\nexport default ChartLegend;\n","import styled, { css } from \"styled-components\";\nimport { COMMON, LAYOUT } from \"@sproutsocial/seeds-react-system-props\";\nimport type { TypeChartLegendProps } from \"./ChartLegendTypes\";\nimport type {\n TypeSystemCommonProps,\n TypeSystemLayoutProps,\n} from \"@sproutsocial/seeds-react-system-props\";\n\nexport const Label = styled.span`\n display: flex;\n align-items: center;\n color: ${(props) => props.theme.colors.text.subtext};\n white-space: nowrap;\n text-transform: capitalize;\n`;\n\nexport const Swatch = styled.span<TypeSystemCommonProps>`\n margin-right: ${(props) => props.theme.space[300]};\n width: ${(props) => props.theme.space[350]};\n height: ${(props) => props.theme.space[350]};\n border-radius: 4px;\n\n ${COMMON}\n`;\n\nexport interface ChartLegendContainerTypes\n extends Omit<TypeChartLegendProps, \"stacked\" | \"legendLabels\">,\n TypeSystemCommonProps,\n TypeSystemLayoutProps {\n inline: boolean;\n}\n\nconst Container = styled.div<ChartLegendContainerTypes>`\n ${(props) =>\n props.inline &&\n css`\n display: flex;\n justify-content: center;\n\n ${Label} + ${Label} {\n margin-left: ${(props) => props.theme.space[450]};\n }\n `}\n\n ${COMMON}\n ${LAYOUT}\n`;\n\nLabel.displayName = \"ChartLegendLabel\";\nSwatch.displayName = \"ChartLegendSwatch\";\n\nexport default Container;\n","import React from \"react\";\nimport type {\n TypeChartLegendTheme,\n TypeLegendLabels,\n} from \"./ChartLegendTypes\";\nimport type { TypeColor } from \"@sproutsocial/seeds-react-theme\";\nimport { useTheme } from \"styled-components\";\nimport { Label, Swatch } from \"./styles\";\nimport { Text } from \"@sproutsocial/seeds-react-text\";\n\nconst getSwatchColor = (\n theme: TypeChartLegendTheme,\n index: number,\n RacineThemeColors: TypeColor\n) => {\n const COMPARE_THEME = [\n RacineThemeColors.dataviz.map[\"1\"],\n RacineThemeColors.dataviz.map[\"10\"],\n RacineThemeColors.dataviz.map[\"11\"],\n RacineThemeColors.dataviz.map[\"2\"],\n ];\n\n const CONTRAST_THEME = [\n RacineThemeColors.dataviz.map[\"1\"],\n RacineThemeColors.dataviz.map[\"2\"],\n RacineThemeColors.dataviz.map[\"3\"],\n RacineThemeColors.dataviz.map[\"4\"],\n RacineThemeColors.dataviz.map[\"5\"],\n RacineThemeColors.dataviz.map[\"6\"],\n RacineThemeColors.dataviz.map[\"4\"],\n RacineThemeColors.dataviz.map[\"5\"],\n RacineThemeColors.dataviz.map[\"6\"],\n RacineThemeColors.dataviz.map[\"7\"],\n RacineThemeColors.dataviz.map[\"8\"],\n RacineThemeColors.dataviz.map[\"9\"],\n RacineThemeColors.dataviz.map[\"10\"],\n ];\n\n const EXTENDED_THEME = [\n RacineThemeColors.dataviz.map[\"7\"],\n RacineThemeColors.dataviz.map[\"1\"],\n RacineThemeColors.dataviz.map[\"5\"],\n RacineThemeColors.dataviz.map[\"11\"],\n RacineThemeColors.dataviz.map[\"6\"],\n RacineThemeColors.dataviz.map[\"3\"],\n RacineThemeColors.dataviz.map[\"18\"],\n RacineThemeColors.dataviz.map[\"8\"],\n RacineThemeColors.dataviz.map[\"4\"],\n RacineThemeColors.dataviz.map[\"13\"],\n RacineThemeColors.dataviz.map[\"16\"],\n RacineThemeColors.dataviz.map[\"10\"],\n RacineThemeColors.dataviz.map[\"14\"],\n RacineThemeColors.dataviz.map[\"2\"],\n RacineThemeColors.dataviz.map[\"15\"],\n RacineThemeColors.dataviz.map[\"12\"],\n RacineThemeColors.dataviz.map[\"9\"],\n RacineThemeColors.dataviz.map[\"17\"],\n RacineThemeColors.dataviz.map[\"20\"],\n RacineThemeColors.dataviz.map[\"19\"],\n ];\n\n type ThemeKeys = \"COMPARE\" | \"CONTRAST\" | \"EXTENDED\" | \"DATAVIZROTATION\";\n\n const THEME_MAP: Record<ThemeKeys, any> = {\n COMPARE: COMPARE_THEME,\n CONTRAST: CONTRAST_THEME,\n EXTENDED: EXTENDED_THEME,\n DATAVIZROTATION: RacineThemeColors.dataviz.list,\n };\n\n return THEME_MAP[theme.toUpperCase() as ThemeKeys][index];\n};\n\nexport const useChartLabels = (\n legendLabels: TypeLegendLabels[],\n theme: TypeChartLegendTheme\n) => {\n const racineTheme = useTheme();\n const colors = racineTheme.colors;\n\n return legendLabels.map((label, i) => {\n const labelColor = label.color\n ? label.color\n : getSwatchColor(theme, i, colors);\n\n return (\n <Label key={`chart-legend-label-${i}`}>\n <Swatch bg={labelColor} data-qa-swatch=\"\" />\n <Text as=\"div\" fontSize={200} breakWord>\n {label.name}\n </Text>\n </Label>\n );\n });\n};\n","import * as React from \"react\";\nimport type {\n TypeStyledComponentsCommonProps,\n TypeSystemCommonProps,\n TypeSystemLayoutProps,\n} from \"@sproutsocial/seeds-react-system-props\";\n\n/** @deprecated legend themes will be handled automatically by the standard dataviz rotation in a future version */\nexport type TypeChartLegendTheme =\n | \"compare\"\n | \"contrast\"\n | \"extended\"\n | \"datavizRotation\";\nexport interface TypeLegendLabels {\n name: React.ReactNode;\n color?: string;\n}\nexport interface TypeChartLegendProps\n extends TypeStyledComponentsCommonProps,\n TypeSystemCommonProps,\n TypeSystemLayoutProps,\n Omit<React.ComponentPropsWithoutRef<\"div\">, \"color\"> {\n /** Inline or stacked y plots */\n stacked?: boolean;\n /** @deprecated legend themes will be handled automatically by the standard dataviz rotation in a future version */\n theme?: TypeChartLegendTheme;\n /** Array of names with optional color to display. If no color is specified, index of label will be used to determine color based on the theme. */\n legendLabels: TypeLegendLabels[];\n /** Orientation of the legend */\n orientation?: string;\n qa?: object;\n}\n"],"mappings":"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","names":["React","styled","props","import_styled_components","import_jsx_runtime","React"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sproutsocial/seeds-react-chart-legend",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "Seeds React ChartLegend",
|
|
5
5
|
"author": "Sprout Social, Inc.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -18,11 +18,11 @@
|
|
|
18
18
|
"test:watch": "jest --watch --coverage=false"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@sproutsocial/seeds-react-theme": "
|
|
22
|
-
"@sproutsocial/seeds-react-system-props": "
|
|
23
|
-
"@sproutsocial/seeds-react-box": "
|
|
24
|
-
"@sproutsocial/seeds-react-icon": "
|
|
25
|
-
"@sproutsocial/seeds-react-text": "
|
|
21
|
+
"@sproutsocial/seeds-react-theme": "^2.2.0",
|
|
22
|
+
"@sproutsocial/seeds-react-system-props": "^3.0.1",
|
|
23
|
+
"@sproutsocial/seeds-react-box": "^1.1.1",
|
|
24
|
+
"@sproutsocial/seeds-react-icon": "^1.1.1",
|
|
25
|
+
"@sproutsocial/seeds-react-text": "^1.3.0"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
28
|
"@types/react": "^18.0.0",
|