@node-core/ui-components 0.0.1 → 1.0.1-31c31c9e3d61d76150eae83e7d2385b86cfdef71

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 (190) hide show
  1. package/Common/AlertBox/index.module.css +76 -0
  2. package/Common/AlertBox/index.stories.tsx +73 -0
  3. package/Common/AlertBox/index.tsx +24 -0
  4. package/Common/AvatarGroup/Avatar/index.module.css +40 -0
  5. package/Common/AvatarGroup/Avatar/index.stories.tsx +22 -0
  6. package/Common/AvatarGroup/Avatar/index.tsx +67 -0
  7. package/Common/AvatarGroup/Overlay/index.module.css +31 -0
  8. package/Common/AvatarGroup/Overlay/index.stories.tsx +33 -0
  9. package/Common/AvatarGroup/Overlay/index.tsx +37 -0
  10. package/Common/AvatarGroup/__tests__/index.test.jsx +55 -0
  11. package/Common/AvatarGroup/index.module.css +25 -0
  12. package/Common/AvatarGroup/index.stories.tsx +56 -0
  13. package/Common/AvatarGroup/index.tsx +87 -0
  14. package/Common/Badge/index.module.css +38 -0
  15. package/Common/Badge/index.stories.tsx +38 -0
  16. package/Common/Badge/index.tsx +35 -0
  17. package/Common/BadgeGroup/index.module.css +77 -0
  18. package/Common/BadgeGroup/index.stories.tsx +35 -0
  19. package/Common/BadgeGroup/index.tsx +35 -0
  20. package/Common/Banner/index.module.css +42 -0
  21. package/Common/Banner/index.stories.tsx +29 -0
  22. package/Common/Banner/index.tsx +18 -0
  23. package/Common/BaseActiveLink/__tests__/index.test.jsx +52 -0
  24. package/Common/BaseActiveLink/index.tsx +34 -0
  25. package/Common/BaseButton/index.module.css +142 -0
  26. package/Common/BaseButton/index.stories.tsx +67 -0
  27. package/Common/BaseButton/index.tsx +59 -0
  28. package/Common/BaseCodeBox/index.module.css +78 -0
  29. package/Common/BaseCodeBox/index.stories.tsx +39 -0
  30. package/Common/BaseCodeBox/index.tsx +122 -0
  31. package/Common/BaseCrossLink/index.module.css +51 -0
  32. package/Common/BaseCrossLink/index.stories.tsx +38 -0
  33. package/Common/BaseCrossLink/index.tsx +46 -0
  34. package/Common/BaseLinkTabs/index.module.css +43 -0
  35. package/Common/BaseLinkTabs/index.stories.tsx +34 -0
  36. package/Common/BaseLinkTabs/index.tsx +53 -0
  37. package/Common/BasePagination/Ellipsis/index.module.css +10 -0
  38. package/Common/BasePagination/Ellipsis/index.stories.tsx +10 -0
  39. package/Common/BasePagination/Ellipsis/index.tsx +11 -0
  40. package/Common/BasePagination/PaginationListItem/__tests__/index.test.jsx +58 -0
  41. package/Common/BasePagination/PaginationListItem/index.module.css +27 -0
  42. package/Common/BasePagination/PaginationListItem/index.stories.tsx +40 -0
  43. package/Common/BasePagination/PaginationListItem/index.tsx +39 -0
  44. package/Common/BasePagination/PrevNextArrow.tsx +15 -0
  45. package/Common/BasePagination/__tests__/index.test.jsx +180 -0
  46. package/Common/BasePagination/index.module.css +39 -0
  47. package/Common/BasePagination/index.stories.tsx +67 -0
  48. package/Common/BasePagination/index.tsx +77 -0
  49. package/Common/BasePagination/useGetPageElements.tsx +132 -0
  50. package/Common/Blockquote/index.module.css +29 -0
  51. package/Common/Blockquote/index.stories.tsx +45 -0
  52. package/Common/Blockquote/index.tsx +11 -0
  53. package/Common/Breadcrumbs/BreadcrumbHomeLink/index.module.css +5 -0
  54. package/Common/Breadcrumbs/BreadcrumbHomeLink/index.tsx +30 -0
  55. package/Common/Breadcrumbs/BreadcrumbItem/index.module.css +41 -0
  56. package/Common/Breadcrumbs/BreadcrumbItem/index.tsx +42 -0
  57. package/Common/Breadcrumbs/BreadcrumbLink/index.module.css +22 -0
  58. package/Common/Breadcrumbs/BreadcrumbLink/index.tsx +37 -0
  59. package/Common/Breadcrumbs/BreadcrumbRoot/index.module.css +9 -0
  60. package/Common/Breadcrumbs/BreadcrumbRoot/index.tsx +20 -0
  61. package/Common/Breadcrumbs/BreadcrumbTruncatedItem/index.tsx +9 -0
  62. package/Common/Breadcrumbs/index.stories.tsx +94 -0
  63. package/Common/Breadcrumbs/index.tsx +81 -0
  64. package/Common/CodeTabs/index.module.css +56 -0
  65. package/Common/CodeTabs/index.stories.tsx +73 -0
  66. package/Common/CodeTabs/index.tsx +16 -0
  67. package/Common/DataTag/index.module.css +56 -0
  68. package/Common/DataTag/index.stories.tsx +40 -0
  69. package/Common/DataTag/index.tsx +39 -0
  70. package/Common/GlowingBackdrop/index.module.css +32 -0
  71. package/Common/GlowingBackdrop/index.stories.tsx +10 -0
  72. package/Common/GlowingBackdrop/index.tsx +13 -0
  73. package/Common/LanguageDropDown/index.module.css +53 -0
  74. package/Common/LanguageDropDown/index.stories.tsx +19 -0
  75. package/Common/LanguageDropDown/index.tsx +56 -0
  76. package/Common/Modal/index.module.css +79 -0
  77. package/Common/Modal/index.stories.tsx +32 -0
  78. package/Common/Modal/index.tsx +48 -0
  79. package/Common/NodejsLogo/index.module.css +6 -0
  80. package/Common/NodejsLogo/index.stories.tsx +14 -0
  81. package/Common/NodejsLogo/index.tsx +26 -0
  82. package/Common/Notification/index.module.css +20 -0
  83. package/Common/Notification/index.stories.tsx +36 -0
  84. package/Common/Notification/index.tsx +34 -0
  85. package/Common/Preview/index.module.css +79 -0
  86. package/Common/Preview/index.stories.tsx +44 -0
  87. package/Common/Preview/index.tsx +25 -0
  88. package/Common/ProgressionSidebar/ProgressionSidebarGroup/index.module.css +47 -0
  89. package/Common/ProgressionSidebar/ProgressionSidebarGroup/index.tsx +35 -0
  90. package/Common/ProgressionSidebar/ProgressionSidebarIcon/index.tsx +16 -0
  91. package/Common/ProgressionSidebar/ProgressionSidebarItem/index.module.css +39 -0
  92. package/Common/ProgressionSidebar/ProgressionSidebarItem/index.tsx +32 -0
  93. package/Common/ProgressionSidebar/index.module.css +30 -0
  94. package/Common/ProgressionSidebar/index.stories.tsx +79 -0
  95. package/Common/ProgressionSidebar/index.tsx +59 -0
  96. package/Common/Select/__tests__/index.test.jsx +67 -0
  97. package/Common/Select/index.module.css +161 -0
  98. package/Common/Select/index.stories.tsx +111 -0
  99. package/Common/Select/index.tsx +187 -0
  100. package/Common/Separator/index.module.css +16 -0
  101. package/Common/Separator/index.stories.tsx +32 -0
  102. package/Common/Separator/index.tsx +27 -0
  103. package/Common/Skeleton/index.module.css +30 -0
  104. package/Common/Skeleton/index.tsx +39 -0
  105. package/Common/Tabs/__tests__/index.test.jsx +52 -0
  106. package/Common/Tabs/index.module.css +54 -0
  107. package/Common/Tabs/index.stories.tsx +50 -0
  108. package/Common/Tabs/index.tsx +54 -0
  109. package/Common/ThemeToggle/__tests__/index.test.jsx +35 -0
  110. package/Common/ThemeToggle/index.module.css +15 -0
  111. package/Common/ThemeToggle/index.stories.tsx +10 -0
  112. package/Common/ThemeToggle/index.tsx +15 -0
  113. package/Common/Tooltip/index.module.css +43 -0
  114. package/Common/Tooltip/index.stories.tsx +73 -0
  115. package/Common/Tooltip/index.tsx +48 -0
  116. package/Containers/Article/index.module.css +70 -0
  117. package/Containers/Article/index.stories.tsx +39 -0
  118. package/Containers/Article/index.tsx +9 -0
  119. package/Containers/Footer/index.module.css +46 -0
  120. package/Containers/Footer/index.stories.tsx +27 -0
  121. package/Containers/Footer/index.tsx +95 -0
  122. package/Containers/MetaBar/__tests__/index.test.jsx +63 -0
  123. package/Containers/MetaBar/index.module.css +91 -0
  124. package/Containers/MetaBar/index.stories.tsx +80 -0
  125. package/Containers/MetaBar/index.tsx +72 -0
  126. package/Containers/NavBar/NavItem/index.module.css +60 -0
  127. package/Containers/NavBar/NavItem/index.stories.tsx +38 -0
  128. package/Containers/NavBar/NavItem/index.tsx +44 -0
  129. package/Containers/NavBar/index.module.css +125 -0
  130. package/Containers/NavBar/index.stories.tsx +45 -0
  131. package/Containers/NavBar/index.tsx +94 -0
  132. package/Containers/Sidebar/SidebarGroup/index.module.css +26 -0
  133. package/Containers/Sidebar/SidebarGroup/index.stories.tsx +36 -0
  134. package/Containers/Sidebar/SidebarGroup/index.tsx +30 -0
  135. package/Containers/Sidebar/SidebarItem/index.module.css +35 -0
  136. package/Containers/Sidebar/SidebarItem/index.stories.tsx +15 -0
  137. package/Containers/Sidebar/SidebarItem/index.tsx +26 -0
  138. package/Containers/Sidebar/index.module.css +31 -0
  139. package/Containers/Sidebar/index.stories.tsx +84 -0
  140. package/Containers/Sidebar/index.tsx +58 -0
  141. package/Icons/HexagonGrid.stories.tsx +10 -0
  142. package/Icons/HexagonGrid.tsx +1434 -0
  143. package/Icons/InstallationMethod/Choco.tsx +78 -0
  144. package/Icons/InstallationMethod/Devbox.tsx +21 -0
  145. package/Icons/InstallationMethod/Docker.tsx +20 -0
  146. package/Icons/InstallationMethod/FNM.tsx +132 -0
  147. package/Icons/InstallationMethod/Homebrew.tsx +69 -0
  148. package/Icons/InstallationMethod/N.tsx +32 -0
  149. package/Icons/InstallationMethod/NVM.tsx +63 -0
  150. package/Icons/InstallationMethod/Volta.tsx +34 -0
  151. package/Icons/InstallationMethod/index.ts +10 -0
  152. package/Icons/Logos/JsGreen.tsx +24 -0
  153. package/Icons/Logos/JsWhite.tsx +37 -0
  154. package/Icons/Logos/Nodejs.tsx +188 -0
  155. package/Icons/Logos/NodejsStackedBlack.tsx +98 -0
  156. package/Icons/Logos/NodejsStackedDark.tsx +124 -0
  157. package/Icons/Logos/NodejsStackedLight.tsx +123 -0
  158. package/Icons/Logos/NodejsStackedWhite.tsx +98 -0
  159. package/Icons/Logos/index.ts +17 -0
  160. package/Icons/OperatingSystem/AIX.tsx +46 -0
  161. package/Icons/OperatingSystem/Apple.tsx +23 -0
  162. package/Icons/OperatingSystem/Linux.tsx +969 -0
  163. package/Icons/OperatingSystem/Microsoft.tsx +19 -0
  164. package/Icons/OperatingSystem/index.ts +6 -0
  165. package/Icons/PackageManager/Npm.tsx +21 -0
  166. package/Icons/PackageManager/Pnpm.tsx +22 -0
  167. package/Icons/PackageManager/Yarn.tsx +22 -0
  168. package/Icons/PackageManager/index.ts +5 -0
  169. package/Icons/Social/Bluesky.tsx +19 -0
  170. package/Icons/Social/Discord.tsx +20 -0
  171. package/Icons/Social/GitHub.tsx +16 -0
  172. package/Icons/Social/LinkedIn.tsx +16 -0
  173. package/Icons/Social/Mastodon.tsx +36 -0
  174. package/Icons/Social/Slack.tsx +31 -0
  175. package/Icons/Social/X.tsx +16 -0
  176. package/Icons/Social/index.ts +9 -0
  177. package/LICENSE +21 -0
  178. package/MDX/CodeTabs.tsx +47 -0
  179. package/package.json +87 -5
  180. package/stylelint/__tests__/index.test.mjs +80 -0
  181. package/stylelint/one-utility-class-per-line.mjs +64 -0
  182. package/stylelint/utils.mjs +53 -0
  183. package/styles/animations.css +47 -0
  184. package/styles/base.css +17 -0
  185. package/styles/effects.css +12 -0
  186. package/styles/index.css +38 -0
  187. package/styles/markdown.css +173 -0
  188. package/styles/theme.css +175 -0
  189. package/types.ts +25 -0
  190. package/README.md +0 -1
@@ -0,0 +1,84 @@
1
+ import type { Meta as MetaObj, StoryObj } from '@storybook/react';
2
+
3
+ import Sidebar from '#ui/Containers/Sidebar';
4
+
5
+ type Story = StoryObj<typeof Sidebar>;
6
+ type Meta = MetaObj<typeof Sidebar>;
7
+
8
+ export const Default: Story = {
9
+ args: {
10
+ groups: [
11
+ {
12
+ groupName: 'About Node.js',
13
+ items: [
14
+ {
15
+ link: '/item1',
16
+ label: 'About Node.js',
17
+ },
18
+ {
19
+ link: '/item2',
20
+ label: 'Project Governance',
21
+ },
22
+ {
23
+ link: '/item3',
24
+ label: 'Releases',
25
+ },
26
+ {
27
+ link: '/item4',
28
+ label: 'Branding',
29
+ },
30
+ {
31
+ link: '/item5',
32
+ label: 'Privacy Policy',
33
+ },
34
+ {
35
+ link: '/item6',
36
+ label: 'Security Reporting',
37
+ },
38
+ ],
39
+ },
40
+ {
41
+ groupName: 'Get Involved',
42
+ items: [
43
+ {
44
+ link: '/item7',
45
+ label: 'Get Involved',
46
+ },
47
+ {
48
+ link: '/item8',
49
+ label: 'Collab Summit',
50
+ },
51
+ {
52
+ link: '/item9',
53
+ label: 'Contribute',
54
+ },
55
+ {
56
+ link: '/item10',
57
+ label: 'Code of Conduct',
58
+ },
59
+ ],
60
+ },
61
+ {
62
+ groupName: 'Download',
63
+ items: [
64
+ {
65
+ link: '/item11',
66
+ label: 'Download',
67
+ },
68
+ {
69
+ link: '/item12',
70
+ label: 'Package Manager',
71
+ },
72
+ {
73
+ link: '/item13',
74
+ label: 'Node.js Releases',
75
+ },
76
+ ],
77
+ },
78
+ ],
79
+ title: 'Sidebar',
80
+ onSelect: console.log,
81
+ },
82
+ };
83
+
84
+ export default { component: Sidebar } as Meta;
@@ -0,0 +1,58 @@
1
+ import type { ComponentProps, FC } from 'react';
2
+
3
+ import Select from '#ui/Common/Select';
4
+ import SidebarGroup from '#ui/Containers/Sidebar/SidebarGroup';
5
+ import type { LinkLike } from '#ui/types';
6
+
7
+ import styles from './index.module.css';
8
+
9
+ type SidebarProps = {
10
+ groups: Array<Omit<ComponentProps<typeof SidebarGroup>, 'as' | 'pathname'>>;
11
+ pathname?: string;
12
+ title: string;
13
+ onSelect: (value: string) => void;
14
+ as?: LinkLike;
15
+ };
16
+
17
+ const SideBar: FC<SidebarProps> = ({
18
+ groups,
19
+ pathname,
20
+ title,
21
+ onSelect,
22
+ as,
23
+ }) => {
24
+ const selectItems = groups.map(({ items, groupName }) => ({
25
+ label: groupName,
26
+ items: items.map(({ label, link }) => ({ value: link, label })),
27
+ }));
28
+
29
+ const currentItem = selectItems
30
+ .map(item => item.items)
31
+ .flat()
32
+ .find(item => pathname === item.value);
33
+
34
+ return (
35
+ <aside className={styles.wrapper}>
36
+ {selectItems.length > 0 && (
37
+ <Select
38
+ label={title}
39
+ values={selectItems}
40
+ defaultValue={currentItem?.value}
41
+ onChange={onSelect}
42
+ />
43
+ )}
44
+
45
+ {groups.map(({ groupName, items }) => (
46
+ <SidebarGroup
47
+ key={groupName.toString()}
48
+ groupName={groupName}
49
+ items={items}
50
+ pathname={pathname}
51
+ as={as}
52
+ />
53
+ ))}
54
+ </aside>
55
+ );
56
+ };
57
+
58
+ export default SideBar;
@@ -0,0 +1,10 @@
1
+ import type { Meta as MetaObj, StoryObj } from '@storybook/react';
2
+
3
+ import HexagonGrid from '#ui/Icons/HexagonGrid';
4
+
5
+ type Story = StoryObj<typeof HexagonGrid>;
6
+ type Meta = MetaObj<typeof HexagonGrid>;
7
+
8
+ export const Default: Story = {};
9
+
10
+ export default { component: HexagonGrid } as Meta;