@govtechsg/sgds-web-component 0.0.10 → 0.0.12
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 +102 -10
- package/base/card-element.d.ts +12 -0
- package/{lib/utils → base}/dropdown-element.d.ts +38 -37
- package/{lib/utils → base}/link-element.d.ts +8 -7
- package/{lib/utils → base}/sgds-element.d.ts +6 -5
- package/components/Accordion/index.d.ts +2 -0
- package/components/Accordion/sgds-accordion-item.d.ts +40 -0
- package/components/Accordion/sgds-accordion.d.ts +19 -0
- package/components/ActionCard/index.d.ts +1 -0
- package/{lib/Card → components/ActionCard}/sgds-action-card.d.ts +21 -20
- package/components/Alert/index.d.ts +1 -0
- package/components/Alert/sgds-alert.d.ts +37 -0
- package/components/Badge/index.d.ts +1 -0
- package/components/Badge/sgds-badge.d.ts +10 -0
- package/components/Breadcrumb/index.d.ts +2 -0
- package/components/Breadcrumb/sgds-breadcrumb-item.d.ts +10 -0
- package/components/Breadcrumb/sgds-breadcrumb.d.ts +12 -0
- package/components/Button/index.d.ts +1 -0
- package/{lib → components}/Button/sgds-button.d.ts +55 -48
- package/components/Checkbox/index.d.ts +1 -0
- package/{lib → components}/Checkbox/sgds-checkbox.d.ts +36 -36
- package/components/CloseButton/index.d.ts +1 -0
- package/components/CloseButton/sgds-closebutton.d.ts +9 -0
- package/components/Dropdown/index.d.ts +3 -0
- package/{lib → components}/Dropdown/sgds-dropdown-item.d.ts +8 -7
- package/{lib → components}/Dropdown/sgds-dropdown.d.ts +8 -7
- package/components/FileUpload/index.d.ts +1 -0
- package/components/FileUpload/sgds-fileupload.d.ts +22 -0
- package/components/Footer/index.d.ts +1 -0
- package/{lib → components}/Footer/sgds-footer.d.ts +27 -23
- package/components/Input/index.d.ts +1 -0
- package/{lib → components}/Input/sgds-input.d.ts +42 -42
- package/components/Mainnav/index.d.ts +3 -0
- package/components/Mainnav/sgds-mainnav-dropdown.d.ts +6 -0
- package/components/Mainnav/sgds-mainnav-item.d.ts +8 -0
- package/{lib → components}/Mainnav/sgds-mainnav.d.ts +26 -22
- package/components/Masthead/index.d.ts +1 -0
- package/{lib → components}/Masthead/sgds-masthead.d.ts +9 -12
- package/components/Modal/index.d.ts +1 -0
- package/{lib → components}/Modal/sgds-modal.d.ts +28 -28
- package/components/QuantityToggle/index.d.ts +1 -0
- package/{lib/QuantityToggle/sgds-quantitytoggle.d.ts → components/QuantityToggle/sgds-quantity-toggle.d.ts} +30 -30
- package/components/Radio/index.d.ts +2 -0
- package/{lib/Radio/sgds-radiogroup.d.ts → components/Radio/sgds-radio-group.d.ts} +41 -41
- package/{lib → components}/Radio/sgds-radio.d.ts +31 -31
- package/components/Sidenav/index.d.ts +3 -0
- package/{lib → components}/Sidenav/sgds-sidenav-item.d.ts +36 -28
- package/components/Sidenav/sgds-sidenav-link.d.ts +8 -0
- package/{lib → components}/Sidenav/sgds-sidenav.d.ts +10 -6
- package/components/Stepper/index.d.ts +1 -0
- package/components/Stepper/sgds-stepper.d.ts +17 -0
- package/components/Tab/index.d.ts +3 -0
- package/{lib → components}/Tab/sgds-tab.d.ts +27 -26
- package/{lib → components}/Tab/sgds-tabgroup.d.ts +48 -47
- package/{lib → components}/Tab/sgds-tabpanel.d.ts +26 -25
- package/components/Table/index.d.ts +1 -0
- package/components/Table/sgds-table.d.ts +26 -0
- package/components/Textarea/index.d.ts +1 -0
- package/{lib → components}/Textarea/sgds-textarea.d.ts +53 -53
- package/components/Toast/index.d.ts +1 -0
- package/components/Toast/sgds-toast.d.ts +22 -0
- package/components/Tooltip/index.d.ts +1 -0
- package/components/Tooltip/sgds-tooltip.d.ts +30 -0
- package/index.d.ts +23 -0
- package/index.js +11543 -0
- package/index.js.map +1 -0
- package/main.d.ts +24 -0
- package/package.json +23 -65
- package/react/accordion/index.d.ts +3 -0
- package/react/accordion-item/index.d.ts +8 -0
- package/react/action-card/index.d.ts +3 -0
- package/react/alert/index.d.ts +3 -0
- package/react/badge/index.d.ts +3 -0
- package/react/breadcrumb/index.d.ts +3 -0
- package/react/breadcrumb-item/index.d.ts +3 -0
- package/react/button/index.d.ts +6 -0
- package/react/checkbox/index.d.ts +3 -0
- package/react/cjs/index.js +12510 -0
- package/react/cjs/index.js.map +1 -0
- package/react/closebutton/index.d.ts +5 -0
- package/react/dropdown/index.d.ts +3 -0
- package/react/dropdown-item/index.d.ts +3 -0
- package/react/fileupload/index.d.ts +3 -0
- package/react/footer/index.d.ts +3 -0
- package/react/index.d.ts +34 -0
- package/react/index.js +12453 -0
- package/react/index.js.map +1 -0
- package/react/input/index.d.ts +3 -0
- package/react/mainnav/index.d.ts +3 -0
- package/react/mainnav-dropdown/index.d.ts +3 -0
- package/react/mainnav-item/index.d.ts +3 -0
- package/react/masthead/index.d.ts +3 -0
- package/react/modal/index.d.ts +3 -0
- package/react/package.json +10 -0
- package/react/quantity-toggle/index.d.ts +3 -0
- package/react/radio/index.d.ts +3 -0
- package/react/radio-group/index.d.ts +3 -0
- package/react/sidenav/index.d.ts +3 -0
- package/react/sidenav-item/index.d.ts +5 -0
- package/react/sidenav-link/index.d.ts +3 -0
- package/react/stepper/index.d.ts +3 -0
- package/react/tab/index.d.ts +3 -0
- package/react/tab-group/index.d.ts +3 -0
- package/react/tab-panel/index.d.ts +3 -0
- package/react/table/index.d.ts +3 -0
- package/react/textarea/index.d.ts +3 -0
- package/react/toast/index.d.ts +3 -0
- package/react/tooltip/index.d.ts +3 -0
- package/umd/index.js +11995 -0
- package/umd/index.js.map +1 -0
- package/{lib/utils → utils}/animate.d.ts +10 -10
- package/{lib/utils → utils}/animation-registry.d.ts +18 -18
- package/{lib/utils → utils}/breakpoints.d.ts +5 -5
- package/{lib/utils → utils}/defaultvalue.d.ts +2 -2
- package/{lib/utils → utils}/event.d.ts +2 -2
- package/{lib/utils → utils}/form.d.ts +38 -38
- package/{lib/utils → utils}/generateId.d.ts +1 -1
- package/{lib/utils → utils}/mergeDeep.d.ts +2 -2
- package/{lib/utils → utils}/modal.d.ts +12 -12
- package/{lib/utils → utils}/object.d.ts +2 -2
- package/{lib/utils → utils}/offset.d.ts +4 -4
- package/{lib/utils → utils}/scroll.d.ts +13 -13
- package/{lib/utils → utils}/slot.d.ts +22 -22
- package/{lib/utils → utils}/tabbable.d.ts +8 -8
- package/{lib/utils → utils}/watch.d.ts +14 -14
- package/.github/workflows/publish-latest.yml +0 -22
- package/.github/workflows/publish-pr.yml +0 -28
- package/.husky/commit-msg +0 -4
- package/.husky/prepare-commit-msg +0 -8
- package/.storybook/main.js +0 -16
- package/.storybook/preview-head.html +0 -11
- package/.storybook/preview.js +0 -9
- package/.vscode/settings.json +0 -7
- package/CONTRIBUTING.md +0 -56
- package/LICENSE +0 -20
- package/amplify.yml +0 -22
- package/commitlint.config.js +0 -1
- package/coverage/lcov-report/base.css +0 -224
- package/coverage/lcov-report/block-navigation.js +0 -87
- package/coverage/lcov-report/button-element.scss.html +0 -112
- package/coverage/lcov-report/button-element.ts.html +0 -145
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +0 -116
- package/coverage/lcov-report/prettify.css +0 -1
- package/coverage/lcov-report/prettify.js +0 -2
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +0 -196
- package/coverage/lcov.info +0 -32
- package/index.html +0 -430
- package/lib/Button/index.d.ts +0 -1
- package/lib/Button/index.js +0 -6634
- package/lib/Button/index.js.map +0 -1
- package/lib/Button/package.json +0 -7
- package/lib/Card/index.d.ts +0 -1
- package/lib/Card/index.js +0 -6150
- package/lib/Card/index.js.map +0 -1
- package/lib/Card/package.json +0 -7
- package/lib/Checkbox/index.d.ts +0 -1
- package/lib/Checkbox/index.js +0 -6366
- package/lib/Checkbox/index.js.map +0 -1
- package/lib/Checkbox/package.json +0 -7
- package/lib/Dropdown/index.d.ts +0 -3
- package/lib/Dropdown/index.js +0 -13502
- package/lib/Dropdown/index.js.map +0 -1
- package/lib/Dropdown/package.json +0 -7
- package/lib/Footer/index.d.ts +0 -2
- package/lib/Footer/index.js +0 -7168
- package/lib/Footer/index.js.map +0 -1
- package/lib/Footer/package.json +0 -7
- package/lib/Input/index.d.ts +0 -1
- package/lib/Input/index.js +0 -6656
- package/lib/Input/index.js.map +0 -1
- package/lib/Input/package.json +0 -7
- package/lib/Mainnav/index.d.ts +0 -4
- package/lib/Mainnav/index.js +0 -32546
- package/lib/Mainnav/index.js.map +0 -1
- package/lib/Mainnav/package.json +0 -7
- package/lib/Mainnav/sgds-mainnav-dropdown.d.ts +0 -5
- package/lib/Mainnav/sgds-mainnav-item.d.ts +0 -4
- package/lib/Masthead/index.d.ts +0 -1
- package/lib/Masthead/index.js +0 -7371
- package/lib/Masthead/index.js.map +0 -1
- package/lib/Masthead/package.json +0 -7
- package/lib/Modal/index.d.ts +0 -1
- package/lib/Modal/index.js +0 -6432
- package/lib/Modal/index.js.map +0 -1
- package/lib/Modal/package.json +0 -7
- package/lib/QuantityToggle/index.d.ts +0 -1
- package/lib/QuantityToggle/index.js +0 -7049
- package/lib/QuantityToggle/index.js.map +0 -1
- package/lib/QuantityToggle/package.json +0 -7
- package/lib/Radio/index.d.ts +0 -2
- package/lib/Radio/index.js +0 -12607
- package/lib/Radio/index.js.map +0 -1
- package/lib/Radio/package.json +0 -7
- package/lib/Sidenav/index.d.ts +0 -3
- package/lib/Sidenav/index.js +0 -18739
- package/lib/Sidenav/index.js.map +0 -1
- package/lib/Sidenav/package.json +0 -7
- package/lib/Sidenav/sgds-sidenav-link.d.ts +0 -4
- package/lib/Tab/index.d.ts +0 -3
- package/lib/Tab/index.js +0 -13557
- package/lib/Tab/index.js.map +0 -1
- package/lib/Tab/package.json +0 -7
- package/lib/Textarea/index.d.ts +0 -1
- package/lib/Textarea/index.js +0 -6696
- package/lib/Textarea/index.js.map +0 -1
- package/lib/Textarea/package.json +0 -7
- package/lib/index.d.ts +0 -16
- package/lib/index.js +0 -134580
- package/lib/index.js.map +0 -1
- package/lib/umd/index.js +0 -134587
- package/lib/umd/index.js.map +0 -1
- package/lib/utils/card-element.d.ts +0 -11
- package/mocks/dropdown.d.ts +0 -4
- package/mocks/dropdown.ts +0 -27
- package/mocks/link.d.ts +0 -3
- package/mocks/link.ts +0 -6
- package/rollup.config.js +0 -73
- package/rollup.test.config.js +0 -42
- package/scripts/buildUtils.js +0 -30
- package/scripts/frankBuild.js +0 -49
- package/src/Button/index.ts +0 -1
- package/src/Button/sgds-button.scss +0 -28
- package/src/Button/sgds-button.ts +0 -153
- package/src/Card/index.ts +0 -1
- package/src/Card/sgds-action-card.scss +0 -27
- package/src/Card/sgds-action-card.ts +0 -115
- package/src/Checkbox/index.ts +0 -1
- package/src/Checkbox/sgds-checkbox.scss +0 -4
- package/src/Checkbox/sgds-checkbox.ts +0 -149
- package/src/Dropdown/index.ts +0 -3
- package/src/Dropdown/sgds-dropdown-item.ts +0 -39
- package/src/Dropdown/sgds-dropdown.scss +0 -5
- package/src/Dropdown/sgds-dropdown.ts +0 -54
- package/src/Footer/index.ts +0 -3
- package/src/Footer/sgds-footer.scss +0 -5
- package/src/Footer/sgds-footer.ts +0 -121
- package/src/Input/index.ts +0 -1
- package/src/Input/sgds-input.scss +0 -20
- package/src/Input/sgds-input.ts +0 -178
- package/src/Mainnav/index.ts +0 -4
- package/src/Mainnav/sgds-mainnav-dropdown.scss +0 -13
- package/src/Mainnav/sgds-mainnav-dropdown.ts +0 -45
- package/src/Mainnav/sgds-mainnav-item.scss +0 -24
- package/src/Mainnav/sgds-mainnav-item.ts +0 -8
- package/src/Mainnav/sgds-mainnav.scss +0 -39
- package/src/Mainnav/sgds-mainnav.ts +0 -183
- package/src/Masthead/index.ts +0 -1
- package/src/Masthead/sgds-masthead.scss +0 -217
- package/src/Masthead/sgds-masthead.ts +0 -189
- package/src/Modal/index.ts +0 -1
- package/src/Modal/sgds-modal.scss +0 -128
- package/src/Modal/sgds-modal.ts +0 -309
- package/src/QuantityToggle/index.ts +0 -1
- package/src/QuantityToggle/sgds-quantitytoggle.scss +0 -10
- package/src/QuantityToggle/sgds-quantitytoggle.ts +0 -130
- package/src/Radio/index.ts +0 -2
- package/src/Radio/sgds-radio.scss +0 -5
- package/src/Radio/sgds-radio.ts +0 -120
- package/src/Radio/sgds-radiogroup.scss +0 -22
- package/src/Radio/sgds-radiogroup.ts +0 -221
- package/src/Sidenav/index.ts +0 -4
- package/src/Sidenav/sgds-sidenav-item.scss +0 -73
- package/src/Sidenav/sgds-sidenav-item.ts +0 -145
- package/src/Sidenav/sgds-sidenav-link.scss +0 -25
- package/src/Sidenav/sgds-sidenav-link.ts +0 -8
- package/src/Sidenav/sgds-sidenav.scss +0 -6
- package/src/Sidenav/sgds-sidenav.ts +0 -33
- package/src/Tab/index.ts +0 -3
- package/src/Tab/sgds-tab.scss +0 -84
- package/src/Tab/sgds-tab.ts +0 -87
- package/src/Tab/sgds-tabgroup.scss +0 -198
- package/src/Tab/sgds-tabgroup.ts +0 -295
- package/src/Tab/sgds-tabpanel.scss +0 -12
- package/src/Tab/sgds-tabpanel.ts +0 -55
- package/src/Textarea/index.ts +0 -1
- package/src/Textarea/sgds-textarea.scss +0 -23
- package/src/Textarea/sgds-textarea.ts +0 -201
- package/src/index.ts +0 -16
- package/src/utils/animate.ts +0 -69
- package/src/utils/animation-registry.ts +0 -71
- package/src/utils/base.scss +0 -14
- package/src/utils/breakpoints.ts +0 -5
- package/src/utils/card-element.ts +0 -42
- package/src/utils/components.style.scss +0 -531
- package/src/utils/defaultvalue.ts +0 -51
- package/src/utils/dropdown-element.ts +0 -244
- package/src/utils/event.ts +0 -13
- package/src/utils/form.ts +0 -183
- package/src/utils/generateId.ts +0 -4
- package/src/utils/link-element.ts +0 -34
- package/src/utils/mergeDeep.ts +0 -22
- package/src/utils/modal.ts +0 -64
- package/src/utils/object.ts +0 -2
- package/src/utils/offset.ts +0 -6
- package/src/utils/scroll.ts +0 -57
- package/src/utils/sgds-element.ts +0 -18
- package/src/utils/slot.ts +0 -102
- package/src/utils/tabbable.ts +0 -81
- package/src/utils/watch.ts +0 -62
- package/stories/ActionCard.stories.mdx +0 -199
- package/stories/Button.stories.mdx +0 -194
- package/stories/Checkbox.stories.mdx +0 -196
- package/stories/Dropdown.stories.mdx +0 -152
- package/stories/Footer.stories.mdx +0 -261
- package/stories/Input.stories.mdx +0 -236
- package/stories/MainNav.stories.mdx +0 -169
- package/stories/Masthead.stories.mdx +0 -112
- package/stories/Modal.stories.mdx +0 -103
- package/stories/QuantityToggle.stories.mdx +0 -97
- package/stories/Radio.stories.mdx +0 -262
- package/stories/Sample.stories.js +0 -29
- package/stories/Sample.stories.mdx +0 -33
- package/stories/SideNav.stories.mdx +0 -245
- package/stories/common.js +0 -185
- package/stories/textarea.stories.mdx +0 -253
- package/test/button.element.test.ts +0 -185
- package/test/checkbox.test.ts +0 -240
- package/test/dropdown.test.ts +0 -637
- package/test/footer.test.ts +0 -181
- package/test/generateId.test.ts +0 -18
- package/test/input.element.test.ts +0 -316
- package/test/link-element.test.ts +0 -38
- package/test/mainnav.test.ts +0 -313
- package/test/masthead.test.ts +0 -116
- package/test/modal.test.ts +0 -149
- package/test/quantitytoggle.test.ts +0 -76
- package/test/radio.test.ts +0 -310
- package/test/selectable-card.test.ts +0 -159
- package/test/sidenav.test.ts +0 -390
- package/test/tab.test.ts +0 -76
- package/test/textarea.test.ts +0 -126
- package/tsconfig.json +0 -26
- package/tsconfig.test.json +0 -24
- package/typings/scss.d.ts +0 -5
- package/web-dev-server.config.mjs +0 -7
- package/web-test-runner.config.mjs +0 -47
|
@@ -1,236 +0,0 @@
|
|
|
1
|
-
import { Canvas, Meta, Story, ArgsTable } from "@storybook/addon-docs";
|
|
2
|
-
import { html } from "lit-html";
|
|
3
|
-
import "../lib/Input";
|
|
4
|
-
|
|
5
|
-
<Meta
|
|
6
|
-
title="Components/Input"
|
|
7
|
-
argTypes={{
|
|
8
|
-
type: {
|
|
9
|
-
control: 'select',
|
|
10
|
-
options: [
|
|
11
|
-
'text',
|
|
12
|
-
'date',
|
|
13
|
-
'email',
|
|
14
|
-
'number',
|
|
15
|
-
'password',
|
|
16
|
-
'url',
|
|
17
|
-
],
|
|
18
|
-
defaultValue: 'text',
|
|
19
|
-
table: {
|
|
20
|
-
category: "props",
|
|
21
|
-
type: { summary: "string" },
|
|
22
|
-
},
|
|
23
|
-
description: "The input's type"
|
|
24
|
-
},
|
|
25
|
-
name:{
|
|
26
|
-
control: "text",
|
|
27
|
-
table:{
|
|
28
|
-
category: "props",
|
|
29
|
-
type: { summary: "string" },
|
|
30
|
-
},
|
|
31
|
-
description: "The input's name attribute"
|
|
32
|
-
},
|
|
33
|
-
label:{
|
|
34
|
-
control: "text",
|
|
35
|
-
defaultValue: 'Label',
|
|
36
|
-
table:{
|
|
37
|
-
category: "props",
|
|
38
|
-
type: { summary: "string" },
|
|
39
|
-
},
|
|
40
|
-
description: "The input's label"
|
|
41
|
-
},
|
|
42
|
-
hintText:{
|
|
43
|
-
control: "text",
|
|
44
|
-
defaultValue: 'This is a hint text',
|
|
45
|
-
table:{
|
|
46
|
-
category: "props",
|
|
47
|
-
type: { summary: "string" },
|
|
48
|
-
},
|
|
49
|
-
description: "The input's hint text below the label"
|
|
50
|
-
},
|
|
51
|
-
inputId:{
|
|
52
|
-
control: 'text',
|
|
53
|
-
table:{
|
|
54
|
-
category: "props",
|
|
55
|
-
type: { summary: "string" },
|
|
56
|
-
},
|
|
57
|
-
description: "The input's unique id"
|
|
58
|
-
},
|
|
59
|
-
inputClasses: {
|
|
60
|
-
control: "text",
|
|
61
|
-
table:{
|
|
62
|
-
category: "props",
|
|
63
|
-
type: { summary: "string" },
|
|
64
|
-
},
|
|
65
|
-
description: 'Can be used to insert any classes such as `mt-2`'
|
|
66
|
-
},
|
|
67
|
-
iconName:{
|
|
68
|
-
control: "text",
|
|
69
|
-
defaultValue: "badge-8k-fill",
|
|
70
|
-
table:{
|
|
71
|
-
category: "props",
|
|
72
|
-
type: { summary: "string" },
|
|
73
|
-
},
|
|
74
|
-
description:"Optional. The name of the [bootstrap's icon](https://icons.getbootstrap.com/)"
|
|
75
|
-
},
|
|
76
|
-
value:{
|
|
77
|
-
control: 'text',
|
|
78
|
-
defaultValue: "",
|
|
79
|
-
table:{
|
|
80
|
-
category: "props",
|
|
81
|
-
type: { summary: "string" },
|
|
82
|
-
},
|
|
83
|
-
description:"The input's value attribute."
|
|
84
|
-
},
|
|
85
|
-
placeholder:{
|
|
86
|
-
control: 'text',
|
|
87
|
-
defaultValue: "this is a placeholder text",
|
|
88
|
-
table:{
|
|
89
|
-
category: "props",
|
|
90
|
-
type: { summary: "string" },
|
|
91
|
-
},
|
|
92
|
-
description:"The input's placeholder text."
|
|
93
|
-
},
|
|
94
|
-
pattern:{
|
|
95
|
-
control: 'text',
|
|
96
|
-
defaultValue: "[A-Za-z]{5}",
|
|
97
|
-
table:{
|
|
98
|
-
category: "props",
|
|
99
|
-
type: { summary: "string" },
|
|
100
|
-
},
|
|
101
|
-
description:'A pattern to validate input against.',
|
|
102
|
-
},
|
|
103
|
-
invalidFeedback:{
|
|
104
|
-
control:'text',
|
|
105
|
-
defaultValue: "Please key in 5 letters",
|
|
106
|
-
table:{
|
|
107
|
-
category: "props",
|
|
108
|
-
type: { summary: "string" },
|
|
109
|
-
},
|
|
110
|
-
description: 'Feedback text for error state when validated'
|
|
111
|
-
},
|
|
112
|
-
autofocus:{
|
|
113
|
-
control:'boolean',
|
|
114
|
-
defaultValue: false,
|
|
115
|
-
table:{
|
|
116
|
-
category: "props",
|
|
117
|
-
type: { summary: "boolean" },
|
|
118
|
-
},
|
|
119
|
-
description: 'Autofocus the input'
|
|
120
|
-
},
|
|
121
|
-
disabled:{
|
|
122
|
-
control:'boolean',
|
|
123
|
-
defaultValue: false,
|
|
124
|
-
table:{
|
|
125
|
-
category: "props",
|
|
126
|
-
type: { summary: "boolean" },
|
|
127
|
-
},
|
|
128
|
-
description: 'Disables the input.'
|
|
129
|
-
},
|
|
130
|
-
required:{
|
|
131
|
-
control:'boolean',
|
|
132
|
-
defaultValue: false,
|
|
133
|
-
table:{
|
|
134
|
-
category: "props",
|
|
135
|
-
type: { summary: "boolean" },
|
|
136
|
-
},
|
|
137
|
-
description: 'Makes the input a required field.'
|
|
138
|
-
},
|
|
139
|
-
readonly:{
|
|
140
|
-
control:'boolean',
|
|
141
|
-
defaultValue: false,
|
|
142
|
-
table:{
|
|
143
|
-
category: "props",
|
|
144
|
-
type: { summary: "boolean" },
|
|
145
|
-
},
|
|
146
|
-
description: 'Makes the input a read only field'
|
|
147
|
-
},
|
|
148
|
-
minlength:{
|
|
149
|
-
control:'text',
|
|
150
|
-
table:{
|
|
151
|
-
category: "props",
|
|
152
|
-
type: { summary: "string" },
|
|
153
|
-
},
|
|
154
|
-
description: 'Sets the minimum length of the input'
|
|
155
|
-
},
|
|
156
|
-
maxlength:{
|
|
157
|
-
control:'text',
|
|
158
|
-
table:{
|
|
159
|
-
category: "props",
|
|
160
|
-
type: { summary: "string" },
|
|
161
|
-
},
|
|
162
|
-
description: 'Sets the maximum length of the input'
|
|
163
|
-
},
|
|
164
|
-
'sgds-change':{
|
|
165
|
-
table:{
|
|
166
|
-
category: "Events",
|
|
167
|
-
type: { summary: "Event" },
|
|
168
|
-
},
|
|
169
|
-
description: "Emitted when an alteration to the control's value is committed by the user"
|
|
170
|
-
},
|
|
171
|
-
'sgds-input':{
|
|
172
|
-
table:{
|
|
173
|
-
category: "Events",
|
|
174
|
-
type: { summary: "Event" },
|
|
175
|
-
},
|
|
176
|
-
description: 'Emitted when the control receives input and its value changes.'
|
|
177
|
-
},
|
|
178
|
-
'sgds-focus':{
|
|
179
|
-
table:{
|
|
180
|
-
category: "Events",
|
|
181
|
-
type: { summary: "Event" },
|
|
182
|
-
},
|
|
183
|
-
description: "Emitted when input is in focus"
|
|
184
|
-
},
|
|
185
|
-
'sgds-blur':{
|
|
186
|
-
table:{
|
|
187
|
-
category: "Events",
|
|
188
|
-
type: { summary: "Event" },
|
|
189
|
-
},
|
|
190
|
-
description: "Emitted when input is not focus"
|
|
191
|
-
},
|
|
192
|
-
}}
|
|
193
|
-
/>
|
|
194
|
-
|
|
195
|
-
export const Template = (args) =>
|
|
196
|
-
html`
|
|
197
|
-
<sgds-input
|
|
198
|
-
.type=${args.type}
|
|
199
|
-
.label=${args.label}
|
|
200
|
-
.hintText=${args.hintText}
|
|
201
|
-
.name=${args.name}
|
|
202
|
-
.id=${args.inputID}
|
|
203
|
-
.inputClasses=${args.inputClasses}
|
|
204
|
-
.value=${args.value}
|
|
205
|
-
.pattern=${args.pattern}
|
|
206
|
-
.invalidFeedback=${args.invalidFeedback}
|
|
207
|
-
.iconName=${args.iconName}
|
|
208
|
-
.placeholder=${args.placeholder}
|
|
209
|
-
?autofocus=${args.autofocus}
|
|
210
|
-
?disabled=${args.disabled}
|
|
211
|
-
?required=${args.required}
|
|
212
|
-
?readonly=${args.readonly}
|
|
213
|
-
?minlength=${args.minlength}
|
|
214
|
-
?maxlength=${args.maxlength}
|
|
215
|
-
>
|
|
216
|
-
</sgds-input>
|
|
217
|
-
`;
|
|
218
|
-
|
|
219
|
-
# SgdsInput
|
|
220
|
-
|
|
221
|
-
Text inputs allow your users to enter letters, numbers and symbols on a single line.
|
|
222
|
-
|
|
223
|
-
<Canvas>
|
|
224
|
-
<Story name="Basic" args={{ type: "text" }}>
|
|
225
|
-
{Template.bind({})}
|
|
226
|
-
</Story>
|
|
227
|
-
</Canvas>
|
|
228
|
-
|
|
229
|
-
## API
|
|
230
|
-
|
|
231
|
-
```jsx
|
|
232
|
-
import { SgdsInput } from "@govtechsg/sgds-web-component";
|
|
233
|
-
```
|
|
234
|
-
|
|
235
|
-
<ArgsTable story="Basic" />
|
|
236
|
-
|
|
@@ -1,169 +0,0 @@
|
|
|
1
|
-
import { Canvas, Meta, Story, ArgsTable } from "@storybook/addon-docs";
|
|
2
|
-
import { html } from "lit-html";
|
|
3
|
-
import "../lib/Mainnav";
|
|
4
|
-
import { partDescription, dropdownElementProps } from "./common";
|
|
5
|
-
|
|
6
|
-
<Meta
|
|
7
|
-
title="Components/Mainnav"
|
|
8
|
-
argTypes={{
|
|
9
|
-
expand: {
|
|
10
|
-
control: "select",
|
|
11
|
-
options: ["always", "never", "sm", "md", "lg", "xl", "xxl"],
|
|
12
|
-
defaultValue: "lg",
|
|
13
|
-
description:
|
|
14
|
-
"The breakpoint, below which, the Navbar will collapse. When `always` the Navbar will always be expanded regardless of screen size. When `never`, the Navbar will always be collapsed",
|
|
15
|
-
table: {
|
|
16
|
-
category: "props: SgdsMainnav",
|
|
17
|
-
defaultValue: { summary: "lg" },
|
|
18
|
-
type: {
|
|
19
|
-
summary: "MainnavExpandSize",
|
|
20
|
-
},
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
brandHref: {
|
|
24
|
-
control: "text",
|
|
25
|
-
defaultValue: "",
|
|
26
|
-
description: "The href link for brand logo",
|
|
27
|
-
table: {
|
|
28
|
-
defaultValue: { summary: "" },
|
|
29
|
-
category: "props: SgdsMainnav",
|
|
30
|
-
type: { summary: "string" },
|
|
31
|
-
},
|
|
32
|
-
},
|
|
33
|
-
collapseId: {
|
|
34
|
-
control: "text",
|
|
35
|
-
description:
|
|
36
|
-
"Forwards to id attribute of div.collapse and aria-controls attribute of toggler button in SgdsMainnav. By default, SgdsMainnav auto-generates a unique id. Override the default id by specifiying your own",
|
|
37
|
-
table: {
|
|
38
|
-
category: "props: SgdsMainnav",
|
|
39
|
-
type: {
|
|
40
|
-
summary: "string",
|
|
41
|
-
},
|
|
42
|
-
},
|
|
43
|
-
},
|
|
44
|
-
// SgdsMainnav slots
|
|
45
|
-
default: {
|
|
46
|
-
description:
|
|
47
|
-
"default slot of SgdsMainnav. Pass in SgdsMainnavItem elements here",
|
|
48
|
-
table: {
|
|
49
|
-
category: "slot: SgdsMainnav",
|
|
50
|
-
},
|
|
51
|
-
},
|
|
52
|
-
brand: {
|
|
53
|
-
description: "Brand slot of SgdsMainnav. Pass in brand logo or img here",
|
|
54
|
-
table: {
|
|
55
|
-
category: "slot: SgdsMainnav",
|
|
56
|
-
},
|
|
57
|
-
},
|
|
58
|
-
"non-collapsible": {
|
|
59
|
-
description: "Elements in this slot will not be collapsed",
|
|
60
|
-
table: {
|
|
61
|
-
category: "slot: SgdsMainnav",
|
|
62
|
-
},
|
|
63
|
-
},
|
|
64
|
-
end: {
|
|
65
|
-
description:
|
|
66
|
-
"Elements in this slot will be positioned to the right end of .navbar-nav. Elements in this slot will also be included in collapsed menu",
|
|
67
|
-
table: {
|
|
68
|
-
category: "slot: SgdsMainnav",
|
|
69
|
-
},
|
|
70
|
-
},
|
|
71
|
-
// SgdsMainnavItem props
|
|
72
|
-
active: {
|
|
73
|
-
control: "boolean",
|
|
74
|
-
description: "when true, sets the active stylings of .nav-link",
|
|
75
|
-
table: {
|
|
76
|
-
category: "props: SgdsMainnavItem",
|
|
77
|
-
defaultValue: { summary: false },
|
|
78
|
-
type: {
|
|
79
|
-
summary: "boolean",
|
|
80
|
-
},
|
|
81
|
-
},
|
|
82
|
-
},
|
|
83
|
-
href: {
|
|
84
|
-
control: "text",
|
|
85
|
-
description: "Href attribute for anchor element in SgdsMainnavItem",
|
|
86
|
-
table: {
|
|
87
|
-
defaultValue: { summary: "" },
|
|
88
|
-
category: "props: SgdsMainnavItem",
|
|
89
|
-
type: {
|
|
90
|
-
summary: "string",
|
|
91
|
-
},
|
|
92
|
-
},
|
|
93
|
-
},
|
|
94
|
-
disabledMNI: {
|
|
95
|
-
name: "disabled",
|
|
96
|
-
control: "boolean",
|
|
97
|
-
description: "Disables the SgdsMainnavItem",
|
|
98
|
-
table: { category: "props: SgdsMainnavItem" },
|
|
99
|
-
},
|
|
100
|
-
defaultMNI: {
|
|
101
|
-
name: "default",
|
|
102
|
-
description: "default slot for SgdsMainnavItem element",
|
|
103
|
-
table: {
|
|
104
|
-
category: "slot: SgdsMainnavItem",
|
|
105
|
-
},
|
|
106
|
-
},
|
|
107
|
-
...dropdownElementProps('SgdsMainnavDropdown', true)
|
|
108
|
-
}}
|
|
109
|
-
/>
|
|
110
|
-
|
|
111
|
-
export const Template = ({ expand, brandHref, collapseId, active, href, disabledMNI }) => {
|
|
112
|
-
return html`
|
|
113
|
-
<sgds-mainnav
|
|
114
|
-
.expand=${expand}
|
|
115
|
-
.brandHref=${brandHref}
|
|
116
|
-
.collapseId=${collapseId}
|
|
117
|
-
>
|
|
118
|
-
<img
|
|
119
|
-
width="130"
|
|
120
|
-
src="https://www.designsystem.tech.gov.sg/assets/img/logo-sgds.svg"
|
|
121
|
-
slot="brand"
|
|
122
|
-
/>
|
|
123
|
-
<sgds-mainnav-item .active=${active} .href=${href} .disabled=${disabledMNI}
|
|
124
|
-
>ArgsTable Controlled
|
|
125
|
-
</sgds-mainnav-item>
|
|
126
|
-
<sgds-mainnav-dropdown togglerText="Dropdown">
|
|
127
|
-
<sgds-dropdown-item href="https://google.com">Item 1</sgds-dropdown-item>
|
|
128
|
-
<sgds-dropdown-item href="#">Item 2</sgds-dropdown-item>
|
|
129
|
-
<sgds-dropdown-item href="#">Item 3</sgds-dropdown-item>
|
|
130
|
-
</sgds-mainnav-dropdown>
|
|
131
|
-
<sgds-mainnav-item href="#">About</sgds-mainnav-item>
|
|
132
|
-
<sgds-mainnav-item href="#" slot="end">Contact Us</sgds-mainnav-item>
|
|
133
|
-
<sgds-button slot="end">Login</sgds-button>
|
|
134
|
-
<dev-console-widget
|
|
135
|
-
slot="non-collapsible"
|
|
136
|
-
iconColor="black"
|
|
137
|
-
iconWidth="28px"
|
|
138
|
-
iconHeight="28px"
|
|
139
|
-
></dev-console-widget>
|
|
140
|
-
</sgds-mainnav>
|
|
141
|
-
`;
|
|
142
|
-
};
|
|
143
|
-
|
|
144
|
-
# SgdsMainnav
|
|
145
|
-
|
|
146
|
-
<Canvas>
|
|
147
|
-
<Story name="Basic" height="500px">
|
|
148
|
-
{Template.bind({})}
|
|
149
|
-
</Story>
|
|
150
|
-
</Canvas>
|
|
151
|
-
|
|
152
|
-
## API
|
|
153
|
-
|
|
154
|
-
```jsx
|
|
155
|
-
import {
|
|
156
|
-
SgdsMainnav,
|
|
157
|
-
SgdsMainnavItem,
|
|
158
|
-
SgdsMainnavDropdown,
|
|
159
|
-
MainNavExpandSize,
|
|
160
|
-
} from "@govtechsg/sgds-web-component/MainNav";
|
|
161
|
-
```
|
|
162
|
-
|
|
163
|
-
<ArgsTable story="Basic" />
|
|
164
|
-
|
|
165
|
-
## CSS Custom Properties
|
|
166
|
-
|
|
167
|
-
| Name | Description |
|
|
168
|
-
| ---------------------------- | --------------------------------------------------------------------------------------------------------------------- |
|
|
169
|
-
| `--mainnav-item-theme-color` | Sets color of hovered/active text and bottom-border of`<sgds-mainnav-item/>` Default to sgds primary color (#5925DC). |
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import { Canvas, Meta, Story, ArgsTable } from "@storybook/addon-docs";
|
|
2
|
-
import { html } from "lit-html";
|
|
3
|
-
import "../lib/Masthead";
|
|
4
|
-
|
|
5
|
-
<Meta
|
|
6
|
-
title="Components/Masthead"
|
|
7
|
-
argTypes={{
|
|
8
|
-
fluid: {
|
|
9
|
-
control: { type: 'boolean' },
|
|
10
|
-
description: "Sets the container width:100% to all breakpoints",
|
|
11
|
-
}
|
|
12
|
-
}}
|
|
13
|
-
/>
|
|
14
|
-
|
|
15
|
-
export const Template = ({
|
|
16
|
-
fluid
|
|
17
|
-
}) =>
|
|
18
|
-
html`
|
|
19
|
-
<sgds-masthead .fluid=${fluid}></sgds-masthead>
|
|
20
|
-
`;
|
|
21
|
-
|
|
22
|
-
# SgdsMasthead
|
|
23
|
-
|
|
24
|
-
All .gov.sg digital services shall adopt The Official Government Banner for every page in the digital service and be placed at the top of the page.
|
|
25
|
-
|
|
26
|
-
<Canvas>
|
|
27
|
-
<Story name="Basic" args={{ fluid : 'true' }}>
|
|
28
|
-
{Template.bind({})}
|
|
29
|
-
</Story>
|
|
30
|
-
</Canvas>
|
|
31
|
-
|
|
32
|
-
## API
|
|
33
|
-
|
|
34
|
-
```jsx
|
|
35
|
-
import { SgdsMasthead } from "@govtechsg/sgds-web-component/Masthead";
|
|
36
|
-
```
|
|
37
|
-
<ArgsTable story="Basic" />
|
|
38
|
-
|
|
39
|
-
## CSS Custom Properties
|
|
40
|
-
|
|
41
|
-
<table>
|
|
42
|
-
<thead>
|
|
43
|
-
<tr>
|
|
44
|
-
<th>Name</th>
|
|
45
|
-
<th>Description</th>
|
|
46
|
-
<th>Default Value</th>
|
|
47
|
-
</tr>
|
|
48
|
-
</thead>
|
|
49
|
-
<tbody>
|
|
50
|
-
<tr>
|
|
51
|
-
<td>
|
|
52
|
-
<code>--masthead-font-family</code>
|
|
53
|
-
</td>
|
|
54
|
-
<td>Sets font family for masthead</td>
|
|
55
|
-
<td>system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif</td>
|
|
56
|
-
</tr>
|
|
57
|
-
<tr>
|
|
58
|
-
<td>
|
|
59
|
-
<code>--masthead-text-color</code>
|
|
60
|
-
</td>
|
|
61
|
-
<td>
|
|
62
|
-
Sets overall text color
|
|
63
|
-
</td>
|
|
64
|
-
<td>hsl(0, 0%, 28%)</td>
|
|
65
|
-
</tr>
|
|
66
|
-
<tr>
|
|
67
|
-
<td>
|
|
68
|
-
<code>--masthead-link-color</code>
|
|
69
|
-
</td>
|
|
70
|
-
<td>
|
|
71
|
-
Sets link color for "How to identify?" and "Trusted Site"
|
|
72
|
-
</td>
|
|
73
|
-
<td>hsl(222, 63%, 50%)</td>
|
|
74
|
-
</tr>
|
|
75
|
-
<tr>
|
|
76
|
-
<td>
|
|
77
|
-
<code>--masthead-link-color-hover</code>
|
|
78
|
-
</td>
|
|
79
|
-
<td>
|
|
80
|
-
Sets link hover color for "How to identify?" and "Trusted Site"
|
|
81
|
-
</td>
|
|
82
|
-
<td>hsl(221, 64%, 55%)</td>
|
|
83
|
-
</tr>
|
|
84
|
-
<tr>
|
|
85
|
-
<td>
|
|
86
|
-
<code>--masthead-mobile-padding-x</code>
|
|
87
|
-
</td>
|
|
88
|
-
<td>
|
|
89
|
-
Sets the padding left and right for viewport width 1024px and below
|
|
90
|
-
</td>
|
|
91
|
-
<td>0.75rem</td>
|
|
92
|
-
</tr>
|
|
93
|
-
<tr>
|
|
94
|
-
<td>
|
|
95
|
-
<code>--masthead-mobile-font-size</code>
|
|
96
|
-
</td>
|
|
97
|
-
<td>
|
|
98
|
-
Sets the font size for viewport width 1024px and below
|
|
99
|
-
</td>
|
|
100
|
-
<td>0.6875rem</td>
|
|
101
|
-
</tr>
|
|
102
|
-
<tr>
|
|
103
|
-
<td>
|
|
104
|
-
<code>--masthead-fluid-padding-x</code>
|
|
105
|
-
</td>
|
|
106
|
-
<td>
|
|
107
|
-
Sets the container-fluid padding left and right for viewport width 1024px and above
|
|
108
|
-
</td>
|
|
109
|
-
<td>0.75rem</td>
|
|
110
|
-
</tr>
|
|
111
|
-
</tbody>
|
|
112
|
-
</table>
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
import { Canvas, Meta, Story, ArgsTable } from "@storybook/addon-docs";
|
|
2
|
-
import { html } from "lit-html";
|
|
3
|
-
import "../lib/Modal";
|
|
4
|
-
import "../lib/Button";
|
|
5
|
-
|
|
6
|
-
<Meta
|
|
7
|
-
title="Components/Modal"
|
|
8
|
-
argTypes={{
|
|
9
|
-
open: {
|
|
10
|
-
control: "boolean" ,
|
|
11
|
-
table: { category: "props" },
|
|
12
|
-
description: 'Indicates whether or not the modal is open. You can use this in lieu of the show/hide methods.',
|
|
13
|
-
defaultValue: false,
|
|
14
|
-
},
|
|
15
|
-
title: {
|
|
16
|
-
control: "text",
|
|
17
|
-
table: { category: "props" },
|
|
18
|
-
description: "The modal's title as displayed in the header",
|
|
19
|
-
defaultValue: 'This is a title',
|
|
20
|
-
},
|
|
21
|
-
titleIcon: {
|
|
22
|
-
control: "text" ,
|
|
23
|
-
table: { category: "props" },
|
|
24
|
-
description: "The modal's icon as displayed in the header",
|
|
25
|
-
defaultValue: 'stack',
|
|
26
|
-
},
|
|
27
|
-
'sgds-show': {
|
|
28
|
-
table: { category: "Events" },
|
|
29
|
-
description: "Emitted when the modal opens.",
|
|
30
|
-
},
|
|
31
|
-
'sgds-after-show': {
|
|
32
|
-
table: { category: "Events" },
|
|
33
|
-
description: " Emitted after the modal opens and all animations are complete.",
|
|
34
|
-
},
|
|
35
|
-
'sgds-hide': {
|
|
36
|
-
table: { category: "Events" },
|
|
37
|
-
description: "Emitted when the modal closes.",
|
|
38
|
-
},
|
|
39
|
-
'sgds-after-hide': {
|
|
40
|
-
table: { category: "Events" },
|
|
41
|
-
description: "Emitted after the modal closes and all animations are complete.",
|
|
42
|
-
},
|
|
43
|
-
'hide': {
|
|
44
|
-
table: { category: "Methods" },
|
|
45
|
-
description: "Hides the modal.",
|
|
46
|
-
},
|
|
47
|
-
'show': {
|
|
48
|
-
table: { category: "Methods" },
|
|
49
|
-
description: "Shows the modal.",
|
|
50
|
-
},
|
|
51
|
-
default: {
|
|
52
|
-
control: "text" ,
|
|
53
|
-
table: { category: "Slots" },
|
|
54
|
-
description: "The modal's content.",
|
|
55
|
-
defaultValue: 'This is the modal body',
|
|
56
|
-
},
|
|
57
|
-
'label ': {
|
|
58
|
-
table: { category: "Slots" },
|
|
59
|
-
description: "The modal's label.",
|
|
60
|
-
},
|
|
61
|
-
'footer': {
|
|
62
|
-
table: { category: "Slots" },
|
|
63
|
-
description: "The modal's footer.",
|
|
64
|
-
},
|
|
65
|
-
'--sgds-modal-width': {
|
|
66
|
-
control: "text" ,
|
|
67
|
-
table: { category: "CSS Custom Properties" },
|
|
68
|
-
description: "The preferred width of the modal. Note that the modal will shrink to accommodate smaller screens.",
|
|
69
|
-
}
|
|
70
|
-
}}
|
|
71
|
-
/>
|
|
72
|
-
|
|
73
|
-
export const Template = (args) =>
|
|
74
|
-
html`
|
|
75
|
-
<sgds-modal
|
|
76
|
-
.open=${args.open}
|
|
77
|
-
.title=${args.title}
|
|
78
|
-
.titleIcon=${args.titleIcon}
|
|
79
|
-
.centeredAlignVariant=${args.centeredAlignVariant}
|
|
80
|
-
>
|
|
81
|
-
${args.default}
|
|
82
|
-
<sgds-button slot="footer" variant="link" class="close-modal">Close</sgds-button>
|
|
83
|
-
<sgds-button slot="footer" variant="primary" type="submit" form="formA" >Submit</sgds-button>
|
|
84
|
-
</sgds-modal>
|
|
85
|
-
`;
|
|
86
|
-
|
|
87
|
-
# SgdsModal
|
|
88
|
-
|
|
89
|
-
The modal component inform users about a specific task and may contain critical information which users then have to make a decision. E.g Accepting the T&Cs during signup
|
|
90
|
-
|
|
91
|
-
<Canvas>
|
|
92
|
-
<Story name="Basic" args={{}}>
|
|
93
|
-
{Template.bind({})}
|
|
94
|
-
</Story>
|
|
95
|
-
</Canvas>
|
|
96
|
-
|
|
97
|
-
## API
|
|
98
|
-
|
|
99
|
-
```jsx
|
|
100
|
-
import { SgdsModal } from "@govtechsg/sgds-web-component";
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
<ArgsTable story="Basic" />
|