blixify-ui-web-mcp 0.1.1

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.
Files changed (245) hide show
  1. package/README.md +5 -0
  2. package/lib/components/action/button/README.md +75 -0
  3. package/lib/components/action/button/button.stories.tsx +138 -0
  4. package/lib/components/action/buttonGroup/README.md +79 -0
  5. package/lib/components/action/buttonGroup/buttonGroup.stories.tsx +104 -0
  6. package/lib/components/action/iconButton/README.md +39 -0
  7. package/lib/components/action/iconButton/iconButton.stories.tsx +22 -0
  8. package/lib/components/action/radioList/README.md +98 -0
  9. package/lib/components/action/radioList/radioList.stories.tsx +181 -0
  10. package/lib/components/action/slider/README.md +86 -0
  11. package/lib/components/action/slider/slider.stories.tsx +133 -0
  12. package/lib/components/action/textButton/README.md +34 -0
  13. package/lib/components/action/textButton/textButton.stories.tsx +16 -0
  14. package/lib/components/action/toggle/README.md +39 -0
  15. package/lib/components/action/toggle/toggle.stories.tsx +23 -0
  16. package/lib/components/advanced/collapse/README.md +106 -0
  17. package/lib/components/advanced/collapse/collapse.stories.tsx +165 -0
  18. package/lib/components/advanced/infoWindow/README.md +69 -0
  19. package/lib/components/advanced/infoWindow/infoWindow.stories.tsx +112 -0
  20. package/lib/components/advanced/popUp/README.md +95 -0
  21. package/lib/components/advanced/popUp/popUp.stories.tsx +189 -0
  22. package/lib/components/auth/bareSignIn/README.md +78 -0
  23. package/lib/components/auth/bareSignIn/bareSignIn.stories.tsx +141 -0
  24. package/lib/components/auth/bareSignUp/README.md +130 -0
  25. package/lib/components/auth/bareSignUp/bareSignUp.stories.tsx +159 -0
  26. package/lib/components/auth/signIn/README.md +53 -0
  27. package/lib/components/auth/signIn/signIn.stories.tsx +120 -0
  28. package/lib/components/auth/signUp/README.md +136 -0
  29. package/lib/components/auth/signUp/signUp.stories.tsx +193 -0
  30. package/lib/components/chart/README.md +13 -0
  31. package/lib/components/chart/areaChart/README.md +133 -0
  32. package/lib/components/chart/areaChart/areaChart.stories.tsx +199 -0
  33. package/lib/components/chart/barChart/README.md +193 -0
  34. package/lib/components/chart/barChart/barChart.stories.tsx +318 -0
  35. package/lib/components/chart/boxPlotChart/README.md +124 -0
  36. package/lib/components/chart/boxPlotChart/boxPlotChart.stories.tsx +104 -0
  37. package/lib/components/chart/bubbleChart/README.md +166 -0
  38. package/lib/components/chart/bubbleChart/bubbleChart.stories.tsx +144 -0
  39. package/lib/components/chart/card/README.md +107 -0
  40. package/lib/components/chart/card/card.stories.tsx +89 -0
  41. package/lib/components/chart/ganttChart/README.md +142 -0
  42. package/lib/components/chart/ganttChart/ganttChart.stories.tsx +138 -0
  43. package/lib/components/chart/heatmapChart/README.md +125 -0
  44. package/lib/components/chart/heatmapChart/heatmapChart.stories.tsx +106 -0
  45. package/lib/components/chart/lineChart/README.md +140 -0
  46. package/lib/components/chart/lineChart/lineChart.stories.tsx +152 -0
  47. package/lib/components/chart/pieChart/README.md +117 -0
  48. package/lib/components/chart/pieChart/pieChart.stories.tsx +180 -0
  49. package/lib/components/chart/polarAreaChart/README.md +126 -0
  50. package/lib/components/chart/polarAreaChart/polarAreaChart.stories.tsx +106 -0
  51. package/lib/components/chart/radarChart/README.md +57 -0
  52. package/lib/components/chart/radarChart/radarChart.stories.tsx +36 -0
  53. package/lib/components/chart/radialBar/README.md +152 -0
  54. package/lib/components/chart/radialBar/radialChart.stories.tsx +136 -0
  55. package/lib/components/chart/rangeBarChart/README.md +323 -0
  56. package/lib/components/chart/rangeBarChart/rangeBarChart.stories.tsx +208 -0
  57. package/lib/components/chart/statsCard/README.md +97 -0
  58. package/lib/components/chart/statsCard/statsCard.stories.tsx +183 -0
  59. package/lib/components/chart/treemapChart/README.md +142 -0
  60. package/lib/components/chart/treemapChart/treemapChart.stories.tsx +122 -0
  61. package/lib/components/chat/chatAnchor/README.md +113 -0
  62. package/lib/components/chat/chatAnchor/chatAnchor.stories.tsx +156 -0
  63. package/lib/components/chat/chatBase/README.md +223 -0
  64. package/lib/components/chat/chatBase/chatBase.stories.tsx +306 -0
  65. package/lib/components/chat/chatDashboard/README.md +161 -0
  66. package/lib/components/chat/chatDashboard/chatDashboard.stories.tsx +154 -0
  67. package/lib/components/data/dataGraph/README.md +13 -0
  68. package/lib/components/data/dataGraph/dataGraph.stories.tsx +84 -0
  69. package/lib/components/data/dataReference/README.md +62 -0
  70. package/lib/components/data/dataReference/dataReference.stories.tsx +53 -0
  71. package/lib/components/data/dataTemplate/README.md +903 -0
  72. package/lib/components/data/dataTemplate/dataModule.stories.tsx +196 -0
  73. package/lib/components/data/dataTemplate/dataTemplate.stories.tsx +337 -0
  74. package/lib/components/data/dataWrapper/README.md +1077 -0
  75. package/lib/components/data/dataWrapper/dataWrapper.stories.tsx +831 -0
  76. package/lib/components/data/queryForm/README.md +56 -0
  77. package/lib/components/data/queryForm/queryForm.stories.tsx +85 -0
  78. package/lib/components/data/readQuery/README.md +282 -0
  79. package/lib/components/data/readQuery/readQuery.stories.tsx +256 -0
  80. package/lib/components/data/readQueryHoc/README.md +89 -0
  81. package/lib/components/data/readQueryHoc/readQueryHoc.stories.tsx +33 -0
  82. package/lib/components/data/writeQuery/README.md +178 -0
  83. package/lib/components/data/writeQuery/writeQuery.stories.tsx +209 -0
  84. package/lib/components/design/actionSection/README.md +47 -0
  85. package/lib/components/design/actionSection/actionSection.stories.tsx +74 -0
  86. package/lib/components/design/banner/README.md +43 -0
  87. package/lib/components/design/banner/banner.stories.tsx +34 -0
  88. package/lib/components/design/bannerAction/README.md +44 -0
  89. package/lib/components/design/bannerAction/bannerAction.stories.tsx +25 -0
  90. package/lib/components/design/blogSection/README.md +111 -0
  91. package/lib/components/design/blogSection/blogSection.stories.tsx +72 -0
  92. package/lib/components/design/carouselSection/README.md +82 -0
  93. package/lib/components/design/carouselSection/carouselSection.stories.tsx +52 -0
  94. package/lib/components/design/designList/README.md +60 -0
  95. package/lib/components/design/designList/designList.stories.tsx +44 -0
  96. package/lib/components/design/faq/README.md +121 -0
  97. package/lib/components/design/faq/faq.stories.tsx +103 -0
  98. package/lib/components/design/fileGrid/README.md +87 -0
  99. package/lib/components/design/fileGrid/fileGrid.stories.tsx +110 -0
  100. package/lib/components/design/fileViewer/README.md +40 -0
  101. package/lib/components/design/fileViewer/fileViewer.stories.tsx +28 -0
  102. package/lib/components/design/footerSection/README.md +62 -0
  103. package/lib/components/design/footerSection/footerSection.stories.tsx +84 -0
  104. package/lib/components/design/googleReview/README.md +45 -0
  105. package/lib/components/design/googleReview/googleReview.stories.tsx +33 -0
  106. package/lib/components/design/heroSection/README.md +48 -0
  107. package/lib/components/design/heroSection/heroSection.stories.tsx +85 -0
  108. package/lib/components/design/iconList/README.md +60 -0
  109. package/lib/components/design/iconList/iconList.stories.tsx +41 -0
  110. package/lib/components/design/imageGallery/README.md +56 -0
  111. package/lib/components/design/imageGallery/imageGallery.stories.tsx +45 -0
  112. package/lib/components/design/imageZoom/README.md +47 -0
  113. package/lib/components/design/imageZoom/imageZoom.stories.tsx +30 -0
  114. package/lib/components/design/leftContent/README.md +47 -0
  115. package/lib/components/design/leftContent/leftContent.stories.tsx +32 -0
  116. package/lib/components/design/logoCloud/README.md +42 -0
  117. package/lib/components/design/logoCloud/logoCloud.stories.tsx +44 -0
  118. package/lib/components/design/onboarding/README.md +100 -0
  119. package/lib/components/design/onboarding/onboarding.stories.tsx +113 -0
  120. package/lib/components/design/pricing/README.md +112 -0
  121. package/lib/components/design/pricing/pricing.stories.tsx +86 -0
  122. package/lib/components/design/rightContent/README.md +47 -0
  123. package/lib/components/design/rightContent/rightContent.stories.tsx +32 -0
  124. package/lib/components/design/sectionList/README.md +51 -0
  125. package/lib/components/design/sectionList/sectionList.stories.tsx +35 -0
  126. package/lib/components/design/teams/README.md +62 -0
  127. package/lib/components/design/teams/teams.stories.tsx +61 -0
  128. package/lib/components/display/alert/README.md +82 -0
  129. package/lib/components/display/alert/alert.stories.tsx +71 -0
  130. package/lib/components/display/calendar/README.md +113 -0
  131. package/lib/components/display/calendar/calendar.stories.tsx +159 -0
  132. package/lib/components/display/clipboard/README.md +36 -0
  133. package/lib/components/display/clipboard/clipboard.stories.tsx +32 -0
  134. package/lib/components/display/detailList/README.md +61 -0
  135. package/lib/components/display/detailList/detailList.stories.tsx +131 -0
  136. package/lib/components/display/drawer/README.md +74 -0
  137. package/lib/components/display/drawer/drawer.stories.tsx +66 -0
  138. package/lib/components/display/emptyState/README.md +38 -0
  139. package/lib/components/display/emptyState/emptyState.stories.tsx +22 -0
  140. package/lib/components/display/feeds/README.md +80 -0
  141. package/lib/components/display/feeds/feeds.stories.tsx +75 -0
  142. package/lib/components/display/flexTable/README.md +160 -0
  143. package/lib/components/display/flexTable/flexTable.stories.tsx +313 -0
  144. package/lib/components/display/grid/README.md +121 -0
  145. package/lib/components/display/grid/grid.stories.tsx +234 -0
  146. package/lib/components/display/kanban/README.md +78 -0
  147. package/lib/components/display/kanban/kanban.stories.tsx +133 -0
  148. package/lib/components/display/list/README.md +109 -0
  149. package/lib/components/display/list/list.stories.tsx +188 -0
  150. package/lib/components/display/loading/README.md +25 -0
  151. package/lib/components/display/loading/loading.stories.tsx +15 -0
  152. package/lib/components/display/mapView/README.md +99 -0
  153. package/lib/components/display/mapView/mapView.stories.tsx +225 -0
  154. package/lib/components/display/modal/README.md +43 -0
  155. package/lib/components/display/modal/modal.stories.tsx +81 -0
  156. package/lib/components/display/notification/README.md +43 -0
  157. package/lib/components/display/notification/notification.stories.tsx +30 -0
  158. package/lib/components/display/progress/README.md +25 -0
  159. package/lib/components/display/progress/progress.stories.tsx +15 -0
  160. package/lib/components/display/stepper/README.md +96 -0
  161. package/lib/components/display/stepper/stepper.stories.tsx +175 -0
  162. package/lib/components/display/table/README.md +176 -0
  163. package/lib/components/display/table/table.stories.tsx +330 -0
  164. package/lib/components/display/tag/README.md +74 -0
  165. package/lib/components/display/tag/tag.stories.tsx +79 -0
  166. package/lib/components/input/address/README.md +132 -0
  167. package/lib/components/input/address/address.stories.tsx +147 -0
  168. package/lib/components/input/canvas/README.md +131 -0
  169. package/lib/components/input/canvas/canvas.stories.tsx +165 -0
  170. package/lib/components/input/checkbox/README.md +61 -0
  171. package/lib/components/input/checkbox/checkbox.stories.tsx +30 -0
  172. package/lib/components/input/datePicker/README.md +124 -0
  173. package/lib/components/input/datePicker/datePicker.stories.tsx +197 -0
  174. package/lib/components/input/form/README.md +55 -0
  175. package/lib/components/input/form/form.stories.tsx +143 -0
  176. package/lib/components/input/markdown/README.md +146 -0
  177. package/lib/components/input/markdown/markdown.stories.tsx +40 -0
  178. package/lib/components/input/monthYearPicker/README.md +69 -0
  179. package/lib/components/input/monthYearPicker/monthYearPicker.stories.tsx +47 -0
  180. package/lib/components/input/netPromoterScore/README.md +52 -0
  181. package/lib/components/input/netPromoterScore/netPromoterScore.stories.tsx +30 -0
  182. package/lib/components/input/rating/README.md +51 -0
  183. package/lib/components/input/rating/rating.stories.tsx +30 -0
  184. package/lib/components/input/select/README.md +108 -0
  185. package/lib/components/input/select/select.stories.tsx +286 -0
  186. package/lib/components/input/signature/README.md +106 -0
  187. package/lib/components/input/signature/signature.stories.tsx +188 -0
  188. package/lib/components/input/textArea/README.md +55 -0
  189. package/lib/components/input/textArea/textArea.stories.tsx +30 -0
  190. package/lib/components/input/textInput/README.md +81 -0
  191. package/lib/components/input/textInput/textinput.stories.tsx +231 -0
  192. package/lib/components/input/uploadInput/README.md +134 -0
  193. package/lib/components/input/uploadInput/uploadInput.stories.tsx +193 -0
  194. package/lib/components/navigation/bars/README.md +40 -0
  195. package/lib/components/navigation/bars/bars.stories.tsx +85 -0
  196. package/lib/components/navigation/bottomTab/README.md +53 -0
  197. package/lib/components/navigation/bottomTab/bottomTab.stories.tsx +32 -0
  198. package/lib/components/navigation/breadcrumb/README.md +48 -0
  199. package/lib/components/navigation/breadcrumb/breadcrumb.stories.tsx +27 -0
  200. package/lib/components/navigation/header/README.md +149 -0
  201. package/lib/components/navigation/header/header.stories.tsx +107 -0
  202. package/lib/components/navigation/leftNav/README.md +91 -0
  203. package/lib/components/navigation/leftNav/leftNav.stories.tsx +106 -0
  204. package/lib/components/navigation/tabs/README.md +75 -0
  205. package/lib/components/navigation/tabs/tabs.stories.tsx +60 -0
  206. package/lib/components/structure/column/README.md +40 -0
  207. package/lib/components/structure/column/column.stories.tsx +26 -0
  208. package/lib/components/structure/container/README.md +34 -0
  209. package/lib/components/structure/container/container.stories.tsx +19 -0
  210. package/lib/components/structure/link/README.md +55 -0
  211. package/lib/components/structure/link/link.stories.tsx +30 -0
  212. package/lib/components/structure/text/README.md +42 -0
  213. package/lib/components/structure/text/text.stories.tsx +39 -0
  214. package/lib/components/template/authPage/authPage.stories.tsx +68 -0
  215. package/lib/components/template/landingPage/landingPage.stories.tsx +288 -0
  216. package/lib/components/template/productListing/productListing.stories.tsx +297 -0
  217. package/lib/components/template/productOverview/productOverview.stories.tsx +194 -0
  218. package/lib/components/template/shoppingCart/shoppingCart.stories.tsx +252 -0
  219. package/lib/components/template/userHomePage/userHomePage.stories.tsx +605 -0
  220. package/lib/components/template/userRankingDashboard/userRankingDashboard.stories.tsx +481 -0
  221. package/lib/mcp/server.d.ts +2 -0
  222. package/lib/mcp/server.d.ts.map +1 -0
  223. package/lib/mcp/server.js +33 -0
  224. package/lib/mcp/server.js.map +1 -0
  225. package/lib/mcp/tools/getBackendComponent.d.ts +13 -0
  226. package/lib/mcp/tools/getBackendComponent.d.ts.map +1 -0
  227. package/lib/mcp/tools/getBackendComponent.js +119 -0
  228. package/lib/mcp/tools/getBackendComponent.js.map +1 -0
  229. package/lib/mcp/tools/getComponent.d.ts +17 -0
  230. package/lib/mcp/tools/getComponent.d.ts.map +1 -0
  231. package/lib/mcp/tools/getComponent.js +118 -0
  232. package/lib/mcp/tools/getComponent.js.map +1 -0
  233. package/lib/mcp/tools/listComponents.d.ts +13 -0
  234. package/lib/mcp/tools/listComponents.d.ts.map +1 -0
  235. package/lib/mcp/tools/listComponents.js +113 -0
  236. package/lib/mcp/tools/listComponents.js.map +1 -0
  237. package/lib/mcp/tools/listTemplates.d.ts +13 -0
  238. package/lib/mcp/tools/listTemplates.d.ts.map +1 -0
  239. package/lib/mcp/tools/listTemplates.js +68 -0
  240. package/lib/mcp/tools/listTemplates.js.map +1 -0
  241. package/lib/mcp/tools/suggestTemplate.d.ts +17 -0
  242. package/lib/mcp/tools/suggestTemplate.d.ts.map +1 -0
  243. package/lib/mcp/tools/suggestTemplate.js +212 -0
  244. package/lib/mcp/tools/suggestTemplate.js.map +1 -0
  245. package/package.json +23 -0
@@ -0,0 +1,19 @@
1
+ import { storiesOf } from "@storybook/react";
2
+ import React from "react";
3
+ import { Container } from ".";
4
+ import README from "./README.md";
5
+ const stories = storiesOf("Structure", module);
6
+
7
+ stories.addParameters({
8
+ readme: {
9
+ content: README,
10
+ },
11
+ });
12
+
13
+ stories.add("Container", () => {
14
+ return (
15
+ <Container>
16
+ <h1>Item 1</h1>
17
+ </Container>
18
+ );
19
+ });
@@ -0,0 +1,55 @@
1
+ # Link
2
+
3
+ <!-- STORY -->
4
+
5
+ <hr>
6
+
7
+ Link for navigation
8
+
9
+ ##### Import
10
+
11
+ ```js
12
+ import { Link } from "blixify-ui-web/components/structure/link";
13
+ ```
14
+
15
+ ##### Usage
16
+
17
+ ```jsx
18
+ <>
19
+ <Link href="https://blixify.co" linkType="external">
20
+ <Text size="base" color="primary" type="p">
21
+ Link - External
22
+ </Text>
23
+ </Link>
24
+ <Link href="https://blixify.co" linkType="default">
25
+ <Text size="base" color="primary" type="p">
26
+ Link - Internal
27
+ </Text>
28
+ </Link>
29
+ </>
30
+ ```
31
+
32
+ ##### Required props
33
+
34
+ | Name | Type | Description |
35
+ | ---------- | --------------- | --------------- |
36
+ | `children` | `React.Element` | React Element |
37
+ | `linkType` | `string` | Type of link |
38
+ | `href` | `string` | Navigation link |
39
+
40
+ ##### Optional props
41
+
42
+ | Name | Type | Default | Description |
43
+ | ----------- | ---------------- | ------- | ----------------------------------------- |
44
+ | `custom` | `Custom Class` | null | Required if type is react/gatsby/next |
45
+ | `className` | `tailwind class` | "" | |
46
+ | `target` | `string` | null | Link target (e.g., "\_blank" for new tab) |
47
+
48
+ ##### Link Props Class
49
+
50
+ ###### Extended to components who posses link
51
+
52
+ | Name | Type | Default | Description |
53
+ | ---------- | -------------- | ------------ | ------------------------------------- |
54
+ | `linkType` | `string` | Type of link | react/gatsby/next/external/default |
55
+ | `custom` | `Custom Class` | null | Required if type is react/gatsby/next |
@@ -0,0 +1,30 @@
1
+ import { storiesOf } from "@storybook/react";
2
+ import React from "react";
3
+ import { Link } from ".";
4
+ import { Text } from "../text";
5
+ import README from "./README.md";
6
+
7
+ const stories = storiesOf("Structure", module);
8
+
9
+ stories.addParameters({
10
+ readme: {
11
+ content: README,
12
+ },
13
+ });
14
+
15
+ stories.add("Link", () => {
16
+ return (
17
+ <>
18
+ <Link href="https://blixify.co" linkType="external">
19
+ <Text size="base" color="primary" type="p">
20
+ Link - External
21
+ </Text>
22
+ </Link>
23
+ <Link href="https://blixify.co" linkType="default">
24
+ <Text size="base" color="primary" type="p">
25
+ Link - Internal
26
+ </Text>
27
+ </Link>
28
+ </>
29
+ );
30
+ });
@@ -0,0 +1,42 @@
1
+ # Text
2
+
3
+ <!-- STORY -->
4
+
5
+ <hr>
6
+
7
+ Display Text
8
+
9
+ ##### Import
10
+
11
+ ```js
12
+ import { Text } from "blixify-ui-web/components/structure/text";
13
+ ```
14
+
15
+ ##### Usage
16
+
17
+ ```jsx
18
+ <Text size="lg" color="primary" bold="bold" type="h1">
19
+ Hello World
20
+ </Text>
21
+ <Text size="base" color="pale" type="p">
22
+ Lorem Ipsum
23
+ </Text>
24
+ ```
25
+
26
+ ##### Required props
27
+
28
+ | Name | Type | Description |
29
+ | ---------- | --------------- | ----------------------- |
30
+ | `children` | `React.Element` | React Element |
31
+ | `size` | `string` | Tailwind size selection |
32
+ | `type` | `string` | Html tag selection |
33
+
34
+ ##### Optional props
35
+
36
+ | Name | Type | Default | Description |
37
+ | ----------- | ---------------------------- | ---------------- | ----------- |
38
+ | `bold` | `semibold / bold` | `Bold variation` |
39
+ | `mobile` | boolean | null |
40
+ | `color` | `primary / secondary / pale` | null |
41
+ | `className` | `tailwind class` | "" |
42
+ | `animated` | `boolean` | "" |
@@ -0,0 +1,39 @@
1
+ import { storiesOf } from "@storybook/react";
2
+ import React, { useEffect, useState } from "react";
3
+ import { Text } from ".";
4
+ import README from "./README.md";
5
+ const stories = storiesOf("Structure", module);
6
+
7
+ stories.addParameters({
8
+ readme: {
9
+ content: README,
10
+ },
11
+ });
12
+
13
+ stories.add("Text", () => {
14
+ const textList = ["Hello", "World"];
15
+ const [textValue, setTextValue] = useState(textList[0]);
16
+ const [currentIndex, setCurrentIndex] = useState(0);
17
+
18
+ useEffect(() => {
19
+ const intervalId = setInterval(() => {
20
+ setTextValue(textList[currentIndex]);
21
+ setCurrentIndex((prevIndex) => (prevIndex + 1) % textList.length);
22
+ }, 1000);
23
+ return () => clearInterval(intervalId);
24
+ }, [currentIndex]);
25
+
26
+ return (
27
+ <>
28
+ <Text size="lg" color="primary" bold="bold" type="h1">
29
+ Hello World
30
+ </Text>
31
+ <Text size="base" color="pale" type="p">
32
+ Lorem Ipsum
33
+ </Text>
34
+ <Text size="lg" color="primary" type="h1" bold="bold" animated>
35
+ {textValue}
36
+ </Text>
37
+ </>
38
+ );
39
+ });
@@ -0,0 +1,68 @@
1
+ import { storiesOf } from "@storybook/react";
2
+ import { useState } from "react";
3
+ import { BareSignIn, AvailableProvider } from "../../auth/bareSignIn";
4
+ import { FooterSection } from "../../design/footerSection";
5
+ import "../../../index.css";
6
+
7
+ const stories = storiesOf("Template", module);
8
+
9
+ stories.add("Auth Page", () => {
10
+ const [signInType, setSignInType] = useState<typeof AvailableProvider>("email");
11
+
12
+ return (
13
+ <>
14
+ <div className="min-h-screen bg-gray-100 flex flex-col justify-center py-12 sm:px-6 lg:px-8">
15
+ <div className="sm:mx-auto sm:w-full sm:max-w-lg">
16
+ <img
17
+ src="https://images.unsplash.com/photo-1614680376573-df3480f0c6ff?auto=format&fit=crop&w=128&h=128&q=80"
18
+ alt="[App Logo]"
19
+ className="mx-auto h-20 w-auto object-contain rounded-full"
20
+ />
21
+ <p className="mt-1 text-center text-sm font-semibold tracking-widest text-gray-500 uppercase">
22
+ [App Name]
23
+ </p>
24
+ <h2 className="mt-4 text-center text-3xl font-bold text-gray-900">Sign In</h2>
25
+ <p className="mt-2 text-center text-sm text-gray-600 max-w-sm mx-auto">
26
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit.
27
+ </p>
28
+ </div>
29
+
30
+ <div className="mt-8 sm:mx-auto sm:w-full sm:max-w-2xl">
31
+ <div className="bg-white py-8 px-6 shadow sm:rounded-lg sm:px-10">
32
+ <BareSignIn
33
+ type={signInType}
34
+ provider={["email"]}
35
+ column="flex"
36
+ mobilePicker
37
+ mobileCountryEditable
38
+ onChangeProvider={(provider) => setSignInType(provider)}
39
+ onComplete={() => {}}
40
+ bottomComponent={
41
+ <span className="text-sm text-gray-600">
42
+ By proceeding, you agree to our{" "}
43
+ <a href="/terms" className="text-primary-600 hover:text-primary-500 font-medium">
44
+ General Terms of Use
45
+ </a>
46
+ </span>
47
+ }
48
+ />
49
+ </div>
50
+ </div>
51
+ </div>
52
+
53
+ <FooterSection
54
+ linkType="external"
55
+ caption={`© ${new Date().getFullYear()} [App Name] App Pte Ltd. All rights reserved.`}
56
+ footerList={[
57
+ {
58
+ title: "Terms of Use",
59
+ subList: [
60
+ { name: "T&C", link: "/terms" },
61
+ { name: "Privacy Policy", link: "/privacy" },
62
+ ],
63
+ },
64
+ ]}
65
+ />
66
+ </>
67
+ );
68
+ });
@@ -0,0 +1,288 @@
1
+ import { Disclosure, Menu, Popover, Transition } from "@headlessui/react";
2
+ import { storiesOf } from "@storybook/react";
3
+ import { useState } from "react";
4
+ import { Button } from "../../action/button";
5
+ import { ButtonGroup } from "../../action/buttonGroup";
6
+ import { BarChart } from "../../chart/barChart";
7
+ import { ActionSection } from "../../design/actionSection";
8
+ import { FooterSection } from "../../design/footerSection";
9
+ import { HeroSection } from "../../design/heroSection";
10
+ import { IconList } from "../../design/iconList";
11
+ import { LeftContent } from "../../design/leftContent";
12
+ import { LogoCloud } from "../../design/logoCloud";
13
+ import { RightContent } from "../../design/rightContent";
14
+ import { SectionList } from "../../design/sectionList";
15
+ import { Header } from "../../navigation/header";
16
+ import "../../../index.css";
17
+ const Logo = require("../../../assets/logo.png");
18
+
19
+ const stories = storiesOf("Template", module);
20
+
21
+ const NAVIGATION = [
22
+ { name: "Home", href: "/" },
23
+ { name: "Features", href: "#features" },
24
+ { name: "Pricing", href: "#pricing" },
25
+ { name: "About", href: "#about" },
26
+ ];
27
+
28
+ const STEPS_ICON_LIST = [
29
+ {
30
+ name: "Step 1: Lorem Ipsum",
31
+ content: "Consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore.",
32
+ icon: (
33
+ <svg className="w-6 h-6" fill="none" viewBox="0 0 24 24" stroke="currentColor">
34
+ <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z" />
35
+ </svg>
36
+ ),
37
+ },
38
+ {
39
+ name: "Step 2: Dolor Sit Amet",
40
+ content: "Ut enim ad minim veniam quis nostrud exercitation ullamco laboris nisi.",
41
+ icon: (
42
+ <svg className="w-6 h-6" fill="none" viewBox="0 0 24 24" stroke="currentColor">
43
+ <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z" />
44
+ </svg>
45
+ ),
46
+ },
47
+ {
48
+ name: "Step 3: Adipiscing Elit",
49
+ content: "Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore.",
50
+ icon: (
51
+ <svg className="w-6 h-6" fill="none" viewBox="0 0 24 24" stroke="currentColor">
52
+ <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z" />
53
+ </svg>
54
+ ),
55
+ },
56
+ ];
57
+
58
+ const PRICING_ICON_LIST = [
59
+ {
60
+ name: "[Feature One]",
61
+ content: "Lorem ipsum dolor sit amet consectetur adipiscing elit.",
62
+ icon: (
63
+ <svg className="w-5 h-5" fill="none" viewBox="0 0 24 24" stroke="currentColor">
64
+ <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M5 13l4 4L19 7" />
65
+ </svg>
66
+ ),
67
+ },
68
+ {
69
+ name: "[Feature Two]",
70
+ content: "Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.",
71
+ icon: (
72
+ <svg className="w-5 h-5" fill="none" viewBox="0 0 24 24" stroke="currentColor">
73
+ <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M5 13l4 4L19 7" />
74
+ </svg>
75
+ ),
76
+ },
77
+ {
78
+ name: "[Feature Three]",
79
+ content: "Ut enim ad minim veniam quis nostrud exercitation ullamco.",
80
+ icon: (
81
+ <svg className="w-5 h-5" fill="none" viewBox="0 0 24 24" stroke="currentColor">
82
+ <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M5 13l4 4L19 7" />
83
+ </svg>
84
+ ),
85
+ },
86
+ ];
87
+
88
+ const STATS_DATA = [
89
+ { title: "[Stat 1]", content: "Lorem ipsum dolor sit amet consectetur." },
90
+ { title: "[Stat 2]", content: "Sed do eiusmod tempor incididunt ut labore." },
91
+ { title: "[Stat 3]", content: "Ut enim ad minim veniam quis nostrud." },
92
+ ];
93
+
94
+ const PARTNER_LOGOS = [
95
+ { src: "https://images.unsplash.com/photo-1611162617213-7d7a39e9b1d7?auto=format&fit=crop&w=200&h=80&q=80", alt: "[Partner 1]", href: "#" },
96
+ { src: "https://images.unsplash.com/photo-1611162616305-c69b3fa7fbe0?auto=format&fit=crop&w=200&h=80&q=80", alt: "[Partner 2]", href: "#" },
97
+ { src: "https://images.unsplash.com/photo-1611162618071-b39a2ec055fb?auto=format&fit=crop&w=200&h=80&q=80", alt: "[Partner 3]", href: "#" },
98
+ { src: "https://images.unsplash.com/photo-1611162617474-5b21e879e113?auto=format&fit=crop&w=200&h=80&q=80", alt: "[Partner 4]", href: "#" },
99
+ ];
100
+
101
+ const CHART1_DATA = [
102
+ { x: "[Tier 1]", y: 10 },
103
+ { x: "[Tier 2]", y: 20 },
104
+ { x: "[Tier 3]", y: 35 },
105
+ { x: "[Tier 4]", y: 50 },
106
+ ];
107
+
108
+ const CHART2_DATA = [
109
+ { x: "[Option A]", y: 25 },
110
+ { x: "[Option B]", y: 40 },
111
+ ];
112
+
113
+ stories.add("Landing Page", () => {
114
+ const [pricingTab, setPricingTab] = useState("tab1");
115
+
116
+ const activeData = pricingTab === "tab1" ? CHART1_DATA : CHART2_DATA;
117
+ const activeTitle = pricingTab === "tab1" ? "[Chart Title]" : "[Chart Title 2]";
118
+ const activeUnit = pricingTab === "tab1" ? "Value" : "Value";
119
+
120
+ return (
121
+ <div className="min-h-screen bg-white">
122
+ <Header
123
+ logo={Logo}
124
+ page=""
125
+ defaultNav="#"
126
+ linkType="external"
127
+ navigation={NAVIGATION}
128
+ lib={{ Disclosure, Menu, Transition, Popover }}
129
+ extra={
130
+ <div className="flex items-center space-x-3 mr-2">
131
+ <a href="/signIn" className="text-sm text-gray-600 hover:text-gray-900">Sign In</a>
132
+ <Button text="Sign Up" type="normal" size="small" onClick={() => {}} />
133
+ </div>
134
+ }
135
+ />
136
+
137
+ <div className="bg-white py-8">
138
+ <HeroSection
139
+ size="small"
140
+ title="Lorem ipsum dolor sit amet consectetur adipiscing elit"
141
+ content="Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam quis nostrud exercitation."
142
+ image="https://images.unsplash.com/photo-1497366216548-37526070297c?auto=format&fit=crop&w=900&q=80"
143
+ callToAction={
144
+ <div className="flex gap-x-3">
145
+ <Button text="Get Started" type="normal" onClick={() => {}} />
146
+ <Button text="Learn More" type="light" onClick={() => {}} />
147
+ </div>
148
+ }
149
+ />
150
+ </div>
151
+
152
+ <div className="bg-white py-16 px-4">
153
+ <LeftContent
154
+ title="Lorem ipsum dolor sit amet"
155
+ contentList={[
156
+ "Consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.",
157
+ "Ut enim ad minim veniam quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo.",
158
+ ]}
159
+ image="https://images.unsplash.com/photo-1551434678-e076c223a692?auto=format&fit=crop&w=800&q=80"
160
+ callToAction={
161
+ <div className="mt-8">
162
+ <IconList iconList={STEPS_ICON_LIST} />
163
+ </div>
164
+ }
165
+ />
166
+ </div>
167
+
168
+ <div className="bg-white py-16 px-4">
169
+ <RightContent
170
+ title="Consectetur adipiscing elit"
171
+ contentList={[
172
+ "Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.",
173
+ "Excepteur sint occaecat cupidatat non proident sunt in culpa qui officia deserunt mollit anim id est.",
174
+ ]}
175
+ image="https://images.unsplash.com/photo-1460925895917-afdab827c52f?auto=format&fit=crop&w=800&q=80"
176
+ callToAction={<Button text="Learn More" type="normal" onClick={() => {}} />}
177
+ />
178
+ </div>
179
+
180
+ <div className="bg-white py-16 px-4">
181
+ <LeftContent
182
+ title="Sed do eiusmod tempor incididunt"
183
+ contentList={[
184
+ "Ut labore et dolore magna aliqua ut enim ad minim veniam quis nostrud exercitation ullamco.",
185
+ ]}
186
+ image="https://images.unsplash.com/photo-1504868584819-f8e8b4b6d7e3?auto=format&fit=crop&w=800&q=80"
187
+ callToAction={
188
+ <div className="mt-8">
189
+ <SectionList sectionContent={STATS_DATA} />
190
+ </div>
191
+ }
192
+ />
193
+ </div>
194
+
195
+ <div className="bg-white py-16 px-4">
196
+ <div className="max-w-7xl mx-auto grid grid-cols-1 gap-10 lg:grid-cols-2 lg:items-center">
197
+ <div>
198
+ <ButtonGroup
199
+ selection={[
200
+ { id: "tab1", name: "[Tab 1]" },
201
+ { id: "tab2", name: "[Tab 2]" },
202
+ ]}
203
+ selectedId={pricingTab}
204
+ onClick={(id) => setPricingTab(id)}
205
+ />
206
+ <div className="mt-4">
207
+ <BarChart
208
+ title={activeTitle}
209
+ seriesName={activeUnit}
210
+ seriesData={activeData}
211
+ showDataLabel={true}
212
+ roundedBars
213
+ customColors={["#22c55e"]}
214
+ chartSize={280}
215
+ />
216
+ </div>
217
+ </div>
218
+ <div>
219
+ <h2 className="text-3xl font-extrabold text-gray-900 tracking-tight sm:text-4xl">
220
+ Ut enim ad minim veniam quis nostrud
221
+ </h2>
222
+ <div className="mt-4 text-gray-500 space-y-4">
223
+ <p className="text-base leading-7">Lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
224
+ <p className="text-base leading-7">Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.</p>
225
+ <div className="mt-6">
226
+ <IconList iconList={PRICING_ICON_LIST} />
227
+ </div>
228
+ <div className="mt-6">
229
+ <Button text="Get Started" type="normal" onClick={() => {}} />
230
+ </div>
231
+ </div>
232
+ </div>
233
+ </div>
234
+ </div>
235
+
236
+ <div className="bg-white py-16 px-4">
237
+ <div className="max-w-7xl mx-auto lg:grid lg:grid-cols-2 lg:gap-24 lg:items-center">
238
+ <div>
239
+ <h2 className="text-3xl font-extrabold text-gray-900 tracking-tight">Working closely with [partners]</h2>
240
+ <p className="mt-4 text-base text-gray-500">Lorem ipsum dolor sit amet consectetur adipiscing elit. We are fortunate to work with organisations committed to excellence.</p>
241
+ </div>
242
+ <div className="mt-8 lg:mt-0 bg-gray-50 rounded-2xl p-8">
243
+ <LogoCloud
244
+ logoList={PARTNER_LOGOS}
245
+ linkType="external"
246
+ gridClassName="grid-cols-2 gap-6"
247
+ imgClassName="h-10 object-contain"
248
+ />
249
+ </div>
250
+ </div>
251
+ </div>
252
+
253
+ <div className="bg-gray-50 py-16 px-4">
254
+ <ActionSection
255
+ title="Lorem ipsum dolor sit amet consectetur"
256
+ buttonText="Sign Up Now"
257
+ buttonLink="#"
258
+ onClick={() => {}}
259
+ />
260
+ </div>
261
+
262
+ <FooterSection
263
+ linkType="external"
264
+ caption={`© ${new Date().getFullYear()} [App Name]. All rights reserved.`}
265
+ footerList={[
266
+ {
267
+ title: "Company",
268
+ subList: [
269
+ { name: "About Us", link: "#" },
270
+ { name: "How It Works", link: "#" },
271
+ { name: "Terms & Conditions", link: "#" },
272
+ { name: "Privacy Policy", link: "#" },
273
+ ],
274
+ },
275
+ ]}
276
+ logoCloud={
277
+ <div>
278
+ <div className="flex items-center space-x-2 mb-3">
279
+ <img src={Logo} alt="[App Name]" className="h-8 w-auto" />
280
+ <span className="font-semibold text-gray-900">[App Name]</span>
281
+ </div>
282
+ <p className="text-sm text-gray-500">Lorem ipsum dolor sit amet consectetur.</p>
283
+ </div>
284
+ }
285
+ />
286
+ </div>
287
+ );
288
+ });