stargazer-ui 1.5.13 → 1.5.15

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 (372) hide show
  1. package/Bar/Bar.type.d.ts +6 -0
  2. package/Bar/index.js +2 -0
  3. package/Bar/index.js.map +1 -0
  4. package/Bar/package.json +1 -0
  5. package/Button/Button.js +15 -0
  6. package/Button/Button.js.map +1 -0
  7. package/{types/components/Button → Button}/Button.types.d.ts +1 -2
  8. package/Button/index.d.ts +3 -0
  9. package/Button/index.js +7 -0
  10. package/Button/index.js.map +1 -0
  11. package/Button/package.json +1 -0
  12. package/ButtonGroup/ButtonGroup.d.ts +4 -0
  13. package/ButtonGroup/ButtonGroup.js +11 -0
  14. package/ButtonGroup/ButtonGroup.js.map +1 -0
  15. package/ButtonGroup/ButtonGroup.types.d.ts +7 -0
  16. package/ButtonGroup/index.d.ts +3 -0
  17. package/ButtonGroup/index.js +7 -0
  18. package/ButtonGroup/index.js.map +1 -0
  19. package/ButtonGroup/package.json +1 -0
  20. package/{types/components/Card → Card}/Card.d.ts +12 -12
  21. package/Card/Card.js +42 -0
  22. package/Card/Card.js.map +1 -0
  23. package/{types/components/Card → Card}/Card.types.d.ts +3 -1
  24. package/Card/index.d.ts +3 -0
  25. package/Card/index.js +7 -0
  26. package/Card/index.js.map +1 -0
  27. package/Card/package.json +1 -0
  28. package/CloseButton/CloseButton.js +11 -0
  29. package/CloseButton/CloseButton.js.map +1 -0
  30. package/{types/components/CloseButton → CloseButton}/CloseButton.types.d.ts +1 -1
  31. package/CloseButton/index.d.ts +3 -0
  32. package/CloseButton/index.js +7 -0
  33. package/CloseButton/index.js.map +1 -0
  34. package/CloseButton/package.json +1 -0
  35. package/Dropdown/Dropdown.d.ts +135 -0
  36. package/Dropdown/Dropdown.js +379 -0
  37. package/Dropdown/Dropdown.js.map +1 -0
  38. package/{types/components/Dropdown → Dropdown}/Dropdown.types.d.ts +12 -11
  39. package/Dropdown/DropdownOld.d.ts +135 -0
  40. package/Dropdown/index.d.ts +4 -0
  41. package/Dropdown/index.js +8 -0
  42. package/Dropdown/index.js.map +1 -0
  43. package/Dropdown/package.json +1 -0
  44. package/FileUploadButton/FileUploadButton.d.ts +4 -0
  45. package/FileUploadButton/FileUploadButton.js +20 -0
  46. package/FileUploadButton/FileUploadButton.js.map +1 -0
  47. package/FileUploadButton/FileUploadButton.types.d.ts +7 -0
  48. package/FileUploadButton/index.d.ts +3 -0
  49. package/FileUploadButton/index.js +7 -0
  50. package/FileUploadButton/index.js.map +1 -0
  51. package/FileUploadButton/package.json +1 -0
  52. package/FloatingLabel/FloatingLabel.js +15 -0
  53. package/FloatingLabel/FloatingLabel.js.map +1 -0
  54. package/{types/components/FloatingLabel → FloatingLabel}/FloatingLabel.types.d.ts +1 -1
  55. package/FloatingLabel/index.d.ts +3 -0
  56. package/FloatingLabel/index.js +7 -0
  57. package/FloatingLabel/index.js.map +1 -0
  58. package/FloatingLabel/package.json +1 -0
  59. package/Form/Form.d.ts +38 -0
  60. package/Form/Form.js +227 -0
  61. package/Form/Form.js.map +1 -0
  62. package/Form/Form.types.d.ts +159 -0
  63. package/Form/FormSelect.d.ts +14 -0
  64. package/Form/FormSelect.js +436 -0
  65. package/Form/FormSelect.js.map +1 -0
  66. package/Form/index.d.ts +4 -0
  67. package/Form/index.js +8 -0
  68. package/Form/index.js.map +1 -0
  69. package/Form/package.json +1 -0
  70. package/InputGroup/InputGroup.d.ts +7 -0
  71. package/InputGroup/InputGroup.js +31 -0
  72. package/InputGroup/InputGroup.js.map +1 -0
  73. package/InputGroup/InputGroup.types.d.ts +17 -0
  74. package/InputGroup/index.d.ts +4 -0
  75. package/InputGroup/index.js +7 -0
  76. package/InputGroup/index.js.map +1 -0
  77. package/InputGroup/package.json +1 -0
  78. package/List/List.d.ts +14 -0
  79. package/List/List.js +77 -0
  80. package/List/List.js.map +1 -0
  81. package/List/List.types.d.ts +28 -0
  82. package/List/index.d.ts +3 -0
  83. package/List/index.js +7 -0
  84. package/List/index.js.map +1 -0
  85. package/List/package.json +1 -0
  86. package/{types/components/Modal → Modal}/Modal.d.ts +19 -19
  87. package/Modal/Modal.js +157 -0
  88. package/Modal/Modal.js.map +1 -0
  89. package/{types/components/Modal → Modal}/Modal.types.d.ts +3 -2
  90. package/Modal/index.d.ts +3 -0
  91. package/Modal/index.js +7 -0
  92. package/Modal/index.js.map +1 -0
  93. package/Modal/package.json +1 -0
  94. package/{types/components/Nav → Nav}/Nav.d.ts +12 -12
  95. package/Nav/Nav.js +29 -0
  96. package/Nav/Nav.js.map +1 -0
  97. package/{types/components/Nav → Nav}/Nav.types.d.ts +1 -1
  98. package/Nav/index.d.ts +4 -0
  99. package/Nav/index.js +7 -0
  100. package/Nav/index.js.map +1 -0
  101. package/Nav/package.json +1 -0
  102. package/{types/components/NavBar → NavBar}/Navbar.d.ts +7 -8
  103. package/NavBar/Navbar.js +36 -0
  104. package/NavBar/Navbar.js.map +1 -0
  105. package/{types/components/NavBar → NavBar}/Navbar.types.d.ts +2 -1
  106. package/NavBar/index.d.ts +4 -0
  107. package/NavBar/index.js +8 -0
  108. package/NavBar/index.js.map +1 -0
  109. package/NavBar/package.json +1 -0
  110. package/NavDropdown/NavDropdown.d.ts +99 -0
  111. package/NavDropdown/NavDropdown.js +75 -0
  112. package/NavDropdown/NavDropdown.js.map +1 -0
  113. package/NavDropdown/index.d.ts +3 -0
  114. package/NavDropdown/index.js +7 -0
  115. package/NavDropdown/index.js.map +1 -0
  116. package/NavDropdown/package.json +1 -0
  117. package/Overlay/Overlay.d.ts +4 -0
  118. package/Overlay/Overlay.js +242 -0
  119. package/Overlay/Overlay.js.map +1 -0
  120. package/Overlay/Overlay.types.d.ts +22 -0
  121. package/{src/Overlay/index.ts → Overlay/index.d.ts} +3 -3
  122. package/Overlay/index.js +7 -0
  123. package/Overlay/index.js.map +1 -0
  124. package/Overlay/package.json +1 -0
  125. package/{types/components/Popout → Popout}/Popout.d.ts +6 -6
  126. package/Popout/Popout.js +111 -0
  127. package/Popout/Popout.js.map +1 -0
  128. package/{types/components/Popout → Popout}/Popout.types.d.ts +1 -1
  129. package/Popout/index.d.ts +3 -0
  130. package/Popout/index.js +7 -0
  131. package/Popout/index.js.map +1 -0
  132. package/Popout/package.json +1 -0
  133. package/Spinner/Spinner.js +11 -0
  134. package/Spinner/Spinner.js.map +1 -0
  135. package/Spinner/index.d.ts +3 -0
  136. package/Spinner/index.js +7 -0
  137. package/Spinner/index.js.map +1 -0
  138. package/Spinner/package.json +1 -0
  139. package/Table/Table.js +12 -0
  140. package/Table/Table.js.map +1 -0
  141. package/{types/components/Table → Table}/Table.types.d.ts +1 -1
  142. package/Table/index.d.ts +3 -0
  143. package/Table/index.js +7 -0
  144. package/Table/index.js.map +1 -0
  145. package/Table/package.json +1 -0
  146. package/Tabs/Tabs.js +162 -0
  147. package/Tabs/Tabs.js.map +1 -0
  148. package/{types/components/Tabs → Tabs}/Tabs.types.d.ts +12 -2
  149. package/Tabs/index.d.ts +3 -0
  150. package/Tabs/index.js +7 -0
  151. package/Tabs/index.js.map +1 -0
  152. package/Tabs/package.json +1 -0
  153. package/ToggleButton/ToggleButton.d.ts +4 -0
  154. package/ToggleButton/ToggleButton.js +18 -0
  155. package/ToggleButton/ToggleButton.js.map +1 -0
  156. package/ToggleButton/ToggleButton.types.d.ts +7 -0
  157. package/ToggleButton/index.d.ts +3 -0
  158. package/ToggleButton/index.js +7 -0
  159. package/ToggleButton/index.js.map +1 -0
  160. package/ToggleButton/package.json +1 -0
  161. package/{src/hooks/index.ts → hooks/index.d.ts} +6 -7
  162. package/hooks/index.js +7 -0
  163. package/hooks/index.js.map +1 -0
  164. package/hooks/package.json +1 -0
  165. package/hooks/useClassname.d.ts +2 -0
  166. package/hooks/useClassname.js +7 -0
  167. package/hooks/useClassname.js.map +1 -0
  168. package/hooks/useDraggable.d.ts +23 -0
  169. package/hooks/useDraggable.js +147 -0
  170. package/hooks/useDraggable.js.map +1 -0
  171. package/hooks/useKeepElementFocused.d.ts +2 -0
  172. package/hooks/useKeepElementFocused.js +37 -0
  173. package/hooks/useKeepElementFocused.js.map +1 -0
  174. package/hooks/useQueryParams.d.ts +2 -0
  175. package/hooks/useQueryParams.js +13 -0
  176. package/hooks/useQueryParams.js.map +1 -0
  177. package/hooks/useScreenSize.d.ts +5 -0
  178. package/hooks/useScreenSize.js +21 -0
  179. package/hooks/useScreenSize.js.map +1 -0
  180. package/index.d.ts +18 -0
  181. package/index.js +19 -0
  182. package/index.js.map +1 -0
  183. package/package.json +1 -79
  184. package/styles/stargazerui.css +6552 -0
  185. package/styles/stargazerui.css.map +1 -0
  186. package/{src/utils/BaseTypes.ts → utils/BaseTypes.d.ts} +25 -32
  187. package/utils/ContrastingColor.d.ts +1 -0
  188. package/utils/CreateSyntheticEvent.d.ts +2 -0
  189. package/utils/CreateSyntheticEvent.js +33 -0
  190. package/utils/CreateSyntheticEvent.js.map +1 -0
  191. package/utils/IsInputKey.d.ts +7 -0
  192. package/utils/IsInputKey.js +20 -0
  193. package/utils/IsInputKey.js.map +1 -0
  194. package/utils/MergeClassnames.d.ts +2 -0
  195. package/utils/MergeClassnames.js +7 -0
  196. package/utils/MergeClassnames.js.map +1 -0
  197. package/utils/MergeRefs.d.ts +1 -0
  198. package/utils/MergeRefs.js +16 -0
  199. package/utils/MergeRefs.js.map +1 -0
  200. package/.babelrc.json +0 -10
  201. package/.eslintrc.cjs +0 -18
  202. package/.gitattributes +0 -2
  203. package/LICENSE +0 -21
  204. package/dev/index.html +0 -12
  205. package/dev/index.jsx +0 -46
  206. package/dev/index.scss +0 -74
  207. package/dev/pages/ButtonPage.jsx +0 -44
  208. package/dev/pages/CardPage.jsx +0 -81
  209. package/dev/pages/DropdownPage.jsx +0 -32
  210. package/dev/pages/FormPage.jsx +0 -155
  211. package/dev/pages/ListPage.jsx +0 -52
  212. package/dev/pages/ModalPage.jsx +0 -38
  213. package/dev/pages/OverlayPage.jsx +0 -39
  214. package/dev/pages/components.jsx +0 -19
  215. package/dev/stargazerui.css +0 -3762
  216. package/dev/stargazerui.css.map +0 -1
  217. package/dev/test.jsx +0 -87
  218. package/rollup.config.js +0 -140
  219. package/scripts/writePackageJsons.js +0 -42
  220. package/src/Bar/Bar.tsx +0 -0
  221. package/src/Bar/Bar.type.ts +0 -9
  222. package/src/Bar/index.ts +0 -0
  223. package/src/Button/Button.tsx +0 -20
  224. package/src/Button/Button.types.ts +0 -8
  225. package/src/Button/index.ts +0 -3
  226. package/src/ButtonGroup/ButtonGroup.tsx +0 -14
  227. package/src/ButtonGroup/ButtonGroup.types.ts +0 -8
  228. package/src/ButtonGroup/index.ts +0 -3
  229. package/src/Card/Card.tsx +0 -70
  230. package/src/Card/Card.types.ts +0 -33
  231. package/src/Card/index.ts +0 -3
  232. package/src/CloseButton/CloseButton.tsx +0 -14
  233. package/src/CloseButton/CloseButton.types.ts +0 -6
  234. package/src/CloseButton/index.ts +0 -3
  235. package/src/Dropdown/Dropdown.tsx +0 -440
  236. package/src/Dropdown/Dropdown.types.ts +0 -60
  237. package/src/Dropdown/DropdownOld.tsx +0 -409
  238. package/src/Dropdown/index.ts +0 -4
  239. package/src/FileUploadButton/FileUploadButton.tsx +0 -27
  240. package/src/FileUploadButton/FileUploadButton.types.ts +0 -9
  241. package/src/FileUploadButton/index.ts +0 -3
  242. package/src/FloatingLabel/FloatingLabel.tsx +0 -22
  243. package/src/FloatingLabel/FloatingLabel.types.ts +0 -11
  244. package/src/FloatingLabel/index.ts +0 -3
  245. package/src/Form/Form.tsx +0 -398
  246. package/src/Form/Form.types.ts +0 -169
  247. package/src/Form/FormSelect.tsx +0 -527
  248. package/src/Form/index.ts +0 -4
  249. package/src/InputGroup/InputGroup.tsx +0 -46
  250. package/src/InputGroup/InputGroup.types.ts +0 -22
  251. package/src/InputGroup/index.ts +0 -4
  252. package/src/List/List.tsx +0 -112
  253. package/src/List/List.types.ts +0 -34
  254. package/src/List/index.ts +0 -4
  255. package/src/Modal/Modal.tsx +0 -229
  256. package/src/Modal/Modal.types.ts +0 -49
  257. package/src/Modal/index.ts +0 -4
  258. package/src/Nav/Nav.tsx +0 -43
  259. package/src/Nav/Nav.types.ts +0 -21
  260. package/src/Nav/index.ts +0 -4
  261. package/src/NavBar/Navbar.tsx +0 -57
  262. package/src/NavBar/Navbar.types.ts +0 -24
  263. package/src/NavBar/index.ts +0 -4
  264. package/src/NavDropdown/NavDropdown.tsx +0 -93
  265. package/src/NavDropdown/NavDropdown.types.ts +0 -6
  266. package/src/NavDropdown/index.ts +0 -3
  267. package/src/Overlay/Overlay.tsx +0 -309
  268. package/src/Overlay/Overlay.types.ts +0 -24
  269. package/src/Popout/Popout.tsx +0 -155
  270. package/src/Popout/Popout.types.ts +0 -42
  271. package/src/Popout/index.ts +0 -3
  272. package/src/Spinner/Spinner.tsx +0 -15
  273. package/src/Spinner/Spinner.types.ts +0 -7
  274. package/src/Spinner/index.ts +0 -3
  275. package/src/Table/Table.tsx +0 -16
  276. package/src/Table/Table.types.ts +0 -9
  277. package/src/Table/index.ts +0 -3
  278. package/src/Tabs/Tabs.tsx +0 -233
  279. package/src/Tabs/Tabs.types.ts +0 -52
  280. package/src/Tabs/index.ts +0 -3
  281. package/src/ToggleButton/ToggleButton.tsx +0 -21
  282. package/src/ToggleButton/ToggleButton.types.ts +0 -8
  283. package/src/ToggleButton/index.ts +0 -3
  284. package/src/assets/tooltip-pointer.svg +0 -3
  285. package/src/assets/warning.svg +0 -39
  286. package/src/hooks/useClassname.ts +0 -5
  287. package/src/hooks/useDraggable.ts +0 -186
  288. package/src/hooks/useKeepElementFocused.ts +0 -37
  289. package/src/hooks/useQueryParams.ts +0 -12
  290. package/src/hooks/useScreenSize.ts +0 -24
  291. package/src/index.ts +0 -21
  292. package/src/styles/_Card.scss +0 -166
  293. package/src/styles/_CloseButton.scss +0 -51
  294. package/src/styles/_CustomButton.scss +0 -134
  295. package/src/styles/_Dropdown.scss +0 -127
  296. package/src/styles/_FloatingLabel.scss +0 -56
  297. package/src/styles/_Forms.scss +0 -7
  298. package/src/styles/_Grid.scss +0 -178
  299. package/src/styles/_InputGroup.scss +0 -71
  300. package/src/styles/_List.scss +0 -62
  301. package/src/styles/_Modal.scss +0 -234
  302. package/src/styles/_ModalOld.scss +0 -242
  303. package/src/styles/_Nav.scss +0 -36
  304. package/src/styles/_NavBar.scss +0 -116
  305. package/src/styles/_NavDropdown.scss +0 -33
  306. package/src/styles/_OffCanvas.scss +0 -260
  307. package/src/styles/_OverLay.scss +0 -64
  308. package/src/styles/_Popout.scss +0 -75
  309. package/src/styles/_Spinner.scss +0 -19
  310. package/src/styles/_Table.scss +0 -34
  311. package/src/styles/_Tabs.scss +0 -129
  312. package/src/styles/_colors.scss +0 -510
  313. package/src/styles/_components.scss +0 -40
  314. package/src/styles/_functions.scss +0 -134
  315. package/src/styles/_mixins.scss +0 -26
  316. package/src/styles/_reset.scss +0 -237
  317. package/src/styles/_utilities.scss +0 -2480
  318. package/src/styles/_variables.scss +0 -164
  319. package/src/styles/forms/_FormCheck.scss +0 -270
  320. package/src/styles/forms/_FormControl.scss +0 -135
  321. package/src/styles/forms/_FormGroup.scss +0 -26
  322. package/src/styles/forms/_FormLabel.scss +0 -3
  323. package/src/styles/forms/_FormSelect.scss +0 -196
  324. package/src/styles/forms/_FormSlider.scss +0 -116
  325. package/src/styles/forms/_FormText.scss +0 -6
  326. package/src/utils/ContrastingColor.ts +0 -25
  327. package/src/utils/CreateSyntheticEvent.ts +0 -30
  328. package/src/utils/FileImportExport.js +0 -50
  329. package/src/utils/IsInputKey.ts +0 -18
  330. package/src/utils/MergeClassnames.ts +0 -5
  331. package/src/utils/MergeRefs.ts +0 -12
  332. package/src/vite-env.d.ts +0 -1
  333. package/tsconfig-build.json +0 -4
  334. package/tsconfig.json +0 -79
  335. package/tsconfig.node.json +0 -10
  336. package/types/BaseTypes.d.ts +0 -19
  337. package/types/components/Button/index.d.ts +0 -1
  338. package/types/components/Card/index.d.ts +0 -1
  339. package/types/components/CloseButton/index.d.ts +0 -1
  340. package/types/components/Dropdown/Dropdown.d.ts +0 -71
  341. package/types/components/Dropdown/index.d.ts +0 -1
  342. package/types/components/FloatingLabel/index.d.ts +0 -1
  343. package/types/components/Form/Form.d.ts +0 -17
  344. package/types/components/Form/Form.types.d.ts +0 -50
  345. package/types/components/Form/index.d.ts +0 -1
  346. package/types/components/InputGroup/InputGroup.d.ts +0 -6
  347. package/types/components/InputGroup/InputGroup.types.d.ts +0 -10
  348. package/types/components/InputGroup/index.d.ts +0 -1
  349. package/types/components/Modal/index.d.ts +0 -1
  350. package/types/components/Nav/index.d.ts +0 -1
  351. package/types/components/NavBar/index.d.ts +0 -1
  352. package/types/components/NavDropdown/NavDropdown.d.ts +0 -35
  353. package/types/components/NavDropdown/index.d.ts +0 -1
  354. package/types/components/Popout/index.d.ts +0 -1
  355. package/types/components/Spinner/index.d.ts +0 -1
  356. package/types/components/Table/index.d.ts +0 -1
  357. package/types/components/Tabs/index.d.ts +0 -1
  358. package/types/components/ToggleButton/ToggleButton.d.ts +0 -9
  359. package/types/components/ToggleButton/ToggleButton.types.d.ts +0 -0
  360. package/types/components/ToggleButton/index.d.ts +0 -1
  361. package/types/components/index.d.ts +0 -16
  362. package/types/index.d.ts +0 -1
  363. package/vite.config.js +0 -57
  364. package/vite.config.js.timestamp-1708777378490-e94428ceb2bf9.mjs +0 -42
  365. /package/{types/components/Button → Button}/Button.d.ts +0 -0
  366. /package/{types/components/CloseButton → CloseButton}/CloseButton.d.ts +0 -0
  367. /package/{types/components/FloatingLabel → FloatingLabel}/FloatingLabel.d.ts +0 -0
  368. /package/{types/components/NavDropdown → NavDropdown}/NavDropdown.types.d.ts +0 -0
  369. /package/{types/components/Spinner → Spinner}/Spinner.d.ts +0 -0
  370. /package/{types/components/Spinner → Spinner}/Spinner.types.d.ts +0 -0
  371. /package/{types/components/Table → Table}/Table.d.ts +0 -0
  372. /package/{types/components/Tabs → Tabs}/Tabs.d.ts +0 -0
package/List/List.js ADDED
@@ -0,0 +1,77 @@
1
+ 'use client';
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { createContext, forwardRef, useMemo, useRef, cloneElement, useContext } from 'react';
4
+ import useDraggable from '../hooks/useDraggable.js';
5
+ import useClassname from '../hooks/useClassname.js';
6
+ import mergeRefs from '../utils/MergeRefs.js';
7
+
8
+ const ListContext = createContext(null);
9
+ const ListContextProvider = ({ children, value }) => {
10
+ return (jsx(ListContext.Provider, { value: value, children: children }));
11
+ };
12
+ const useListContext = () => {
13
+ const context = useContext(ListContext);
14
+ return context;
15
+ };
16
+ /*
17
+ const handlePhantomInsert = (event: React.PointerEvent, item: HTMLElement | null) => {
18
+ event.stopPropagation()
19
+ document.querySelectorAll(".phantom").forEach(phantom => phantom.remove())
20
+ if(item) { insertPhantomElement(item)}
21
+ }
22
+ */
23
+ const List = forwardRef(({ children, className, depth, tree = false, dragdrop = false, ...restProps }, ref) => {
24
+ const context = useListContext();
25
+ const initialContext = useMemo(() => ({
26
+ tree: tree,
27
+ draggable: dragdrop
28
+ }), []);
29
+ return (jsx("ul", { ref: ref, id: "test-list", "data-context": context ? "true" : "false", className: useClassname("sg-list", className), style: { "--depth": depth }, ...restProps, children: !context ?
30
+ jsx(ListContextProvider, { value: initialContext, children: children })
31
+ :
32
+ children }));
33
+ });
34
+ List.displayName = "List";
35
+ const Sublist = forwardRef(({ children, className, depth, ...restProps }, ref) => {
36
+ const { draggable } = useListContext();
37
+ const itemRef = useRef(null);
38
+ const { coordinates, isMouseDown } = useDraggable(itemRef, { draggable });
39
+ return (jsx("li", { ref: mergeRefs([ref, itemRef]), "data-phantom": "none", className: useClassname("sg-sublist", className), style: { "--depth": depth, top: coordinates.top, left: coordinates.left, width: coordinates.width }, ...restProps, children: children }));
40
+ });
41
+ Sublist.displayName = "ListSubList";
42
+ const Item = forwardRef(({ children, className, ...restProps }, ref) => {
43
+ const { draggable } = useListContext();
44
+ const itemRef = useRef(null);
45
+ const { coordinates, isMouseDown } = useDraggable(itemRef, { draggable });
46
+ return (jsx("li", { ref: itemRef, "data-phantom": "none", className: useClassname("sg-list-item", className), style: { top: coordinates.top, left: coordinates.left, width: coordinates.width }, ...restProps, children: children }));
47
+ });
48
+ Item.displayName = "ListItem";
49
+ const Label = forwardRef(({ children, className, style, ...restProps }, ref) => {
50
+ const labelRef = useRef(null);
51
+ const computedClass = useClassname("sg-list-label", className);
52
+ //const coordinates = useDraggable(labelRef)
53
+ return ((typeof children === "string") ?
54
+ jsx("span", { ref: mergeRefs([ref, labelRef]), className: computedClass, style: { ...style }, ...restProps, children: children })
55
+ :
56
+ cloneElement(children, {
57
+ ref: mergeRefs([ref, labelRef]),
58
+ className: computedClass,
59
+ style: { ...children.props.style }
60
+ }));
61
+ });
62
+ Label.displayName = "ListLabel";
63
+ /*
64
+ List.Sublist = Sublist
65
+ List.Item = Item
66
+ List.Label = Label
67
+
68
+ export default List
69
+ */
70
+ var List$1 = Object.assign(List, {
71
+ Sublist: Sublist,
72
+ Item: Item,
73
+ Label: Label
74
+ });
75
+
76
+ export { ListContext, ListContextProvider, List$1 as default, useListContext };
77
+ //# sourceMappingURL=List.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"List.js","sources":["../../src/List/List.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { ReactNode } from "react";
2
+ import { BaseUListType, BaseLItemType, BaseSpanType } from "../utils/BaseTypes";
3
+ export type FormContextType = {
4
+ depth?: number;
5
+ tree?: boolean;
6
+ draggable?: boolean;
7
+ };
8
+ export type ListType = {
9
+ children: ReactNode;
10
+ className: string;
11
+ depth: number;
12
+ tree: boolean;
13
+ dragdrop: boolean;
14
+ } & BaseUListType;
15
+ export type ListSublistType = {
16
+ children: ReactNode;
17
+ className: string;
18
+ depth: number;
19
+ } & BaseLItemType;
20
+ export type ListItemType = {
21
+ children: ReactNode;
22
+ className: string;
23
+ } & BaseLItemType;
24
+ export type ListLabelType = {
25
+ children: ReactNode;
26
+ className: string;
27
+ label: string;
28
+ } & BaseSpanType;
@@ -0,0 +1,3 @@
1
+ import List from "./List";
2
+ export type { ListType, ListSublistType, ListItemType, ListLabelType } from "./List.types";
3
+ export default List;
package/List/index.js ADDED
@@ -0,0 +1,7 @@
1
+ 'use client';
2
+ import List from './List.js';
3
+
4
+
5
+
6
+ export { List as default };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -0,0 +1 @@
1
+ {"name":"stargazer-ui/List","private":false,"module":"./index.js","types":"./index.d.ts","peerDependencies":{"lodash":"^4.17.21","react":">=17.0.0","react-dom":">=17.0.0"}}
@@ -1,37 +1,37 @@
1
1
  import React from "react";
2
2
  import { ModalBodyType, ModalType } from "./Modal.types";
3
- declare const _default: (({ children, centered, size, show, backdrop, onHide, className, id, ...restProps }: ModalType) => React.ReactPortal) & {
3
+ declare const _default: React.ForwardRefExoticComponent<Omit<ModalType, "ref"> & React.RefAttributes<HTMLDialogElement>> & {
4
4
  Header: React.ForwardRefExoticComponent<(Omit<{
5
5
  children: React.ReactNode;
6
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
7
- className?: string | undefined;
8
- closeButton?: boolean | undefined;
9
- onClick?: ((event: React.MouseEvent<Element, MouseEvent>) => void) | undefined;
6
+ as?: React.ElementType;
7
+ className?: string;
8
+ closeButton?: boolean;
9
+ onClick?: (event: React.MouseEvent) => void;
10
10
  } & React.ClassAttributes<HTMLDivElement> & React.HTMLAttributes<HTMLDivElement>, "ref"> | Omit<{
11
11
  children: React.ReactNode;
12
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
13
- className?: string | undefined;
14
- closeButton?: boolean | undefined;
15
- onClick?: ((event: React.MouseEvent<Element, MouseEvent>) => void) | undefined;
12
+ as?: React.ElementType;
13
+ className?: string;
14
+ closeButton?: boolean;
15
+ onClick?: (event: React.MouseEvent) => void;
16
16
  } & React.ClassAttributes<HTMLHeadingElement> & React.HTMLAttributes<HTMLHeadingElement>, "ref"> | Omit<{
17
17
  children: React.ReactNode;
18
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
19
- className?: string | undefined;
20
- closeButton?: boolean | undefined;
21
- onClick?: ((event: React.MouseEvent<Element, MouseEvent>) => void) | undefined;
18
+ as?: React.ElementType;
19
+ className?: string;
20
+ closeButton?: boolean;
21
+ onClick?: (event: React.MouseEvent) => void;
22
22
  } & React.ClassAttributes<HTMLSpanElement> & React.HTMLAttributes<HTMLSpanElement>, "ref">) & React.RefAttributes<HTMLDivElement | HTMLHeadingElement | HTMLSpanElement>>;
23
23
  Title: React.ForwardRefExoticComponent<(Omit<{
24
24
  children: React.ReactNode;
25
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
26
- className?: string | undefined;
25
+ as?: React.ElementType;
26
+ className?: string;
27
27
  } & React.ClassAttributes<HTMLDivElement> & React.HTMLAttributes<HTMLDivElement>, "ref"> | Omit<{
28
28
  children: React.ReactNode;
29
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
30
- className?: string | undefined;
29
+ as?: React.ElementType;
30
+ className?: string;
31
31
  } & React.ClassAttributes<HTMLHeadingElement> & React.HTMLAttributes<HTMLHeadingElement>, "ref"> | Omit<{
32
32
  children: React.ReactNode;
33
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
34
- className?: string | undefined;
33
+ as?: React.ElementType;
34
+ className?: string;
35
35
  } & React.ClassAttributes<HTMLSpanElement> & React.HTMLAttributes<HTMLSpanElement>, "ref">) & React.RefAttributes<HTMLDivElement | HTMLHeadingElement | HTMLSpanElement>>;
36
36
  Body: React.ForwardRefExoticComponent<Omit<ModalBodyType, "ref"> & React.RefAttributes<HTMLDivElement>>;
37
37
  Footer: React.ForwardRefExoticComponent<Omit<ModalBodyType, "ref"> & React.RefAttributes<HTMLDivElement>>;
package/Modal/Modal.js ADDED
@@ -0,0 +1,157 @@
1
+ 'use client';
2
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
3
+ import { createContext, forwardRef, useState, useRef, useEffect, useContext } from 'react';
4
+ import { createPortal } from 'react-dom';
5
+ import CloseButton from '../CloseButton/CloseButton.js';
6
+ import Button from '../Button/Button.js';
7
+ import mergeRefs from '../utils/MergeRefs.js';
8
+
9
+ const ModalContext = createContext(null);
10
+ const ModalContextProvider = ({ children, value }) => {
11
+ return (jsx(ModalContext.Provider, { value: value, children: children }));
12
+ };
13
+ const useModalContext = () => {
14
+ const context = useContext(ModalContext);
15
+ if (!context) {
16
+ throw new Error("useModalContext has to be used within ModalContextProvider!");
17
+ }
18
+ return context;
19
+ };
20
+ const Modal = forwardRef(({ children, size = "md", show, backdrop = "static", fill = false, onHide, className, id, stretch, style, ...restProps }, ref) => {
21
+ //Two "show modal" states exist to allow for the modal to not render when not used (meaning you don't have to deal with states
22
+ //for forms or other data that has to be renedered even though the modal is "display: none"). Also allows for an in/out-going animation
23
+ const [showModal, setShowModal] = useState(show);
24
+ const [renderModal, setRenderModal] = useState(show);
25
+ let typeCheck = typeof (show) === "boolean" && typeof (onHide) === "function" ? undefined : { show: typeof (show) === "boolean", onHide: typeof (onHide) === "function" };
26
+ if (typeCheck) {
27
+ console.error(!typeCheck.show ? "The variable 'show' must be used and must be a boolean used to decide when to show the modal!" : null, !typeCheck.onHide ? "The variable 'onHide' must be used and must be a function which is used to set 'show' as the modal gets closed!" : null);
28
+ }
29
+ if (show != showModal) {
30
+ setShowModal(show);
31
+ if (show) {
32
+ setRenderModal(true);
33
+ }
34
+ }
35
+ const modalRef = useRef(null);
36
+ useKeepElementFocused(modalRef);
37
+ const closeModal = () => {
38
+ const modal = modalRef.current;
39
+ modal.classList.add("close");
40
+ modal.addEventListener('animationend', (event) => {
41
+ if (event.animationName === "fade-out-modal") {
42
+ if (onHide) {
43
+ onHide(false);
44
+ }
45
+ modal.close();
46
+ setRenderModal(false);
47
+ }
48
+ }, { once: true });
49
+ };
50
+ useEffect(() => {
51
+ const modal = modalRef.current;
52
+ if (!modal)
53
+ return;
54
+ if (showModal) {
55
+ modal.classList.remove('close');
56
+ modal.showModal();
57
+ }
58
+ else {
59
+ closeModal();
60
+ }
61
+ }, [showModal]);
62
+ let classNameComputed = `sg-modal-tag`;
63
+ if (className) {
64
+ classNameComputed += " " + className;
65
+ }
66
+ if (backdrop === "static" || backdrop === "true") {
67
+ classNameComputed += " sg-modal-static";
68
+ }
69
+ if (fill)
70
+ classNameComputed += " sg-modal-fill";
71
+ if (size && !fill)
72
+ classNameComputed += ` sg-modal-${size}`;
73
+ const handleKeyDown = (event) => {
74
+ const key = event.key;
75
+ if (key != "Escape") {
76
+ return;
77
+ }
78
+ event.preventDefault();
79
+ closeModal();
80
+ };
81
+ return (renderModal ?
82
+ createPortal(jsx("dialog", { ref: mergeRefs([ref, modalRef]), className: classNameComputed, onKeyDown: (event) => handleKeyDown(event), ...restProps, style: { "--height": stretch ? "80%" : null, ...style }, children: jsx(ModalContextProvider, { value: closeModal, children: !typeCheck ?
83
+ children :
84
+ jsx(ErrorModal, { typeCheck: typeCheck, closeModal: closeModal }) }) }), document.body)
85
+ : null);
86
+ });
87
+ Modal.displayName = "Modal";
88
+ const Header = forwardRef(({ children, as = "", className = "", closeButton = false, onClick, ...restProps }, ref) => {
89
+ let validAs = ["div", "span", "h1", "h2", "h3", "h4", "h5", "h6"];
90
+ let Component = validAs.find(valid => valid === as) ? as : "div";
91
+ const closeModal = useModalContext();
92
+ const onCloseButtonClick = (event) => {
93
+ if (onClick) {
94
+ onClick(event);
95
+ }
96
+ closeModal();
97
+ };
98
+ return (jsxs(Component, { ref: ref, className: `sg-modal-header ${className}`, ...restProps, children: [children, closeButton ? jsx(CloseButton, { variant: true, onClick: event => onCloseButtonClick(event) }) : null] }));
99
+ });
100
+ Header.displayName = "ModalHeader";
101
+ const Title = forwardRef(({ children, as = "h4", className, ...restProps }, ref) => {
102
+ let validAs = ["div", "span", "h1", "h2", "h3", "h4", "h5", "h6"];
103
+ let Component = validAs.find(valid => valid === as) ? as : "h4";
104
+ return (jsx(Component, { ref: ref, className: `sg-modal-title ${className}`, ...restProps, children: children }));
105
+ });
106
+ Title.displayName = "ModalTitle";
107
+ const Body = forwardRef(({ children, className, ...restProps }, ref) => {
108
+ return (jsx("div", { ref: ref, className: `sg-modal-body ${className}`, ...restProps, children: children }));
109
+ });
110
+ Body.displayName = "ModalBody";
111
+ const Footer = forwardRef(({ children, className, ...restProps }, ref) => {
112
+ return (jsx("div", { ref: ref, className: `sg-modal-footer ${className}`, ...restProps, children: children }));
113
+ });
114
+ Footer.displayName = "ModalFooter";
115
+ var Modal$1 = Object.assign(Modal, {
116
+ Header: Header,
117
+ Title: Title,
118
+ Body: Body,
119
+ Footer: Footer
120
+ });
121
+ const useKeepElementFocused = function (elementRef) {
122
+ useEffect(() => {
123
+ const onKeyDown = (event) => {
124
+ const focusableElements = 'button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])';
125
+ const modal = elementRef.current;
126
+ if (modal) {
127
+ const firstFocusableElement = modal.querySelectorAll(focusableElements)[0];
128
+ const focusableContent = modal.querySelectorAll(focusableElements);
129
+ const lastFocusableElement = focusableContent[focusableContent.length - 1];
130
+ let isTabPressed = event.key === 'Tab';
131
+ if (!isTabPressed) {
132
+ return;
133
+ }
134
+ if (event.shiftKey) {
135
+ if (document.activeElement === firstFocusableElement) {
136
+ lastFocusableElement.focus();
137
+ event.preventDefault();
138
+ }
139
+ }
140
+ else if (document.activeElement === lastFocusableElement) {
141
+ firstFocusableElement.focus();
142
+ event.preventDefault();
143
+ }
144
+ }
145
+ };
146
+ document.addEventListener('keydown', onKeyDown, true);
147
+ return function cleanup() {
148
+ document.removeEventListener('keydown', onKeyDown, true);
149
+ };
150
+ }, [elementRef]);
151
+ };
152
+ const ErrorModal = ({ typeCheck, closeModal }) => {
153
+ return (jsxs(Fragment, { children: [jsx(Header, { closeButton: true, children: jsx(Title, { children: "An Error ocurred!" }) }), jsx(Body, { children: jsxs("p", { children: [!typeCheck.show ? "The variable 'show' must be used and must be a boolean used to decide when to show the modal!" : null, !typeCheck.onHide ? "The variable 'onHide' must be used and must be a function which is used to set 'show' as the modal gets closed!" : null] }) }), jsx(Footer, { children: jsx(Button, { variant: "danger", type: "button", onClick: () => closeModal(), children: "Close" }) })] }));
154
+ };
155
+
156
+ export { Modal$1 as default, useKeepElementFocused };
157
+ //# sourceMappingURL=Modal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Modal.js","sources":["../../src/Modal/Modal.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs","_Fragment"],"mappings":"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"}
@@ -1,15 +1,16 @@
1
1
  import { ReactNode } from "react";
2
- import { BaseDialogType, BaseDivType, BaseHeadingType, BaseSpanType } from "../../BaseTypes";
2
+ import { BaseDialogType, BaseDivType, BaseHeadingType, BaseSpanType } from "../utils/BaseTypes";
3
3
  export type ModalContextType = Function | null;
4
4
  export type ModalType = {
5
5
  children: ReactNode;
6
6
  className?: string;
7
7
  id?: string;
8
- centered?: boolean;
8
+ fill?: boolean;
9
9
  size?: string;
10
10
  show: boolean;
11
11
  backdrop?: string;
12
12
  onHide: Function;
13
+ stretch?: boolean;
13
14
  } & BaseDialogType;
14
15
  export type ModalHeaderType = {
15
16
  children: ReactNode;
@@ -0,0 +1,3 @@
1
+ import Modal from "./Modal";
2
+ export type { ModalBodyType, ModalContextType, ModalFooterType, ModalHeaderType, ModalTitleType, ModalType } from "./Modal.types";
3
+ export default Modal;
package/Modal/index.js ADDED
@@ -0,0 +1,7 @@
1
+ 'use client';
2
+ import Modal from './Modal.js';
3
+
4
+
5
+
6
+ export { Modal as default };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -0,0 +1 @@
1
+ {"name":"stargazer-ui/Modal","private":false,"module":"./index.js","types":"./index.d.ts","peerDependencies":{"lodash":"^4.17.21","react":">=17.0.0","react-dom":">=17.0.0"}}
@@ -1,30 +1,30 @@
1
1
  import React from "react";
2
2
  declare const _default: React.ForwardRefExoticComponent<(Omit<{
3
3
  children: React.ReactNode;
4
- className?: string | undefined;
5
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
4
+ className?: string;
5
+ as?: React.ElementType;
6
6
  } & React.ClassAttributes<HTMLUListElement> & React.HTMLAttributes<HTMLUListElement>, "ref"> | Omit<{
7
7
  children: React.ReactNode;
8
- className?: string | undefined;
9
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
8
+ className?: string;
9
+ as?: React.ElementType;
10
10
  } & React.ClassAttributes<HTMLElement> & React.HTMLAttributes<HTMLElement>, "ref">) & React.RefAttributes<HTMLElement>> & {
11
11
  Item: React.ForwardRefExoticComponent<(Omit<{
12
12
  children: React.ReactNode;
13
- className?: string | undefined;
14
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
13
+ className?: string;
14
+ as?: React.ElementType;
15
15
  } & React.ClassAttributes<HTMLLIElement> & React.LiHTMLAttributes<HTMLLIElement>, "ref"> | Omit<{
16
16
  children: React.ReactNode;
17
- className?: string | undefined;
18
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
17
+ className?: string;
18
+ as?: React.ElementType;
19
19
  } & React.ClassAttributes<HTMLElement> & React.HTMLAttributes<HTMLElement>, "ref">) & React.RefAttributes<HTMLElement>>;
20
20
  Link: React.ForwardRefExoticComponent<(Omit<{
21
21
  children: React.ReactNode;
22
- className?: string | undefined;
23
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
22
+ className?: string;
23
+ as?: React.ElementType;
24
24
  } & React.ClassAttributes<HTMLAnchorElement> & React.AnchorHTMLAttributes<HTMLAnchorElement>, "ref"> | Omit<{
25
25
  children: React.ReactNode;
26
- className?: string | undefined;
27
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
26
+ className?: string;
27
+ as?: React.ElementType;
28
28
  } & React.ClassAttributes<HTMLElement> & React.HTMLAttributes<HTMLElement>, "ref">) & React.RefAttributes<HTMLElement>>;
29
29
  };
30
30
  export default _default;
package/Nav/Nav.js ADDED
@@ -0,0 +1,29 @@
1
+ 'use client';
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { forwardRef } from 'react';
4
+ import { useNavbarContext } from '../NavBar/Navbar.js';
5
+
6
+ const Nav = forwardRef(({ children, className, as = "ul", ...restProps }, ref) => {
7
+ const Component = as;
8
+ const navbarContext = useNavbarContext();
9
+ const navbarPrefix = navbarContext ? navbarContext : "sg-navbar-";
10
+ return (jsx(Component, { ref: ref, className: `${className} ${navbarPrefix}nav`, ...restProps, children: children }));
11
+ });
12
+ Nav.displayName = "Nav";
13
+ const Item = forwardRef(({ children, className, as = "li", ...restProps }, ref) => {
14
+ const Component = as;
15
+ return (jsx(Component, { role: "none", ref: ref, className: `sg-nav-item${className ? " " + className : ""}`, ...restProps, children: children }));
16
+ });
17
+ Item.displayName = "NavItem";
18
+ const Link = forwardRef(({ children, className, as = "a", ...restProps }, ref) => {
19
+ const Component = as;
20
+ return (jsx(Component, { role: "menuitem", ref: ref, className: `sg-nav-link${className ? " " + className : ""}`, ...restProps, children: children }));
21
+ });
22
+ Link.displayName = "NavLink";
23
+ var Nav$1 = Object.assign(Nav, {
24
+ Item: Item,
25
+ Link: Link
26
+ });
27
+
28
+ export { Nav$1 as default };
29
+ //# sourceMappingURL=Nav.js.map
package/Nav/Nav.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Nav.js","sources":["../../src/Nav/Nav.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":";;;;;AAMA,MAAM,GAAG,GAAG,UAAU,CAAuB,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,GAAC,IAAI,EAAE,GAAG,SAAS,EAAC,EAAE,GAAG,KAAI;IAC/F,MAAM,SAAS,GAAG,EAAE;AACpB,IAAA,MAAM,aAAa,GAAG,gBAAgB,EAAE;IACxC,MAAM,YAAY,GAAG,aAAa,GAAG,aAAa,GAAG,YAAY;IAEjE,QACIA,IAAC,SAAS,EAAA,EAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,SAAS,CAAA,CAAA,EAAI,YAAY,CAAK,GAAA,CAAA,EAAA,GAAM,SAAS,EAC3E,QAAA,EAAA,QAAQ,EACD,CAAA;AAEpB,CAAC,CAAC;AACF,GAAG,CAAC,WAAW,GAAG,KAAK;AAEvB,MAAM,IAAI,GAAG,UAAU,CAA4B,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,GAAC,IAAI,EAAE,GAAG,SAAS,EAAC,EAAE,GAAG,KAAI;IACrG,MAAM,SAAS,GAAG,EAAE;AACpB,IAAA,QACIA,GAAA,CAAC,SAAS,EAAA,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,CAAc,WAAA,EAAA,SAAS,GAAG,GAAG,GAAC,SAAS,GAAC,EAAE,CAAA,CAAE,KAAM,SAAS,EAAA,QAAA,EAClG,QAAQ,EAAA,CACD;AAEpB,CAAC,CAAC;AACF,IAAI,CAAC,WAAW,GAAG,SAAS;AAE5B,MAAM,IAAI,GAAG,UAAU,CAA4B,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,GAAC,GAAG,EAAE,GAAG,SAAS,EAAC,EAAE,GAAG,KAAI;IACpG,MAAM,SAAS,GAAG,EAAE;AACpB,IAAA,QACIA,GAAA,CAAC,SAAS,EAAA,EAAC,IAAI,EAAC,UAAU,EAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,CAAc,WAAA,EAAA,SAAS,GAAG,GAAG,GAAC,SAAS,GAAC,EAAE,CAAA,CAAE,KAAM,SAAS,EAAA,QAAA,EACtG,QAAQ,EAAA,CACD;AAEpB,CAAC,CAAC;AACF,IAAI,CAAC,WAAW,GAAG,SAAS;AAE5B,YAAgB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;AAC/B,IAAA,IAAI,EAAE,IAAI;AACV,IAAA,IAAI,EAAE;AACT,CAAA,CAAC;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { ReactNode } from "react";
2
- import { BaseAnchorType, BaseElementType, BaseLItemType, BaseUListType } from "../../BaseTypes";
2
+ import { BaseAnchorType, BaseElementType, BaseLItemType, BaseUListType } from "../utils/BaseTypes";
3
3
  export type NavType = {
4
4
  children: ReactNode;
5
5
  className?: string;
package/Nav/index.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ import Nav from "./Nav";
2
+ export default Nav;
3
+ export * from "./Nav";
4
+ export type { NavItemType, NavLinkType, NavType } from "./Nav.types";
package/Nav/index.js ADDED
@@ -0,0 +1,7 @@
1
+ 'use client';
2
+ import Nav from './Nav.js';
3
+
4
+
5
+
6
+ export { Nav as default };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -0,0 +1 @@
1
+ {"name":"stargazer-ui/Nav","private":false,"module":"./index.js","types":"./index.d.ts","peerDependencies":{"lodash":"^4.17.21","react":">=17.0.0","react-dom":">=17.0.0"}}
@@ -1,19 +1,18 @@
1
1
  import React from "react";
2
- import { NavbarTextType, NavbarType } from "./Navbar.types";
3
- export type NavbarContextType = string | null;
2
+ import { NavbarTextType, NavbarType, NavbarContextType } from "./Navbar.types";
4
3
  export declare const NavbarContext: React.Context<NavbarContextType>;
5
4
  export declare const useNavbarContext: () => NavbarContextType;
6
5
  declare const _default: React.ForwardRefExoticComponent<Omit<NavbarType, "ref"> & React.RefAttributes<HTMLElement>> & {
7
6
  Brand: React.ForwardRefExoticComponent<(Omit<{
8
7
  children: React.ReactNode;
9
- className?: string | undefined;
10
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
11
- href?: string | undefined;
8
+ className?: string;
9
+ as?: React.ElementType;
10
+ href?: string;
12
11
  } & React.ClassAttributes<HTMLAnchorElement> & React.AnchorHTMLAttributes<HTMLAnchorElement>, "ref"> | Omit<{
13
12
  children: React.ReactNode;
14
- className?: string | undefined;
15
- as?: React.ElementType<any, keyof React.JSX.IntrinsicElements> | undefined;
16
- href?: string | undefined;
13
+ className?: string;
14
+ as?: React.ElementType;
15
+ href?: string;
17
16
  } & React.ClassAttributes<HTMLElement> & React.HTMLAttributes<HTMLElement>, "ref">) & React.RefAttributes<HTMLAnchorElement | HTMLElement>>;
18
17
  Text: React.ForwardRefExoticComponent<Omit<NavbarTextType, "ref"> & React.RefAttributes<HTMLElement>>;
19
18
  };
@@ -0,0 +1,36 @@
1
+ 'use client';
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { createContext, forwardRef, useMemo, useContext } from 'react';
4
+
5
+ const NavbarContext = createContext(null);
6
+ const NavbarContextProvider = ({ children, value }) => {
7
+ return (jsx(NavbarContext.Provider, { value: value, children: children }));
8
+ };
9
+ const useNavbarContext = () => {
10
+ const context = useContext(NavbarContext);
11
+ return context;
12
+ };
13
+ const Navbar = forwardRef(({ children, className, navbarPrefix = "sg-navbar-", ...restProps }, ref) => {
14
+ const navbarContext = useMemo(() => {
15
+ return navbarPrefix;
16
+ }, [navbarPrefix]);
17
+ return (jsx("nav", { ref: ref, className: `sg-navbar${className ? " " + className : ""}`, ...restProps, children: jsx(NavbarContextProvider, { value: navbarContext, children: children }) }));
18
+ });
19
+ Navbar.displayName = "Navbar";
20
+ const Brand = forwardRef(({ children, className, href = "#", as = "a", ...restProps }, ref) => {
21
+ const Component = as || (href && as != "Link" ? 'a' : 'span');
22
+ return (jsx(Component, { ref: ref, href: href, className: `sg-navbar-brand${className ? " " + className : ""}`, ...restProps, children: children }));
23
+ });
24
+ Brand.displayName = "NavbarBrand";
25
+ const Text = forwardRef(({ children, className, as = "span", ...restProps }, ref) => {
26
+ const Component = as;
27
+ return (jsx(Component, { ref: ref, className: `sg-navbar-text${className ? " " + className : ""}`, ...restProps, children: children }));
28
+ });
29
+ Text.displayName = "NavbarText";
30
+ var Navbar$1 = Object.assign(Navbar, {
31
+ Brand: Brand,
32
+ Text: Text
33
+ });
34
+
35
+ export { NavbarContext, Navbar$1 as default, useNavbarContext };
36
+ //# sourceMappingURL=Navbar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Navbar.js","sources":["../../src/NavBar/Navbar.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":";;;;MAIa,aAAa,GAAG,aAAa,CAAoB,IAAI;AAElE,MAAM,qBAAqB,GAAG,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAqD,KAAI;AACpG,IAAA,QACIA,GAAA,CAAC,aAAa,CAAC,QAAQ,EAAA,EAAC,KAAK,EAAE,KAAK,EAAA,QAAA,EAC/B,QAAQ,EAAA,CACY;AAEjC,CAAC;AACM,MAAM,gBAAgB,GAAG,MAAK;AACjC,IAAA,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC;AACzC,IAAA,OAAO,OAAO;AAClB;AAEA,MAAM,MAAM,GAAG,UAAU,CAA0B,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,GAAE,YAAY,EAAE,GAAG,SAAS,EAAC,EAAE,GAAG,KAAI;AACxH,IAAA,MAAM,aAAa,GAAG,OAAO,CAAC,MAAK;AAC/B,QAAA,OAAO,YAAY;AACvB,KAAC,EAAE,CAAC,YAAY,CAAC,CAAC;AAElB,IAAA,QACIA,GAAA,CAAA,KAAA,EAAA,EAAK,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,CAAA,SAAA,EAAY,SAAS,GAAG,GAAG,GAAC,SAAS,GAAC,EAAE,CAAE,CAAA,EAAA,GAAM,SAAS,EAAA,QAAA,EAC/EA,IAAC,qBAAqB,EAAA,EAAC,KAAK,EAAE,aAAa,EACtC,QAAA,EAAA,QAAQ,EACW,CAAA,EAAA,CACtB;AAEd,CAAC,CAAC;AACF,MAAM,CAAC,WAAW,GAAG,QAAQ;AAE7B,MAAM,KAAK,GAAG,UAAU,CAAoD,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,GAAC,GAAG,EAAE,EAAE,GAAC,GAAG,EAAE,GAAG,SAAS,EAAC,EAAE,GAAG,KAAI;AACvI,IAAA,MAAM,SAAS,GAAG,EAAE,KAAK,IAAI,IAAI,EAAE,IAAI,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC;AAC7D,IAAA,QACIA,GAAA,CAAC,SAAS,EAAA,EAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAkB,eAAA,EAAA,SAAS,GAAG,GAAG,GAAC,SAAS,GAAC,EAAE,CAAA,CAAE,KAAM,SAAS,EAAA,QAAA,EACtG,QAAQ,EAAA,CACD;AAEpB,CAAC,CAAC;AACF,KAAK,CAAC,WAAW,GAAG,aAAa;AAEjC,MAAM,IAAI,GAAG,UAAU,CAA+B,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,GAAC,MAAM,EAAE,GAAG,SAAS,EAAC,EAAE,GAAG,KAAI;IAC1G,MAAM,SAAS,GAAG,EAAE;AACpB,IAAA,QACIA,GAAA,CAAC,SAAS,EAAA,EAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,CAAiB,cAAA,EAAA,SAAS,GAAG,GAAG,GAAC,SAAS,GAAC,EAAE,CAAE,CAAA,EAAA,GAAM,SAAS,EAAA,QAAA,EACzF,QAAQ,EAAA,CACD;AAEpB,CAAC,CAAC;AACF,IAAI,CAAC,WAAW,GAAG,YAAY;AAE/B,eAAgB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;AAClC,IAAA,KAAK,EAAE,KAAK;AACZ,IAAA,IAAI,EAAE;AACT,CAAA,CAAC;;;;"}
@@ -1,5 +1,6 @@
1
1
  import { ReactNode } from "react";
2
- import { BaseAnchorType, BaseElementType, BaseNavType } from "../../BaseTypes";
2
+ import { BaseAnchorType, BaseElementType, BaseNavType } from "../utils/BaseTypes";
3
+ export type NavbarContextType = string | null;
3
4
  export type NavbarType = {
4
5
  children: ReactNode;
5
6
  className?: string;
@@ -0,0 +1,4 @@
1
+ import Navbar from "./Navbar";
2
+ export default Navbar;
3
+ export { useNavbarContext } from "./Navbar";
4
+ export type { NavbarBrandType, NavbarContextType, NavbarTextType, NavbarType } from "./Navbar.types";
@@ -0,0 +1,8 @@
1
+ 'use client';
2
+ import Navbar from './Navbar.js';
3
+ export { useNavbarContext } from './Navbar.js';
4
+
5
+
6
+
7
+ export { Navbar as default };
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -0,0 +1 @@
1
+ {"name":"stargazer-ui/NavBar","private":false,"module":"./index.js","types":"./index.d.ts","peerDependencies":{"lodash":"^4.17.21","react":">=17.0.0","react-dom":">=17.0.0"}}