stargazer-ui 1.1.0 → 1.2.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 (338) hide show
  1. package/.babelrc.json +10 -0
  2. package/.eslintrc.cjs +18 -0
  3. package/.gitattributes +2 -0
  4. package/LICENSE +21 -0
  5. package/dev/index.html +12 -0
  6. package/dev/index.jsx +49 -0
  7. package/dev/index.scss +59 -0
  8. package/dev/pages/ButtonPage.jsx +44 -0
  9. package/dev/pages/CardPage.jsx +81 -0
  10. package/dev/pages/DropdownPage.jsx +31 -0
  11. package/dev/pages/FormPage.jsx +130 -0
  12. package/dev/pages/ListPage.jsx +52 -0
  13. package/dev/pages/ModalPage.jsx +37 -0
  14. package/dev/pages/OverlayPage.jsx +35 -0
  15. package/dev/pages/components.jsx +19 -0
  16. package/{styles → dev}/stargazerui.css +419 -2530
  17. package/dev/stargazerui.css.map +1 -0
  18. package/dev/test.jsx +88 -0
  19. package/package.json +79 -1
  20. package/rollup.config.js +140 -0
  21. package/scripts/writePackageJsons.js +42 -0
  22. package/src/Bar/Bar.tsx +0 -0
  23. package/src/Bar/Bar.type.ts +9 -0
  24. package/src/Bar/index.ts +0 -0
  25. package/src/Button/Button.tsx +17 -0
  26. package/src/Button/Button.types.ts +8 -0
  27. package/src/Button/index.ts +3 -0
  28. package/src/ButtonGroup/ButtonGroup.tsx +14 -0
  29. package/src/ButtonGroup/ButtonGroup.types.ts +8 -0
  30. package/src/ButtonGroup/index.ts +3 -0
  31. package/src/Card/Card.tsx +70 -0
  32. package/src/Card/Card.types.ts +33 -0
  33. package/src/Card/index.ts +3 -0
  34. package/src/CloseButton/CloseButton.tsx +14 -0
  35. package/src/CloseButton/CloseButton.types.ts +6 -0
  36. package/src/CloseButton/index.ts +3 -0
  37. package/src/Dropdown/Dropdown.tsx +358 -0
  38. package/src/Dropdown/Dropdown.types.ts +52 -0
  39. package/src/Dropdown/index.ts +4 -0
  40. package/src/FileUploadButton/FileUploadButton.tsx +27 -0
  41. package/src/FileUploadButton/FileUploadButton.types.ts +9 -0
  42. package/src/FileUploadButton/index.ts +3 -0
  43. package/src/FloatingLabel/FloatingLabel.tsx +22 -0
  44. package/src/FloatingLabel/FloatingLabel.types.ts +11 -0
  45. package/src/FloatingLabel/index.ts +3 -0
  46. package/src/Form/Form.tsx +445 -0
  47. package/src/Form/Form.types.ts +117 -0
  48. package/src/Form/index.ts +4 -0
  49. package/src/InputGroup/InputGroup.tsx +46 -0
  50. package/src/InputGroup/InputGroup.types.ts +21 -0
  51. package/src/InputGroup/index.ts +4 -0
  52. package/src/List/List.tsx +112 -0
  53. package/src/List/List.types.ts +34 -0
  54. package/src/List/index.ts +4 -0
  55. package/src/Modal/Modal.tsx +220 -0
  56. package/src/Modal/Modal.types.ts +49 -0
  57. package/src/Modal/index.ts +4 -0
  58. package/src/Nav/Nav.tsx +43 -0
  59. package/src/Nav/Nav.types.ts +21 -0
  60. package/src/Nav/index.ts +4 -0
  61. package/src/NavBar/Navbar.tsx +57 -0
  62. package/src/NavBar/Navbar.types.ts +24 -0
  63. package/src/NavBar/index.ts +4 -0
  64. package/src/NavDropdown/NavDropdown.tsx +93 -0
  65. package/src/NavDropdown/NavDropdown.types.ts +6 -0
  66. package/src/NavDropdown/index.ts +3 -0
  67. package/src/Overlay/Overlay.tsx +277 -0
  68. package/src/Overlay/Overlay.types.ts +20 -0
  69. package/{Overlay/index.d.ts → src/Overlay/index.ts} +3 -3
  70. package/src/Popout/Popout.tsx +155 -0
  71. package/src/Popout/Popout.types.ts +42 -0
  72. package/src/Popout/index.ts +3 -0
  73. package/src/Spinner/Spinner.tsx +15 -0
  74. package/src/Spinner/Spinner.types.ts +7 -0
  75. package/src/Spinner/index.ts +3 -0
  76. package/src/Table/Table.tsx +16 -0
  77. package/src/Table/Table.types.ts +9 -0
  78. package/src/Table/index.ts +3 -0
  79. package/src/Tabs/Tabs.tsx +215 -0
  80. package/src/Tabs/Tabs.types.ts +49 -0
  81. package/src/Tabs/index.ts +3 -0
  82. package/src/ToggleButton/ToggleButton.tsx +21 -0
  83. package/src/ToggleButton/ToggleButton.types.ts +8 -0
  84. package/src/ToggleButton/index.ts +3 -0
  85. package/{hooks/index.d.ts → src/hooks/index.ts} +6 -5
  86. package/src/hooks/useClassname.ts +5 -0
  87. package/src/hooks/useDraggable.ts +186 -0
  88. package/src/hooks/useKeepElementFocused.ts +37 -0
  89. package/src/hooks/useScreenSize.ts +24 -0
  90. package/src/index.ts +21 -0
  91. package/src/styles/_Card.scss +166 -0
  92. package/src/styles/_CloseButton.scss +51 -0
  93. package/src/styles/_CustomButton.scss +132 -0
  94. package/src/styles/_Dropdown.scss +120 -0
  95. package/src/styles/_FloatingLabel.scss +56 -0
  96. package/src/styles/_Forms.scss +7 -0
  97. package/src/styles/_Grid.scss +178 -0
  98. package/src/styles/_InputGroup.scss +71 -0
  99. package/src/styles/_List.scss +62 -0
  100. package/src/styles/_Modal.scss +234 -0
  101. package/src/styles/_ModalOld.scss +242 -0
  102. package/src/styles/_Nav.scss +36 -0
  103. package/src/styles/_NavBar.scss +116 -0
  104. package/src/styles/_NavDropdown.scss +34 -0
  105. package/src/styles/_OffCanvas.scss +260 -0
  106. package/src/styles/_OverLay.scss +56 -0
  107. package/src/styles/_Popout.scss +75 -0
  108. package/src/styles/_Spinner.scss +19 -0
  109. package/src/styles/_Table.scss +34 -0
  110. package/src/styles/_Tabs.scss +129 -0
  111. package/src/styles/_colors.scss +510 -0
  112. package/src/styles/_components.scss +40 -0
  113. package/src/styles/_functions.scss +134 -0
  114. package/src/styles/_mixins.scss +26 -0
  115. package/src/styles/_reset.scss +231 -0
  116. package/src/styles/_utilities.scss +2480 -0
  117. package/src/styles/_variables.scss +146 -0
  118. package/src/styles/forms/_FormCheck.scss +269 -0
  119. package/src/styles/forms/_FormControl.scss +102 -0
  120. package/src/styles/forms/_FormGroup.scss +21 -0
  121. package/src/styles/forms/_FormLabel.scss +3 -0
  122. package/src/styles/forms/_FormSelect.scss +164 -0
  123. package/src/styles/forms/_FormSlider.scss +116 -0
  124. package/src/styles/forms/_FormText.scss +6 -0
  125. package/{utils/BaseTypes.d.ts → src/utils/BaseTypes.ts} +30 -23
  126. package/src/utils/ContrastingColor.ts +25 -0
  127. package/src/utils/FileImportExport.js +50 -0
  128. package/src/utils/MergeClassnames.ts +5 -0
  129. package/src/utils/MergeRefs.ts +12 -0
  130. package/src/vite-env.d.ts +1 -0
  131. package/tsconfig-build.json +4 -0
  132. package/tsconfig.json +79 -0
  133. package/tsconfig.node.json +10 -0
  134. package/types/BaseTypes.d.ts +19 -0
  135. package/{Button → types/components/Button}/Button.types.d.ts +1 -1
  136. package/types/components/Button/index.d.ts +1 -0
  137. package/{Card → types/components/Card}/Card.types.d.ts +1 -3
  138. package/types/components/Card/index.d.ts +1 -0
  139. package/{CloseButton → types/components/CloseButton}/CloseButton.types.d.ts +1 -1
  140. package/types/components/CloseButton/index.d.ts +1 -0
  141. package/{Dropdown → types/components/Dropdown}/Dropdown.types.d.ts +10 -3
  142. package/types/components/Dropdown/index.d.ts +1 -0
  143. package/{FloatingLabel → types/components/FloatingLabel}/FloatingLabel.types.d.ts +1 -1
  144. package/types/components/FloatingLabel/index.d.ts +1 -0
  145. package/types/components/Form/Form.d.ts +17 -0
  146. package/types/components/Form/Form.types.d.ts +50 -0
  147. package/types/components/Form/index.d.ts +1 -0
  148. package/types/components/InputGroup/InputGroup.d.ts +6 -0
  149. package/types/components/InputGroup/InputGroup.types.d.ts +10 -0
  150. package/types/components/InputGroup/index.d.ts +1 -0
  151. package/{Modal → types/components/Modal}/Modal.d.ts +1 -1
  152. package/{Modal → types/components/Modal}/Modal.types.d.ts +2 -2
  153. package/types/components/Modal/index.d.ts +1 -0
  154. package/{Nav → types/components/Nav}/Nav.types.d.ts +1 -1
  155. package/types/components/Nav/index.d.ts +1 -0
  156. package/{NavBar → types/components/NavBar}/Navbar.d.ts +2 -1
  157. package/{NavBar → types/components/NavBar}/Navbar.types.d.ts +1 -2
  158. package/types/components/NavBar/index.d.ts +1 -0
  159. package/{NavDropdown → types/components/NavDropdown}/NavDropdown.d.ts +2 -2
  160. package/types/components/NavDropdown/index.d.ts +1 -0
  161. package/{Popout → types/components/Popout}/Popout.types.d.ts +1 -1
  162. package/types/components/Popout/index.d.ts +1 -0
  163. package/types/components/Spinner/index.d.ts +1 -0
  164. package/{Table → types/components/Table}/Table.types.d.ts +1 -1
  165. package/types/components/Table/index.d.ts +1 -0
  166. package/{Tabs → types/components/Tabs}/Tabs.types.d.ts +1 -4
  167. package/types/components/Tabs/index.d.ts +1 -0
  168. package/types/components/ToggleButton/ToggleButton.d.ts +9 -0
  169. package/types/components/ToggleButton/ToggleButton.types.d.ts +0 -0
  170. package/types/components/ToggleButton/index.d.ts +1 -0
  171. package/types/components/index.d.ts +16 -0
  172. package/types/index.d.ts +1 -0
  173. package/vite.config.js +57 -0
  174. package/vite.config.js.timestamp-1708777378490-e94428ceb2bf9.mjs +42 -0
  175. package/Bar/Bar.type.d.ts +0 -6
  176. package/Bar/index.js +0 -2
  177. package/Bar/index.js.map +0 -1
  178. package/Bar/package.json +0 -1
  179. package/Button/Button.js +0 -12
  180. package/Button/Button.js.map +0 -1
  181. package/Button/index.d.ts +0 -3
  182. package/Button/index.js +0 -7
  183. package/Button/index.js.map +0 -1
  184. package/Button/package.json +0 -1
  185. package/ButtonGroup/ButtonGroup.d.ts +0 -4
  186. package/ButtonGroup/ButtonGroup.js +0 -10
  187. package/ButtonGroup/ButtonGroup.js.map +0 -1
  188. package/ButtonGroup/ButtonGroup.types.d.ts +0 -7
  189. package/ButtonGroup/index.d.ts +0 -3
  190. package/ButtonGroup/index.js +0 -7
  191. package/ButtonGroup/index.js.map +0 -1
  192. package/ButtonGroup/package.json +0 -1
  193. package/Card/Card.js +0 -41
  194. package/Card/Card.js.map +0 -1
  195. package/Card/index.d.ts +0 -3
  196. package/Card/index.js +0 -7
  197. package/Card/index.js.map +0 -1
  198. package/Card/package.json +0 -1
  199. package/CloseButton/CloseButton.js +0 -11
  200. package/CloseButton/CloseButton.js.map +0 -1
  201. package/CloseButton/index.d.ts +0 -3
  202. package/CloseButton/index.js +0 -7
  203. package/CloseButton/index.js.map +0 -1
  204. package/CloseButton/package.json +0 -1
  205. package/Dropdown/Dropdown.js +0 -292
  206. package/Dropdown/Dropdown.js.map +0 -1
  207. package/Dropdown/index.d.ts +0 -4
  208. package/Dropdown/index.js +0 -8
  209. package/Dropdown/index.js.map +0 -1
  210. package/Dropdown/package.json +0 -1
  211. package/FloatingLabel/FloatingLabel.js +0 -17
  212. package/FloatingLabel/FloatingLabel.js.map +0 -1
  213. package/FloatingLabel/index.d.ts +0 -3
  214. package/FloatingLabel/index.js +0 -7
  215. package/FloatingLabel/index.js.map +0 -1
  216. package/FloatingLabel/package.json +0 -1
  217. package/Form/Form.d.ts +0 -38
  218. package/Form/Form.js +0 -304
  219. package/Form/Form.js.map +0 -1
  220. package/Form/Form.types.d.ts +0 -105
  221. package/Form/index.d.ts +0 -4
  222. package/Form/index.js +0 -8
  223. package/Form/index.js.map +0 -1
  224. package/Form/package.json +0 -1
  225. package/InputGroup/InputGroup.d.ts +0 -7
  226. package/InputGroup/InputGroup.js +0 -31
  227. package/InputGroup/InputGroup.js.map +0 -1
  228. package/InputGroup/InputGroup.types.d.ts +0 -16
  229. package/InputGroup/index.d.ts +0 -4
  230. package/InputGroup/index.js +0 -7
  231. package/InputGroup/index.js.map +0 -1
  232. package/InputGroup/package.json +0 -1
  233. package/List/List.d.ts +0 -14
  234. package/List/List.js +0 -76
  235. package/List/List.js.map +0 -1
  236. package/List/List.types.d.ts +0 -28
  237. package/List/index.d.ts +0 -3
  238. package/List/index.js +0 -7
  239. package/List/index.js.map +0 -1
  240. package/List/package.json +0 -1
  241. package/Modal/Modal.js +0 -160
  242. package/Modal/Modal.js.map +0 -1
  243. package/Modal/index.d.ts +0 -3
  244. package/Modal/index.js +0 -7
  245. package/Modal/index.js.map +0 -1
  246. package/Modal/package.json +0 -1
  247. package/Nav/Nav.js +0 -28
  248. package/Nav/Nav.js.map +0 -1
  249. package/Nav/index.d.ts +0 -4
  250. package/Nav/index.js +0 -7
  251. package/Nav/index.js.map +0 -1
  252. package/Nav/package.json +0 -1
  253. package/NavBar/Navbar.js +0 -36
  254. package/NavBar/Navbar.js.map +0 -1
  255. package/NavBar/index.d.ts +0 -4
  256. package/NavBar/index.js +0 -8
  257. package/NavBar/index.js.map +0 -1
  258. package/NavBar/package.json +0 -1
  259. package/NavDropdown/NavDropdown.js +0 -77
  260. package/NavDropdown/NavDropdown.js.map +0 -1
  261. package/NavDropdown/index.d.ts +0 -3
  262. package/NavDropdown/index.js +0 -7
  263. package/NavDropdown/index.js.map +0 -1
  264. package/NavDropdown/package.json +0 -1
  265. package/Overlay/Overlay.d.ts +0 -4
  266. package/Overlay/Overlay.js +0 -228
  267. package/Overlay/Overlay.js.map +0 -1
  268. package/Overlay/Overlay.types.d.ts +0 -18
  269. package/Overlay/index.js +0 -7
  270. package/Overlay/index.js.map +0 -1
  271. package/Overlay/package.json +0 -1
  272. package/Popout/Popout.js +0 -110
  273. package/Popout/Popout.js.map +0 -1
  274. package/Popout/index.d.ts +0 -3
  275. package/Popout/index.js +0 -7
  276. package/Popout/index.js.map +0 -1
  277. package/Popout/package.json +0 -1
  278. package/Spinner/Spinner.js +0 -12
  279. package/Spinner/Spinner.js.map +0 -1
  280. package/Spinner/index.d.ts +0 -3
  281. package/Spinner/index.js +0 -7
  282. package/Spinner/index.js.map +0 -1
  283. package/Spinner/package.json +0 -1
  284. package/Table/Table.js +0 -11
  285. package/Table/Table.js.map +0 -1
  286. package/Table/index.d.ts +0 -3
  287. package/Table/index.js +0 -7
  288. package/Table/index.js.map +0 -1
  289. package/Table/package.json +0 -1
  290. package/Tabs/Tabs.js +0 -98
  291. package/Tabs/Tabs.js.map +0 -1
  292. package/Tabs/index.d.ts +0 -3
  293. package/Tabs/index.js +0 -7
  294. package/Tabs/index.js.map +0 -1
  295. package/Tabs/package.json +0 -1
  296. package/ToggleButton/ToggleButton.d.ts +0 -4
  297. package/ToggleButton/ToggleButton.js +0 -17
  298. package/ToggleButton/ToggleButton.js.map +0 -1
  299. package/ToggleButton/ToggleButton.types.d.ts +0 -7
  300. package/ToggleButton/index.d.ts +0 -3
  301. package/ToggleButton/index.js +0 -7
  302. package/ToggleButton/index.js.map +0 -1
  303. package/ToggleButton/package.json +0 -1
  304. package/hooks/index.js +0 -6
  305. package/hooks/index.js.map +0 -1
  306. package/hooks/package.json +0 -1
  307. package/hooks/useClassname.d.ts +0 -2
  308. package/hooks/useClassname.js +0 -7
  309. package/hooks/useClassname.js.map +0 -1
  310. package/hooks/useDraggable.d.ts +0 -23
  311. package/hooks/useDraggable.js +0 -147
  312. package/hooks/useDraggable.js.map +0 -1
  313. package/hooks/useKeepElementFocused.d.ts +0 -2
  314. package/hooks/useKeepElementFocused.js +0 -37
  315. package/hooks/useKeepElementFocused.js.map +0 -1
  316. package/hooks/useScreenSize.d.ts +0 -5
  317. package/hooks/useScreenSize.js +0 -21
  318. package/hooks/useScreenSize.js.map +0 -1
  319. package/index.d.ts +0 -18
  320. package/index.js +0 -19
  321. package/index.js.map +0 -1
  322. package/styles/stargazerui.css.map +0 -1
  323. package/utils/ContrastingColor.d.ts +0 -1
  324. package/utils/MergeRefs.d.ts +0 -2
  325. package/utils/MergeRefs.js +0 -16
  326. package/utils/MergeRefs.js.map +0 -1
  327. /package/{Button → types/components/Button}/Button.d.ts +0 -0
  328. /package/{Card → types/components/Card}/Card.d.ts +0 -0
  329. /package/{CloseButton → types/components/CloseButton}/CloseButton.d.ts +0 -0
  330. /package/{Dropdown → types/components/Dropdown}/Dropdown.d.ts +0 -0
  331. /package/{FloatingLabel → types/components/FloatingLabel}/FloatingLabel.d.ts +0 -0
  332. /package/{Nav → types/components/Nav}/Nav.d.ts +0 -0
  333. /package/{NavDropdown → types/components/NavDropdown}/NavDropdown.types.d.ts +0 -0
  334. /package/{Popout → types/components/Popout}/Popout.d.ts +0 -0
  335. /package/{Spinner → types/components/Spinner}/Spinner.d.ts +0 -0
  336. /package/{Spinner → types/components/Spinner}/Spinner.types.d.ts +0 -0
  337. /package/{Table → types/components/Table}/Table.d.ts +0 -0
  338. /package/{Tabs → types/components/Tabs}/Tabs.d.ts +0 -0
@@ -1,292 +0,0 @@
1
- 'use client';
2
- import React, { createContext, forwardRef, useState, useCallback, useMemo, useEffect, useLayoutEffect, useContext } from 'react';
3
-
4
- //automatic menu placement function
5
- const getDropdownMenuPlacement = (controlId, drop = "down", align = "start") => {
6
- const dropPossible = ["down", "up", "right", "left"];
7
- const alignPossible = ["start", "end", "center"];
8
- let placement = (dropPossible.find(item => item === drop) ? drop : "down") + "-" + (alignPossible.find(item => item === align) ? align : "start");
9
- const topOffset = drop === "down" || drop === "up" ? 5 : 0;
10
- const leftOffset = drop === "right" || drop === "left" ? 5 : 0;
11
- const button = document.getElementById(controlId);
12
- const buttonLeftBase = button.getBoundingClientRect().left;
13
- const buttonTopBase = button.getBoundingClientRect().top + button.clientHeight;
14
- const menu = document.getElementById(controlId + "-menu");
15
- let position = {
16
- top: drop === "up" ? buttonTopBase - (menu.clientHeight + button.clientHeight + topOffset) : buttonTopBase + topOffset,
17
- left: drop === "right" ? buttonLeftBase + button.clientWidth + leftOffset : (drop === "left" ? buttonLeftBase - menu.clientWidth - leftOffset : buttonLeftBase)
18
- };
19
- console.log(placement);
20
- switch (placement) {
21
- case "down-start":
22
- case "up-start":
23
- break;
24
- case "down-center":
25
- case "up-center":
26
- position.left += -1 * (menu.clientWidth - button.clientWidth) / 2;
27
- break;
28
- case "down-end":
29
- case "up-end":
30
- position.left += -1 * (menu.clientWidth - button.clientWidth);
31
- break;
32
- case "right-start":
33
- case "left-start":
34
- position.top += -1 * button.clientHeight;
35
- break;
36
- case "right-center":
37
- case "left-center":
38
- position.top += -1 * button.clientHeight / 2 - menu.clientHeight / 2;
39
- break;
40
- case "right-end":
41
- case "left-end":
42
- position.top += -1 * menu.clientHeight;
43
- }
44
- return position;
45
- };
46
- // is click event on the menu
47
- const isEventOnMenu = (event, controlId = "") => {
48
- const element = event.target;
49
- const eventIsOnMenu = document.getElementById(controlId + "-menu").contains(element);
50
- return eventIsOnMenu;
51
- };
52
- const DropdownContext = createContext(null);
53
- const DropdownContextProvider = ({ children, value }) => {
54
- return (React.createElement(DropdownContext.Provider, { value: value }, children));
55
- };
56
- const useDropdownContext = () => {
57
- const context = useContext(DropdownContext);
58
- if (!context) {
59
- throw new Error("useDropdownContext has to be used within DropdownContextProvider!");
60
- }
61
- return context;
62
- };
63
- const Dropdown = forwardRef(({ children, className, onSelect, onToggle, controlId, navDropdown = false, drop = "down", align = "start", autoClose = true, show = "default", ...restProps }, ref) => {
64
- const [showInternal, setShowInternal] = useState(show === "default" ? false : show);
65
- // this is an object like {index: string} because we need it to rerender even if the case is the same
66
- // aka we use a "next/previous" case to navigate through the dropdown menu so need to rerender consecutive "next" cases
67
- const [activeDescendant, setActiveDescendant] = useState({ case: "" });
68
- const internalOnToggle = useCallback((event) => {
69
- event.stopPropagation();
70
- setShowInternal(prev => !prev);
71
- }, []);
72
- const contextValue = useMemo(() => ({
73
- align,
74
- drop,
75
- showInternal: show != "default" && onToggle ? show : showInternal,
76
- handleToggle: show != "default" && onToggle ? onToggle : internalOnToggle,
77
- controlId: controlId,
78
- activeDescendant,
79
- setActiveDescendant,
80
- navDropdown: navDropdown
81
- }), [align, drop, show, showInternal, onToggle, controlId, activeDescendant, setActiveDescendant, navDropdown]);
82
- let computedClassName = `sg-dropdown${className ? " " + className : ""}`;
83
- computedClassName += navDropdown ? " sg-nav-item" : "";
84
- return (React.createElement("div", { id: controlId + "-wrapper", ref: ref, className: computedClassName, ...restProps },
85
- React.createElement(DropdownContextProvider, { value: contextValue }, children)));
86
- });
87
- Dropdown.displayName = "Dropdown";
88
- const Toggle = forwardRef(({ children, className, as = "button", variant = "primary", ...restProps }, ref) => {
89
- const { controlId, handleToggle, setActiveDescendant, showInternal, navDropdown, drop } = useDropdownContext();
90
- const Component = as;
91
- const handleKeyPress = (event) => {
92
- let flag = false;
93
- console.log(event.key);
94
- switch (event.key) {
95
- case "ArrowDown":
96
- flag = true;
97
- if (showInternal) {
98
- setActiveDescendant(prev => ({ ...prev, case: "next" }));
99
- }
100
- else {
101
- handleToggle(event);
102
- setActiveDescendant(prev => ({ ...prev, case: "first" }));
103
- }
104
- break;
105
- case "ArrowUp":
106
- flag = true;
107
- if (showInternal) {
108
- setActiveDescendant(prev => ({ ...prev, case: "previous" }));
109
- }
110
- else {
111
- handleToggle(event);
112
- setActiveDescendant(prev => ({ ...prev, case: "last" }));
113
- }
114
- break;
115
- case "Home":
116
- flag = true;
117
- if (showInternal) {
118
- setActiveDescendant(prev => ({ ...prev, case: "first" }));
119
- }
120
- break;
121
- case "End":
122
- flag = true;
123
- if (showInternal) {
124
- setActiveDescendant(prev => ({ ...prev, case: "last" }));
125
- }
126
- break;
127
- case "Tab":
128
- if (showInternal) {
129
- handleToggle(event);
130
- }
131
- break;
132
- case "Escape":
133
- flag = true;
134
- if (showInternal) {
135
- handleToggle(event);
136
- }
137
- break;
138
- case "Enter":
139
- case " ":
140
- if (showInternal) {
141
- flag = true;
142
- const activeElement = document.querySelector(".sg-dropdown-item-visual-focus");
143
- activeElement.click();
144
- handleToggle(event);
145
- break;
146
- }
147
- else {
148
- setActiveDescendant(prev => ({ ...prev, case: "first" }));
149
- break;
150
- }
151
- }
152
- if (flag) {
153
- event.stopPropagation();
154
- event.preventDefault();
155
- }
156
- };
157
- const handleClick = (event) => {
158
- if (!showInternal)
159
- return;
160
- if (event.target.id === controlId)
161
- return;
162
- if (!isEventOnMenu(event, controlId)) {
163
- handleToggle(event);
164
- }
165
- else if (isEventOnMenu(event, controlId)) {
166
- handleToggle(event);
167
- const toggleElement = document.getElementById(controlId);
168
- toggleElement?.focus();
169
- }
170
- };
171
- useEffect(() => {
172
- const toggleElement = document.getElementById(controlId);
173
- toggleElement.addEventListener("keydown", handleKeyPress, true);
174
- document.addEventListener("mouseup", handleClick, true);
175
- return function cleanup() {
176
- toggleElement.removeEventListener("keydown", handleKeyPress, true);
177
- document.removeEventListener("mouseup", handleClick, true);
178
- };
179
- }, [handleKeyPress, controlId]);
180
- const toggleButtonClick = (event) => {
181
- handleToggle(event);
182
- if (!showInternal) {
183
- setActiveDescendant(prev => ({ ...prev, case: "first" }));
184
- }
185
- };
186
- let classNamesComputed = `sg-button sg-button${variant ? "-" + variant : "-primary"} sg-dropdown-toggle${className ? " " + className : ""}`;
187
- if (Component === "a" || navDropdown) {
188
- classNamesComputed = `sg-nav-dropdown-toggle sg-dropdown-toggle${className ? " " + className : ""}`;
189
- }
190
- return (React.createElement(Component, { tabIndex: "0", type: "button", "aria-haspopup": "true", "aria-controls": controlId + "-menu", "aria-expanded": showInternal, id: controlId, ref: ref, className: classNamesComputed, "data-drop": drop, onClick: (event) => toggleButtonClick(event), ...restProps }, children));
191
- });
192
- Toggle.displayName = "DropdownToggle";
193
- const Menu = forwardRef(({ children, className, style = {}, ...restProps }, ref) => {
194
- const { controlId, showInternal, activeDescendant, navDropdown, align, drop } = useDropdownContext();
195
- const [computedStyle, setComputedStyle] = useState({});
196
- useLayoutEffect(() => {
197
- if (showInternal) {
198
- const basePosition = getDropdownMenuPlacement(controlId, drop, align);
199
- document.getElementById(controlId + "-menu");
200
- setComputedStyle(basePosition);
201
- }
202
- }, [showInternal]);
203
- useEffect(() => {
204
- if (showInternal) {
205
- const menu = document.getElementById(controlId + "-menu");
206
- const menuChildren = document.getElementById(controlId + "-menu").children;
207
- const menuChildrenLast = menuChildren.length - 1;
208
- const elementWithVisualFocus = document.querySelector(".sg-dropdown-item-visual-focus");
209
- let currentIndex = 0, currentChild = menuChildren[0].children[0];
210
- if (elementWithVisualFocus != null) {
211
- elementWithVisualFocus.classList.remove("sg-dropdown-item-visual-focus");
212
- for (let i = 0; i < menuChildren.length; i++) {
213
- if (menuChildren[i] === elementWithVisualFocus.parentElement) {
214
- currentIndex = i;
215
- break;
216
- }
217
- }
218
- }
219
- switch (activeDescendant.case) {
220
- case "first":
221
- currentChild = menuChildren[0].children[0];
222
- currentIndex = 0;
223
- break;
224
- case "last":
225
- currentChild = menuChildren[menuChildrenLast].children[0];
226
- currentIndex = menuChildrenLast;
227
- break;
228
- case "next":
229
- currentIndex = currentIndex === menuChildrenLast ? 0 : currentIndex + 1;
230
- currentChild = menuChildren[currentIndex].children[0];
231
- break;
232
- case "previous":
233
- currentIndex = currentIndex === 0 ? menuChildrenLast : currentIndex - 1;
234
- currentChild = menuChildren[currentIndex].children[0];
235
- break;
236
- }
237
- menu.setAttribute("aria-activedescendant", currentChild.id);
238
- menuChildren[currentIndex].children[0].classList.add("sg-dropdown-item-visual-focus");
239
- }
240
- else {
241
- const menu = document.getElementById(controlId + "-menu");
242
- menu.setAttribute("aria-activedescendant", "");
243
- }
244
- }, [controlId, showInternal, activeDescendant]);
245
- const handleMouseOver = (event) => {
246
- const target = event.target;
247
- let active = target.classList.contains("sg-dropdown-item-visual-focus");
248
- const menu = document.getElementById(controlId + "-menu");
249
- if (active) {
250
- return;
251
- }
252
- else {
253
- document.querySelector(".sg-dropdown-item-visual-focus")?.classList.remove("sg-dropdown-item-visual-focus");
254
- menu.setAttribute("aria-activedescendant", "");
255
- target.classList.add("sg-dropdown-item-visual-focus");
256
- menu.setAttribute("aria-activedescendant", target.id);
257
- }
258
- };
259
- useEffect(() => {
260
- const menu = document.getElementById(controlId + "-menu");
261
- for (let i = 0; i < menu.children.length; i++) {
262
- menu.children[i].addEventListener("mouseover", handleMouseOver, true);
263
- }
264
- return function cleanup() {
265
- for (let i = 0; i < menu.children.length; i++) {
266
- menu.children[i].addEventListener("mouseover", handleMouseOver, true);
267
- }
268
- };
269
- }, []);
270
- return (React.createElement("ul", { id: controlId + "-menu", role: "menu", tabIndex: -1, "aria-labelledby": controlId, "data-navdropdown": navDropdown ? "true" : "false", ref: ref, className: `sg-dropdown-list${className ? " " + className : ""}${showInternal ? " show" : ""}`, style: { ...computedStyle, ...style }, ...restProps }, children));
271
- });
272
- Menu.displayName = "DropdownMenu";
273
- const Item = forwardRef(({ children, as = "button", className, ...restProps }, ref) => {
274
- const Component = as;
275
- return (React.createElement("li", { role: "none" },
276
- React.createElement(Component, { ref: ref, role: "menuitem", tabIndex: "-1", className: `sg-dropdown-item${className ? " " + className : ""}`, ...restProps }, children)));
277
- });
278
- Item.displayName = "DropdownItem";
279
- const Divider = forwardRef(({ className = "", ...restProps }, ref) => {
280
- return (React.createElement("hr", { ref: ref, className: `.sg-dropdown-divider${className}`, ...restProps }));
281
- });
282
- Divider.displayName = "DropdownDivider";
283
- var Dropdown$1 = Object.assign(Dropdown, {
284
- Toggle: Toggle,
285
- Menu: Menu,
286
- Item: Item,
287
- //Text: Text,
288
- Divider: Divider
289
- });
290
-
291
- export { Divider, DropdownContext, DropdownContextProvider, Item, Menu, Toggle, Dropdown$1 as default, useDropdownContext };
292
- //# sourceMappingURL=Dropdown.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Dropdown.js","sources":["../../src/Dropdown/Dropdown.tsx"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import Dropdown from "./Dropdown";
2
- export default Dropdown;
3
- export { DropdownContext, DropdownContextProvider, useDropdownContext } from "./Dropdown";
4
- export type { DropdownContextType, DropdownDividerType, DropdownItemType, DropdownMenuType, DropdownToggleType, DropdownType } from "./Dropdown.types";
package/Dropdown/index.js DELETED
@@ -1,8 +0,0 @@
1
- 'use client';
2
- import Dropdown from './Dropdown.js';
3
- export { DropdownContext, DropdownContextProvider, useDropdownContext } from './Dropdown.js';
4
-
5
-
6
-
7
- export { Dropdown as default };
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -1 +0,0 @@
1
- {"name":"stargazer-ui/Dropdown","private":false,"module":"./index.js","types":"./index.d.ts","peerDependencies":{"lodash":"^4.17.21","react":">=17.0.0","react-dom":">=17.0.0"}}
@@ -1,17 +0,0 @@
1
- 'use client';
2
- import React, { forwardRef, useMemo } from 'react';
3
- import { FormContextProvider } from '../Form/Form.js';
4
-
5
- const FloatingLabel = forwardRef(({ children, label, controlId, className, htmlFor, ...restProps }, ref) => {
6
- const context = useMemo(() => {
7
- return { controlId: controlId };
8
- }, [controlId]);
9
- return (React.createElement(FormContextProvider, { value: context },
10
- React.createElement("div", { className: `sg-form-floating` },
11
- children,
12
- React.createElement("label", { ref: ref, htmlFor: controlId, className: "sg-form-floating-label", ...restProps }, label))));
13
- });
14
- FloatingLabel.displayName = "FloatingLabel";
15
-
16
- export { FloatingLabel as default };
17
- //# sourceMappingURL=FloatingLabel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FloatingLabel.js","sources":["../../src/FloatingLabel/FloatingLabel.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;AAMM,MAAA,aAAa,GAAG,UAAU,CAAuC,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAC,GAAG,SAAS,EAAC,EAAE,GAAG,KAAI;AAC1I,IAAA,MAAM,OAAO,GAAG,OAAO,CAAkB,MAAK;AAC1C,QAAA,OAAO,EAAC,SAAS,EAAE,SAAS,EAAC,CAAA;AACjC,KAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;AACf,IAAA,QACI,KAAC,CAAA,aAAA,CAAA,mBAAmB,EAAC,EAAA,KAAK,EAAE,OAAO,EAAA;QAC/B,KAAK,CAAA,aAAA,CAAA,KAAA,EAAA,EAAA,SAAS,EAAE,CAAkB,gBAAA,CAAA,EAAA;YAC7B,QAAQ;AACT,YAAA,KAAA,CAAA,aAAA,CAAA,OAAA,EAAA,EAAO,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAC,wBAAwB,EAAA,GAAK,SAAS,EAAG,EAAA,KAAK,CAAS,CACpG,CACY,EACzB;AACL,CAAC,EAAC;AACF,aAAa,CAAC,WAAW,GAAG,eAAe;;;;"}
@@ -1,3 +0,0 @@
1
- import FloatingLabel from "./FloatingLabel";
2
- export default FloatingLabel;
3
- export type { FloatingLabelType } from "./FloatingLabel.types";
@@ -1,7 +0,0 @@
1
- 'use client';
2
- import FloatingLabel from './FloatingLabel.js';
3
-
4
-
5
-
6
- export { FloatingLabel as default };
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -1 +0,0 @@
1
- {"name":"stargazer-ui/FloatingLabel","private":false,"module":"./index.js","types":"./index.d.ts","peerDependencies":{"lodash":"^4.17.21","react":">=17.0.0","react-dom":">=17.0.0"}}
package/Form/Form.d.ts DELETED
@@ -1,38 +0,0 @@
1
- import React from "react";
2
- import { FormCheckType, FormContextType, FormControlType, FormGroupType, FormLabelType, FormSliderType, FormTextType, FormType, FormSelectType, FormSelectControlType, FormSelectInputType, FormSelectListType, FormSelectListItemType, SelectContextType, SliderContextType } from "./Form.types";
3
- export declare const FormContext: React.Context<FormContextType | null>;
4
- export declare const FormContextProvider: ({ children, value }: {
5
- children: React.ReactNode;
6
- value: FormContextType;
7
- }) => React.JSX.Element;
8
- export declare const useFormContext: () => FormContextType | {
9
- controlId: null;
10
- };
11
- export declare const SliderContext: React.Context<SliderContextType | null>;
12
- export declare const SliderContextProvider: ({ children, value }: {
13
- children: React.ReactNode;
14
- value: SliderContextType;
15
- }) => React.JSX.Element;
16
- export declare const useSliderContext: () => SliderContextType;
17
- export declare const SelectContext: React.Context<SelectContextType | null>;
18
- export declare const SelectContextProvider: ({ children, value }: {
19
- children: React.ReactNode;
20
- value: SelectContextType;
21
- }) => React.JSX.Element;
22
- export declare const useSelectContext: () => SelectContextType;
23
- declare const _default: React.ForwardRefExoticComponent<Omit<FormType, "ref"> & React.RefAttributes<HTMLFormElement>> & {
24
- Control: React.ForwardRefExoticComponent<Omit<FormControlType, "ref"> & React.RefAttributes<HTMLInputElement>>;
25
- Select: React.ForwardRefExoticComponent<Omit<FormSelectType, "ref"> & React.RefAttributes<HTMLDivElement>> & {
26
- Control: React.ForwardRefExoticComponent<Omit<FormSelectControlType, "ref"> & React.RefAttributes<HTMLDivElement>>;
27
- Input: React.ForwardRefExoticComponent<Omit<FormSelectInputType, "ref"> & React.RefAttributes<HTMLInputElement>>;
28
- Options: React.ForwardRefExoticComponent<Omit<FormSelectListType, "ref"> & React.RefAttributes<HTMLUListElement>>;
29
- Option: React.ForwardRefExoticComponent<Omit<FormSelectListItemType, "ref"> & React.RefAttributes<HTMLLIElement>>;
30
- };
31
- SelectTag: React.ForwardRefExoticComponent<Omit<FormSelectType, "ref"> & React.RefAttributes<HTMLSelectElement>>;
32
- Group: React.ForwardRefExoticComponent<Omit<FormGroupType, "ref"> & React.RefAttributes<HTMLDivElement>>;
33
- Label: React.ForwardRefExoticComponent<Omit<FormLabelType, "ref"> & React.RefAttributes<HTMLLabelElement>>;
34
- Check: React.ForwardRefExoticComponent<Omit<FormCheckType, "ref"> & React.RefAttributes<HTMLInputElement>>;
35
- Text: React.ForwardRefExoticComponent<Omit<FormTextType, "ref"> & React.RefAttributes<HTMLElement>>;
36
- Slider: React.ForwardRefExoticComponent<Omit<FormSliderType, "ref"> & React.RefAttributes<HTMLSpanElement>>;
37
- };
38
- export default _default;