@lifesg/web-frontend-engine 1.0.0-alpha.2 → 1.0.0-alpha.4
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 +21 -27
- package/cjs/index.js +88 -84
- package/cjs/index.js.map +1 -1
- package/components/custom/filter/filter/filter.d.ts +2 -0
- package/components/custom/filter/filter/types.d.ts +14 -0
- package/components/custom/filter/filter-checkbox/filter-checkbox.d.ts +3 -0
- package/components/custom/filter/filter-checkbox/types.d.ts +12 -0
- package/components/custom/filter/filter-item/filter-item.d.ts +3 -0
- package/components/custom/filter/filter-item/types.d.ts +8 -0
- package/components/custom/filter/index.d.ts +3 -0
- package/components/custom/index.d.ts +1 -0
- package/components/elements/alert/alert.d.ts +1 -2
- package/components/elements/section/index.d.ts +2 -0
- package/components/elements/section/section.d.ts +2 -0
- package/components/elements/section/types.d.ts +10 -0
- package/components/elements/sections/index.d.ts +2 -0
- package/components/elements/sections/sections.d.ts +14 -0
- package/components/elements/sections/types.d.ts +5 -0
- package/components/elements/text/data.d.ts +12 -12
- package/components/elements/text/text.d.ts +1 -2
- package/components/elements/wrapper/conditional-renderer.d.ts +5 -1
- package/components/elements/wrapper/types.d.ts +11 -2
- package/components/elements/wrapper/wrapper.d.ts +2 -11
- package/components/fields/checkbox-group/checkbox-group.d.ts +1 -2
- package/components/fields/checkbox-group/checkbox-group.styles.d.ts +2 -1
- package/components/fields/checkbox-group/types.d.ts +13 -1
- package/components/fields/chips/chips.d.ts +1 -2
- package/components/fields/chips/types.d.ts +1 -0
- package/components/fields/contact-field/contact-field.d.ts +3 -0
- package/components/fields/contact-field/data.d.ts +5 -0
- package/components/fields/contact-field/index.d.ts +2 -0
- package/components/fields/contact-field/types.d.ts +30 -0
- package/components/fields/date-field/date-field.d.ts +3 -0
- package/components/fields/date-field/index.d.ts +2 -0
- package/components/fields/{date-input → date-field}/types.d.ts +2 -2
- package/components/fields/index.d.ts +6 -4
- package/components/fields/multi-select/multi-select.d.ts +1 -2
- package/components/fields/radio-button/radio-button.d.ts +1 -2
- package/components/fields/radio-button/radio-button.styles.d.ts +1 -0
- package/components/fields/radio-button/types.d.ts +9 -0
- package/components/fields/reset-button/index.d.ts +2 -0
- package/components/fields/reset-button/reset-button.d.ts +3 -0
- package/components/fields/reset-button/types.d.ts +5 -0
- package/components/fields/select/select.d.ts +1 -2
- package/components/fields/submit-button/submit-button.d.ts +1 -2
- package/components/fields/text-field/index.d.ts +2 -0
- package/components/fields/text-field/text-field.d.ts +3 -0
- package/components/fields/text-field/types.d.ts +8 -0
- package/components/fields/textarea/textarea.d.ts +1 -2
- package/components/fields/time-field/index.d.ts +2 -0
- package/components/fields/time-field/time-field.d.ts +3 -0
- package/components/fields/{time-picker → time-field}/types.d.ts +1 -1
- package/components/fields/unit-number-field/index.d.ts +2 -0
- package/components/fields/unit-number-field/types.d.ts +7 -0
- package/components/fields/unit-number-field/unit-number-field.d.ts +3 -0
- package/components/frontend-engine/frontend-engine.d.ts +2 -8
- package/components/frontend-engine/types.d.ts +76 -20
- package/components/frontend-engine/yup/context-provider.d.ts +1 -1
- package/components/shared/chip/chip.d.ts +1 -1
- package/components/shared/error-messages.d.ts +3 -0
- package/components/shared/sanitize/sanitize.d.ts +1 -1
- package/index.js +95 -91
- package/index.js.map +1 -1
- package/package.json +2 -2
- package/components/fields/contact-number/contact-number.d.ts +0 -4
- package/components/fields/contact-number/data.d.ts +0 -215
- package/components/fields/contact-number/index.d.ts +0 -2
- package/components/fields/contact-number/types.d.ts +0 -29
- package/components/fields/date-input/date-input.d.ts +0 -4
- package/components/fields/date-input/index.d.ts +0 -2
- package/components/fields/textfield/index.d.ts +0 -2
- package/components/fields/textfield/textfield.d.ts +0 -4
- package/components/fields/textfield/types.d.ts +0 -8
- package/components/fields/time-picker/index.d.ts +0 -2
- package/components/fields/time-picker/time-picker.d.ts +0 -4
- /package/components/fields/{contact-number → contact-field}/utils.d.ts +0 -0
package/README.md
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
# web-frontend-engine
|
|
1
|
+
# LifeSG Web Frontend Engine [](https://www.npmjs.com/package/@lifesg/web-frontend-engine)
|
|
2
2
|
|
|
3
3
|
Repository for the web frontend engine
|
|
4
4
|
|
|
5
5
|
- UI components based on <a href="https://github.com/LifeSG/react-design-system" target="_blank" rel="noopener noreferrer">React design system</a>
|
|
6
6
|
- Form generation via JSON schema
|
|
7
|
+
- To see the schema and fields available, visit our <a href="https://designsystem.life.gov.sg/web-frontend-engine/index.html?path=/story/introduction-getting-started--page" target="_blank" rel="noopener noreferrer">Storybook documentation</a>.
|
|
7
8
|
|
|
8
9
|
The intention of frontend engine is to take out the heavy lifting of form development and offer a collection of common fields so engineers can develop forms quickly. The form will be defined through a JSON schema so non-engineers can customise the form as well.
|
|
9
10
|
|
|
@@ -23,20 +24,25 @@ Developers are expected to have the following packages installed:
|
|
|
23
24
|
## Usage
|
|
24
25
|
|
|
25
26
|
```tsx
|
|
26
|
-
import { FrontendEngine } from "web-frontend-engine";
|
|
27
|
+
import { FrontendEngine } from "@lifesg/web-frontend-engine";
|
|
27
28
|
|
|
28
29
|
const App = () => {
|
|
29
30
|
return (
|
|
30
31
|
<FrontendEngine
|
|
31
32
|
data={{
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
33
|
+
sections: {
|
|
34
|
+
mySection: {
|
|
35
|
+
uiType: "section",
|
|
36
|
+
children: {
|
|
37
|
+
myField: {
|
|
38
|
+
uiType: "text-field",
|
|
39
|
+
label: "My field",
|
|
40
|
+
},
|
|
41
|
+
submit: {
|
|
42
|
+
uiType: "submit",
|
|
43
|
+
label: "Submit",
|
|
44
|
+
},
|
|
45
|
+
},
|
|
40
46
|
},
|
|
41
47
|
},
|
|
42
48
|
}}
|
|
@@ -47,22 +53,10 @@ const App = () => {
|
|
|
47
53
|
export default App;
|
|
48
54
|
```
|
|
49
55
|
|
|
50
|
-
##
|
|
51
|
-
|
|
52
|
-
The components are documented using Storybook. To see the stories, upon pulling this repository to your system, do these steps:
|
|
53
|
-
|
|
54
|
-
Install all dependencies
|
|
55
|
-
|
|
56
|
-
> `npm ci`
|
|
57
|
-
|
|
58
|
-
Run Storybook
|
|
59
|
-
|
|
60
|
-
> `npm run storybook`
|
|
61
|
-
|
|
62
|
-
If the web page does not load automatically, you may go to this url
|
|
63
|
-
|
|
64
|
-
> `http://localhost:6006`
|
|
56
|
+
## Contributing to the repo
|
|
65
57
|
|
|
66
|
-
|
|
58
|
+
To contribute to the frontend engine
|
|
67
59
|
|
|
68
|
-
|
|
60
|
+
- Refer to [Contributing](CONTRIBUTING.md)
|
|
61
|
+
- Understand [how it works](https://github.com/LifeSG/web-frontend-engine/wiki/How-It-Works)
|
|
62
|
+
- Familiarise with the [JSON schema](https://github.com/LifeSG/web-frontend-engine/wiki/JSON-Schema)
|