@onsvisual/svelte-components 1.0.36 → 1.0.38
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 -18
- 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 +147 -147
- 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 -21
- 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/Input.svelte.d.ts +2 -2
- 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/Select.svelte.d.ts +2 -2
- 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/Textarea.svelte.d.ts +2 -2
- 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 -99
- 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 -139
- package/dist/layout/NavSections/NavSections.svelte.d.ts +4 -4
- 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 +89 -89
|
@@ -1,69 +1,69 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import { setContext, onMount } from "svelte";
|
|
3
|
-
import { writable } from "svelte/store";
|
|
4
|
-
|
|
5
|
-
// Initialize a store for button IDs
|
|
6
|
-
const buttonIds = writable([]);
|
|
7
|
-
setContext("buttonIds", {
|
|
8
|
-
register: (id: string) => {
|
|
9
|
-
buttonIds.update((ids) => [...ids, id]);
|
|
10
|
-
},
|
|
11
|
-
unregister: (id: string) => {
|
|
12
|
-
buttonIds.update((ids) => ids.filter((btnId) => btnId !== id));
|
|
13
|
-
},
|
|
14
|
-
buttonIds
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
let showHelpState = $state(true);
|
|
18
|
-
|
|
19
|
-
$effect(() => {
|
|
20
|
-
const sessionValue = sessionStorage.getItem("showHelpModals");
|
|
21
|
-
const localValue = localStorage.getItem("showHelpModals");
|
|
22
|
-
showHelpState = sessionValue === "false" ? false : localValue === "false" ? false : true;
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
const showHelpModals = writable(showHelpState);
|
|
26
|
-
// Set context for showHelpModals
|
|
27
|
-
setContext("showHelpModals", showHelpModals);
|
|
28
|
-
|
|
29
|
-
// Reactively update the initial state
|
|
30
|
-
$effect(() => {
|
|
31
|
-
showHelpModals.set(showHelpState);
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
const activeModalStore = writable(null); // Tracks the ID of the active modal
|
|
35
|
-
setContext("activeModalId", activeModalStore);
|
|
36
|
-
|
|
37
|
-
onMount(() => {
|
|
38
|
-
window.addEventListener("beforeunload", () => {
|
|
39
|
-
sessionStorage.removeItem("showHelpModals");
|
|
40
|
-
});
|
|
41
|
-
let unsubscribe = buttonIds.subscribe((ids) => {
|
|
42
|
-
if (ids.length > 0) {
|
|
43
|
-
activeModalStore.set(ids[0]); // Set first button as active
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
|
|
47
|
-
return unsubscribe;
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
export function resetHelp() {
|
|
51
|
-
sessionStorage.setItem("showHelpModals", "true");
|
|
52
|
-
showHelpModals.set(true);
|
|
53
|
-
}
|
|
54
|
-
</script>
|
|
55
|
-
|
|
56
|
-
<div class="multi-toolbar-container">
|
|
57
|
-
<slot />
|
|
58
|
-
</div>
|
|
59
|
-
|
|
60
|
-
<style>
|
|
61
|
-
.multi-toolbar-container {
|
|
62
|
-
display: flex;
|
|
63
|
-
flex-direction: row;
|
|
64
|
-
gap: 1rem;
|
|
65
|
-
justify-content: space-between;
|
|
66
|
-
pointer-events: none;
|
|
67
|
-
flex-wrap: wrap;
|
|
68
|
-
}
|
|
69
|
-
</style>
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import { setContext, onMount } from "svelte";
|
|
3
|
+
import { writable } from "svelte/store";
|
|
4
|
+
|
|
5
|
+
// Initialize a store for button IDs
|
|
6
|
+
const buttonIds = writable([]);
|
|
7
|
+
setContext("buttonIds", {
|
|
8
|
+
register: (id: string) => {
|
|
9
|
+
buttonIds.update((ids) => [...ids, id]);
|
|
10
|
+
},
|
|
11
|
+
unregister: (id: string) => {
|
|
12
|
+
buttonIds.update((ids) => ids.filter((btnId) => btnId !== id));
|
|
13
|
+
},
|
|
14
|
+
buttonIds
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
let showHelpState = $state(true);
|
|
18
|
+
|
|
19
|
+
$effect(() => {
|
|
20
|
+
const sessionValue = sessionStorage.getItem("showHelpModals");
|
|
21
|
+
const localValue = localStorage.getItem("showHelpModals");
|
|
22
|
+
showHelpState = sessionValue === "false" ? false : localValue === "false" ? false : true;
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
const showHelpModals = writable(showHelpState);
|
|
26
|
+
// Set context for showHelpModals
|
|
27
|
+
setContext("showHelpModals", showHelpModals);
|
|
28
|
+
|
|
29
|
+
// Reactively update the initial state
|
|
30
|
+
$effect(() => {
|
|
31
|
+
showHelpModals.set(showHelpState);
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
const activeModalStore = writable(null); // Tracks the ID of the active modal
|
|
35
|
+
setContext("activeModalId", activeModalStore);
|
|
36
|
+
|
|
37
|
+
onMount(() => {
|
|
38
|
+
window.addEventListener("beforeunload", () => {
|
|
39
|
+
sessionStorage.removeItem("showHelpModals");
|
|
40
|
+
});
|
|
41
|
+
let unsubscribe = buttonIds.subscribe((ids) => {
|
|
42
|
+
if (ids.length > 0) {
|
|
43
|
+
activeModalStore.set(ids[0]); // Set first button as active
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
return unsubscribe;
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
export function resetHelp() {
|
|
51
|
+
sessionStorage.setItem("showHelpModals", "true");
|
|
52
|
+
showHelpModals.set(true);
|
|
53
|
+
}
|
|
54
|
+
</script>
|
|
55
|
+
|
|
56
|
+
<div class="multi-toolbar-container">
|
|
57
|
+
<slot />
|
|
58
|
+
</div>
|
|
59
|
+
|
|
60
|
+
<style>
|
|
61
|
+
.multi-toolbar-container {
|
|
62
|
+
display: flex;
|
|
63
|
+
flex-direction: row;
|
|
64
|
+
gap: 1rem;
|
|
65
|
+
justify-content: space-between;
|
|
66
|
+
pointer-events: none;
|
|
67
|
+
flex-wrap: wrap;
|
|
68
|
+
}
|
|
69
|
+
</style>
|
|
@@ -1,99 +1,101 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
<
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
<
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
<ToolbarButton id="
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
1
|
+
<span class="ons-warning">This component is experimental</span>
|
|
2
|
+
|
|
3
|
+
A toolbar component. Use `ToolbarsContainer` even if using one toolbar as it contains a store for all the IDs and the activeID.
|
|
4
|
+
|
|
5
|
+
There's a slot on ToolbarButton if you want to put in custom help text otherwise, there's the prop `helpText`.
|
|
6
|
+
|
|
7
|
+
Each `ToolControl` will display content underneath the row of buttons. The `id` needs to match the `id` of the button.
|
|
8
|
+
|
|
9
|
+
Use the prop `hasAriaControls` on a button to link the controls to the button.
|
|
10
|
+
|
|
11
|
+
<!-- prettier-ignore -->
|
|
12
|
+
```html
|
|
13
|
+
<script>
|
|
14
|
+
import { ToolbarsContainer,Toolbar,ToolbarButton, ToolbarDivider,ToolControls,ToolControl, HelpModal } from "@onsvisual/svelte-components";
|
|
15
|
+
</script>
|
|
16
|
+
|
|
17
|
+
<ToolbarsContainer>
|
|
18
|
+
|
|
19
|
+
<Toolbar orientation="horizontal">
|
|
20
|
+
<ToolbarButton icon="polygon" label="Draw a polygon" helpText="Draw a polygon on the map" hasAriaControls>
|
|
21
|
+
<HelpModal>
|
|
22
|
+
<h3>Detailed Help</h3>
|
|
23
|
+
<p>More complex help text or even HTML content</p>
|
|
24
|
+
<ul>
|
|
25
|
+
<li>With lists</li>
|
|
26
|
+
<li>Or other elements</li>
|
|
27
|
+
</ul>
|
|
28
|
+
</HelpModal>
|
|
29
|
+
</ToolbarButton>
|
|
30
|
+
<ToolbarButton
|
|
31
|
+
icon="radius"
|
|
32
|
+
label="Draw a circle"
|
|
33
|
+
helpText="Draw a circle using this tool"
|
|
34
|
+
/>
|
|
35
|
+
<ToolbarDivider />
|
|
36
|
+
<ToolbarButton
|
|
37
|
+
icon="zoomin"
|
|
38
|
+
label="Zoom in"
|
|
39
|
+
/>
|
|
40
|
+
<ToolbarButton icon="zoomout" label="Zoom out" />
|
|
41
|
+
<ToolControls>
|
|
42
|
+
<ToolControl id="polygon">
|
|
43
|
+
<p>Text to display when polygon tool is selected, or even an input</p>
|
|
44
|
+
</ToolControl>
|
|
45
|
+
</Toolbar>
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
// Second toolbar
|
|
49
|
+
<Toolbar>
|
|
50
|
+
<ToolbarButton id="upload" icon="upload"/>
|
|
51
|
+
<ToolbarButton id="download" icon="download"/>
|
|
52
|
+
</Toolbar>
|
|
53
|
+
</ToolbarsContainer>
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Sticky buttons
|
|
57
|
+
|
|
58
|
+
```html
|
|
59
|
+
<ToolbarsContainer>
|
|
60
|
+
<Toolbar>
|
|
61
|
+
<ToolbarButton id="move" icon="move" label="Move and Pan" sticky />
|
|
62
|
+
<ToolbarButton id="polygon" icon="polygon" label="Draw a polygon" sticky />
|
|
63
|
+
<ToolbarButton id="circle" icon="radius" label="Draw a circle" sticky />
|
|
64
|
+
</Toolbar>
|
|
65
|
+
</ToolbarsContainer>
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Transient buttons
|
|
69
|
+
|
|
70
|
+
```html
|
|
71
|
+
<ToolbarsContainer>
|
|
72
|
+
<Toolbar>
|
|
73
|
+
<ToolbarButton
|
|
74
|
+
id="zoomin"
|
|
75
|
+
icon="zoomin"
|
|
76
|
+
label="Zoom in"
|
|
77
|
+
transient="{true}"
|
|
78
|
+
selected="{false}"
|
|
79
|
+
/>
|
|
80
|
+
<ToolbarButton id="zoomout" icon="zoomout" label="zoom out" transient />
|
|
81
|
+
</Toolbar>
|
|
82
|
+
</ToolbarsContainer>
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## No help modal
|
|
86
|
+
|
|
87
|
+
```html
|
|
88
|
+
<ToolbarsContainer>
|
|
89
|
+
<Toolbar>
|
|
90
|
+
<ToolbarButton
|
|
91
|
+
id="zoomin"
|
|
92
|
+
icon="zoomin"
|
|
93
|
+
label="Zoom in"
|
|
94
|
+
transient="{true}"
|
|
95
|
+
selected="{false}"
|
|
96
|
+
disableHelp="{true}"
|
|
97
|
+
/>
|
|
98
|
+
<ToolbarButton id="zoomout" icon="zoomout" label="zoom out" disableHelp="{true}" transient />
|
|
99
|
+
</Toolbar>
|
|
100
|
+
</ToolbarsContainer>
|
|
101
|
+
```
|
package/dist/intro.mdx
CHANGED
|
@@ -1,67 +1,67 @@
|
|
|
1
|
-
import { Meta } from "@storybook/addon-docs/blocks";
|
|
2
|
-
|
|
3
|
-
<Meta title="Introduction" />
|
|
4
|
-
|
|
5
|
-
# @onsvisual/svelte-components
|
|
6
|
-
|
|
7
|
-
<p>
|
|
8
|
-
<a href="https://www.npmjs.com/package/@onsvisual/svelte-components">
|
|
9
|
-
<img
|
|
10
|
-
src="https://badge.fury.io/js/@onsvisual%2Fsvelte-components.svg"
|
|
11
|
-
alt="npm version"
|
|
12
|
-
style={{ display: "inline-block", margin: "0 5px 0 0" }}
|
|
13
|
-
/>
|
|
14
|
-
</a>
|
|
15
|
-
<a href="https://github.com/onsvisual/svelte-components">
|
|
16
|
-
<img
|
|
17
|
-
src="https://badgen.net/badge/icon/GitHub?icon=github&label"
|
|
18
|
-
alt="GitHub"
|
|
19
|
-
style={{ display: "inline-block", margin: "0 5px 0 0" }}
|
|
20
|
-
/>
|
|
21
|
-
</a>
|
|
22
|
-
</p>
|
|
23
|
-
|
|
24
|
-
A library of ONS-branded components for any Svelte or SvelteKit project.
|
|
25
|
-
|
|
26
|
-
The components and styles in this library are built on the HTML and CSS of the [ONS Design System](https://service-manual.ons.gov.uk/design-system/), but with a number of tweaks and additions to make them suitable for a range of interactive data visualisation and data journalism projects.
|
|
27
|
-
|
|
28
|
-
## Installing the components
|
|
29
|
-
|
|
30
|
-
There are two ways to start a new project using these components.
|
|
31
|
-
|
|
32
|
-
### 1. Use a ready-made template
|
|
33
|
-
|
|
34
|
-
When you start a project with one of the following templates, @onsvisual/svelte-components will already be installed:
|
|
35
|
-
|
|
36
|
-
- [sveltekit-starter](https://github.com/ONSvisual/sveltekit-starter)
|
|
37
|
-
- [robo-article](https://github.com/ONSvisual/robo-article)
|
|
38
|
-
- [robo-embed](https://github.com/ONSvisual/robo-embed)
|
|
39
|
-
|
|
40
|
-
### 2. Start a new Svelte Kit project from scratch
|
|
41
|
-
|
|
42
|
-
If you want to start from scratch, you can set up a [new Svelte Kit project](https://kit.svelte.dev/docs/creating-a-project), then run the following command.
|
|
43
|
-
|
|
44
|
-
```bash
|
|
45
|
-
npm install @onsvisual/svelte-components --save-dev
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
## Using the components
|
|
49
|
-
|
|
50
|
-
When using the components, you need to import both the desired component and the global CSS styles. In a SvelteKit project it is best to import the CSS in the top-level **+layout.svelte** file in your **src/routes** folder, which will apply it to all pages/components in the project.
|
|
51
|
-
|
|
52
|
-
{/* prettier-ignore */}
|
|
53
|
-
```html
|
|
54
|
-
<!-- +layout.svelte -->
|
|
55
|
-
<script>
|
|
56
|
-
import "@onsvisual/svelte-components/css/main.css";
|
|
57
|
-
</script>
|
|
58
|
-
|
|
59
|
-
<slot/>
|
|
60
|
-
|
|
61
|
-
<!-- +page.svelte / Component.svelte -->
|
|
62
|
-
<script>
|
|
63
|
-
import { Section } from "@onsvisual/svelte-components";
|
|
64
|
-
</script>
|
|
65
|
-
|
|
66
|
-
<Section title="Hello world!">I am using an ONS Svelte component.</Section>
|
|
1
|
+
import { Meta } from "@storybook/addon-docs/blocks";
|
|
2
|
+
|
|
3
|
+
<Meta title="Introduction" />
|
|
4
|
+
|
|
5
|
+
# @onsvisual/svelte-components
|
|
6
|
+
|
|
7
|
+
<p>
|
|
8
|
+
<a href="https://www.npmjs.com/package/@onsvisual/svelte-components">
|
|
9
|
+
<img
|
|
10
|
+
src="https://badge.fury.io/js/@onsvisual%2Fsvelte-components.svg"
|
|
11
|
+
alt="npm version"
|
|
12
|
+
style={{ display: "inline-block", margin: "0 5px 0 0" }}
|
|
13
|
+
/>
|
|
14
|
+
</a>
|
|
15
|
+
<a href="https://github.com/onsvisual/svelte-components">
|
|
16
|
+
<img
|
|
17
|
+
src="https://badgen.net/badge/icon/GitHub?icon=github&label"
|
|
18
|
+
alt="GitHub"
|
|
19
|
+
style={{ display: "inline-block", margin: "0 5px 0 0" }}
|
|
20
|
+
/>
|
|
21
|
+
</a>
|
|
22
|
+
</p>
|
|
23
|
+
|
|
24
|
+
A library of ONS-branded components for any Svelte or SvelteKit project.
|
|
25
|
+
|
|
26
|
+
The components and styles in this library are built on the HTML and CSS of the [ONS Design System](https://service-manual.ons.gov.uk/design-system/), but with a number of tweaks and additions to make them suitable for a range of interactive data visualisation and data journalism projects.
|
|
27
|
+
|
|
28
|
+
## Installing the components
|
|
29
|
+
|
|
30
|
+
There are two ways to start a new project using these components.
|
|
31
|
+
|
|
32
|
+
### 1. Use a ready-made template
|
|
33
|
+
|
|
34
|
+
When you start a project with one of the following templates, @onsvisual/svelte-components will already be installed:
|
|
35
|
+
|
|
36
|
+
- [sveltekit-starter](https://github.com/ONSvisual/sveltekit-starter)
|
|
37
|
+
- [robo-article](https://github.com/ONSvisual/robo-article)
|
|
38
|
+
- [robo-embed](https://github.com/ONSvisual/robo-embed)
|
|
39
|
+
|
|
40
|
+
### 2. Start a new Svelte Kit project from scratch
|
|
41
|
+
|
|
42
|
+
If you want to start from scratch, you can set up a [new Svelte Kit project](https://kit.svelte.dev/docs/creating-a-project), then run the following command.
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
npm install @onsvisual/svelte-components --save-dev
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Using the components
|
|
49
|
+
|
|
50
|
+
When using the components, you need to import both the desired component and the global CSS styles. In a SvelteKit project it is best to import the CSS in the top-level **+layout.svelte** file in your **src/routes** folder, which will apply it to all pages/components in the project.
|
|
51
|
+
|
|
52
|
+
{/* prettier-ignore */}
|
|
53
|
+
```html
|
|
54
|
+
<!-- +layout.svelte -->
|
|
55
|
+
<script>
|
|
56
|
+
import "@onsvisual/svelte-components/css/main.css";
|
|
57
|
+
</script>
|
|
58
|
+
|
|
59
|
+
<slot/>
|
|
60
|
+
|
|
61
|
+
<!-- +page.svelte / Component.svelte -->
|
|
62
|
+
<script>
|
|
63
|
+
import { Section } from "@onsvisual/svelte-components";
|
|
64
|
+
</script>
|
|
65
|
+
|
|
66
|
+
<Section title="Hello world!">I am using an ONS Svelte component.</Section>
|
|
67
67
|
```
|
package/dist/js/menuOptions.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
export default [
|
|
2
|
-
{ id: "E12000001", label: "North East", group: "England" },
|
|
3
|
-
{ id: "E12000002", label: "North West", group: "England" },
|
|
4
|
-
{ id: "E12000003", label: "Yorkshire and The Humber", group: "England" },
|
|
5
|
-
{ id: "E12000004", label: "East Midlands", group: "England" },
|
|
6
|
-
{ id: "E12000005", label: "West Midlands", group: "England" },
|
|
7
|
-
{ id: "E12000006", label: "East of England", group: "England" },
|
|
8
|
-
{ id: "E12000007", label: "London", group: "England" },
|
|
9
|
-
{ id: "E12000008", label: "South East", group: "England" },
|
|
10
|
-
{ id: "E12000009", label: "South West", group: "England" },
|
|
11
|
-
{ id: "N92000002", label: "Northern Ireland", group: "Northern Ireland" },
|
|
12
|
-
{ id: "S92000003", label: "Scotland", group: "Scotland" },
|
|
13
|
-
{ id: "W92000004", label: "Wales", group: "Wales" }
|
|
14
|
-
];
|
|
1
|
+
export default [
|
|
2
|
+
{ id: "E12000001", label: "North East", group: "England" },
|
|
3
|
+
{ id: "E12000002", label: "North West", group: "England" },
|
|
4
|
+
{ id: "E12000003", label: "Yorkshire and The Humber", group: "England" },
|
|
5
|
+
{ id: "E12000004", label: "East Midlands", group: "England" },
|
|
6
|
+
{ id: "E12000005", label: "West Midlands", group: "England" },
|
|
7
|
+
{ id: "E12000006", label: "East of England", group: "England" },
|
|
8
|
+
{ id: "E12000007", label: "London", group: "England" },
|
|
9
|
+
{ id: "E12000008", label: "South East", group: "England" },
|
|
10
|
+
{ id: "E12000009", label: "South West", group: "England" },
|
|
11
|
+
{ id: "N92000002", label: "Northern Ireland", group: "Northern Ireland" },
|
|
12
|
+
{ id: "S92000003", label: "Scotland", group: "Scotland" },
|
|
13
|
+
{ id: "W92000004", label: "Wales", group: "Wales" }
|
|
14
|
+
];
|