@onsvisual/svelte-components 1.0.44 → 1.0.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/dist/css/main.css +513 -2
- package/dist/datavis/BarChart/BarChart.stories.svelte +84 -84
- package/dist/datavis/BarChart/docs/component.md +19 -19
- package/dist/datavis/Chart/Chart.stories.svelte +128 -128
- package/dist/datavis/Chart/docs/component.md +31 -31
- package/dist/datavis/Chart/docs/example.md +28 -28
- package/dist/datavis/ColumnChart/ColumnChart.stories.svelte +84 -84
- package/dist/datavis/ColumnChart/docs/component.md +19 -19
- package/dist/datavis/DataCard/DataCard.stories.svelte +45 -45
- package/dist/datavis/DataCard/DataCard.svelte +70 -70
- package/dist/datavis/DataCard/Sparkline.svelte +117 -117
- package/dist/datavis/DataCard/docs/component.md +20 -20
- package/dist/datavis/DataCard/docs/example.md +25 -25
- package/dist/datavis/DotPlotChart/DotPlotChart.stories.svelte +40 -40
- package/dist/datavis/DotPlotChart/docs/component.md +19 -19
- package/dist/datavis/LineChart/LineChart.stories.svelte +64 -64
- package/dist/datavis/LineChart/docs/component.md +31 -31
- package/dist/datavis/ScatterChart/ScatterChart.stories.svelte +55 -55
- package/dist/datavis/ScatterChart/docs/component.md +53 -53
- package/dist/datavis/Table/Table.stories.svelte +48 -48
- package/dist/datavis/Table/Table.svelte +161 -161
- package/dist/datavis/Table/docs/component.md +20 -20
- package/dist/datavis/demo-data/data-scatter.js +40 -40
- package/dist/datavis/demo-data/data.js +18 -18
- package/dist/datavis/intro.mdx +21 -21
- package/dist/decorators/Blockquote/Blockquote.stories.svelte +25 -25
- package/dist/decorators/Blockquote/Blockquote.svelte +27 -27
- package/dist/decorators/Blockquote/docs/component.md +10 -10
- package/dist/decorators/Divider/Divider.stories.svelte +29 -29
- package/dist/decorators/Divider/Divider.svelte +52 -52
- package/dist/decorators/Divider/docs/component.md +12 -12
- package/dist/decorators/Em/Em.stories.svelte +30 -30
- package/dist/decorators/Em/Em.svelte +58 -58
- package/dist/decorators/Em/docs/component.md +12 -12
- package/dist/decorators/Icon/Icon.stories.svelte +27 -27
- package/dist/decorators/Icon/Icon.svelte +101 -93
- package/dist/decorators/Icon/Icon.svelte.d.ts +2 -2
- package/dist/decorators/Icon/docs/component.md +10 -10
- package/dist/decorators/Indent/Indent.stories.svelte +22 -22
- package/dist/decorators/Indent/Indent.svelte +3 -3
- package/dist/decorators/Indent/docs/component.md +10 -10
- package/dist/index.js +86 -86
- package/dist/inputs/Button/Button.stories.svelte +70 -70
- package/dist/inputs/Button/Button.svelte +152 -152
- package/dist/inputs/Button/Button.svelte.d.ts +2 -2
- package/dist/inputs/Button/docs/component.md +17 -17
- package/dist/inputs/ButtonGroup/ButtonGroup.stories.svelte +40 -40
- package/dist/inputs/ButtonGroup/ButtonGroup.svelte +57 -57
- package/dist/inputs/ButtonGroup/ButtonGroupItem.svelte +101 -101
- package/dist/inputs/ButtonGroup/docs/component.md +23 -23
- package/dist/inputs/Checkbox/Checkbox.stories.svelte +34 -34
- package/dist/inputs/Checkbox/Checkbox.svelte +180 -180
- package/dist/inputs/Checkbox/docs/component.md +14 -14
- package/dist/inputs/Checkboxes/Checkboxes.stories.svelte +34 -34
- package/dist/inputs/Checkboxes/Checkboxes.svelte +62 -62
- package/dist/inputs/Checkboxes/docs/component.md +20 -20
- package/dist/inputs/Checkboxes/docs/example.md +16 -16
- package/dist/inputs/Dropdown/Dropdown.stories.svelte +54 -54
- package/dist/inputs/Dropdown/Dropdown.svelte +66 -66
- package/dist/inputs/Dropdown/docs/component.md +22 -22
- package/dist/inputs/ErrorPanel/ErrorPanel.stories.svelte +25 -25
- package/dist/inputs/ErrorPanel/ErrorPanel.svelte +24 -24
- package/dist/inputs/ErrorPanel/docs/component.md +14 -14
- package/dist/inputs/ErrorSummary/ErrorSummary.stories.svelte +34 -34
- package/dist/inputs/ErrorSummary/ErrorSummary.svelte +47 -47
- package/dist/inputs/ErrorSummary/docs/component.md +17 -17
- package/dist/inputs/ErrorSummary/docs/example.md +12 -12
- package/dist/inputs/Input/Input.stories.svelte +73 -73
- package/dist/inputs/Input/Input.svelte +151 -151
- package/dist/inputs/Input/docs/component.md +16 -16
- package/dist/inputs/Radios/Radio.svelte +90 -90
- package/dist/inputs/Radios/Radios.stories.svelte +51 -51
- package/dist/inputs/Radios/Radios.svelte +62 -62
- package/dist/inputs/Radios/docs/component.md +24 -24
- package/dist/inputs/Radios/docs/example.md +21 -21
- package/dist/inputs/Select/Select.stories.svelte +63 -63
- package/dist/inputs/Select/Select.svelte +326 -326
- package/dist/inputs/Select/docs/component.md +27 -27
- package/dist/inputs/Textarea/Textarea.stories.svelte +40 -40
- package/dist/inputs/Textarea/Textarea.svelte +113 -113
- package/dist/inputs/Textarea/docs/component.md +16 -16
- package/dist/inputs/Toolbar/HelpModal.svelte +234 -234
- package/dist/inputs/Toolbar/ToolControl.svelte +23 -23
- package/dist/inputs/Toolbar/ToolControls.svelte +9 -9
- package/dist/inputs/Toolbar/Toolbar.stories.svelte +148 -148
- package/dist/inputs/Toolbar/Toolbar.svelte +70 -70
- package/dist/inputs/Toolbar/ToolbarButton.svelte +184 -184
- package/dist/inputs/Toolbar/ToolbarDivider.svelte +29 -29
- package/dist/inputs/Toolbar/ToolbarIcon.svelte +106 -106
- package/dist/inputs/Toolbar/ToolbarsContainer.svelte +69 -69
- package/dist/inputs/Toolbar/docs/component.md +101 -101
- package/dist/intro.mdx +66 -66
- package/dist/js/menuOptions.js +14 -14
- package/dist/js/utils.js +133 -133
- package/dist/js/withParams.js +43 -43
- package/dist/layout/Accordion/Accordion.stories.svelte +30 -30
- package/dist/layout/Accordion/Accordion.svelte +55 -55
- package/dist/layout/Accordion/AccordionItem.svelte +51 -51
- package/dist/layout/Accordion/accordion.js +64 -64
- package/dist/layout/Accordion/details.js +83 -83
- package/dist/layout/Accordion/docs/component.md +19 -19
- package/dist/layout/AnalyticsBanner/AnalyticsBanner.stories.svelte +16 -16
- package/dist/layout/AnalyticsBanner/AnalyticsBanner.svelte +314 -314
- package/dist/layout/AnalyticsBanner/docs/component.md +44 -44
- package/dist/layout/BackLink/BackLink.stories.svelte +16 -16
- package/dist/layout/BackLink/BackLink.svelte +30 -30
- package/dist/layout/BackLink/docs/component.md +12 -12
- package/dist/layout/Breadcrumb/Breadcrumb.stories.svelte +31 -31
- package/dist/layout/Breadcrumb/Breadcrumb.svelte +69 -69
- package/dist/layout/Breadcrumb/docs/component.md +15 -15
- package/dist/layout/Card/Card.stories.svelte +39 -39
- package/dist/layout/Card/Card.svelte +127 -127
- package/dist/layout/Card/docs/component.md +14 -14
- package/dist/layout/Card/docs/eg-images.md +27 -27
- package/dist/layout/Card/docs/eg-links.md +12 -12
- package/dist/layout/Card/docs/eg-spans.md +12 -12
- package/dist/layout/Contents/Contents.stories.svelte +27 -27
- package/dist/layout/Contents/Contents.svelte +51 -51
- package/dist/layout/Contents/docs/component.md +18 -18
- package/dist/layout/DescriptionList/DescriptionList.stories.svelte +22 -22
- package/dist/layout/DescriptionList/DescriptionList.svelte +59 -59
- package/dist/layout/DescriptionList/docs/component.md +18 -18
- package/dist/layout/Details/Details.stories.svelte +32 -32
- package/dist/layout/Details/Details.svelte +75 -75
- package/dist/layout/Details/docs/component.md +14 -14
- package/dist/layout/DocumentList/Document.svelte +103 -103
- package/dist/layout/DocumentList/DocumentList.stories.svelte +88 -88
- package/dist/layout/DocumentList/DocumentList.svelte +33 -33
- package/dist/layout/DocumentList/docs/component.md +28 -28
- package/dist/layout/DocumentList/docs/example.md +23 -23
- package/dist/layout/ErrorPage/ErrorPage.stories.svelte +18 -18
- package/dist/layout/ErrorPage/ErrorPage.svelte +48 -48
- package/dist/layout/ErrorPage/docs/component.md +13 -13
- package/dist/layout/Footer/Footer.stories.svelte +24 -24
- package/dist/layout/Footer/Footer.svelte +366 -366
- package/dist/layout/Footer/docs/component.md +10 -10
- package/dist/layout/Grid/Grid.stories.svelte +50 -50
- package/dist/layout/Grid/Grid.svelte +117 -117
- package/dist/layout/Grid/GridCell.svelte +65 -65
- package/dist/layout/Grid/docs/component.md +14 -14
- package/dist/layout/Header/Header.stories.svelte +26 -26
- package/dist/layout/Header/Header.svelte +875 -875
- package/dist/layout/Header/docs/component.md +11 -11
- package/dist/layout/Hero/Hero.stories.svelte +79 -79
- package/dist/layout/Hero/Hero.svelte +364 -364
- package/dist/layout/Hero/docs/component.md +14 -14
- package/dist/layout/Highlight/Highlight.stories.svelte +29 -29
- package/dist/layout/Highlight/Highlight.svelte +77 -77
- package/dist/layout/Highlight/docs/component.md +12 -12
- package/dist/layout/Image/Image.stories.svelte +23 -23
- package/dist/layout/Image/Image.svelte +29 -29
- package/dist/layout/Image/docs/component.md +15 -15
- package/dist/layout/List/Li.svelte +3 -3
- package/dist/layout/List/List.stories.svelte +40 -40
- package/dist/layout/List/List.svelte +46 -46
- package/dist/layout/List/docs/component.md +14 -14
- package/dist/layout/List/docs/example.md +12 -12
- package/dist/layout/NavSections/NavSection.svelte +90 -90
- package/dist/layout/NavSections/NavSections.stories.svelte +51 -51
- package/dist/layout/NavSections/NavSections.svelte +160 -160
- package/dist/layout/NavSections/docs/component.md +25 -25
- package/dist/layout/Notice/Notice.stories.svelte +61 -61
- package/dist/layout/Notice/Notice.svelte +56 -56
- package/dist/layout/Notice/docs/component.md +14 -14
- package/dist/layout/PhaseBanner/PhaseBanner.stories.svelte +24 -24
- package/dist/layout/PhaseBanner/PhaseBanner.svelte +66 -66
- package/dist/layout/PhaseBanner/docs/component.md +14 -14
- package/dist/layout/RelatedContent/RelatedContent.stories.svelte +36 -36
- package/dist/layout/RelatedContent/RelatedContent.svelte +54 -54
- package/dist/layout/RelatedContent/docs/component.md +16 -16
- package/dist/layout/Scroller/Scroller.stories.svelte +60 -60
- package/dist/layout/Scroller/Scroller.svelte +368 -368
- package/dist/layout/Scroller/ScrollerSection.svelte +70 -70
- package/dist/layout/Scroller/docs/component.md +39 -39
- package/dist/layout/Section/Section.stories.svelte +33 -33
- package/dist/layout/Section/Section.svelte +60 -60
- package/dist/layout/Section/docs/component.md +12 -12
- package/dist/layout/ShareButtons/ShareButtons.stories.svelte +20 -20
- package/dist/layout/ShareButtons/ShareButtons.svelte +131 -131
- package/dist/layout/ShareButtons/docs/component.md +14 -14
- package/dist/layout/SkipLink/SkipLink.stories.svelte +16 -16
- package/dist/layout/SkipLink/SkipLink.svelte +9 -9
- package/dist/layout/SkipLink/docs/component.md +11 -11
- package/dist/layout/Summary/Summary.stories.svelte +21 -21
- package/dist/layout/Summary/Summary.svelte +60 -60
- package/dist/layout/Summary/docs/component.md +17 -17
- package/dist/layout/Tabs/Tab.svelte +53 -53
- package/dist/layout/Tabs/Tabs.stories.svelte +29 -29
- package/dist/layout/Tabs/Tabs.svelte +89 -89
- package/dist/layout/Tabs/docs/component.md +16 -16
- package/dist/layout/Tabs/tabs.js +302 -302
- package/dist/layout/Timeline/Timeline.stories.svelte +44 -44
- package/dist/layout/Timeline/Timeline.svelte +17 -17
- package/dist/layout/Timeline/TimelineItem.svelte +14 -14
- package/dist/layout/Timeline/docs/component.md +27 -27
- package/dist/layout/Timeline/docs/example.md +20 -20
- package/dist/templates/EmbedArticle/EmbedArticle.stories.svelte +72 -72
- package/dist/templates/EmbedArticle/docs/component.md +56 -56
- package/dist/templates/FeatureArticle/FeatureArticle.stories.svelte +150 -150
- package/dist/templates/FeatureArticle/docs/component.md +125 -125
- package/dist/templates/StandardArticle/StandardArticle.stories.svelte +86 -86
- package/dist/templates/StandardArticle/docs/component.md +76 -76
- package/dist/templates/intro.mdx +18 -18
- package/dist/wrappers/Container/Container.stories.svelte +38 -38
- package/dist/wrappers/Container/Container.svelte +77 -77
- package/dist/wrappers/Container/docs/component.md +12 -12
- package/dist/wrappers/Embed/Embed.stories.svelte +24 -24
- package/dist/wrappers/Embed/Embed.svelte +44 -44
- package/dist/wrappers/Embed/docs/component.md +15 -15
- package/dist/wrappers/LazyLoad/LazyLoad.stories.svelte +37 -37
- package/dist/wrappers/LazyLoad/LazyLoad.svelte +50 -50
- package/dist/wrappers/LazyLoad/docs/component.md +29 -29
- package/dist/wrappers/Main/Main.stories.svelte +24 -24
- package/dist/wrappers/Main/Main.svelte +11 -11
- package/dist/wrappers/Main/docs/component.md +16 -16
- package/dist/wrappers/Observe/Observe.stories.svelte +29 -29
- package/dist/wrappers/Observe/Observe.svelte +40 -40
- package/dist/wrappers/Observe/docs/component.md +22 -22
- package/dist/wrappers/Theme/Theme.stories.svelte +70 -70
- package/dist/wrappers/Theme/Theme.svelte +76 -76
- package/dist/wrappers/Theme/docs/component.md +10 -10
- package/dist/wrappers/Theme/themes.js +70 -70
- package/package.json +88 -88
|
@@ -1,84 +1,84 @@
|
|
|
1
|
-
<script module>
|
|
2
|
-
import { defineMeta } from "@storybook/addon-svelte-csf";
|
|
3
|
-
import { withComponentDocs } from "../../js/withParams.js";
|
|
4
|
-
import { BarChart } from "@onsvisual/svelte-charts";
|
|
5
|
-
import data from "../demo-data/data.js";
|
|
6
|
-
import componentDocs from "./docs/component.md?raw";
|
|
7
|
-
|
|
8
|
-
const { Story } = defineMeta({
|
|
9
|
-
title: "Data visualisation/BarChart",
|
|
10
|
-
component: BarChart,
|
|
11
|
-
tags: ["autodocs"],
|
|
12
|
-
argTypes: {
|
|
13
|
-
mode: {
|
|
14
|
-
options: ["default", "stacked", "grouped", "comparison", "marker"],
|
|
15
|
-
control: { type: "select" }
|
|
16
|
-
}
|
|
17
|
-
},
|
|
18
|
-
parameters: withComponentDocs(componentDocs)
|
|
19
|
-
});
|
|
20
|
-
</script>
|
|
21
|
-
|
|
22
|
-
<Story
|
|
23
|
-
name="Default"
|
|
24
|
-
args={{
|
|
25
|
-
data: data.filter((d) => d.group == "apples"),
|
|
26
|
-
xKey: "value",
|
|
27
|
-
yKey: "year",
|
|
28
|
-
title: "Simple bar chart",
|
|
29
|
-
footer: "Source: ONS.",
|
|
30
|
-
mode: "default"
|
|
31
|
-
}}
|
|
32
|
-
/>
|
|
33
|
-
|
|
34
|
-
<Story
|
|
35
|
-
name="Stacked bars"
|
|
36
|
-
args={{
|
|
37
|
-
data,
|
|
38
|
-
xKey: "value",
|
|
39
|
-
yKey: "year",
|
|
40
|
-
zKey: "group",
|
|
41
|
-
title: "Stacked bar chart",
|
|
42
|
-
footer: "Source: ONS.",
|
|
43
|
-
mode: "default"
|
|
44
|
-
}}
|
|
45
|
-
/>
|
|
46
|
-
|
|
47
|
-
<Story
|
|
48
|
-
name="Grouped bars"
|
|
49
|
-
args={{
|
|
50
|
-
data,
|
|
51
|
-
xKey: "value",
|
|
52
|
-
yKey: "year",
|
|
53
|
-
zKey: "group",
|
|
54
|
-
title: "Grouped bar chart",
|
|
55
|
-
footer: "Source: ONS.",
|
|
56
|
-
mode: "grouped"
|
|
57
|
-
}}
|
|
58
|
-
/>
|
|
59
|
-
|
|
60
|
-
<Story
|
|
61
|
-
name="Comparison markers"
|
|
62
|
-
args={{
|
|
63
|
-
data,
|
|
64
|
-
xKey: "value",
|
|
65
|
-
yKey: "year",
|
|
66
|
-
zKey: "group",
|
|
67
|
-
title: "Comparison marker chart",
|
|
68
|
-
footer: "Source: ONS.",
|
|
69
|
-
mode: "comparison"
|
|
70
|
-
}}
|
|
71
|
-
/>
|
|
72
|
-
|
|
73
|
-
<Story
|
|
74
|
-
name="Barcode"
|
|
75
|
-
args={{
|
|
76
|
-
data,
|
|
77
|
-
xKey: "value",
|
|
78
|
-
yKey: "year",
|
|
79
|
-
zKey: "group",
|
|
80
|
-
title: "Barcode chart",
|
|
81
|
-
footer: "Source: ONS.",
|
|
82
|
-
mode: "marker"
|
|
83
|
-
}}
|
|
84
|
-
/>
|
|
1
|
+
<script module>
|
|
2
|
+
import { defineMeta } from "@storybook/addon-svelte-csf";
|
|
3
|
+
import { withComponentDocs } from "../../js/withParams.js";
|
|
4
|
+
import { BarChart } from "@onsvisual/svelte-charts";
|
|
5
|
+
import data from "../demo-data/data.js";
|
|
6
|
+
import componentDocs from "./docs/component.md?raw";
|
|
7
|
+
|
|
8
|
+
const { Story } = defineMeta({
|
|
9
|
+
title: "Data visualisation/BarChart",
|
|
10
|
+
component: BarChart,
|
|
11
|
+
tags: ["autodocs"],
|
|
12
|
+
argTypes: {
|
|
13
|
+
mode: {
|
|
14
|
+
options: ["default", "stacked", "grouped", "comparison", "marker"],
|
|
15
|
+
control: { type: "select" }
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
parameters: withComponentDocs(componentDocs)
|
|
19
|
+
});
|
|
20
|
+
</script>
|
|
21
|
+
|
|
22
|
+
<Story
|
|
23
|
+
name="Default"
|
|
24
|
+
args={{
|
|
25
|
+
data: data.filter((d) => d.group == "apples"),
|
|
26
|
+
xKey: "value",
|
|
27
|
+
yKey: "year",
|
|
28
|
+
title: "Simple bar chart",
|
|
29
|
+
footer: "Source: ONS.",
|
|
30
|
+
mode: "default"
|
|
31
|
+
}}
|
|
32
|
+
/>
|
|
33
|
+
|
|
34
|
+
<Story
|
|
35
|
+
name="Stacked bars"
|
|
36
|
+
args={{
|
|
37
|
+
data,
|
|
38
|
+
xKey: "value",
|
|
39
|
+
yKey: "year",
|
|
40
|
+
zKey: "group",
|
|
41
|
+
title: "Stacked bar chart",
|
|
42
|
+
footer: "Source: ONS.",
|
|
43
|
+
mode: "default"
|
|
44
|
+
}}
|
|
45
|
+
/>
|
|
46
|
+
|
|
47
|
+
<Story
|
|
48
|
+
name="Grouped bars"
|
|
49
|
+
args={{
|
|
50
|
+
data,
|
|
51
|
+
xKey: "value",
|
|
52
|
+
yKey: "year",
|
|
53
|
+
zKey: "group",
|
|
54
|
+
title: "Grouped bar chart",
|
|
55
|
+
footer: "Source: ONS.",
|
|
56
|
+
mode: "grouped"
|
|
57
|
+
}}
|
|
58
|
+
/>
|
|
59
|
+
|
|
60
|
+
<Story
|
|
61
|
+
name="Comparison markers"
|
|
62
|
+
args={{
|
|
63
|
+
data,
|
|
64
|
+
xKey: "value",
|
|
65
|
+
yKey: "year",
|
|
66
|
+
zKey: "group",
|
|
67
|
+
title: "Comparison marker chart",
|
|
68
|
+
footer: "Source: ONS.",
|
|
69
|
+
mode: "comparison"
|
|
70
|
+
}}
|
|
71
|
+
/>
|
|
72
|
+
|
|
73
|
+
<Story
|
|
74
|
+
name="Barcode"
|
|
75
|
+
args={{
|
|
76
|
+
data,
|
|
77
|
+
xKey: "value",
|
|
78
|
+
yKey: "year",
|
|
79
|
+
zKey: "group",
|
|
80
|
+
title: "Barcode chart",
|
|
81
|
+
footer: "Source: ONS.",
|
|
82
|
+
mode: "marker"
|
|
83
|
+
}}
|
|
84
|
+
/>
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
A bar chart component with various modes, plus animation and events.
|
|
2
|
-
|
|
3
|
-
Note: This component is part of the **@onsvisual/svelte-charts** library. See [more examples here](https://onsvisual.github.io/svelte-charts/).
|
|
4
|
-
|
|
5
|
-
<!-- prettier-ignore -->
|
|
6
|
-
```html
|
|
7
|
-
<script>
|
|
8
|
-
import { BarChart } from "@onsvisual/svelte-charts";
|
|
9
|
-
|
|
10
|
-
const data = [
|
|
11
|
-
{ year: 2017, value: 320 },
|
|
12
|
-
{ year: 2018, value: 640 },
|
|
13
|
-
{ year: 2019, value: 1600 },
|
|
14
|
-
{ year: 2020, value: 3840 },
|
|
15
|
-
];
|
|
16
|
-
</script>
|
|
17
|
-
|
|
18
|
-
<BarChart {data} xKey="value" yKey="year" title="Bar chart example" footer="Source: ONS." />
|
|
19
|
-
```
|
|
1
|
+
A bar chart component with various modes, plus animation and events.
|
|
2
|
+
|
|
3
|
+
Note: This component is part of the **@onsvisual/svelte-charts** library. See [more examples here](https://onsvisual.github.io/svelte-charts/).
|
|
4
|
+
|
|
5
|
+
<!-- prettier-ignore -->
|
|
6
|
+
```html
|
|
7
|
+
<script>
|
|
8
|
+
import { BarChart } from "@onsvisual/svelte-charts";
|
|
9
|
+
|
|
10
|
+
const data = [
|
|
11
|
+
{ year: 2017, value: 320 },
|
|
12
|
+
{ year: 2018, value: 640 },
|
|
13
|
+
{ year: 2019, value: 1600 },
|
|
14
|
+
{ year: 2020, value: 3840 },
|
|
15
|
+
];
|
|
16
|
+
</script>
|
|
17
|
+
|
|
18
|
+
<BarChart {data} xKey="value" yKey="year" title="Bar chart example" footer="Source: ONS." />
|
|
19
|
+
```
|
|
@@ -1,128 +1,128 @@
|
|
|
1
|
-
<script module>
|
|
2
|
-
import { defineMeta } from "@storybook/addon-svelte-csf";
|
|
3
|
-
import { withComponentDocs, withStoryDocs } from "../../js/withParams.js";
|
|
4
|
-
import { Chart } from "@onsvisual/svelte-charts";
|
|
5
|
-
import componentDocs from "./docs/component.md?raw";
|
|
6
|
-
import exampleDocs from "./docs/example.md?raw";
|
|
7
|
-
|
|
8
|
-
const barData = [
|
|
9
|
-
{ x: 5315, y: "Portsmouth" },
|
|
10
|
-
{ x: 5070, y: "Southampton" },
|
|
11
|
-
{ x: 4596, y: "Slough" },
|
|
12
|
-
{ x: 3969, y: "Reading" },
|
|
13
|
-
{ x: 3522, y: "Brighton and Hove" }
|
|
14
|
-
];
|
|
15
|
-
const lineData = [
|
|
16
|
-
{ z: "West Oxfordshire", x: "2002", y: 95961 },
|
|
17
|
-
{ z: "West Oxfordshire", x: "2003", y: 97083 },
|
|
18
|
-
{ z: "West Oxfordshire", x: "2004", y: 98038 },
|
|
19
|
-
{ z: "West Oxfordshire", x: "2005", y: 98869 },
|
|
20
|
-
{ z: "West Oxfordshire", x: "2006", y: 100316 },
|
|
21
|
-
{ z: "West Oxfordshire", x: "2007", y: 102166 },
|
|
22
|
-
{ z: "West Oxfordshire", x: "2008", y: 103016 },
|
|
23
|
-
{ z: "West Oxfordshire", x: "2009", y: 103824 },
|
|
24
|
-
{ z: "West Oxfordshire", x: "2010", y: 104706 },
|
|
25
|
-
{ z: "West Oxfordshire", x: "2011", y: 105442 },
|
|
26
|
-
{ z: "West Oxfordshire", x: "2012", y: 107164 },
|
|
27
|
-
{ z: "West Oxfordshire", x: "2013", y: 107945 },
|
|
28
|
-
{ z: "West Oxfordshire", x: "2014", y: 108095 },
|
|
29
|
-
{ z: "West Oxfordshire", x: "2015", y: 108609 },
|
|
30
|
-
{ z: "West Oxfordshire", x: "2016", y: 108748 },
|
|
31
|
-
{ z: "West Oxfordshire", x: "2017", y: 109266 },
|
|
32
|
-
{ z: "West Oxfordshire", x: "2018", y: 109800 },
|
|
33
|
-
{ z: "West Oxfordshire", x: "2019", y: 110643 },
|
|
34
|
-
{ z: "West Oxfordshire", x: "2020", y: 111758 },
|
|
35
|
-
{ z: "South Oxfordshire", x: "2002", y: 128754 },
|
|
36
|
-
{ z: "South Oxfordshire", x: "2003", y: 128920 },
|
|
37
|
-
{ z: "South Oxfordshire", x: "2004", y: 129359 },
|
|
38
|
-
{ z: "South Oxfordshire", x: "2005", y: 130050 },
|
|
39
|
-
{ z: "South Oxfordshire", x: "2006", y: 130676 },
|
|
40
|
-
{ z: "South Oxfordshire", x: "2007", y: 131626 },
|
|
41
|
-
{ z: "South Oxfordshire", x: "2008", y: 132611 },
|
|
42
|
-
{ z: "South Oxfordshire", x: "2009", y: 133466 },
|
|
43
|
-
{ z: "South Oxfordshire", x: "2010", y: 133915 },
|
|
44
|
-
{ z: "South Oxfordshire", x: "2011", y: 134961 },
|
|
45
|
-
{ z: "South Oxfordshire", x: "2012", y: 135722 },
|
|
46
|
-
{ z: "South Oxfordshire", x: "2013", y: 136328 },
|
|
47
|
-
{ z: "South Oxfordshire", x: "2014", y: 137477 },
|
|
48
|
-
{ z: "South Oxfordshire", x: "2015", y: 138177 },
|
|
49
|
-
{ z: "South Oxfordshire", x: "2016", y: 139156 },
|
|
50
|
-
{ z: "South Oxfordshire", x: "2017", y: 139767 },
|
|
51
|
-
{ z: "South Oxfordshire", x: "2018", y: 140504 },
|
|
52
|
-
{ z: "South Oxfordshire", x: "2019", y: 142057 },
|
|
53
|
-
{ z: "South Oxfordshire", x: "2020", y: 143782 },
|
|
54
|
-
{ z: "Winchester", x: "2002", y: 107844 },
|
|
55
|
-
{ z: "Winchester", x: "2003", y: 108515 },
|
|
56
|
-
{ z: "Winchester", x: "2004", y: 109179 },
|
|
57
|
-
{ z: "Winchester", x: "2005", y: 109947 },
|
|
58
|
-
{ z: "Winchester", x: "2006", y: 110628 },
|
|
59
|
-
{ z: "Winchester", x: "2007", y: 111820 },
|
|
60
|
-
{ z: "Winchester", x: "2008", y: 113267 },
|
|
61
|
-
{ z: "Winchester", x: "2009", y: 114505 },
|
|
62
|
-
{ z: "Winchester", x: "2010", y: 115789 },
|
|
63
|
-
{ z: "Winchester", x: "2011", y: 116820 },
|
|
64
|
-
{ z: "Winchester", x: "2012", y: 118074 },
|
|
65
|
-
{ z: "Winchester", x: "2013", y: 119037 },
|
|
66
|
-
{ z: "Winchester", x: "2014", y: 120290 },
|
|
67
|
-
{ z: "Winchester", x: "2015", y: 121734 },
|
|
68
|
-
{ z: "Winchester", x: "2016", y: 123100 },
|
|
69
|
-
{ z: "Winchester", x: "2017", y: 123879 },
|
|
70
|
-
{ z: "Winchester", x: "2018", y: 124295 },
|
|
71
|
-
{ z: "Winchester", x: "2019", y: 124859 },
|
|
72
|
-
{ z: "Winchester", x: "2020", y: 125925 }
|
|
73
|
-
];
|
|
74
|
-
|
|
75
|
-
const { Story } = defineMeta({
|
|
76
|
-
title: "Data visualisation/Chart",
|
|
77
|
-
component: Chart,
|
|
78
|
-
tags: ["autodocs"],
|
|
79
|
-
argTypes: {},
|
|
80
|
-
parameters: withComponentDocs(componentDocs)
|
|
81
|
-
});
|
|
82
|
-
</script>
|
|
83
|
-
|
|
84
|
-
<Story
|
|
85
|
-
name="Bar"
|
|
86
|
-
args={{
|
|
87
|
-
type: "bar",
|
|
88
|
-
data: barData,
|
|
89
|
-
options: {
|
|
90
|
-
id: "chart-density",
|
|
91
|
-
title: "Densest local authorities in the South East, 2020",
|
|
92
|
-
footer: "Source: Office for National Statistics",
|
|
93
|
-
"padding-left": "120"
|
|
94
|
-
}
|
|
95
|
-
}}
|
|
96
|
-
/>
|
|
97
|
-
|
|
98
|
-
<Story
|
|
99
|
-
name="Bar, robo-journalism case"
|
|
100
|
-
args={{
|
|
101
|
-
section: {
|
|
102
|
-
id: "chart-density",
|
|
103
|
-
chartType: "bar",
|
|
104
|
-
data: barData,
|
|
105
|
-
title: "Densest local authorities in the South East, 2020",
|
|
106
|
-
footer: "Source: Office for National Statistics",
|
|
107
|
-
"padding-left": "120"
|
|
108
|
-
}
|
|
109
|
-
}}
|
|
110
|
-
parameters={withStoryDocs(exampleDocs)}
|
|
111
|
-
/>
|
|
112
|
-
|
|
113
|
-
<Story
|
|
114
|
-
name="Line with highlight"
|
|
115
|
-
args={{
|
|
116
|
-
section: {
|
|
117
|
-
id: "chart-timeseries",
|
|
118
|
-
chartType: "line-highlight",
|
|
119
|
-
title: "Largest local authorities in the South East, 2002-2020",
|
|
120
|
-
footer: "Source: Office for National Statistics",
|
|
121
|
-
data: lineData,
|
|
122
|
-
selected: "Winchester",
|
|
123
|
-
"padding-top": "20",
|
|
124
|
-
"padding-right": "120",
|
|
125
|
-
"padding-left": "80"
|
|
126
|
-
}
|
|
127
|
-
}}
|
|
128
|
-
/>
|
|
1
|
+
<script module>
|
|
2
|
+
import { defineMeta } from "@storybook/addon-svelte-csf";
|
|
3
|
+
import { withComponentDocs, withStoryDocs } from "../../js/withParams.js";
|
|
4
|
+
import { Chart } from "@onsvisual/svelte-charts";
|
|
5
|
+
import componentDocs from "./docs/component.md?raw";
|
|
6
|
+
import exampleDocs from "./docs/example.md?raw";
|
|
7
|
+
|
|
8
|
+
const barData = [
|
|
9
|
+
{ x: 5315, y: "Portsmouth" },
|
|
10
|
+
{ x: 5070, y: "Southampton" },
|
|
11
|
+
{ x: 4596, y: "Slough" },
|
|
12
|
+
{ x: 3969, y: "Reading" },
|
|
13
|
+
{ x: 3522, y: "Brighton and Hove" }
|
|
14
|
+
];
|
|
15
|
+
const lineData = [
|
|
16
|
+
{ z: "West Oxfordshire", x: "2002", y: 95961 },
|
|
17
|
+
{ z: "West Oxfordshire", x: "2003", y: 97083 },
|
|
18
|
+
{ z: "West Oxfordshire", x: "2004", y: 98038 },
|
|
19
|
+
{ z: "West Oxfordshire", x: "2005", y: 98869 },
|
|
20
|
+
{ z: "West Oxfordshire", x: "2006", y: 100316 },
|
|
21
|
+
{ z: "West Oxfordshire", x: "2007", y: 102166 },
|
|
22
|
+
{ z: "West Oxfordshire", x: "2008", y: 103016 },
|
|
23
|
+
{ z: "West Oxfordshire", x: "2009", y: 103824 },
|
|
24
|
+
{ z: "West Oxfordshire", x: "2010", y: 104706 },
|
|
25
|
+
{ z: "West Oxfordshire", x: "2011", y: 105442 },
|
|
26
|
+
{ z: "West Oxfordshire", x: "2012", y: 107164 },
|
|
27
|
+
{ z: "West Oxfordshire", x: "2013", y: 107945 },
|
|
28
|
+
{ z: "West Oxfordshire", x: "2014", y: 108095 },
|
|
29
|
+
{ z: "West Oxfordshire", x: "2015", y: 108609 },
|
|
30
|
+
{ z: "West Oxfordshire", x: "2016", y: 108748 },
|
|
31
|
+
{ z: "West Oxfordshire", x: "2017", y: 109266 },
|
|
32
|
+
{ z: "West Oxfordshire", x: "2018", y: 109800 },
|
|
33
|
+
{ z: "West Oxfordshire", x: "2019", y: 110643 },
|
|
34
|
+
{ z: "West Oxfordshire", x: "2020", y: 111758 },
|
|
35
|
+
{ z: "South Oxfordshire", x: "2002", y: 128754 },
|
|
36
|
+
{ z: "South Oxfordshire", x: "2003", y: 128920 },
|
|
37
|
+
{ z: "South Oxfordshire", x: "2004", y: 129359 },
|
|
38
|
+
{ z: "South Oxfordshire", x: "2005", y: 130050 },
|
|
39
|
+
{ z: "South Oxfordshire", x: "2006", y: 130676 },
|
|
40
|
+
{ z: "South Oxfordshire", x: "2007", y: 131626 },
|
|
41
|
+
{ z: "South Oxfordshire", x: "2008", y: 132611 },
|
|
42
|
+
{ z: "South Oxfordshire", x: "2009", y: 133466 },
|
|
43
|
+
{ z: "South Oxfordshire", x: "2010", y: 133915 },
|
|
44
|
+
{ z: "South Oxfordshire", x: "2011", y: 134961 },
|
|
45
|
+
{ z: "South Oxfordshire", x: "2012", y: 135722 },
|
|
46
|
+
{ z: "South Oxfordshire", x: "2013", y: 136328 },
|
|
47
|
+
{ z: "South Oxfordshire", x: "2014", y: 137477 },
|
|
48
|
+
{ z: "South Oxfordshire", x: "2015", y: 138177 },
|
|
49
|
+
{ z: "South Oxfordshire", x: "2016", y: 139156 },
|
|
50
|
+
{ z: "South Oxfordshire", x: "2017", y: 139767 },
|
|
51
|
+
{ z: "South Oxfordshire", x: "2018", y: 140504 },
|
|
52
|
+
{ z: "South Oxfordshire", x: "2019", y: 142057 },
|
|
53
|
+
{ z: "South Oxfordshire", x: "2020", y: 143782 },
|
|
54
|
+
{ z: "Winchester", x: "2002", y: 107844 },
|
|
55
|
+
{ z: "Winchester", x: "2003", y: 108515 },
|
|
56
|
+
{ z: "Winchester", x: "2004", y: 109179 },
|
|
57
|
+
{ z: "Winchester", x: "2005", y: 109947 },
|
|
58
|
+
{ z: "Winchester", x: "2006", y: 110628 },
|
|
59
|
+
{ z: "Winchester", x: "2007", y: 111820 },
|
|
60
|
+
{ z: "Winchester", x: "2008", y: 113267 },
|
|
61
|
+
{ z: "Winchester", x: "2009", y: 114505 },
|
|
62
|
+
{ z: "Winchester", x: "2010", y: 115789 },
|
|
63
|
+
{ z: "Winchester", x: "2011", y: 116820 },
|
|
64
|
+
{ z: "Winchester", x: "2012", y: 118074 },
|
|
65
|
+
{ z: "Winchester", x: "2013", y: 119037 },
|
|
66
|
+
{ z: "Winchester", x: "2014", y: 120290 },
|
|
67
|
+
{ z: "Winchester", x: "2015", y: 121734 },
|
|
68
|
+
{ z: "Winchester", x: "2016", y: 123100 },
|
|
69
|
+
{ z: "Winchester", x: "2017", y: 123879 },
|
|
70
|
+
{ z: "Winchester", x: "2018", y: 124295 },
|
|
71
|
+
{ z: "Winchester", x: "2019", y: 124859 },
|
|
72
|
+
{ z: "Winchester", x: "2020", y: 125925 }
|
|
73
|
+
];
|
|
74
|
+
|
|
75
|
+
const { Story } = defineMeta({
|
|
76
|
+
title: "Data visualisation/Chart",
|
|
77
|
+
component: Chart,
|
|
78
|
+
tags: ["autodocs"],
|
|
79
|
+
argTypes: {},
|
|
80
|
+
parameters: withComponentDocs(componentDocs)
|
|
81
|
+
});
|
|
82
|
+
</script>
|
|
83
|
+
|
|
84
|
+
<Story
|
|
85
|
+
name="Bar"
|
|
86
|
+
args={{
|
|
87
|
+
type: "bar",
|
|
88
|
+
data: barData,
|
|
89
|
+
options: {
|
|
90
|
+
id: "chart-density",
|
|
91
|
+
title: "Densest local authorities in the South East, 2020",
|
|
92
|
+
footer: "Source: Office for National Statistics",
|
|
93
|
+
"padding-left": "120"
|
|
94
|
+
}
|
|
95
|
+
}}
|
|
96
|
+
/>
|
|
97
|
+
|
|
98
|
+
<Story
|
|
99
|
+
name="Bar, robo-journalism case"
|
|
100
|
+
args={{
|
|
101
|
+
section: {
|
|
102
|
+
id: "chart-density",
|
|
103
|
+
chartType: "bar",
|
|
104
|
+
data: barData,
|
|
105
|
+
title: "Densest local authorities in the South East, 2020",
|
|
106
|
+
footer: "Source: Office for National Statistics",
|
|
107
|
+
"padding-left": "120"
|
|
108
|
+
}
|
|
109
|
+
}}
|
|
110
|
+
parameters={withStoryDocs(exampleDocs)}
|
|
111
|
+
/>
|
|
112
|
+
|
|
113
|
+
<Story
|
|
114
|
+
name="Line with highlight"
|
|
115
|
+
args={{
|
|
116
|
+
section: {
|
|
117
|
+
id: "chart-timeseries",
|
|
118
|
+
chartType: "line-highlight",
|
|
119
|
+
title: "Largest local authorities in the South East, 2002-2020",
|
|
120
|
+
footer: "Source: Office for National Statistics",
|
|
121
|
+
data: lineData,
|
|
122
|
+
selected: "Winchester",
|
|
123
|
+
"padding-top": "20",
|
|
124
|
+
"padding-right": "120",
|
|
125
|
+
"padding-left": "80"
|
|
126
|
+
}
|
|
127
|
+
}}
|
|
128
|
+
/>
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
A wrapper component that offers a simplified way to use charts with sensible preset defaults.
|
|
2
|
-
|
|
3
|
-
The config for this component can either be defined via `type`, `data` and `options` props, or via a single comboned `section` object. The latter use case is optimised for robo-journalism projects (see second example below).
|
|
4
|
-
|
|
5
|
-
Note: This component is part of the **@onsvisual/svelte-charts** library. See [more examples here](https://onsvisual.github.io/svelte-charts/).
|
|
6
|
-
|
|
7
|
-
<!-- prettier-ignore -->
|
|
8
|
-
```html
|
|
9
|
-
<script>
|
|
10
|
-
import { Chart } from "@onsvisual/svelte-charts";
|
|
11
|
-
|
|
12
|
-
const data = [
|
|
13
|
-
{"x": 5315, "y": "Portsmouth"},
|
|
14
|
-
{"x": 5070, "y": "Southampton"},
|
|
15
|
-
{"x": 4596, "y": "Slough"},
|
|
16
|
-
{"x": 3969, "y": "Reading"},
|
|
17
|
-
{"x": 3522, "y": "Brighton and Hove"}
|
|
18
|
-
];
|
|
19
|
-
const options = {
|
|
20
|
-
"id": "chart-density",
|
|
21
|
-
"title": "Densest local authorities in the South East, 2020",
|
|
22
|
-
"footer": "Source: Office for National Statistics",
|
|
23
|
-
"padding-left": "120"
|
|
24
|
-
};
|
|
25
|
-
</script>
|
|
26
|
-
|
|
27
|
-
<Chart
|
|
28
|
-
type="bar"
|
|
29
|
-
data="{data}"
|
|
30
|
-
options="{options}"/>
|
|
31
|
-
```
|
|
1
|
+
A wrapper component that offers a simplified way to use charts with sensible preset defaults.
|
|
2
|
+
|
|
3
|
+
The config for this component can either be defined via `type`, `data` and `options` props, or via a single comboned `section` object. The latter use case is optimised for robo-journalism projects (see second example below).
|
|
4
|
+
|
|
5
|
+
Note: This component is part of the **@onsvisual/svelte-charts** library. See [more examples here](https://onsvisual.github.io/svelte-charts/).
|
|
6
|
+
|
|
7
|
+
<!-- prettier-ignore -->
|
|
8
|
+
```html
|
|
9
|
+
<script>
|
|
10
|
+
import { Chart } from "@onsvisual/svelte-charts";
|
|
11
|
+
|
|
12
|
+
const data = [
|
|
13
|
+
{"x": 5315, "y": "Portsmouth"},
|
|
14
|
+
{"x": 5070, "y": "Southampton"},
|
|
15
|
+
{"x": 4596, "y": "Slough"},
|
|
16
|
+
{"x": 3969, "y": "Reading"},
|
|
17
|
+
{"x": 3522, "y": "Brighton and Hove"}
|
|
18
|
+
];
|
|
19
|
+
const options = {
|
|
20
|
+
"id": "chart-density",
|
|
21
|
+
"title": "Densest local authorities in the South East, 2020",
|
|
22
|
+
"footer": "Source: Office for National Statistics",
|
|
23
|
+
"padding-left": "120"
|
|
24
|
+
};
|
|
25
|
+
</script>
|
|
26
|
+
|
|
27
|
+
<Chart
|
|
28
|
+
type="bar"
|
|
29
|
+
data="{data}"
|
|
30
|
+
options="{options}"/>
|
|
31
|
+
```
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
In this use case, all of the data and config are passed into the component via a single `section` prop.
|
|
2
|
-
|
|
3
|
-
This is optimised for robo-journalism projects, where a chart is defined within a section block in a PUG template. The component is used in this way within the [robo-embed](https://github.com/ONSvisual/robo-embed/) and [robo-article](https://github.com/ONSvisual/robo-article/) templates.
|
|
4
|
-
|
|
5
|
-
<!-- prettier-ignore -->
|
|
6
|
-
```html
|
|
7
|
-
<script>
|
|
8
|
-
import { Chart } from "@onsvisual/svelte-charts";
|
|
9
|
-
|
|
10
|
-
//the section is normally generated by the pug file
|
|
11
|
-
const section = {
|
|
12
|
-
"id": "chart-density",
|
|
13
|
-
"chartType": "bar",
|
|
14
|
-
"title": "Densest local authorities in the South East, 2020",
|
|
15
|
-
"footer": "Source: Office for National Statistics",
|
|
16
|
-
"data": [
|
|
17
|
-
{"x": 5315, "y": "Portsmouth"},
|
|
18
|
-
{"x": 5070, "y": "Southampton"},
|
|
19
|
-
{"x": 4596, "y": "Slough"},
|
|
20
|
-
{"x": 3969, "y": "Reading"},
|
|
21
|
-
{"x": 3522, "y": "Brighton and Hove"}
|
|
22
|
-
],
|
|
23
|
-
"padding-left": "120"
|
|
24
|
-
};
|
|
25
|
-
</script>
|
|
26
|
-
|
|
27
|
-
<Chart {section}/>
|
|
28
|
-
```
|
|
1
|
+
In this use case, all of the data and config are passed into the component via a single `section` prop.
|
|
2
|
+
|
|
3
|
+
This is optimised for robo-journalism projects, where a chart is defined within a section block in a PUG template. The component is used in this way within the [robo-embed](https://github.com/ONSvisual/robo-embed/) and [robo-article](https://github.com/ONSvisual/robo-article/) templates.
|
|
4
|
+
|
|
5
|
+
<!-- prettier-ignore -->
|
|
6
|
+
```html
|
|
7
|
+
<script>
|
|
8
|
+
import { Chart } from "@onsvisual/svelte-charts";
|
|
9
|
+
|
|
10
|
+
//the section is normally generated by the pug file
|
|
11
|
+
const section = {
|
|
12
|
+
"id": "chart-density",
|
|
13
|
+
"chartType": "bar",
|
|
14
|
+
"title": "Densest local authorities in the South East, 2020",
|
|
15
|
+
"footer": "Source: Office for National Statistics",
|
|
16
|
+
"data": [
|
|
17
|
+
{"x": 5315, "y": "Portsmouth"},
|
|
18
|
+
{"x": 5070, "y": "Southampton"},
|
|
19
|
+
{"x": 4596, "y": "Slough"},
|
|
20
|
+
{"x": 3969, "y": "Reading"},
|
|
21
|
+
{"x": 3522, "y": "Brighton and Hove"}
|
|
22
|
+
],
|
|
23
|
+
"padding-left": "120"
|
|
24
|
+
};
|
|
25
|
+
</script>
|
|
26
|
+
|
|
27
|
+
<Chart {section}/>
|
|
28
|
+
```
|