@onsvisual/svelte-components 1.0.41 → 1.0.42
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 -513
- 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 +93 -93
- 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/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 +35 -35
- 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,24 +1,24 @@
|
|
|
1
|
-
<script>
|
|
2
|
-
/**
|
|
3
|
-
* Set an error message
|
|
4
|
-
* @type {string|null}
|
|
5
|
-
*/
|
|
6
|
-
export let message = null;
|
|
7
|
-
/**
|
|
8
|
-
* Optional: Set an additional CSS class for the component
|
|
9
|
-
* @type {string|null}
|
|
10
|
-
*/
|
|
11
|
-
export let cls = null;
|
|
12
|
-
</script>
|
|
13
|
-
|
|
14
|
-
<div class="ons-panel ons-panel--error ons-panel--no-title {cls}" id="number-of-employees-error">
|
|
15
|
-
<span class="ons-panel__assistive-text ons-u-vh">Error: </span>
|
|
16
|
-
<div class="ons-panel__body">
|
|
17
|
-
{#if message}
|
|
18
|
-
<p class="ons-panel__error">
|
|
19
|
-
<strong>{message}</strong>
|
|
20
|
-
</p>
|
|
21
|
-
{/if}
|
|
22
|
-
<slot />
|
|
23
|
-
</div>
|
|
24
|
-
</div>
|
|
1
|
+
<script>
|
|
2
|
+
/**
|
|
3
|
+
* Set an error message
|
|
4
|
+
* @type {string|null}
|
|
5
|
+
*/
|
|
6
|
+
export let message = null;
|
|
7
|
+
/**
|
|
8
|
+
* Optional: Set an additional CSS class for the component
|
|
9
|
+
* @type {string|null}
|
|
10
|
+
*/
|
|
11
|
+
export let cls = null;
|
|
12
|
+
</script>
|
|
13
|
+
|
|
14
|
+
<div class="ons-panel ons-panel--error ons-panel--no-title {cls}" id="number-of-employees-error">
|
|
15
|
+
<span class="ons-panel__assistive-text ons-u-vh">Error: </span>
|
|
16
|
+
<div class="ons-panel__body">
|
|
17
|
+
{#if message}
|
|
18
|
+
<p class="ons-panel__error">
|
|
19
|
+
<strong>{message}</strong>
|
|
20
|
+
</p>
|
|
21
|
+
{/if}
|
|
22
|
+
<slot />
|
|
23
|
+
</div>
|
|
24
|
+
</div>
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
Use this component to show validation errors by wrapping form inputs and fieldsets.
|
|
2
|
-
|
|
3
|
-
Based on [this ONS Design System component](https://service-manual.ons.gov.uk/design-system/components/error).
|
|
4
|
-
|
|
5
|
-
<!-- prettier-ignore -->
|
|
6
|
-
```html
|
|
7
|
-
<script>
|
|
8
|
-
import { ErrorPanel, Input } from "@onsvisual/svelte-components";
|
|
9
|
-
</script>
|
|
10
|
-
|
|
11
|
-
<ErrorPanel message="You enterered the wrong text">
|
|
12
|
-
<Input/>
|
|
13
|
-
</ErrorPanel>
|
|
14
|
-
```
|
|
1
|
+
Use this component to show validation errors by wrapping form inputs and fieldsets.
|
|
2
|
+
|
|
3
|
+
Based on [this ONS Design System component](https://service-manual.ons.gov.uk/design-system/components/error).
|
|
4
|
+
|
|
5
|
+
<!-- prettier-ignore -->
|
|
6
|
+
```html
|
|
7
|
+
<script>
|
|
8
|
+
import { ErrorPanel, Input } from "@onsvisual/svelte-components";
|
|
9
|
+
</script>
|
|
10
|
+
|
|
11
|
+
<ErrorPanel message="You enterered the wrong text">
|
|
12
|
+
<Input/>
|
|
13
|
+
</ErrorPanel>
|
|
14
|
+
```
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
<script module>
|
|
2
|
-
import { defineMeta } from "@storybook/addon-svelte-csf";
|
|
3
|
-
import { withComponentDocs, withStoryDocs } from "../../js/withParams.js";
|
|
4
|
-
import ErrorSummary from "./ErrorSummary.svelte";
|
|
5
|
-
import componentDocs from "./docs/component.md?raw";
|
|
6
|
-
import exampleDocs from "./docs/example.md?raw";
|
|
7
|
-
|
|
8
|
-
const { Story } = defineMeta({
|
|
9
|
-
title: "Inputs/ErrorSummary",
|
|
10
|
-
component: ErrorSummary,
|
|
11
|
-
tags: ["autodocs"],
|
|
12
|
-
argTypes: {},
|
|
13
|
-
parameters: withComponentDocs(componentDocs)
|
|
14
|
-
});
|
|
15
|
-
|
|
16
|
-
const items = [
|
|
17
|
-
{ label: "First issue description.", href: "#0" },
|
|
18
|
-
{ label: "Second issue description." }
|
|
19
|
-
];
|
|
20
|
-
</script>
|
|
21
|
-
|
|
22
|
-
{#snippet template(args)}
|
|
23
|
-
<div style:padding="12px">
|
|
24
|
-
<ErrorSummary {...args} />
|
|
25
|
-
</div>
|
|
26
|
-
{/snippet}
|
|
27
|
-
|
|
28
|
-
<Story name="Default" args={{ title: "There are 2 problems with your answer", items }} {template} />
|
|
29
|
-
|
|
30
|
-
<Story name="Error defined as text" asChild parameters={withStoryDocs(exampleDocs)}>
|
|
31
|
-
<div style:padding="12px">
|
|
32
|
-
<ErrorSummary title="There was an error">This is a text to describe the error.</ErrorSummary>
|
|
33
|
-
</div>
|
|
34
|
-
</Story>
|
|
1
|
+
<script module>
|
|
2
|
+
import { defineMeta } from "@storybook/addon-svelte-csf";
|
|
3
|
+
import { withComponentDocs, withStoryDocs } from "../../js/withParams.js";
|
|
4
|
+
import ErrorSummary from "./ErrorSummary.svelte";
|
|
5
|
+
import componentDocs from "./docs/component.md?raw";
|
|
6
|
+
import exampleDocs from "./docs/example.md?raw";
|
|
7
|
+
|
|
8
|
+
const { Story } = defineMeta({
|
|
9
|
+
title: "Inputs/ErrorSummary",
|
|
10
|
+
component: ErrorSummary,
|
|
11
|
+
tags: ["autodocs"],
|
|
12
|
+
argTypes: {},
|
|
13
|
+
parameters: withComponentDocs(componentDocs)
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
const items = [
|
|
17
|
+
{ label: "First issue description.", href: "#0" },
|
|
18
|
+
{ label: "Second issue description." }
|
|
19
|
+
];
|
|
20
|
+
</script>
|
|
21
|
+
|
|
22
|
+
{#snippet template(args)}
|
|
23
|
+
<div style:padding="12px">
|
|
24
|
+
<ErrorSummary {...args} />
|
|
25
|
+
</div>
|
|
26
|
+
{/snippet}
|
|
27
|
+
|
|
28
|
+
<Story name="Default" args={{ title: "There are 2 problems with your answer", items }} {template} />
|
|
29
|
+
|
|
30
|
+
<Story name="Error defined as text" asChild parameters={withStoryDocs(exampleDocs)}>
|
|
31
|
+
<div style:padding="12px">
|
|
32
|
+
<ErrorSummary title="There was an error">This is a text to describe the error.</ErrorSummary>
|
|
33
|
+
</div>
|
|
34
|
+
</Story>
|
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
<script>
|
|
2
|
-
import List from "../../layout/List/List.svelte";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Defines the title of the error
|
|
6
|
-
* @type {string|null}
|
|
7
|
-
*/
|
|
8
|
-
export let title = null;
|
|
9
|
-
/**
|
|
10
|
-
* Define an array of errors/issues in the format {label, href?}
|
|
11
|
-
* @type {object[]}
|
|
12
|
-
*/
|
|
13
|
-
export let items = [];
|
|
14
|
-
/**
|
|
15
|
-
* Optional: Set an additional CSS class for the component
|
|
16
|
-
* @type {string|null}
|
|
17
|
-
*/
|
|
18
|
-
export let cls = null;
|
|
19
|
-
</script>
|
|
20
|
-
|
|
21
|
-
<div aria-labelledby="alert" role="alert" tabindex="-1" class="ons-panel ons-panel--error {cls}">
|
|
22
|
-
<div class="ons-panel__header">
|
|
23
|
-
<h2 id="alert" data-qa="error-header" class="ons-panel__title ons-u-fs-r--b">{title}</h2>
|
|
24
|
-
</div>
|
|
25
|
-
<div class="ons-panel__body">
|
|
26
|
-
{#if Array.isArray(items)}
|
|
27
|
-
<List mode="number">
|
|
28
|
-
{#each items as item}
|
|
29
|
-
<li>
|
|
30
|
-
{#if item.href}
|
|
31
|
-
<a href={item.href}>{item.label}</a>
|
|
32
|
-
{:else}
|
|
33
|
-
{item.label}
|
|
34
|
-
{/if}
|
|
35
|
-
</li>
|
|
36
|
-
{/each}
|
|
37
|
-
</List>
|
|
38
|
-
{/if}
|
|
39
|
-
<slot />
|
|
40
|
-
</div>
|
|
41
|
-
</div>
|
|
42
|
-
|
|
43
|
-
<style>
|
|
44
|
-
.ons-panel {
|
|
45
|
-
color: rgb(34, 34, 34);
|
|
46
|
-
}
|
|
47
|
-
</style>
|
|
1
|
+
<script>
|
|
2
|
+
import List from "../../layout/List/List.svelte";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Defines the title of the error
|
|
6
|
+
* @type {string|null}
|
|
7
|
+
*/
|
|
8
|
+
export let title = null;
|
|
9
|
+
/**
|
|
10
|
+
* Define an array of errors/issues in the format {label, href?}
|
|
11
|
+
* @type {object[]}
|
|
12
|
+
*/
|
|
13
|
+
export let items = [];
|
|
14
|
+
/**
|
|
15
|
+
* Optional: Set an additional CSS class for the component
|
|
16
|
+
* @type {string|null}
|
|
17
|
+
*/
|
|
18
|
+
export let cls = null;
|
|
19
|
+
</script>
|
|
20
|
+
|
|
21
|
+
<div aria-labelledby="alert" role="alert" tabindex="-1" class="ons-panel ons-panel--error {cls}">
|
|
22
|
+
<div class="ons-panel__header">
|
|
23
|
+
<h2 id="alert" data-qa="error-header" class="ons-panel__title ons-u-fs-r--b">{title}</h2>
|
|
24
|
+
</div>
|
|
25
|
+
<div class="ons-panel__body">
|
|
26
|
+
{#if Array.isArray(items)}
|
|
27
|
+
<List mode="number">
|
|
28
|
+
{#each items as item}
|
|
29
|
+
<li>
|
|
30
|
+
{#if item.href}
|
|
31
|
+
<a href={item.href}>{item.label}</a>
|
|
32
|
+
{:else}
|
|
33
|
+
{item.label}
|
|
34
|
+
{/if}
|
|
35
|
+
</li>
|
|
36
|
+
{/each}
|
|
37
|
+
</List>
|
|
38
|
+
{/if}
|
|
39
|
+
<slot />
|
|
40
|
+
</div>
|
|
41
|
+
</div>
|
|
42
|
+
|
|
43
|
+
<style>
|
|
44
|
+
.ons-panel {
|
|
45
|
+
color: rgb(34, 34, 34);
|
|
46
|
+
}
|
|
47
|
+
</style>
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
A panel to summarise errors on a form/input. The errors can be defined in an `items` array, or as plain text/html within the component.
|
|
2
|
-
|
|
3
|
-
Based on [this ONS Design System pattern](https://service-manual.ons.gov.uk/design-system/patterns/error-status-pages).
|
|
4
|
-
|
|
5
|
-
<!-- prettier-ignore -->
|
|
6
|
-
```html
|
|
7
|
-
<script>
|
|
8
|
-
import { ErrorSummary } from "@onsvisual/svelte-components";
|
|
9
|
-
|
|
10
|
-
const items = [
|
|
11
|
-
{ label: "First issue description.", href: "#0" },
|
|
12
|
-
{ label: "Second issue description." },
|
|
13
|
-
];
|
|
14
|
-
</script>
|
|
15
|
-
|
|
16
|
-
<ErrorSummary title="There are 2 problems with your answer" {items} />
|
|
17
|
-
```
|
|
1
|
+
A panel to summarise errors on a form/input. The errors can be defined in an `items` array, or as plain text/html within the component.
|
|
2
|
+
|
|
3
|
+
Based on [this ONS Design System pattern](https://service-manual.ons.gov.uk/design-system/patterns/error-status-pages).
|
|
4
|
+
|
|
5
|
+
<!-- prettier-ignore -->
|
|
6
|
+
```html
|
|
7
|
+
<script>
|
|
8
|
+
import { ErrorSummary } from "@onsvisual/svelte-components";
|
|
9
|
+
|
|
10
|
+
const items = [
|
|
11
|
+
{ label: "First issue description.", href: "#0" },
|
|
12
|
+
{ label: "Second issue description." },
|
|
13
|
+
];
|
|
14
|
+
</script>
|
|
15
|
+
|
|
16
|
+
<ErrorSummary title="There are 2 problems with your answer" {items} />
|
|
17
|
+
```
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
In this example, the `items` array is not used, and the error is described using text/html.
|
|
2
|
-
|
|
3
|
-
<!-- prettier-ignore -->
|
|
4
|
-
```html
|
|
5
|
-
<script>
|
|
6
|
-
import { ErrorSummary } from "@onsvisual/svelte-components";
|
|
7
|
-
</script>
|
|
8
|
-
|
|
9
|
-
<ErrorSummary title="There was an error">
|
|
10
|
-
This is a text to describe the error.
|
|
11
|
-
</ErrorSummary>
|
|
12
|
-
```
|
|
1
|
+
In this example, the `items` array is not used, and the error is described using text/html.
|
|
2
|
+
|
|
3
|
+
<!-- prettier-ignore -->
|
|
4
|
+
```html
|
|
5
|
+
<script>
|
|
6
|
+
import { ErrorSummary } from "@onsvisual/svelte-components";
|
|
7
|
+
</script>
|
|
8
|
+
|
|
9
|
+
<ErrorSummary title="There was an error">
|
|
10
|
+
This is a text to describe the error.
|
|
11
|
+
</ErrorSummary>
|
|
12
|
+
```
|
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
<script module>
|
|
2
|
-
import { defineMeta } from "@storybook/addon-svelte-csf";
|
|
3
|
-
import { withComponentDocs } from "../../js/withParams.js";
|
|
4
|
-
import Input from "./Input.svelte";
|
|
5
|
-
import componentDocs from "./docs/component.md?raw";
|
|
6
|
-
|
|
7
|
-
const { Story } = defineMeta({
|
|
8
|
-
title: "Inputs/Input",
|
|
9
|
-
component: Input,
|
|
10
|
-
tags: ["autodocs"],
|
|
11
|
-
argTypes: {},
|
|
12
|
-
parameters: withComponentDocs(componentDocs)
|
|
13
|
-
});
|
|
14
|
-
</script>
|
|
15
|
-
|
|
16
|
-
{#snippet template(args)}
|
|
17
|
-
<div style:padding="12px">
|
|
18
|
-
<Input {...args} />
|
|
19
|
-
</div>
|
|
20
|
-
{/snippet}
|
|
21
|
-
|
|
22
|
-
<Story
|
|
23
|
-
name="Default"
|
|
24
|
-
args={{
|
|
25
|
-
id: "text",
|
|
26
|
-
label: "Enter some text"
|
|
27
|
-
}}
|
|
28
|
-
{template}
|
|
29
|
-
/>
|
|
30
|
-
|
|
31
|
-
<Story
|
|
32
|
-
name="With hidden label"
|
|
33
|
-
args={{
|
|
34
|
-
id: "text",
|
|
35
|
-
label: "Enter some text",
|
|
36
|
-
hideLabel: true
|
|
37
|
-
}}
|
|
38
|
-
{template}
|
|
39
|
-
/>
|
|
40
|
-
|
|
41
|
-
<Story
|
|
42
|
-
name="With description"
|
|
43
|
-
args={{
|
|
44
|
-
id: "text",
|
|
45
|
-
label: "Enter some text",
|
|
46
|
-
description: "This is a hint on what to enter"
|
|
47
|
-
}}
|
|
48
|
-
{template}
|
|
49
|
-
/>
|
|
50
|
-
|
|
51
|
-
<Story
|
|
52
|
-
name="Numeric with prefix"
|
|
53
|
-
args={{
|
|
54
|
-
id: "text",
|
|
55
|
-
label: "Enter some text",
|
|
56
|
-
prefix: "£",
|
|
57
|
-
unitLabel: "British pounds sterling",
|
|
58
|
-
numeric: true,
|
|
59
|
-
width: 5,
|
|
60
|
-
charLimit: 8
|
|
61
|
-
}}
|
|
62
|
-
{template}
|
|
63
|
-
/>
|
|
64
|
-
|
|
65
|
-
<Story
|
|
66
|
-
name="Input error"
|
|
67
|
-
args={{
|
|
68
|
-
id: "text",
|
|
69
|
-
label: "Enter some text",
|
|
70
|
-
error: true
|
|
71
|
-
}}
|
|
72
|
-
{template}
|
|
73
|
-
/>
|
|
1
|
+
<script module>
|
|
2
|
+
import { defineMeta } from "@storybook/addon-svelte-csf";
|
|
3
|
+
import { withComponentDocs } from "../../js/withParams.js";
|
|
4
|
+
import Input from "./Input.svelte";
|
|
5
|
+
import componentDocs from "./docs/component.md?raw";
|
|
6
|
+
|
|
7
|
+
const { Story } = defineMeta({
|
|
8
|
+
title: "Inputs/Input",
|
|
9
|
+
component: Input,
|
|
10
|
+
tags: ["autodocs"],
|
|
11
|
+
argTypes: {},
|
|
12
|
+
parameters: withComponentDocs(componentDocs)
|
|
13
|
+
});
|
|
14
|
+
</script>
|
|
15
|
+
|
|
16
|
+
{#snippet template(args)}
|
|
17
|
+
<div style:padding="12px">
|
|
18
|
+
<Input {...args} />
|
|
19
|
+
</div>
|
|
20
|
+
{/snippet}
|
|
21
|
+
|
|
22
|
+
<Story
|
|
23
|
+
name="Default"
|
|
24
|
+
args={{
|
|
25
|
+
id: "text",
|
|
26
|
+
label: "Enter some text"
|
|
27
|
+
}}
|
|
28
|
+
{template}
|
|
29
|
+
/>
|
|
30
|
+
|
|
31
|
+
<Story
|
|
32
|
+
name="With hidden label"
|
|
33
|
+
args={{
|
|
34
|
+
id: "text",
|
|
35
|
+
label: "Enter some text",
|
|
36
|
+
hideLabel: true
|
|
37
|
+
}}
|
|
38
|
+
{template}
|
|
39
|
+
/>
|
|
40
|
+
|
|
41
|
+
<Story
|
|
42
|
+
name="With description"
|
|
43
|
+
args={{
|
|
44
|
+
id: "text",
|
|
45
|
+
label: "Enter some text",
|
|
46
|
+
description: "This is a hint on what to enter"
|
|
47
|
+
}}
|
|
48
|
+
{template}
|
|
49
|
+
/>
|
|
50
|
+
|
|
51
|
+
<Story
|
|
52
|
+
name="Numeric with prefix"
|
|
53
|
+
args={{
|
|
54
|
+
id: "text",
|
|
55
|
+
label: "Enter some text",
|
|
56
|
+
prefix: "£",
|
|
57
|
+
unitLabel: "British pounds sterling",
|
|
58
|
+
numeric: true,
|
|
59
|
+
width: 5,
|
|
60
|
+
charLimit: 8
|
|
61
|
+
}}
|
|
62
|
+
{template}
|
|
63
|
+
/>
|
|
64
|
+
|
|
65
|
+
<Story
|
|
66
|
+
name="Input error"
|
|
67
|
+
args={{
|
|
68
|
+
id: "text",
|
|
69
|
+
label: "Enter some text",
|
|
70
|
+
error: true
|
|
71
|
+
}}
|
|
72
|
+
{template}
|
|
73
|
+
/>
|