@onepercentio/one-ui 0.29.2 → 0.29.5

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 (289) hide show
  1. package/dist/components/Switch/Switch.d.ts +1 -1
  2. package/dist/components/Switch/Switch.js +1 -1
  3. package/dist/hooks/useHero.js +3 -2
  4. package/dist-ts/components/Switch/Switch.d.ts +1 -1
  5. package/dist-ts/hooks/useHero.js +5 -4
  6. package/dist-ts/hooks/useHero.js.map +1 -1
  7. package/package.json +5 -1
  8. package/src/assets/img/svg/checkbox.svg +0 -3
  9. package/src/assets/styles/index.scss +0 -2
  10. package/src/assets/styles/mixins.scss +0 -12
  11. package/src/assets/styles/variables.scss +0 -49
  12. package/src/components/AdaptiveButton/AdaptiveButton.module.scss +0 -7
  13. package/src/components/AdaptiveButton/AdaptiveButton.tsx +0 -26
  14. package/src/components/AdaptiveButton/index.tsx +0 -2
  15. package/src/components/AdaptiveContainer/AdaptiveContainer.module.scss +0 -53
  16. package/src/components/AdaptiveContainer/AdaptiveContainer.tsx +0 -200
  17. package/src/components/AdaptiveContainer/index.tsx +0 -2
  18. package/src/components/AdaptiveDialog/AdaptiveDialog.module.scss +0 -147
  19. package/src/components/AdaptiveDialog/AdaptiveDialog.tsx +0 -97
  20. package/src/components/AdaptiveDialog/index.tsx +0 -2
  21. package/src/components/AdaptiveSidebar/AdaptiveSidebar.module.scss +0 -49
  22. package/src/components/AdaptiveSidebar/AdaptiveSidebar.sample.tsx +0 -10
  23. package/src/components/AdaptiveSidebar/AdaptiveSidebar.tsx +0 -123
  24. package/src/components/AdaptiveSidebar/index.tsx +0 -2
  25. package/src/components/AnchoredTooltip/AnchoredTooltip.module.scss +0 -64
  26. package/src/components/AnchoredTooltip/AnchoredTooltip.tsx +0 -250
  27. package/src/components/AnchoredTooltip/index.tsx +0 -2
  28. package/src/components/AnimatedEntrance/AnimatedEntrance.module.scss +0 -108
  29. package/src/components/AnimatedEntrance/AnimatedEntrance.tsx +0 -227
  30. package/src/components/AnimatedEntrance/index.tsx +0 -2
  31. package/src/components/AsyncWrapper/AsyncWrapper.tsx +0 -38
  32. package/src/components/AsyncWrapper/index.tsx +0 -2
  33. package/src/components/Avatar/Avatar.module.scss +0 -22
  34. package/src/components/Avatar/Avatar.tsx +0 -31
  35. package/src/components/Avatar/index.tsx +0 -2
  36. package/src/components/BucketFill/BucketFill.module.scss +0 -36
  37. package/src/components/BucketFill/BucketFill.tsx +0 -65
  38. package/src/components/BucketFill/index.tsx +0 -2
  39. package/src/components/Button/Button.module.scss +0 -45
  40. package/src/components/Button/Button.tsx +0 -40
  41. package/src/components/Button/index.tsx +0 -2
  42. package/src/components/Card/Card.module.scss +0 -12
  43. package/src/components/Card/Card.tsx +0 -9
  44. package/src/components/Card/index.tsx +0 -2
  45. package/src/components/Chart/Chart.e2e.ts +0 -4
  46. package/src/components/Chart/Chart.logic.tsx +0 -8
  47. package/src/components/Chart/Chart.module.scss +0 -58
  48. package/src/components/Chart/Chart.tsx +0 -2
  49. package/src/components/Chart/Chart.types.ts +0 -35
  50. package/src/components/Chart/Chart.view.tsx +0 -241
  51. package/src/components/Chart/index.tsx +0 -2
  52. package/src/components/CheckBox/CheckBox.module.scss +0 -36
  53. package/src/components/CheckBox/CheckBox.tsx +0 -63
  54. package/src/components/CheckBox/index.tsx +0 -2
  55. package/src/components/CodeInput/CodeInput.module.scss +0 -5
  56. package/src/components/CodeInput/CodeInput.tsx +0 -84
  57. package/src/components/CodeInput/index.tsx +0 -2
  58. package/src/components/Collapsable/Collapsable.module.scss +0 -42
  59. package/src/components/Collapsable/Collapsable.tsx +0 -253
  60. package/src/components/Collapsable/index.tsx +0 -2
  61. package/src/components/Countdown/Countdown.tsx +0 -130
  62. package/src/components/Countdown/index.tsx +0 -2
  63. package/src/components/CurrencyInput/CurrencyInput.hook.ts +0 -37
  64. package/src/components/CurrencyInput/CurrencyInput.tsx +0 -25
  65. package/src/components/CurrencyInput/index.tsx +0 -2
  66. package/src/components/Divider/Divider.module.scss +0 -7
  67. package/src/components/Divider/Divider.tsx +0 -13
  68. package/src/components/Divider/index.tsx +0 -2
  69. package/src/components/EmailInput/EmailInput.module.scss +0 -0
  70. package/src/components/EmailInput/EmailInput.tsx +0 -51
  71. package/src/components/EmailInput/index.tsx +0 -2
  72. package/src/components/FadeIn/FadeIn.module.scss +0 -9
  73. package/src/components/FadeIn/FadeIn.tsx +0 -77
  74. package/src/components/FadeIn/index.tsx +0 -2
  75. package/src/components/FileInput/FileInput.module.scss +0 -6
  76. package/src/components/FileInput/FileInput.tsx +0 -75
  77. package/src/components/FileInput/View/BigFactory/BigFactory.module.scss +0 -20
  78. package/src/components/FileInput/View/BigFactory/BigFactory.tsx +0 -48
  79. package/src/components/FileInput/View/BigFactory/index.tsx +0 -2
  80. package/src/components/FileInput/View/Compact/Compact.module.scss +0 -68
  81. package/src/components/FileInput/View/Compact/Compact.tsx +0 -151
  82. package/src/components/FileInput/View/Compact/index.tsx +0 -2
  83. package/src/components/FileInput/View/View.types.ts +0 -12
  84. package/src/components/FileInput/index.tsx +0 -2
  85. package/src/components/FlowController/FlowController.module.scss +0 -47
  86. package/src/components/FlowController/FlowController.tsx +0 -93
  87. package/src/components/FlowController/index.tsx +0 -2
  88. package/src/components/Form/Form.tsx +0 -243
  89. package/src/components/Form/index.ts +0 -2
  90. package/src/components/Form/v2/Form.hook.ts +0 -341
  91. package/src/components/Form/v2/Form.module.scss +0 -0
  92. package/src/components/Form/v2/Form.tsx +0 -78
  93. package/src/components/Form/v2/Form.types.ts +0 -118
  94. package/src/components/Form/v2/FormField/Extensions/DateField/DateField.module.scss +0 -0
  95. package/src/components/Form/v2/FormField/Extensions/DateField/DateField.tsx +0 -73
  96. package/src/components/Form/v2/FormField/Extensions/DateField/index.tsx +0 -2
  97. package/src/components/Form/v2/FormField/Extensions/PhoneField/PhoneField.module.scss +0 -0
  98. package/src/components/Form/v2/FormField/Extensions/PhoneField/PhoneField.tsx +0 -91
  99. package/src/components/Form/v2/FormField/Extensions/PhoneField/index.tsx +0 -2
  100. package/src/components/Form/v2/FormField/FormField.module.scss +0 -0
  101. package/src/components/Form/v2/FormField/FormField.tsx +0 -378
  102. package/src/components/Form/v2/FormField/FormField.types.ts +0 -129
  103. package/src/components/Form/v2/FormField/index.tsx +0 -2
  104. package/src/components/Form/v2/index.tsx +0 -2
  105. package/src/components/Freeze/Freeze.tsx +0 -9
  106. package/src/components/Freeze/index.tsx +0 -2
  107. package/src/components/HSForms/HSForms.tsx +0 -57
  108. package/src/components/HSForms/index.tsx +0 -2
  109. package/src/components/Header/Header.module.scss +0 -119
  110. package/src/components/Header/Header.tsx +0 -138
  111. package/src/components/Header/index.tsx +0 -2
  112. package/src/components/HeaderCloseBtn/HeaderCloseBtn.module.scss +0 -44
  113. package/src/components/HeaderCloseBtn/HeaderCloseBtn.tsx +0 -28
  114. package/src/components/HeaderCloseBtn/index.tsx +0 -2
  115. package/src/components/InfinityScroll/InfinityScroll.module.scss +0 -30
  116. package/src/components/InfinityScroll/InfinityScroll.tsx +0 -187
  117. package/src/components/InfinityScroll/index.tsx +0 -2
  118. package/src/components/Input/Input.module.scss +0 -71
  119. package/src/components/Input/Input.tsx +0 -134
  120. package/src/components/Input/index.tsx +0 -2
  121. package/src/components/InstantCounter/InstantCounter.tsx +0 -77
  122. package/src/components/InstantCounter/index.tsx +0 -2
  123. package/src/components/LavaLamp/LavaLamp.data.tsx +0 -114
  124. package/src/components/LavaLamp/LavaLamp.module.scss +0 -26
  125. package/src/components/LavaLamp/LavaLamp.tsx +0 -131
  126. package/src/components/LavaLamp/index.tsx +0 -2
  127. package/src/components/LavaLamp/v2/LavaLamp.module.scss +0 -23
  128. package/src/components/LavaLamp/v2/LavaLamp.tsx +0 -197
  129. package/src/components/LinkToId/LinkToId.module.scss +0 -4
  130. package/src/components/LinkToId/LinkToId.tsx +0 -51
  131. package/src/components/LinkToId/index.tsx +0 -2
  132. package/src/components/Loader/Loader.module.scss +0 -40
  133. package/src/components/Loader/Loader.tsx +0 -18
  134. package/src/components/Loader/index.tsx +0 -2
  135. package/src/components/LoaderDotsIndicator/LoaderDotsIndicator.tsx +0 -34
  136. package/src/components/LoaderDotsIndicator/index.tsx +0 -2
  137. package/src/components/LoopableVideo/LoopableVideo.tsx +0 -37
  138. package/src/components/LoopableVideo/index.tsx +0 -2
  139. package/src/components/MainGrid/MainGrid.module.scss +0 -28
  140. package/src/components/MainGrid/MainGrid.tsx +0 -68
  141. package/src/components/MainGrid/index.tsx +0 -2
  142. package/src/components/MutableHamburgerButton/MutableHamburgerButton.module.scss +0 -220
  143. package/src/components/MutableHamburgerButton/MutableHamburgerButton.tsx +0 -38
  144. package/src/components/MutableHamburgerButton/index.tsx +0 -2
  145. package/src/components/Notification/Notification.module.scss +0 -25
  146. package/src/components/Notification/Notification.tsx +0 -13
  147. package/src/components/Notification/index.tsx +0 -2
  148. package/src/components/OrderableList/OrderableList.module.scss +0 -98
  149. package/src/components/OrderableList/OrderableList.tsx +0 -564
  150. package/src/components/OrderableList/index.tsx +0 -2
  151. package/src/components/PaginationIndicator/PaginationIndicator.tsx +0 -365
  152. package/src/components/PaginationIndicator/index.tsx +0 -2
  153. package/src/components/Parallax/Parallax.module.scss +0 -28
  154. package/src/components/Parallax/Parallax.tsx +0 -225
  155. package/src/components/Parallax/index.tsx +0 -2
  156. package/src/components/Parallax/math/helpers.ts +0 -289
  157. package/src/components/PasswordInput/PasswordInput.module.scss +0 -17
  158. package/src/components/PasswordInput/PasswordInput.tsx +0 -154
  159. package/src/components/PasswordInput/index.tsx +0 -2
  160. package/src/components/PingPongText/PingPongText.module.scss +0 -4
  161. package/src/components/PingPongText/PingPongText.tsx +0 -83
  162. package/src/components/PingPongText/index.tsx +0 -2
  163. package/src/components/PixelatedScan/PixelatedScan.module.scss +0 -86
  164. package/src/components/PixelatedScan/PixelatedScan.tsx +0 -175
  165. package/src/components/PixelatedScan/index.tsx +0 -2
  166. package/src/components/Portal/Portal.module.scss +0 -3
  167. package/src/components/Portal/Portal.tsx +0 -68
  168. package/src/components/Portal/index.tsx +0 -2
  169. package/src/components/ProgressBar/ProgressBar.module.scss +0 -44
  170. package/src/components/ProgressBar/ProgressBar.tsx +0 -124
  171. package/src/components/ProgressBar/index.tsx +0 -2
  172. package/src/components/ProgressTexts/ProgressTexts.module.scss +0 -37
  173. package/src/components/ProgressTexts/ProgressTexts.tsx +0 -85
  174. package/src/components/ProgressTexts/index.tsx +0 -2
  175. package/src/components/Radio/Radio.module.scss +0 -36
  176. package/src/components/Radio/Radio.tsx +0 -53
  177. package/src/components/Radio/index.tsx +0 -2
  178. package/src/components/SectionContainer/SectionContainer.module.scss +0 -30
  179. package/src/components/SectionContainer/SectionContainer.tsx +0 -49
  180. package/src/components/SectionContainer/index.tsx +0 -2
  181. package/src/components/Select/Select.module.scss +0 -58
  182. package/src/components/Select/Select.tsx +0 -192
  183. package/src/components/Select/index.tsx +0 -2
  184. package/src/components/Skeleton/Skeleton.module.scss +0 -21
  185. package/src/components/Skeleton/Skeleton.tsx +0 -29
  186. package/src/components/Skeleton/index.tsx +0 -2
  187. package/src/components/Spacing/Spacing.module.scss +0 -13
  188. package/src/components/Spacing/Spacing.tsx +0 -24
  189. package/src/components/Spacing/index.tsx +0 -2
  190. package/src/components/StaticScroller/StaticScroller.module.scss +0 -14
  191. package/src/components/StaticScroller/StaticScroller.tsx +0 -83
  192. package/src/components/StaticScroller/index.tsx +0 -2
  193. package/src/components/Switch/Switch.module.scss +0 -43
  194. package/src/components/Switch/Switch.tsx +0 -41
  195. package/src/components/Switch/index.tsx +0 -2
  196. package/src/components/Table/Table.module.scss +0 -76
  197. package/src/components/Table/Table.tsx +0 -152
  198. package/src/components/Table/index.tsx +0 -2
  199. package/src/components/Tabs/Tabs.module.scss +0 -40
  200. package/src/components/Tabs/Tabs.tsx +0 -104
  201. package/src/components/Tabs/index.tsx +0 -2
  202. package/src/components/Text/Text.module.scss +0 -81
  203. package/src/components/Text/Text.tsx +0 -42
  204. package/src/components/Text/index.tsx +0 -2
  205. package/src/components/Transition/MasksFactory/DiagonalReveal.tsx +0 -47
  206. package/src/components/Transition/MasksFactory/DiagonalSquareToBalls.tsx +0 -78
  207. package/src/components/Transition/MasksFactory/PhysicsSquares.tsx +0 -106
  208. package/src/components/Transition/MasksFactory/SquareToBalls.tsx +0 -66
  209. package/src/components/Transition/MasksFactory/utils.ts +0 -35
  210. package/src/components/Transition/Transition.module.scss +0 -211
  211. package/src/components/Transition/Transition.tsx +0 -495
  212. package/src/components/Transition/index.tsx +0 -2
  213. package/src/components/UncontrolledTransition/UncontrolledTransition.ai.md +0 -9
  214. package/src/components/UncontrolledTransition/UncontrolledTransition.sample.tsx +0 -34
  215. package/src/components/UncontrolledTransition/UncontrolledTransition.tsx +0 -143
  216. package/src/components/UncontrolledTransition/index.tsx +0 -2
  217. package/src/components/WalletConnectionWrapper/WalletConnectionWrapper.tsx +0 -212
  218. package/src/components/WalletConnectionWrapper/index.tsx +0 -2
  219. package/src/components/utilitary/ScrollAndFocusLock/ScrollAndFocusLock.module.scss +0 -5
  220. package/src/components/utilitary/ScrollAndFocusLock/ScrollAndFocusLock.tsx +0 -52
  221. package/src/components/utilitary/ScrollAndFocusLock/index.tsx +0 -2
  222. package/src/context/AsyncProcess.tsx +0 -107
  223. package/src/context/ContextAsyncControl.tsx +0 -89
  224. package/src/context/CustomBrowserRouter.tsx +0 -55
  225. package/src/context/OneUIProvider.tsx +0 -308
  226. package/src/hooks/logs/useDependencyChangeDetection.ts +0 -25
  227. package/src/hooks/logs/useIsMounting.ts +0 -7
  228. package/src/hooks/persistence/useLocalStorage.ts +0 -45
  229. package/src/hooks/shims/ObjectWatchShim.ts +0 -56
  230. package/src/hooks/ui/useAdaptiveImage.tsx +0 -36
  231. package/src/hooks/ui/useAlternating.tsx +0 -22
  232. package/src/hooks/ui/useBreakpoint.tsx +0 -21
  233. package/src/hooks/ui/useCustomScrollbar.module.scss +0 -20
  234. package/src/hooks/ui/useCustomScrollbar.tsx +0 -22
  235. package/src/hooks/ui/useEffectIf.ts +0 -11
  236. package/src/hooks/ui/useMouseHover.tsx +0 -26
  237. package/src/hooks/ui/usePaginationControls.module.scss +0 -16
  238. package/src/hooks/ui/usePaginationControls.tsx +0 -176
  239. package/src/hooks/ui/useSnapToViewport.module.scss +0 -6
  240. package/src/hooks/ui/useSnapToViewport.ts +0 -28
  241. package/src/hooks/ui/useTilt.tsx +0 -219
  242. package/src/hooks/ui/useZoomable.module.scss +0 -34
  243. package/src/hooks/ui/useZoomable.tsx +0 -144
  244. package/src/hooks/useAsyncControl.ai.md +0 -25
  245. package/src/hooks/useAsyncControl.ts +0 -101
  246. package/src/hooks/useContainedRepositioning.ts +0 -110
  247. package/src/hooks/useCustomHistory.ts +0 -14
  248. package/src/hooks/useElementFit.ts +0 -82
  249. package/src/hooks/useFirestoreWatch.ts +0 -54
  250. package/src/hooks/useForm.ts +0 -49
  251. package/src/hooks/useFreeze.ts +0 -12
  252. package/src/hooks/useHero.module.scss +0 -41
  253. package/src/hooks/useHero.ts +0 -512
  254. package/src/hooks/useIntersection.ts +0 -32
  255. package/src/hooks/useMergeRefs.ts +0 -29
  256. package/src/hooks/useObserve.ts +0 -24
  257. package/src/hooks/usePagination.ts +0 -228
  258. package/src/hooks/usePooledOperation.ts +0 -54
  259. package/src/hooks/usePooling.ts +0 -46
  260. package/src/hooks/useRebound.ts +0 -23
  261. package/src/hooks/useShortIntl.ai.md +0 -5
  262. package/src/hooks/useShortIntl.ts +0 -97
  263. package/src/hooks/utility/useAsyncMemo.ts +0 -43
  264. package/src/hooks/utility/useDepChange.ts +0 -11
  265. package/src/hooks/utility/useEvents.ts +0 -33
  266. package/src/hooks/utility/useImmediate.ts +0 -8
  267. package/src/hooks/utility/useManualInit.ts +0 -24
  268. package/src/hooks/utility/useModule.ts +0 -15
  269. package/src/hooks/utility/useQuery.ts +0 -15
  270. package/src/hooks/utility/useUniqueEffect.ts +0 -22
  271. package/src/index.preprocess.ts +0 -82
  272. package/src/index.ts +0 -229
  273. package/src/models/DebugLogger.ts +0 -7
  274. package/src/models/GenericContract.ts +0 -169
  275. package/src/models/Orbs.ts +0 -97
  276. package/src/reac-app-env.d.ts +0 -6
  277. package/src/storybook/assets/video/txt-reversed.mp4 +0 -0
  278. package/src/storybookUtils/index.tsx +0 -53
  279. package/src/test.tsx +0 -0
  280. package/src/type-utils.ts +0 -49
  281. package/src/types.ts +0 -199
  282. package/src/utility.d.ts +0 -70
  283. package/src/utils/blockchain.ts +0 -43
  284. package/src/utils/e2e.ts +0 -55
  285. package/src/utils/flatten.ts +0 -17
  286. package/src/utils/formatters.ts +0 -36
  287. package/src/utils/html.utils.ts +0 -3
  288. package/src/utils/ownEvent.ts +0 -8
  289. package/src/utils/test.ts +0 -20
@@ -1,129 +0,0 @@
1
- import { ReactElement, ReactNode } from "react";
2
- import { SelectItem } from "../../../Select/Select";
3
- import { UploadTask } from "firebase/storage";
4
- import { UnresolvableOr } from "../../../../type-utils";
5
-
6
- export type GenericFormFieldProps<T extends FormField["type"]> = {
7
- value: AnswerByField<{ type: T }>;
8
- onAnswer: (FormFieldProps<{ type: T }> & {
9
- mode: FormMode.WRITE;
10
- })["onAnswer"];
11
- question: FormFieldView & { type: T };
12
- error?: string;
13
- };
14
-
15
- export type FormFieldProps<Q extends Pick<FormFieldView, "type">> = {
16
- config: Q;
17
- value: AnswerByField<Q>;
18
- } & (
19
- | {
20
- mode: FormMode.READ_ONLY;
21
- }
22
- | {
23
- mode?: FormMode.WRITE;
24
- onAnswer: <T extends Q["type"]>(
25
- questionType: T,
26
- questionId: string,
27
- answer:
28
- | AnswerAction<{
29
- type: T;
30
- }>
31
- | undefined
32
- ) => void;
33
- error?: string | string[];
34
- }
35
- );
36
-
37
- export enum FormMode {
38
- READ_ONLY,
39
- WRITE,
40
- }
41
- export type FormFieldView = FormField & {
42
- title: string;
43
- };
44
-
45
- export type AnswerAction<F extends Pick<FormField, "type">> =
46
- F["type"] extends "file" ? File : AnswerByField<F>;
47
-
48
- export type BasicFormFields =
49
- | {
50
- type: "select";
51
- filter?: (item: SelectItem, term: string) => boolean;
52
- options: SelectItem[];
53
- }
54
- | {
55
- type: "text";
56
- multiline?: number;
57
- }
58
- | {
59
- type: "number";
60
- };
61
-
62
- type DistributeValidatorOverUnion<FormFieldTypes extends { type: any }> =
63
- FormFieldTypes extends any
64
- ? FormFieldTypes & {
65
- validator?: (
66
- val: AnswerAction<FormFieldTypes> | undefined
67
- ) => boolean | string;
68
- }
69
- : never;
70
- export type FormField = {
71
- optional?: boolean;
72
- id: string;
73
- } & DistributeValidatorOverUnion<
74
- | BasicFormFields
75
- | {
76
- type: "radio";
77
- options: SelectItem[];
78
- }
79
- | {
80
- type: "check" | "rawcheck";
81
- options: SelectItem[];
82
- }
83
- | {
84
- type: "file";
85
- fileUsageDescription: string;
86
- extensions: string[];
87
- footer: string;
88
- openFile?: {
89
- action: () => void;
90
- label: string | ReactNode;
91
- };
92
- }
93
- | {
94
- type: "accept";
95
- link: {
96
- type: "file" | "route";
97
- to: string;
98
- };
99
- contract: {
100
- action: () => void;
101
- label: string | ReactNode;
102
- };
103
- accept: {
104
- label: string;
105
- optional?: true;
106
- }[];
107
- }
108
- | UnresolvableOr<OnepercentUtility.UIElements.FormExtension["fields"], {}>
109
- >;
110
-
111
- export type FormFieldTypes = FormField['type'] | 'accept'
112
-
113
- type ExternalQuestionFields = UnresolvableOr<
114
- OnepercentUtility.UIElements.FormExtension["fieldAnswer"],
115
- {}
116
- >;
117
-
118
- export type AnswerByField<F extends Pick<FormField, "type">> =
119
- F["type"] extends "file"
120
- ? UploadTask | true
121
- : F["type"] extends "accept" | "check" | "rawcheck"
122
- ? boolean[]
123
- : F["type"] extends "radio" | "text" | "select" | "number"
124
- ? string
125
- : F["type"] extends keyof ExternalQuestionFields
126
- ? OnepercentUtility.UIElements.FormExtension["fieldAnswer"][F["type"]]
127
- : unknown;
128
-
129
- type O = FormField["type"];
@@ -1,2 +0,0 @@
1
- export { default } from "./FormField";
2
- export * from "./FormField";
@@ -1,2 +0,0 @@
1
- export { default } from "./Form";
2
- export * from "./Form";
@@ -1,9 +0,0 @@
1
- import React, { PropsWithChildren, ReactElement, useRef } from "react";
2
- import useFreeze from "../../hooks/useFreeze";
3
-
4
- /**
5
- * Use this component when you would like to freeze some child when this child can assume undefined in the next 'frame'
6
- **/
7
- export default function Freeze({ children }: PropsWithChildren<{}>) {
8
- return useFreeze(children) as ReactElement;
9
- }
@@ -1,2 +0,0 @@
1
- export { default } from "./Freeze";
2
- export * from "./Freeze";
@@ -1,57 +0,0 @@
1
- import React, { useEffect, useRef } from "react";
2
-
3
- export default function HSForms({
4
- region,
5
- partialId,
6
- formId,
7
- className,
8
- onFormReady,
9
- onFormSubmitted,
10
- }: {
11
- region: "na1";
12
- partialId: string;
13
- formId: string;
14
- className?: string;
15
- onFormReady?: (div: HTMLDivElement, form: any) => void;
16
- onFormSubmitted?: () => void;
17
- }) {
18
- if ((window as any).PRERENDER) return null;
19
- const container = useRef<HTMLDivElement>(null);
20
-
21
- useEffect(() => {
22
- import("jquery"!).then((jqueryModule) => {
23
- const funcId = String(Math.round(Math.random() * 999999));
24
- const idx = `onLoad${funcId}`;
25
- const idx2 = `onSubmit${funcId}`;
26
- (window as any)[idx as any] = function (form: any) {
27
- if (onFormReady) onFormReady(container.current!, form);
28
- };
29
- (window as any)[idx2 as any] = function () {
30
- if (onFormSubmitted) onFormSubmitted();
31
- };
32
- (window as any).jQuery = jqueryModule.default;
33
- const script = document.createElement("script");
34
- script.setAttribute("src", "https://js.hsforms.net/forms/v2.js");
35
- script.setAttribute("type", "text/javascript");
36
- script.setAttribute("charset", "utf-8");
37
- script.onload = () => {
38
- const createFormScript = document.createElement("script");
39
- createFormScript.setAttribute("type", "text/javascript");
40
- createFormScript.innerHTML = `hbspt.forms.create({
41
- region: "${region}",
42
- portalId: "${partialId}",
43
- formId: "${formId}",
44
- submitButtonClass: '#',
45
- css: ' ',
46
- cssClass: '#',
47
- onFormReady: ${idx},
48
- onFormSubmit: ${idx2},
49
- formInstanceId: ${funcId}
50
- });`;
51
- container.current!.appendChild(createFormScript);
52
- };
53
- document.head.appendChild(script);
54
- });
55
- }, [region, partialId, formId]);
56
- return <div ref={container} className={className}></div>;
57
- }
@@ -1,2 +0,0 @@
1
- export { default } from "./HSForms";
2
- export * from "./HSForms";
@@ -1,119 +0,0 @@
1
- @import "../../assets/styles/index.scss";
2
-
3
- .header {
4
- position: sticky;
5
- top: 0px;
6
- width: 100%;
7
- background-color: $headerFillBackgroundColor;
8
- display: flex;
9
- padding: 32px;
10
- align-items: center;
11
- font-family: $mainFontFamily;
12
- z-index: 100;
13
- }
14
-
15
- .logo {
16
- align-self: stretch;
17
- display: flex;
18
- align-items: center;
19
-
20
- @media (orientation: portrait) {
21
- display: none;
22
- }
23
- }
24
-
25
- .option {
26
- font-size: 18px;
27
- line-height: 22px;
28
- margin-right: 28px;
29
- color: $headerTextColor;
30
- }
31
-
32
- .logoDivider {
33
- margin: -32px 32px;
34
- width: 1px;
35
- background-color: $headerBackgroundColor;
36
- }
37
-
38
- .profile {
39
- background-color: $headerBrightColor;
40
- height: 36px;
41
- width: 36px;
42
- border-radius: 18px;
43
- line-height: 36px;
44
- text-align: center;
45
- }
46
-
47
- .profile,
48
- .profileName {
49
- margin-right: 8px;
50
- }
51
-
52
- .profileName {
53
- color: $headerBrightColor;
54
-
55
- @media (orientation: portrait) {
56
- display: none;
57
- }
58
- }
59
- .headerOptions {
60
- right: 0px;
61
- width: fit-content;
62
- margin-top: 18px;
63
- z-index: 1000;
64
- > * {
65
- cursor: pointer;
66
- backdrop-filter: var(--header-submenu-backdrop, initial);
67
- padding: 12px 32px;
68
- margin-bottom: 8px;
69
- margin-left: 4px;
70
- margin-right: 4px;
71
- text-align: left;
72
- border-radius: 4px;
73
- font-size: 14px;
74
- }
75
- }
76
- .indicator {
77
- @include iteractibleElement();
78
- transition: transform $fast;
79
- transform: rotateX(0deg);
80
-
81
- &.open {
82
- transform: rotateX(180deg);
83
- }
84
-
85
- display: none;
86
- @media screen and (max-width: 640px) {
87
- display: initial;
88
- }
89
- &.withMoreOptions {
90
- display: initial;
91
- }
92
- }
93
-
94
- .desktopOnly {
95
- @media screen and (max-width: 640px) {
96
- display: none;
97
- }
98
- }
99
-
100
- .mobileOnly {
101
- @media screen and (min-width: 640px) {
102
- display: none;
103
- }
104
- }
105
-
106
- .options-right {
107
- .logo {
108
- margin-right: auto;
109
- }
110
- .sectionDivider {
111
- margin-left: initial;
112
- }
113
- }
114
-
115
- .options-left {
116
- .sectionDivider {
117
- margin-left: auto;
118
- }
119
- }
@@ -1,138 +0,0 @@
1
- import React, { PropsWithChildren, useEffect, useState } from "react";
2
- import { useOneUIContext } from "../../context/OneUIProvider";
3
- import { AnchoredTooltipAlignment } from "../AnchoredTooltip/AnchoredTooltip";
4
- import Collapsable from "../Collapsable";
5
- import Text from "../Text";
6
- import Styles from "./Header.module.scss";
7
-
8
- type Option = {
9
- label: string;
10
- onClick: () => void;
11
- };
12
-
13
- type User = {
14
- name: string;
15
- profilePicture?: string;
16
- };
17
-
18
- type MoreOptions = Option[];
19
-
20
- type Props = PropsWithChildren<{
21
- optionsAlignment?: "left" | "right";
22
- user?: User;
23
- options: Option[];
24
- moreOptions?: MoreOptions;
25
- /**
26
- * This controls the visbility of a control for showing or hiding a menu on mobile
27
- */
28
- responsive?: boolean;
29
- }>;
30
-
31
- /**
32
- * A generic header implementation
33
- **/
34
- export default function Header(props: Props) {
35
- const { user, moreOptions } = props;
36
- const [showMoreOptions, setShowMoreOptions] = useState(false);
37
- const { LogoImage = () => null, MoreOptions = () => <div>v</div> } =
38
- useOneUIContext().component.header;
39
-
40
- useEffect(() => {
41
- if (showMoreOptions) {
42
- const close = () => setShowMoreOptions(false);
43
- window.addEventListener("click", close);
44
- return () => {
45
- window.removeEventListener("click", close);
46
- };
47
- }
48
- }, [showMoreOptions]);
49
- return (
50
- <header className={`${Styles.header} ${Styles[`options-${props.optionsAlignment || "left"}`]}`}>
51
- <div className={Styles.logo}>
52
- <LogoImage />
53
- <div className={Styles.logoDivider} />
54
- </div>
55
- <Controls {...props} mode="desktop" />
56
- {user ? (
57
- user.profilePicture ? (
58
- <img
59
- className={Styles.profile}
60
- data-testid="profile-container"
61
- src={user.profilePicture!}
62
- />
63
- ) : (
64
- <div className={Styles.profile} data-testid="profile-container">
65
- {user.name
66
- .split(" ")
67
- .slice(0, 2)
68
- .map((a) => a.charAt(0).toUpperCase())
69
- .join("")}
70
- </div>
71
- )
72
- ) : null}
73
- {user ? <p className={Styles.profileName}>{user.name}</p> : null}
74
- {
75
- <Collapsable
76
- title={
77
- <div
78
- className={`${Styles.indicator} ${
79
- moreOptions ? Styles.withMoreOptions : ""
80
- }`}
81
- >
82
- <MoreOptions open={showMoreOptions} />
83
- </div>
84
- }
85
- data-testid="more-options-container"
86
- open={showMoreOptions}
87
- onToggleOpen={setShowMoreOptions}
88
- mode="float"
89
- contentClassName={Styles.headerOptions}
90
- alignTo={AnchoredTooltipAlignment.CENTER}
91
- >
92
- <Controls {...props} mode="mobile" />
93
- {moreOptions
94
- ? moreOptions.map((opt) => (
95
- <Text type="link" onClick={opt.onClick}>
96
- {opt.label}
97
- </Text>
98
- ))
99
- : null}
100
- </Collapsable>
101
- }
102
- </header>
103
- );
104
- }
105
-
106
- function Controls({
107
- options,
108
- children,
109
- mode,
110
- }: Props & { mode: "desktop" | "mobile" }) {
111
- return (
112
- <>
113
- {options.map((option, i) => (
114
- <Text
115
- type="link"
116
- key={option.label}
117
- data-testid={`option-${i}`}
118
- onClick={option.onClick}
119
- className={`${Styles.option} ${
120
- mode === "desktop" ? Styles.desktopOnly : Styles.mobileOnly
121
- }`}
122
- >
123
- {option.label}
124
- </Text>
125
- ))}
126
- <div className={Styles.sectionDivider} />
127
- {children && (
128
- <div
129
- className={`${Styles.children} ${
130
- mode === "desktop" ? Styles.desktopOnly : Styles.mobileOnly
131
- }`}
132
- >
133
- {children}
134
- </div>
135
- )}
136
- </>
137
- );
138
- }
@@ -1,2 +0,0 @@
1
- export { default } from "./Header";
2
- export * from "./Header";
@@ -1,44 +0,0 @@
1
- @import "../../assets/styles/index.scss";
2
-
3
- .headerButton {
4
- width: 22px;
5
- height: 22px;
6
- position: relative;
7
- opacity: 1;
8
- @include iteractibleElement();
9
- transition: opacity $fast, transform $fast;
10
- &.pointOfNoReturn {
11
- opacity: 0;
12
- }
13
- div {
14
- transition: width $fast, top $fast, left $fast;
15
- position: absolute;
16
- height: 3px;
17
- border-radius: 1.5px;
18
- width: 22px;
19
- background-color: $digitalBlue;
20
- transform-origin: 1.5px 1.5px;
21
- &:nth-child(1) {
22
- transform: rotateZ(45deg);
23
- }
24
- &:nth-child(2) {
25
- transform: rotateZ(-45deg);
26
- }
27
- }
28
- &.back div {
29
- width: 12.5px;
30
- top: 5.5px;
31
- left: 0px;
32
- }
33
- &.close div {
34
- width: 22px;
35
- &:nth-child(1) {
36
- top: 0px;
37
- left: 0px;
38
- }
39
- &:nth-child(2) {
40
- top: 13px;
41
- left: 0px;
42
- }
43
- }
44
- }
@@ -1,28 +0,0 @@
1
- import React from "react";
2
- import Styles from "./HeaderCloseBtn.module.scss";
3
-
4
- /**
5
- * A simple close button implemented with pure HTML and CSS
6
- **/
7
- export default function HeaderButton({
8
- mode,
9
- hidden,
10
- onClick,
11
- }: {
12
- mode: "back" | "close";
13
- hidden: boolean;
14
- onClick: () => void;
15
- }) {
16
- return (
17
- <div
18
- data-testid="header-control-back"
19
- className={`${Styles.headerButton} ${Styles[mode]} ${
20
- hidden ? Styles.pointOfNoReturn : ""
21
- }`}
22
- onClick={onClick}
23
- >
24
- <div />
25
- <div />
26
- </div>
27
- );
28
- }
@@ -1,2 +0,0 @@
1
- export { default } from "./HeaderCloseBtn";
2
- export * from "./HeaderCloseBtn";
@@ -1,30 +0,0 @@
1
- .container {
2
- position: relative;
3
- width: 100%;
4
- display: flex;
5
- overflow: auto;
6
- /* Hide scrollbar for Chrome, Safari and Opera */
7
- &::-webkit-scrollbar {
8
- display: none;
9
- }
10
-
11
- /* Hide scrollbar for IE, Edge and Firefox */
12
- & {
13
- -ms-overflow-style: none; /* IE and Edge */
14
- scrollbar-width: none; /* Firefox */
15
- }
16
- > * {
17
- width: 100%;
18
- min-width: 100%;
19
- }
20
-
21
- > :first-child {
22
- // background-color: green;
23
- }
24
- > :nth-child(2) {
25
- // background-color: yellow;
26
- }
27
- > :nth-child(3) {
28
- // background-color: blue;
29
- }
30
- }