trepur_components 2.3.9 → 2.3.10

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 (282) hide show
  1. package/lib/_virtual/react.js +4 -0
  2. package/lib/components/Accordion/Accordion.stories.d.ts +47 -0
  3. package/lib/components/Accordion/const.d.ts +31 -0
  4. package/lib/components/Accordion/index.d.ts +5 -0
  5. package/lib/components/Accordion/index.js +9 -0
  6. package/lib/components/AlertBar/AlertBar.stories.d.ts +24 -0
  7. package/lib/components/AlertBar/index.d.ts +16 -0
  8. package/lib/components/AlertBar/index.js +36 -0
  9. package/lib/components/Avatar/Avatar.stories.d.ts +10 -0
  10. package/lib/components/Avatar/index.d.ts +3 -0
  11. package/lib/components/Breadcrumbs/Breadcrumbs.stories.d.ts +18 -0
  12. package/lib/components/Breadcrumbs/index.d.ts +17 -0
  13. package/lib/components/Breadcrumbs/index.js +16 -0
  14. package/lib/components/Button/Button.stories.d.ts +20 -0
  15. package/lib/components/Button/index.d.ts +13 -0
  16. package/lib/components/Button/index.js +30 -0
  17. package/lib/components/Calendar/Calendar.stories.d.ts +11 -0
  18. package/lib/components/Calendar/index.d.ts +14 -0
  19. package/lib/components/Calendar/index.js +49 -0
  20. package/lib/components/Calendar/style.css.js +1 -0
  21. package/lib/components/Card/Card.stories.d.ts +11 -0
  22. package/lib/components/Card/index.d.ts +2 -0
  23. package/lib/components/Card/index.js +25 -0
  24. package/lib/components/Carousel/Carousel.stories.d.ts +23 -0
  25. package/lib/components/Carousel/index.d.ts +70 -0
  26. package/lib/components/Carousel/index.js +159 -0
  27. package/lib/components/Carousel/utils.d.ts +1 -0
  28. package/lib/components/Carousel/utils.js +38 -0
  29. package/lib/components/CarouselThumbnail/CarouselThumbnail.stories.d.ts +22 -0
  30. package/lib/components/CarouselThumbnail/const.d.ts +1 -0
  31. package/lib/components/CarouselThumbnail/const.js +20 -0
  32. package/lib/components/CarouselThumbnail/index.d.ts +51 -0
  33. package/lib/components/CarouselThumbnail/index.js +74 -0
  34. package/lib/components/CarouselThumbnail/utils.d.ts +2 -0
  35. package/lib/components/CarouselThumbnail/utils.js +65 -0
  36. package/lib/components/Checkbox/Checkbox.stories.d.ts +17 -0
  37. package/lib/components/Checkbox/index.d.ts +11 -0
  38. package/lib/components/Checkbox/index.js +28 -0
  39. package/lib/components/Collapsible/Collapsible.stories.d.ts +57 -0
  40. package/lib/components/Collapsible/index.d.ts +19 -0
  41. package/lib/components/Collapsible/index.js +87 -0
  42. package/lib/components/Counter/Counter.stories.d.ts +17 -0
  43. package/lib/components/Counter/index.d.ts +14 -0
  44. package/lib/components/Counter/index.js +49 -0
  45. package/lib/components/DetailUpdater/DetailUpdater.stories.d.ts +20 -0
  46. package/lib/components/DetailUpdater/index.d.ts +18 -0
  47. package/lib/components/DetailUpdater/index.js +63 -0
  48. package/lib/components/Dialog/Dialog.stories.d.ts +15 -0
  49. package/lib/components/Dialog/index.d.ts +12 -0
  50. package/lib/components/Dialog/index.js +16 -0
  51. package/lib/components/Dropdown/Dropdown.stories.d.ts +17 -0
  52. package/lib/components/Dropdown/index.d.ts +13 -0
  53. package/lib/components/Dropdown/index.js +66 -0
  54. package/lib/components/Dropdown/utils.d.ts +1 -0
  55. package/lib/components/Dropdown/utils.js +14 -0
  56. package/lib/components/FileUploader/FilePreview.d.ts +8 -0
  57. package/lib/components/FileUploader/FileUploader.stories.d.ts +52 -0
  58. package/lib/components/FileUploader/index.d.ts +15 -0
  59. package/lib/components/Footer/Footer.stories.d.ts +19 -0
  60. package/lib/components/Footer/index.d.ts +16 -0
  61. package/lib/components/Footer/index.js +36 -0
  62. package/lib/components/FooterNav/FooterNav.stories.d.ts +22 -0
  63. package/lib/components/FooterNav/index.d.ts +15 -0
  64. package/lib/components/FooterNav/index.js +38 -0
  65. package/lib/components/Form/Form.stories.d.ts +117 -0
  66. package/lib/components/Form/index.d.ts +13 -0
  67. package/lib/components/Form/index.js +17 -0
  68. package/lib/components/Gallery/Gallery.stories.d.ts +16 -0
  69. package/lib/components/Gallery/index.d.ts +7 -0
  70. package/lib/components/Greeting/Greeting.stories.d.ts +13 -0
  71. package/lib/components/Greeting/index.d.ts +7 -0
  72. package/lib/components/Greeting/index.js +20 -0
  73. package/lib/components/HamburgerIcon/HamburgerIcon.stories.d.ts +10 -0
  74. package/lib/components/HamburgerIcon/index.d.ts +2 -0
  75. package/lib/components/HamburgerIcon/index.js +78 -0
  76. package/lib/components/Icon/Icon.stories.d.ts +16 -0
  77. package/lib/components/Icon/index.d.ts +10 -0
  78. package/lib/components/Icon/index.js +23 -0
  79. package/lib/components/Image/Image.stories.d.ts +13 -0
  80. package/lib/components/Image/index.d.ts +5 -0
  81. package/lib/components/Image/index.js +17 -0
  82. package/lib/components/ImageCard/ImageCard.stories.d.ts +19 -0
  83. package/lib/components/ImageCard/index.d.ts +11 -0
  84. package/lib/components/ImageCard/index.js +32 -0
  85. package/lib/components/Input/Input.stories.d.ts +22 -0
  86. package/lib/components/Input/index.d.ts +33 -0
  87. package/lib/components/Input/index.js +83 -0
  88. package/lib/components/MenuButton/MenuButton.stories.d.ts +76 -0
  89. package/lib/components/MenuButton/index.d.ts +14 -0
  90. package/lib/components/MenuButton/index.js +56 -0
  91. package/lib/components/Modal/Modal.stories.d.ts +67 -0
  92. package/lib/components/Modal/index.d.ts +10 -0
  93. package/lib/components/Modal/index.js +45 -0
  94. package/lib/components/Nav/Nav.stories.d.ts +32 -0
  95. package/lib/components/Nav/index.d.ts +21 -0
  96. package/lib/components/Nav/index.js +82 -0
  97. package/lib/components/NavItem/NavItem.stories.d.ts +18 -0
  98. package/lib/components/NavItem/index.d.ts +8 -0
  99. package/lib/components/NavItem/index.js +24 -0
  100. package/lib/components/Pill/Pill.stories.d.ts +22 -0
  101. package/lib/components/Pill/index.d.ts +17 -0
  102. package/lib/components/Pill/index.js +31 -0
  103. package/lib/components/Search/Search.stories.d.ts +86 -0
  104. package/lib/components/Search/index.d.ts +12 -0
  105. package/lib/components/Search/index.js +42 -0
  106. package/lib/components/Select/Select.stories.d.ts +56 -0
  107. package/lib/components/Select/index.d.ts +11 -0
  108. package/lib/components/Select/index.js +68 -0
  109. package/lib/components/Showcase/Showcase.stories.d.ts +55 -0
  110. package/lib/components/Showcase/index.d.ts +15 -0
  111. package/lib/components/SideNav/SideNav.stories.d.ts +80 -0
  112. package/lib/components/SideNav/index.d.ts +12 -0
  113. package/lib/components/SocialButton/SocialButton.stories.d.ts +130 -0
  114. package/lib/components/SocialButton/index.d.ts +12 -0
  115. package/lib/components/SplitCard/SplitCard.stories.d.ts +21 -0
  116. package/lib/components/SplitCard/index.d.ts +14 -0
  117. package/lib/components/Stars/Star.stories.d.ts +14 -0
  118. package/lib/components/Stars/index.d.ts +8 -0
  119. package/lib/components/Stars/index.js +22 -0
  120. package/lib/components/Testimonial/Testimonial.stories.d.ts +21 -0
  121. package/lib/components/Testimonial/index.d.ts +13 -0
  122. package/lib/components/Testimonial/index.js +42 -0
  123. package/lib/components/TextArea/TextArea.stories.d.ts +21 -0
  124. package/lib/components/TextArea/index.d.ts +33 -0
  125. package/lib/components/TextArea/index.js +76 -0
  126. package/lib/components/Timeline/Timeline.stories.d.ts +21 -0
  127. package/lib/components/Timeline/index.d.ts +11 -0
  128. package/lib/components/Timeline/index.js +31 -0
  129. package/lib/components/Tubestops/Tubestops.stories.d.ts +19 -0
  130. package/lib/components/Tubestops/index.d.ts +15 -0
  131. package/lib/components/Tubestops/index.js +77 -0
  132. package/lib/components/Video/Video.stories.d.ts +23 -0
  133. package/lib/components/Video/index.d.ts +18 -0
  134. package/lib/components/Video/index.js +32 -0
  135. package/{src/components/index.ts → lib/components/index.d.ts} +35 -71
  136. package/lib/documentation/assets/index.d.ts +3 -0
  137. package/lib/documentation/typography/Fonts/Fonts.d.ts +2 -0
  138. package/lib/documentation/typography/Fonts/Fonts.stories.d.ts +10 -0
  139. package/lib/index.js +72 -0
  140. package/lib/node_modules/keen-slider/keen-slider.min.css.js +1 -0
  141. package/lib/node_modules/keen-slider/react.js +591 -0
  142. package/lib/style.css +1 -0
  143. package/lib/utils/controls.d.ts +36 -0
  144. package/lib/utils/matchMedia.d.ts +2 -0
  145. package/lib/utils/screens.d.ts +7 -0
  146. package/package.json +4 -1
  147. package/.eslintrc.cjs +0 -72
  148. package/.husky/pre-commit +0 -4
  149. package/.prettierignore +0 -10
  150. package/.prettierrc.json +0 -22
  151. package/postcss.config.js +0 -8
  152. package/src/components/Accordion/Accordion.stories.tsx +0 -39
  153. package/src/components/Accordion/const.tsx +0 -34
  154. package/src/components/Accordion/index.tsx +0 -22
  155. package/src/components/AlertBar/AlertBar.stories.tsx +0 -89
  156. package/src/components/AlertBar/index.tsx +0 -82
  157. package/src/components/Avatar/Avatar.stories.tsx +0 -14
  158. package/src/components/Avatar/index.tsx +0 -492
  159. package/src/components/Breadcrumbs/Breadcrumbs.stories.tsx +0 -29
  160. package/src/components/Breadcrumbs/index.tsx +0 -89
  161. package/src/components/Button/Button.stories.tsx +0 -24
  162. package/src/components/Button/index.tsx +0 -59
  163. package/src/components/Calendar/Calendar.stories.tsx +0 -21
  164. package/src/components/Calendar/index.tsx +0 -92
  165. package/src/components/Calendar/style.css +0 -233
  166. package/src/components/Card/Card.stories.tsx +0 -14
  167. package/src/components/Card/index.tsx +0 -39
  168. package/src/components/Carousel/Carousel.stories.tsx +0 -44
  169. package/src/components/Carousel/index.tsx +0 -301
  170. package/src/components/Carousel/utils.ts +0 -53
  171. package/src/components/CarouselThumbnail/CarouselThumbnail.stories.tsx +0 -29
  172. package/src/components/CarouselThumbnail/const.ts +0 -17
  173. package/src/components/CarouselThumbnail/index.tsx +0 -169
  174. package/src/components/CarouselThumbnail/utils.ts +0 -87
  175. package/src/components/Checkbox/Checkbox.mdx +0 -33
  176. package/src/components/Checkbox/Checkbox.stories.tsx +0 -27
  177. package/src/components/Checkbox/index.tsx +0 -44
  178. package/src/components/Collapsible/Collapsible.stories.tsx +0 -67
  179. package/src/components/Collapsible/index.tsx +0 -169
  180. package/src/components/Counter/Counter.stories.tsx +0 -20
  181. package/src/components/Counter/index.tsx +0 -98
  182. package/src/components/DetailUpdater/DetailUpdater.stories.tsx +0 -37
  183. package/src/components/DetailUpdater/index.tsx +0 -107
  184. package/src/components/Dialog/Dialog.stories.tsx +0 -65
  185. package/src/components/Dialog/index.tsx +0 -29
  186. package/src/components/Dropdown/Dropdown.stories.tsx +0 -22
  187. package/src/components/Dropdown/index.tsx +0 -117
  188. package/src/components/Dropdown/utils.ts +0 -15
  189. package/src/components/FileUploader/FilePreview.tsx +0 -45
  190. package/src/components/FileUploader/FileUploader.stories.tsx +0 -28
  191. package/src/components/FileUploader/index.tsx +0 -177
  192. package/src/components/Footer/Footer.stories.tsx +0 -47
  193. package/src/components/Footer/index.tsx +0 -96
  194. package/src/components/FooterNav/FooterNav.stories.tsx +0 -32
  195. package/src/components/FooterNav/index.tsx +0 -75
  196. package/src/components/Form/Form.stories.tsx +0 -86
  197. package/src/components/Form/index.tsx +0 -41
  198. package/src/components/Gallery/Gallery.stories.tsx +0 -39
  199. package/src/components/Gallery/index.tsx +0 -31
  200. package/src/components/Greeting/Greeting.stories.tsx +0 -16
  201. package/src/components/Greeting/index.tsx +0 -49
  202. package/src/components/HamburgerIcon/HamburgerIcon.stories.tsx +0 -14
  203. package/src/components/HamburgerIcon/index.tsx +0 -75
  204. package/src/components/Icon/Icon.stories.tsx +0 -41
  205. package/src/components/Icon/index.tsx +0 -33
  206. package/src/components/Image/Image.stories.tsx +0 -17
  207. package/src/components/Image/index.tsx +0 -25
  208. package/src/components/ImageCard/ImageCard.stories.tsx +0 -29
  209. package/src/components/ImageCard/index.tsx +0 -75
  210. package/src/components/Input/Input.stories.tsx +0 -25
  211. package/src/components/Input/index.tsx +0 -139
  212. package/src/components/MenuButton/MenuButton.stories.tsx +0 -46
  213. package/src/components/MenuButton/index.tsx +0 -66
  214. package/src/components/Modal/Modal.stories.tsx +0 -82
  215. package/src/components/Modal/index.tsx +0 -71
  216. package/src/components/Nav/Nav.stories.tsx +0 -80
  217. package/src/components/Nav/index.tsx +0 -171
  218. package/src/components/NavItem/NavItem.stories.tsx +0 -17
  219. package/src/components/NavItem/index.tsx +0 -39
  220. package/src/components/Pill/Pill.stories.tsx +0 -51
  221. package/src/components/Pill/index.tsx +0 -69
  222. package/src/components/Search/Search.stories.tsx +0 -63
  223. package/src/components/Search/index.tsx +0 -64
  224. package/src/components/Select/Select.stories.tsx +0 -55
  225. package/src/components/Select/index.tsx +0 -97
  226. package/src/components/Showcase/Showcase.stories.tsx +0 -31
  227. package/src/components/Showcase/index.tsx +0 -62
  228. package/src/components/SideNav/SideNav.stories.tsx +0 -50
  229. package/src/components/SideNav/index.tsx +0 -39
  230. package/src/components/SocialButton/SocialButton.stories.tsx +0 -88
  231. package/src/components/SocialButton/index.tsx +0 -63
  232. package/src/components/SplitCard/SplitCard.stories.tsx +0 -34
  233. package/src/components/SplitCard/index.tsx +0 -132
  234. package/src/components/Stars/Star.stories.tsx +0 -18
  235. package/src/components/Stars/index.tsx +0 -38
  236. package/src/components/Testimonial/Testimonial.stories.tsx +0 -37
  237. package/src/components/Testimonial/index.tsx +0 -123
  238. package/src/components/TextArea/TextArea.stories.tsx +0 -24
  239. package/src/components/TextArea/index.tsx +0 -133
  240. package/src/components/Timeline/Timeline.stories.tsx +0 -45
  241. package/src/components/Timeline/index.tsx +0 -65
  242. package/src/components/Tubestops/Tubestops.stories.tsx +0 -22
  243. package/src/components/Tubestops/index.tsx +0 -132
  244. package/src/components/Video/Video.stories.tsx +0 -58
  245. package/src/components/Video/assets/example.mp4 +0 -0
  246. package/src/components/Video/assets/example.ogv +0 -0
  247. package/src/components/Video/assets/example.webm +0 -0
  248. package/src/components/Video/index.tsx +0 -92
  249. package/src/custom.d.ts +0 -14
  250. package/src/documentation/Colours.mdx +0 -192
  251. package/src/documentation/Introduction.mdx +0 -13
  252. package/src/documentation/assets/index.ts +0 -3
  253. package/src/documentation/assets/trepurComponentsLogo.svg +0 -32
  254. package/src/documentation/typography/Fonts/Fonts.stories.tsx +0 -14
  255. package/src/documentation/typography/Fonts/Fonts.tsx +0 -73
  256. package/src/fonts/Sora/OFL.txt +0 -93
  257. package/src/fonts/Sora/README.txt +0 -70
  258. package/src/fonts/Sora/Sora-VariableFont_wght.ttf +0 -0
  259. package/src/fonts/Sora/static/Sora-Bold.ttf +0 -0
  260. package/src/fonts/Sora/static/Sora-ExtraBold.ttf +0 -0
  261. package/src/fonts/Sora/static/Sora-ExtraLight.ttf +0 -0
  262. package/src/fonts/Sora/static/Sora-Light.ttf +0 -0
  263. package/src/fonts/Sora/static/Sora-Medium.ttf +0 -0
  264. package/src/fonts/Sora/static/Sora-Regular.ttf +0 -0
  265. package/src/fonts/Sora/static/Sora-SemiBold.ttf +0 -0
  266. package/src/fonts/Sora/static/Sora-Thin.ttf +0 -0
  267. package/src/utils/controls.ts +0 -44
  268. package/src/utils/matchMedia.ts +0 -9
  269. package/src/utils/screens.ts +0 -7
  270. package/tailwind.config.ts +0 -13
  271. package/tsconfig.json +0 -49
  272. package/tsconfig.node.json +0 -12
  273. package/vite.config.mjs +0 -64
  274. /package/{src/index.ts → lib/index.d.ts} +0 -0
  275. /package/{src → lib}/styles/global.css +0 -0
  276. /package/{src → lib}/styles/themes/local.css +0 -0
  277. /package/{src → lib}/styles/themes/test.css +0 -0
  278. /package/{tailwind → lib/tailwind}/boxShadow.ts +0 -0
  279. /package/{tailwind → lib/tailwind}/colors.ts +0 -0
  280. /package/{tailwind → lib/tailwind}/container.ts +0 -0
  281. /package/{tailwind → lib/tailwind}/preset.ts +0 -0
  282. /package/{tailwind → lib/tailwind}/spacing.ts +0 -0
@@ -1,45 +0,0 @@
1
- import { items } from '@components/Accordion/const';
2
- import { Collapsible } from '@components/Collapsible';
3
- import { Meta, StoryObj } from '@storybook/react';
4
-
5
- import { Timeline } from '.';
6
-
7
- const meta = {
8
- title: 'V2Components/Timeline',
9
- component: Timeline,
10
- parameters: {},
11
- args: {
12
- children: items.map((item, i) => {
13
- return (
14
- <Timeline.Item>
15
- <Timeline.Dot
16
- className="bg-primary"
17
- index={i}
18
- length={items.length}
19
- />
20
- <Timeline.Content>
21
- <Collapsible>
22
- <Collapsible.Header>
23
- {item.image && <Collapsible.Image src={item.image} />}
24
- <Collapsible.HeaderContent>
25
- <Collapsible.Label>{item.label}</Collapsible.Label>
26
- <Collapsible.Title>{item.title}</Collapsible.Title>
27
- <Collapsible.Subtitle>{item.subtitle}</Collapsible.Subtitle>
28
- </Collapsible.HeaderContent>
29
- </Collapsible.Header>
30
- <Collapsible.Content>
31
- <Collapsible.Text>{item.content}</Collapsible.Text>
32
- </Collapsible.Content>
33
- </Collapsible>
34
- </Timeline.Content>
35
- </Timeline.Item>
36
- );
37
- }),
38
- },
39
- } satisfies Meta<typeof Timeline>;
40
-
41
- export default meta;
42
-
43
- type Story = StoryObj<typeof Timeline>;
44
-
45
- export const Default: Story = {};
@@ -1,65 +0,0 @@
1
- import { forwardRef, HTMLAttributes } from 'react';
2
-
3
- import clsx from 'clsx';
4
-
5
- const TimelineComponent = forwardRef<
6
- HTMLDivElement,
7
- HTMLAttributes<HTMLDivElement>
8
- >(({ id, className, children }, ref) => {
9
- return (
10
- <div ref={ref} id={id} className={className}>
11
- {children}
12
- </div>
13
- );
14
- });
15
-
16
- const TimelineItem = forwardRef<HTMLDivElement, HTMLAttributes<HTMLDivElement>>(
17
- ({ id, children }, ref) => {
18
- return (
19
- <div ref={ref} id={id} className="flex">
20
- {children}
21
- </div>
22
- );
23
- },
24
- );
25
-
26
- const TimelineDot = forwardRef<
27
- HTMLDivElement,
28
- HTMLAttributes<HTMLDivElement> & { index: number; length: number }
29
- >(({ className, index, length }) => {
30
- return (
31
- <div className="hidden sm:block">
32
- <p
33
- className={clsx('z-10 m-auto mt-12 h-4 w-4 rounded-full', className)}
34
- />
35
- <div
36
- className={
37
- index !== length - 1
38
- ? clsx('m-auto h-full w-1', className)
39
- : 'border-r-2 border-transparent'
40
- }
41
- />
42
- </div>
43
- );
44
- });
45
-
46
- const TimelineContent = forwardRef<
47
- HTMLDivElement,
48
- HTMLAttributes<HTMLDivElement>
49
- >(({ children }) => {
50
- return <div className="my-2 w-full sm:ml-8">{children}</div>;
51
- });
52
-
53
- TimelineComponent.displayName = 'Timeline';
54
-
55
- TimelineItem.displayName = 'Timeline.Item';
56
- TimelineDot.displayName = 'Timeline.Dot';
57
- TimelineContent.displayName = 'Timeline.Content';
58
-
59
- const Timeline = Object.assign(TimelineComponent, {
60
- Item: TimelineItem,
61
- Dot: TimelineDot,
62
- Content: TimelineContent,
63
- });
64
-
65
- export { Timeline };
@@ -1,22 +0,0 @@
1
- import { Meta, StoryObj } from '@storybook/react';
2
-
3
- import { Tubestops } from '.';
4
-
5
- const meta = {
6
- title: 'V2Components/Tubestops',
7
- component: Tubestops,
8
- args: {
9
- activeStop: 3,
10
- children: [...Array(5)].map((_, i) => (
11
- <Tubestops.Stop stopId={i + 1}>
12
- <Tubestops.Text>{`Stop ${i + 1}`}</Tubestops.Text>
13
- </Tubestops.Stop>
14
- )),
15
- },
16
- } satisfies Meta<typeof Tubestops>;
17
-
18
- export default meta;
19
-
20
- type Story = StoryObj<typeof Tubestops>;
21
-
22
- export const Default: Story = {};
@@ -1,132 +0,0 @@
1
- import {
2
- Children,
3
- createContext,
4
- forwardRef,
5
- HTMLAttributes,
6
- useContext,
7
- useMemo,
8
- useState,
9
- } from 'react';
10
-
11
- import clsx from 'clsx';
12
-
13
- export interface TubestopsContextProps {
14
- stops?: number;
15
- activeStop?: number;
16
- currentStop?: number;
17
- setCurrentStop?: (stop: number) => void;
18
- }
19
-
20
- interface TubestopsStopContextProps {
21
- stopNumber: number;
22
- }
23
-
24
- const TubestopsContext = createContext<TubestopsContextProps | null>(null);
25
- const TubestopsStopContext = createContext<TubestopsStopContextProps | null>(
26
- null,
27
- );
28
-
29
- const TubestopsComponent = forwardRef<
30
- HTMLDivElement,
31
- HTMLAttributes<HTMLDivElement> & TubestopsContextProps
32
- >(({ className, children, activeStop = 0 }, ref) => {
33
- const [currentStop, setCurrentStop] = useState(activeStop);
34
- const totalStops = Children.count(children);
35
-
36
- const state = useMemo(
37
- () => ({
38
- stops: totalStops ?? 0,
39
- currentStop,
40
- setCurrentStop,
41
- }),
42
- [currentStop, setCurrentStop],
43
- );
44
-
45
- return (
46
- <TubestopsContext.Provider value={state}>
47
- <div ref={ref} className={clsx('flex py-4', className)}>
48
- {children}
49
- </div>
50
- </TubestopsContext.Provider>
51
- );
52
- });
53
-
54
- const TubestopsStop = forwardRef<
55
- HTMLDivElement,
56
- HTMLAttributes<HTMLDivElement> & { stopId: number }
57
- >(({ className, stopId = 0, children }, ref) => {
58
- const { currentStop = 0, stops = 0 } = useContext(TubestopsContext) || {};
59
- const [stopNumber] = useState(stopId);
60
-
61
- const state = useMemo(
62
- () => ({
63
- stopNumber,
64
- }),
65
- [stopNumber],
66
- );
67
-
68
- return (
69
- <TubestopsStopContext.Provider value={state}>
70
- <div ref={ref} className={clsx(className, 'w-full min-w-[120px]')}>
71
- <div
72
- className={clsx({
73
- 'mt-4 h-1 w-full translate-x-1/2 bg-tubestop-line-future':
74
- stopId >= currentStop && stopId < stops,
75
- 'mt-4 h-1 w-full translate-x-1/2 bg-tubestop-line-complete':
76
- stopId < currentStop && stopId < stops,
77
- })}
78
- />
79
- <p
80
- className={clsx(
81
- {
82
- 'relative z-20 -mt-4 bg-tubestop-station-complete':
83
- stopId < currentStop,
84
- 'relative z-20 -mt-4 bg-tubestop-station-active':
85
- currentStop === stopId,
86
- 'relative z-20 -mt-4 bg-tubestop-station-future':
87
- stopId > currentStop,
88
- 'mt-1': stopId === stops,
89
- },
90
- 'z-10 mx-auto h-6 w-6 rounded-full',
91
- )}
92
- />
93
- {children}
94
- </div>
95
- </TubestopsStopContext.Provider>
96
- );
97
- });
98
-
99
- const TubestopsText = forwardRef<
100
- HTMLParagraphElement,
101
- HTMLAttributes<HTMLParagraphElement>
102
- >(({ className, children }, ref) => {
103
- const { currentStop = 0 } = useContext(TubestopsContext) || {};
104
- const { stopNumber = 0 } = useContext(TubestopsStopContext) || {};
105
- return (
106
- <p
107
- ref={ref}
108
- className={clsx(
109
- 'mt-2 text-center',
110
- {
111
- 'font-medium text-tubestop-text-complete': stopNumber < currentStop,
112
- 'font-bold text-tubestop-text-active': currentStop === stopNumber,
113
- 'font-medium text-tubestop-text-future': stopNumber > currentStop,
114
- },
115
- className,
116
- )}
117
- >
118
- {children}
119
- </p>
120
- );
121
- });
122
-
123
- TubestopsComponent.displayName = 'Tubestop';
124
- TubestopsStop.displayName = 'Tubestops.Stop';
125
- TubestopsText.displayName = 'Tubestops.Text';
126
-
127
- const Tubestops = Object.assign(TubestopsComponent, {
128
- Stop: TubestopsStop,
129
- Text: TubestopsText,
130
- });
131
-
132
- export { Tubestops };
@@ -1,58 +0,0 @@
1
- import { Video } from './';
2
- import { Meta, StoryObj } from '@storybook/react';
3
-
4
- import Mp4File from './assets/example.mp4';
5
- import WebmFile from './assets/example.webm';
6
-
7
- const meta = {
8
- title: 'V2Components/Video',
9
- component: Video,
10
- args: {
11
- children: [<Video.File src={WebmFile} type="video/webm" />],
12
- },
13
- } satisfies Meta<typeof Video>;
14
-
15
- export default meta;
16
-
17
- type Story = StoryObj<typeof Video>;
18
-
19
- export const Default: Story = {};
20
-
21
- export const Mp4: Story = {
22
- ...Default,
23
- args: {
24
- children: [<Video.File src={Mp4File} type="video/mp4" />],
25
- },
26
- };
27
-
28
- export const withControls: Story = {
29
- ...Default,
30
- args: {
31
- withControls: true,
32
- children: [<Video.File src={Mp4File} type="video/mp4" />],
33
- },
34
- };
35
-
36
- export const Muted: Story = {
37
- ...Default,
38
- args: {
39
- muted: true,
40
- children: [<Video.File src={Mp4File} type="video/mp4" />],
41
- },
42
- };
43
-
44
- export const autoPlay: Story = {
45
- ...Default,
46
- args: {
47
- autoPlay: true,
48
- children: [<Video.File src={Mp4File} type="video/mp4" />],
49
- },
50
- };
51
-
52
- export const withPoster: Story = {
53
- ...Default,
54
- args: {
55
- withPoster: true,
56
- children: [<Video.File src={Mp4File} type="video/mp4" />],
57
- },
58
- };
@@ -1,92 +0,0 @@
1
- import { forwardRef, HTMLAttributes } from 'react';
2
-
3
- export interface VideoProps {
4
- autoPlay?: boolean;
5
- muted?: boolean;
6
- poster?: string;
7
- mp4File?: string;
8
- webmFile?: string;
9
- withControls?: boolean;
10
- withPoster?: boolean;
11
- }
12
-
13
- const VideoComponent = forwardRef<
14
- HTMLVideoElement,
15
- HTMLAttributes<HTMLVideoElement> & VideoProps
16
- >(
17
- (
18
- {
19
- children,
20
- poster,
21
- withControls = false,
22
- autoPlay = false,
23
- muted = false,
24
- ...props
25
- },
26
- ref,
27
- ) => {
28
- return (
29
- <video
30
- className="h-full w-full max-w-[800px]"
31
- ref={ref}
32
- poster={poster}
33
- controls={withControls}
34
- autoPlay={autoPlay}
35
- muted={muted}
36
- {...props}
37
- >
38
- {children}
39
- </video>
40
- );
41
- },
42
- );
43
-
44
- const VideoFile = forwardRef<
45
- HTMLSourceElement,
46
- HTMLAttributes<HTMLSourceElement> & {
47
- src: string;
48
- type: 'video/mp4' | 'video/webm' | 'video/ogv';
49
- }
50
- >(({ src, type, ...props }, ref) => {
51
- return <source ref={ref} src={src} type={type} {...props} />;
52
- });
53
-
54
- VideoComponent.displayName = 'Video';
55
- VideoFile.displayName = 'Video.File';
56
-
57
- const Video = Object.assign(VideoComponent, {
58
- File: VideoFile,
59
- });
60
-
61
- export { Video };
62
-
63
- // export const Video = ({
64
- // id,
65
- // className,
66
- // autoPlay,
67
- // muted,
68
- // poster,
69
- // mp4File,
70
- // webmFile,
71
- // ogvFile,
72
- // height,
73
- // width,
74
- // withControls,
75
- // }: Props) => {
76
- // return (
77
- // <video
78
- // id={id}
79
- // className={className}
80
- // poster={poster}
81
- // width={width}
82
- // height={height}
83
- // controls={withControls}
84
- // autoPlay={autoPlay}
85
- // muted={muted}
86
- // >
87
- // <source src={mp4File} type="video/mp4" />
88
- // {webmFile !== null && <source src={webmFile} type="video/webm" />}
89
- // {ogvFile !== undefined && <source src={ogvFile} type="video/ogg" />}
90
- // </video>
91
- // );
92
- // }
package/src/custom.d.ts DELETED
@@ -1,14 +0,0 @@
1
- declare module '*.webm' {
2
- const src: string;
3
- export default src;
4
- }
5
-
6
- declare module '*.mp4' {
7
- const src: string;
8
- export default src;
9
- }
10
-
11
- declare module '*.svg' {
12
- const src: string;
13
- export default src;
14
- }
@@ -1,192 +0,0 @@
1
- import { Meta, Unstyled } from '@storybook/blocks';
2
-
3
- <Meta title="colour/ThemeColours" />
4
-
5
- <Unstyled>
6
- <div className='px-4 grid grid-cols-1 gap-12'>
7
- <div>
8
- <h2 className='py-4 font-bold underline'>Defaults</h2>
9
- <div className='grid grid-cols-4 gap-6'>
10
- <div className='grid grid-cols-1 gap-1'>
11
- <p>Primary</p>
12
- <div className='h-6 rounded-md bg-primary' />
13
- </div>
14
-
15
- <div className='grid grid-cols-1 gap-1'>
16
- <p>Secondary</p>
17
- <div className='h-6 rounded-md bg-secondary' />
18
- </div>
19
-
20
- <div className='grid grid-cols-1 gap-1'>
21
- <p>Tertiary</p>
22
- <div className='h-6 rounded-md bg-tertiary' />
23
- </div>
24
-
25
- <div className='grid grid-cols-1 gap-1'>
26
- <p>White</p>
27
- <div className='h-6 rounded-md bg-white' />
28
- </div>
29
-
30
- <div className='grid grid-cols-1 gap-1'>
31
- <p>Black</p>
32
- <div className='h-6 rounded-md bg-black' />
33
- </div>
34
-
35
- <div className='grid grid-cols-1 gap-1'>
36
- <p>Grey</p>
37
- <div className='h-6 rounded-md bg-grey' />
38
- </div>
39
-
40
- <div className='grid grid-cols-1 gap-1'>
41
- <p>Light Grey</p>
42
- <div className='h-6 rounded-md bg-light-grey' />
43
- </div>
44
-
45
- <div className='grid grid-cols-1 gap-1'>
46
- <p>Lightest Grey</p>
47
- <div className='h-6 rounded-md bg-lightest-grey' />
48
- </div>
49
-
50
- <div className='grid grid-cols-1 gap-1'>
51
- <p>Border</p>
52
- <div className='h-6 rounded-md bg-border' />
53
- </div>
54
-
55
- <div className='grid grid-cols-1 gap-1'>
56
- <p>Border Light</p>
57
- <div className='h-6 rounded-md bg-border-light' />
58
- </div>
59
-
60
- <div className='grid grid-cols-1 gap-1'>
61
- <p>Border Lightest</p>
62
- <div className='h-6 rounded-md bg-border-lightest' />
63
- </div>
64
-
65
- <div className='grid grid-cols-1 gap-1'>
66
- <p>Border Dark</p>
67
- <div className='h-6 rounded-md bg-border-dark' />
68
- </div>
69
-
70
- <div className='grid grid-cols-1 gap-1'>
71
- <p>Primary Strict</p>
72
- <div className='h-6 rounded-md bg-primary-strict' />
73
- </div>
74
-
75
- <div className='grid grid-cols-1 gap-1'>
76
- <p>Red</p>
77
- <div className='h-6 rounded-md bg-red' />
78
- </div>
79
-
80
- <div className='grid grid-cols-1 gap-1'>
81
- <p>Gold</p>
82
- <div className='h-6 rounded-md bg-gold' />
83
- </div>
84
-
85
- <div className='grid grid-cols-1 gap-1'>
86
- <p>Ink</p>
87
- <div className='h-6 rounded-md bg-ink' />
88
- </div>
89
- </div>
90
- </div>
91
- <div>
92
- <h2 className='py-4 font-bold underline'>Status Colours</h2>
93
- <div className='grid grid-cols-4 gap-6'>
94
- <div className='grid grid-cols-1 gap-1'>
95
- <p>Success Default</p>
96
- <div className='h-6 rounded-md bg-success-default' />
97
- </div>
98
- <div className='grid grid-cols-1 gap-1'>
99
- <p>Error Default</p>
100
- <div className='h-6 rounded-md bg-error-default' />
101
- </div>
102
- <div className='grid grid-cols-1 gap-1'>
103
- <p>Warning Default</p>
104
- <div className='h-6 rounded-md bg-warning-default' />
105
- </div>
106
- <div className='grid grid-cols-1 gap-1'>
107
- <p>Info Default</p>
108
- <div className='h-6 rounded-md bg-info-default' />
109
- </div>
110
- <div className='grid grid-cols-1 gap-1'>
111
- <p>Success Light</p>
112
- <div className='h-6 rounded-md bg-success-light' />
113
- </div>
114
- <div className='grid grid-cols-1 gap-1'>
115
- <p>Error Light</p>
116
- <div className='h-6 rounded-md bg-error-light' />
117
- </div>
118
- <div className='grid grid-cols-1 gap-1'>
119
- <p>Warning Light</p>
120
- <div className='h-6 rounded-md bg-warning-light' />
121
- </div>
122
- <div className='grid grid-cols-1 gap-1'>
123
- <p>Info Light</p>
124
- <div className='h-6 rounded-md bg-info-light' />
125
- </div>
126
- </div>
127
- </div>
128
- <div>
129
- <h2 className='py-4 font-bold underline'>Socials</h2>
130
- <div className='grid grid-cols-4 gap-6'>
131
- <div className='grid grid-cols-1 gap-1'>
132
- <div className='h-6 rounded-md bg-facebook' />
133
- <p>Facebook</p>
134
- </div>
135
- <div className='grid grid-cols-1 gap-1'>
136
- <div className='h-6 rounded-md bg-linkedin' />
137
- <p>Linkedin</p>
138
- </div>
139
- <div className='grid grid-cols-1 gap-1'>
140
- <div className='h-6 rounded-md bg-email' />
141
- <p>Email</p>
142
- </div>
143
- <div className='grid grid-cols-1 gap-1'>
144
- <div className='h-6 rounded-md bg-github' />
145
- <p>Github</p>
146
- </div>
147
- <div className='grid grid-cols-1 gap-1'>
148
- <div className='h-6 rounded-md bg-whatsapp' />
149
- <p>Whatsapp</p>
150
- </div>
151
- <div className='grid grid-cols-1 gap-1'>
152
- <div className='h-6 rounded-md bg-twitter' />
153
- <p>Twitter</p>
154
- </div>
155
- <div className='grid grid-cols-1 gap-1'>
156
- <div className='h-6 rounded-md bg-instagram' />
157
- <p>Instagram</p>
158
- </div>
159
- </div>
160
- </div>
161
- <div>
162
- <h2 className='py-4'>Interactive Socials</h2>
163
- <div className='grid grid-cols-4 gap-6'>
164
- <div className='grid grid-cols-1 gap-1'>
165
- <div className='h-6 rounded-md bg-interactive-facebook' />
166
- <p>Interactive Facebook</p>
167
- </div>
168
- <div className='grid grid-cols-1 gap-1'>
169
- <div className='h-6 rounded-md bg-interactive-linkedin' />
170
- <p>Interactive Linkedin</p>
171
- </div>
172
- <div className='grid grid-cols-1 gap-1'>
173
- <div className='h-6 rounded-md bg-interactive-email' />
174
- <p>Interactive Email</p>
175
- </div>
176
- <div className='grid grid-cols-1 gap-1'>
177
- <div className='h-6 rounded-md bg-interactive-github' />
178
- <p>Interactive Github</p>
179
- </div>
180
- <div className='grid grid-cols-1 gap-1'>
181
- <div className='h-6 rounded-md bg-interactive-whatsapp' />
182
- <p>Interactive Whatsapp</p>
183
- </div>
184
- <div className='grid grid-cols-1 gap-1'>
185
- <div className='h-6 rounded-md bg-interactive-twitter' />
186
- <p>Interactive Twitter</p>
187
- </div>
188
- </div>
189
- </div>
190
- </div>
191
-
192
- </Unstyled>
@@ -1,13 +0,0 @@
1
- import { Meta, Unstyled } from '@storybook/blocks';
2
-
3
- import { TrepurComponentsLogo } from './assets';
4
-
5
- <Meta title="guides/Introduction" />
6
-
7
- <Unstyled>
8
- <div>
9
- <img className="mx-auto" src={TrepurComponentsLogo} width="200" />
10
- <h1 className="font-semiBold py-4 text-center">Trepur Components</h1>
11
- <p>Welcome to Trepur Components, the design system for Trepur Tech</p>
12
- </div>
13
- </Unstyled>
@@ -1,3 +0,0 @@
1
- import TrepurComponentsLogo from './trepurComponentsLogo.svg';
2
-
3
- export { TrepurComponentsLogo };