blixify-ui-web-mcp 0.1.2 → 0.1.18

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 (135) hide show
  1. package/lib/components/action/button/README.md +12 -11
  2. package/lib/components/action/button/button.stories.tsx +4 -10
  3. package/lib/components/action/buttonGroup/buttonGroup.stories.tsx +4 -10
  4. package/lib/components/action/iconButton/iconButton.stories.tsx +4 -10
  5. package/lib/components/action/radioList/radioList.stories.tsx +4 -10
  6. package/lib/components/action/slider/slider.stories.tsx +4 -10
  7. package/lib/components/action/textButton/textButton.stories.tsx +4 -10
  8. package/lib/components/action/toggle/toggle.stories.tsx +4 -10
  9. package/lib/components/advanced/collapse/collapse.stories.tsx +4 -10
  10. package/lib/components/advanced/infoWindow/infoWindow.stories.tsx +4 -10
  11. package/lib/components/advanced/popUp/README.md +21 -7
  12. package/lib/components/advanced/popUp/popUp.stories.tsx +4 -10
  13. package/lib/components/auth/bareSignIn/bareSignIn.stories.tsx +30 -10
  14. package/lib/components/auth/bareSignUp/bareSignUp.stories.tsx +4 -10
  15. package/lib/components/auth/signIn/signIn.stories.tsx +4 -10
  16. package/lib/components/auth/signUp/signUp.stories.tsx +4 -10
  17. package/lib/components/chart/areaChart/areaChart.stories.tsx +7 -13
  18. package/lib/components/chart/barChart/barChart.stories.tsx +7 -13
  19. package/lib/components/chart/boxPlotChart/boxPlotChart.stories.tsx +8 -14
  20. package/lib/components/chart/bubbleChart/bubbleChart.stories.tsx +8 -14
  21. package/lib/components/chart/card/card.stories.tsx +4 -10
  22. package/lib/components/chart/ganttChart/README.md +96 -110
  23. package/lib/components/chart/ganttChart/ganttChart.stories.tsx +135 -125
  24. package/lib/components/chart/heatmapChart/README.md +93 -82
  25. package/lib/components/chart/heatmapChart/heatmapChart.stories.tsx +122 -84
  26. package/lib/components/chart/lineChart/lineChart.stories.tsx +4 -10
  27. package/lib/components/chart/pieChart/pieChart.stories.tsx +4 -10
  28. package/lib/components/chart/polarAreaChart/polarAreaChart.stories.tsx +8 -14
  29. package/lib/components/chart/radarChart/radarChart.stories.tsx +4 -10
  30. package/lib/components/chart/radialBar/radialChart.stories.tsx +4 -10
  31. package/lib/components/chart/rangeBarChart/rangeBarChart.stories.tsx +4 -10
  32. package/lib/components/chart/statsCard/statsCard.stories.tsx +4 -10
  33. package/lib/components/chart/treemapChart/treemapChart.stories.tsx +8 -14
  34. package/lib/components/chat/chatAnchor/README.md +61 -79
  35. package/lib/components/chat/chatAnchor/chatAnchor.stories.tsx +13 -19
  36. package/lib/components/chat/chatBase/README.md +244 -196
  37. package/lib/components/chat/chatBase/chatBase.stories.tsx +828 -250
  38. package/lib/components/chat/chatDashboard/README.md +89 -129
  39. package/lib/components/chat/chatDashboard/chatDashboard.stories.tsx +406 -117
  40. package/lib/components/data/dataGraph/README.md +135 -1
  41. package/lib/components/data/dataGraph/dataGraph.stories.tsx +90 -77
  42. package/lib/components/data/dataReference/README.md +141 -43
  43. package/lib/components/data/dataReference/dataReference.stories.tsx +111 -45
  44. package/lib/components/data/dataTemplate/README.md +88 -61
  45. package/lib/components/data/dataTemplate/dataModule.stories.tsx +4 -10
  46. package/lib/components/data/dataTemplate/dataTemplate.stories.tsx +4 -10
  47. package/lib/components/data/dataWrapper/README.md +48 -46
  48. package/lib/components/data/dataWrapper/dataWrapper.stories.tsx +258 -489
  49. package/lib/components/data/queryForm/queryForm.stories.tsx +4 -10
  50. package/lib/components/data/readQuery/readQuery.stories.tsx +4 -9
  51. package/lib/components/data/readQueryHoc/readQueryHoc.stories.tsx +4 -10
  52. package/lib/components/data/writeQuery/writeQuery.stories.tsx +4 -8
  53. package/lib/components/design/actionSection/actionSection.stories.tsx +6 -10
  54. package/lib/components/design/banner/banner.stories.tsx +4 -10
  55. package/lib/components/design/bannerAction/bannerAction.stories.tsx +4 -10
  56. package/lib/components/design/blogSection/blogSection.stories.tsx +4 -10
  57. package/lib/components/design/carouselSection/carouselSection.stories.tsx +4 -10
  58. package/lib/components/design/designList/designList.stories.tsx +4 -10
  59. package/lib/components/design/faq/faq.stories.tsx +4 -10
  60. package/lib/components/design/fileGrid/fileGrid.stories.tsx +4 -10
  61. package/lib/components/design/fileViewer/fileViewer.stories.tsx +4 -10
  62. package/lib/components/design/footerSection/footerSection.stories.tsx +4 -10
  63. package/lib/components/design/googleReview/googleReview.stories.tsx +4 -10
  64. package/lib/components/design/heroSection/heroSection.stories.tsx +4 -10
  65. package/lib/components/design/iconList/iconList.stories.tsx +4 -10
  66. package/lib/components/design/imageGallery/imageGallery.stories.tsx +4 -10
  67. package/lib/components/design/imageZoom/imageZoom.stories.tsx +4 -10
  68. package/lib/components/design/leftContent/leftContent.stories.tsx +4 -10
  69. package/lib/components/design/logoCloud/logoCloud.stories.tsx +4 -10
  70. package/lib/components/design/onboarding/onboarding.stories.tsx +4 -10
  71. package/lib/components/design/pricing/pricing.stories.tsx +4 -10
  72. package/lib/components/design/rightContent/rightContent.stories.tsx +4 -10
  73. package/lib/components/design/sectionList/sectionList.stories.tsx +4 -10
  74. package/lib/components/design/teams/teams.stories.tsx +4 -10
  75. package/lib/components/display/alert/alert.stories.tsx +4 -10
  76. package/lib/components/display/calendar/README.md +49 -0
  77. package/lib/components/display/calendar/calendar.stories.tsx +71 -28
  78. package/lib/components/display/clipboard/clipboard.stories.tsx +4 -10
  79. package/lib/components/display/detailList/detailList.stories.tsx +5 -10
  80. package/lib/components/display/drawer/drawer.stories.tsx +5 -10
  81. package/lib/components/display/emptyState/emptyState.stories.tsx +4 -10
  82. package/lib/components/display/feeds/feeds.stories.tsx +4 -10
  83. package/lib/components/display/flexTable/README.md +11 -7
  84. package/lib/components/display/flexTable/flexTable.stories.tsx +114 -11
  85. package/lib/components/display/grid/README.md +28 -27
  86. package/lib/components/display/grid/grid.stories.tsx +4 -10
  87. package/lib/components/display/kanban/kanban.stories.tsx +14 -20
  88. package/lib/components/display/list/README.md +30 -29
  89. package/lib/components/display/list/list.stories.tsx +4 -10
  90. package/lib/components/display/loading/loading.stories.tsx +5 -10
  91. package/lib/components/display/mapView/mapView.stories.tsx +4 -10
  92. package/lib/components/display/modal/modal.stories.tsx +4 -11
  93. package/lib/components/display/notification/notification.stories.tsx +4 -10
  94. package/lib/components/display/progress/progress.stories.tsx +5 -10
  95. package/lib/components/display/stepper/stepper.stories.tsx +5 -10
  96. package/lib/components/display/table/README.md +38 -37
  97. package/lib/components/display/table/table.stories.tsx +8 -14
  98. package/lib/components/display/tag/tag.stories.tsx +4 -10
  99. package/lib/components/input/address/address.stories.tsx +4 -10
  100. package/lib/components/input/canvas/canvas.stories.tsx +4 -10
  101. package/lib/components/input/checkbox/checkbox.stories.tsx +4 -10
  102. package/lib/components/input/datePicker/datePicker.stories.tsx +4 -10
  103. package/lib/components/input/form/form.stories.tsx +4 -10
  104. package/lib/components/input/markdown/markdown.stories.tsx +5 -10
  105. package/lib/components/input/monthYearPicker/monthYearPicker.stories.tsx +4 -10
  106. package/lib/components/input/netPromoterScore/netPromoterScore.stories.tsx +4 -10
  107. package/lib/components/input/rating/rating.stories.tsx +4 -10
  108. package/lib/components/input/select/README.md +30 -29
  109. package/lib/components/input/select/select.stories.tsx +4 -10
  110. package/lib/components/input/signature/signature.stories.tsx +4 -10
  111. package/lib/components/input/textArea/textArea.stories.tsx +4 -10
  112. package/lib/components/input/textInput/textinput.stories.tsx +4 -10
  113. package/lib/components/input/uploadInput/uploadInput.stories.tsx +135 -11
  114. package/lib/components/navigation/bars/README.md +90 -17
  115. package/lib/components/navigation/bars/bars.stories.tsx +128 -60
  116. package/lib/components/navigation/bottomTab/bottomTab.stories.tsx +5 -10
  117. package/lib/components/navigation/breadcrumb/README.md +40 -20
  118. package/lib/components/navigation/breadcrumb/breadcrumb.stories.tsx +34 -14
  119. package/lib/components/navigation/header/README.md +67 -108
  120. package/lib/components/navigation/header/header.stories.tsx +165 -49
  121. package/lib/components/navigation/leftNav/README.md +121 -66
  122. package/lib/components/navigation/leftNav/leftNav.stories.tsx +178 -91
  123. package/lib/components/navigation/tabs/tabs.stories.tsx +57 -39
  124. package/lib/components/structure/column/column.stories.tsx +5 -10
  125. package/lib/components/structure/container/container.stories.tsx +5 -10
  126. package/lib/components/structure/link/link.stories.tsx +4 -10
  127. package/lib/components/structure/text/text.stories.tsx +5 -10
  128. package/lib/components/template/authPage/authPage.stories.tsx +6 -5
  129. package/lib/components/template/landingPage/landingPage.stories.tsx +8 -6
  130. package/lib/components/template/productListing/productListing.stories.tsx +7 -13
  131. package/lib/components/template/productOverview/productOverview.stories.tsx +5 -11
  132. package/lib/components/template/shoppingCart/shoppingCart.stories.tsx +6 -12
  133. package/lib/components/template/userHomePage/userHomePage.stories.tsx +7 -6
  134. package/lib/components/template/userRankingDashboard/userRankingDashboard.stories.tsx +5 -11
  135. package/package.json +1 -1
@@ -1,19 +1,14 @@
1
- import { storiesOf } from "@storybook/react";
2
1
  import React from "react";
3
2
  import { Container } from ".";
4
- import README from "./README.md";
5
- const stories = storiesOf("Structure", module);
6
3
 
7
- stories.addParameters({
8
- readme: {
9
- content: README,
10
- },
11
- });
4
+ const meta = { title: "Structure/Container" };
5
+ export default meta;
12
6
 
13
- stories.add("Container", () => {
7
+
8
+ export const ContainerStory = () => {
14
9
  return (
15
10
  <Container>
16
11
  <h1>Item 1</h1>
17
12
  </Container>
18
13
  );
19
- });
14
+ }
@@ -1,18 +1,12 @@
1
- import { storiesOf } from "@storybook/react";
2
1
  import React from "react";
3
2
  import { Link } from ".";
4
3
  import { Text } from "../text";
5
- import README from "./README.md";
6
4
 
7
- const stories = storiesOf("Structure", module);
5
+ const meta = { title: "Structure/Link" };
6
+ export default meta;
8
7
 
9
- stories.addParameters({
10
- readme: {
11
- content: README,
12
- },
13
- });
14
8
 
15
- stories.add("Link", () => {
9
+ export const LinkStory = () => {
16
10
  return (
17
11
  <>
18
12
  <Link href="https://blixify.co" linkType="external">
@@ -27,4 +21,4 @@ stories.add("Link", () => {
27
21
  </Link>
28
22
  </>
29
23
  );
30
- });
24
+ }
@@ -1,16 +1,11 @@
1
- import { storiesOf } from "@storybook/react";
2
1
  import React, { useEffect, useState } from "react";
3
2
  import { Text } from ".";
4
- import README from "./README.md";
5
- const stories = storiesOf("Structure", module);
6
3
 
7
- stories.addParameters({
8
- readme: {
9
- content: README,
10
- },
11
- });
4
+ const meta = { title: "Structure/Text" };
5
+ export default meta;
12
6
 
13
- stories.add("Text", () => {
7
+
8
+ export const TextStory = () => {
14
9
  const textList = ["Hello", "World"];
15
10
  const [textValue, setTextValue] = useState(textList[0]);
16
11
  const [currentIndex, setCurrentIndex] = useState(0);
@@ -36,4 +31,4 @@ stories.add("Text", () => {
36
31
  </Text>
37
32
  </>
38
33
  );
39
- });
34
+ }
@@ -1,12 +1,13 @@
1
- import { storiesOf } from "@storybook/react";
1
+ import React from "react";
2
2
  import { useState } from "react";
3
3
  import { BareSignIn, AvailableProvider } from "../../auth/bareSignIn";
4
4
  import { FooterSection } from "../../design/footerSection";
5
- import "../../../index.css";
6
5
 
7
- const stories = storiesOf("Template", module);
6
+ const meta = { title: "Template/Auth Page" };
7
+ export default meta;
8
8
 
9
- stories.add("Auth Page", () => {
9
+
10
+ export const AuthPage = () => {
10
11
  const [signInType, setSignInType] = useState<typeof AvailableProvider>("email");
11
12
 
12
13
  return (
@@ -65,4 +66,4 @@ stories.add("Auth Page", () => {
65
66
  />
66
67
  </>
67
68
  );
68
- });
69
+ }
@@ -1,5 +1,5 @@
1
+ import React from "react";
1
2
  import { Disclosure, Menu, Popover, Transition } from "@headlessui/react";
2
- import { storiesOf } from "@storybook/react";
3
3
  import { useState } from "react";
4
4
  import { Button } from "../../action/button";
5
5
  import { ButtonGroup } from "../../action/buttonGroup";
@@ -13,10 +13,12 @@ import { LogoCloud } from "../../design/logoCloud";
13
13
  import { RightContent } from "../../design/rightContent";
14
14
  import { SectionList } from "../../design/sectionList";
15
15
  import { Header } from "../../navigation/header";
16
- import "../../../index.css";
17
- const Logo = require("../../../assets/logo.png");
18
16
 
19
- const stories = storiesOf("Template", module);
17
+ const meta = { title: "Template/Landing Page" };
18
+ export default meta;
19
+
20
+ const Logo = new URL("../../../assets/logo.png", import.meta.url).href;
21
+
20
22
 
21
23
  const NAVIGATION = [
22
24
  { name: "Home", href: "/" },
@@ -110,7 +112,7 @@ const CHART2_DATA = [
110
112
  { x: "[Option B]", y: 40 },
111
113
  ];
112
114
 
113
- stories.add("Landing Page", () => {
115
+ export const LandingPage = () => {
114
116
  const [pricingTab, setPricingTab] = useState("tab1");
115
117
 
116
118
  const activeData = pricingTab === "tab1" ? CHART1_DATA : CHART2_DATA;
@@ -285,4 +287,4 @@ stories.add("Landing Page", () => {
285
287
  />
286
288
  </div>
287
289
  );
288
- });
290
+ }
@@ -1,6 +1,5 @@
1
1
  import { Disclosure, Menu, Popover, Transition } from "@headlessui/react";
2
2
  import { ShoppingBagIcon } from "@heroicons/react/24/outline";
3
- import { storiesOf } from "@storybook/react";
4
3
  import React, { useState } from "react";
5
4
  import { Button } from "../../action/button";
6
5
  import { ActionSection } from "../../design/actionSection";
@@ -11,17 +10,12 @@ import { List } from "../../display/list";
11
10
  import { Rating } from "../../input/rating";
12
11
  import { Header } from "../../navigation/header";
13
12
  import { Container } from "../../structure/container";
14
- // eslint-disable-next-line @typescript-eslint/no-var-requires
15
- const Logo = require("../../../assets/logo.png");
16
13
 
17
- const stories = storiesOf("Template", module).addParameters({
18
- docs: {
19
- description: {
20
- component:
21
- "Full-page e-commerce templates combining multiple components into ready-to-use layouts. These templates demonstrate real-world compositions of Header, HeroSection, Grid, List, ActionSection, and FooterSection.",
22
- },
23
- },
24
- });
14
+ const meta = { title: "Template/Product Listing" };
15
+ export default meta;
16
+
17
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
18
+ const Logo = new URL("../../../assets/logo.png", import.meta.url).href;
25
19
 
26
20
  const NAVIGATION = [
27
21
  { name: "Home", href: "#" },
@@ -132,7 +126,7 @@ const REVIEWS = [
132
126
  },
133
127
  ];
134
128
 
135
- stories.add("Product Listing", () => {
129
+ export const ProductListing = () => {
136
130
  const [cartCount, setCartCount] = useState(0);
137
131
 
138
132
  const handleAddToCart = (e: React.MouseEvent) => {
@@ -294,4 +288,4 @@ stories.add("Product Listing", () => {
294
288
  />
295
289
  </div>
296
290
  );
297
- });
291
+ }
@@ -1,5 +1,5 @@
1
+ import React from "react";
1
2
  import { HeartIcon } from "@heroicons/react/24/outline";
2
- import { storiesOf } from "@storybook/react";
3
3
  import { useState } from "react";
4
4
  import { Button } from "../../action/button";
5
5
  import { IconButton } from "../../action/iconButton";
@@ -8,14 +8,8 @@ import { FileGrid } from "../../design/fileGrid";
8
8
  import { Rating } from "../../input/rating";
9
9
  import { Container } from "../../structure/container";
10
10
 
11
- const stories = storiesOf("Template", module).addParameters({
12
- docs: {
13
- description: {
14
- component:
15
- "Full-page e-commerce templates combining multiple components into ready-to-use layouts. These templates demonstrate real-world compositions of Container, FileGrid, Rating, Button, IconButton, and Collapse.",
16
- },
17
- },
18
- });
11
+ const meta = { title: "Template/Product Overview" };
12
+ export default meta;
19
13
 
20
14
  const PRODUCT_IMAGES = [
21
15
  {
@@ -58,7 +52,7 @@ const FEATURES = [
58
52
 
59
53
  const RATING = 4;
60
54
 
61
- stories.add("Product Overview", () => {
55
+ export const ProductOverview = () => {
62
56
  const [selectedColor, setSelectedColor] = useState("dark");
63
57
  const [wishlisted, setWishlisted] = useState(false);
64
58
 
@@ -191,4 +185,4 @@ stories.add("Product Overview", () => {
191
185
  </div>
192
186
  </Container>
193
187
  );
194
- });
188
+ }
@@ -1,25 +1,19 @@
1
1
  import { QuestionMarkCircleIcon, XMarkIcon } from "@heroicons/react/24/outline";
2
2
  import { CheckCircleIcon, ClockIcon } from "@heroicons/react/24/solid";
3
- import { storiesOf } from "@storybook/react";
4
3
  import React, { useState } from "react";
5
4
  import { Button } from "../../action/button";
6
5
  import { Option, Select } from "../../input/select";
7
6
  import { Container } from "../../structure/container";
8
7
 
8
+ const meta = { title: "Template/Shopping Cart" };
9
+ export default meta;
10
+
11
+
9
12
  const qtyOptions: Option[] = [1, 2, 3, 4, 5].map((n) => ({
10
13
  key: String(n),
11
14
  label: String(n),
12
15
  }));
13
16
 
14
- const stories = storiesOf("Template", module).addParameters({
15
- docs: {
16
- description: {
17
- component:
18
- "Full-page e-commerce templates combining multiple components into ready-to-use layouts. These templates demonstrate real-world compositions of Container, Button, and Select for cart management with live quantity updates and order summary.",
19
- },
20
- },
21
- });
22
-
23
17
  const PRODUCT_IMG =
24
18
  "https://plus.unsplash.com/premium_photo-1669905375318-87c4050418cd?q=80&w=687&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D";
25
19
 
@@ -70,7 +64,7 @@ const initialItems: CartItem[] = [
70
64
  const SHIPPING = 5.0;
71
65
  const TAX_RATE = 0.084;
72
66
 
73
- stories.add("Shopping Cart", () => {
67
+ export const ShoppingCart = () => {
74
68
  const [items, setItems] = useState<CartItem[]>(initialItems);
75
69
 
76
70
  const handleRemove = (id: string) =>
@@ -249,4 +243,4 @@ stories.add("Shopping Cart", () => {
249
243
  </div>
250
244
  </Container>
251
245
  );
252
- });
246
+ }
@@ -1,4 +1,3 @@
1
- import { storiesOf } from "@storybook/react";
2
1
  import React, { useState } from "react";
3
2
  import { Button } from "../../action/button";
4
3
  import { ActionSection } from "../../design/actionSection";
@@ -12,12 +11,14 @@ import { Select } from "../../input/select";
12
11
  import { TextInput } from "../../input/textInput";
13
12
  import { Container } from "../../structure/container";
14
13
  import { Header } from "../../navigation/header";
15
- import "../../../index.css";
16
14
  import { Disclosure, Menu, Popover, Transition } from "@headlessui/react";
15
+
16
+ const meta = { title: "Template/User Home Page" };
17
+ export default meta;
18
+
17
19
  // eslint-disable-next-line @typescript-eslint/no-var-requires
18
- const Logo = require("../../../assets/logo.png");
20
+ const Logo = new URL("../../../assets/logo.png", import.meta.url).href;
19
21
 
20
- const stories = storiesOf("Template", module);
21
22
 
22
23
  const QUAL_ITEMS = [
23
24
  {
@@ -261,7 +262,7 @@ const PRODUCT_GRID_ITEMS: { [id: string]: React.ReactElement } = {
261
262
  ),
262
263
  };
263
264
 
264
- stories.add("User Home Page", () => {
265
+ export const UserHomePage = () => {
265
266
  const [videoModal, setVideoModal] = useState(false);
266
267
  const [videoUrl, setVideoUrl] = useState("");
267
268
 
@@ -602,4 +603,4 @@ stories.add("User Home Page", () => {
602
603
  />
603
604
  </div>
604
605
  );
605
- });
606
+ }
@@ -1,4 +1,4 @@
1
- import { storiesOf } from "@storybook/react";
1
+ import React from "react";
2
2
  import { useState } from "react";
3
3
  import { Button } from "../../action/button";
4
4
  import { ButtonGroup } from "../../action/buttonGroup";
@@ -8,14 +8,8 @@ import { TextInput } from "../../input/textInput";
8
8
  import { Tabs } from "../../navigation/tabs";
9
9
  import { Container } from "../../structure/container";
10
10
 
11
- const stories = storiesOf("Template", module).addParameters({
12
- docs: {
13
- description: {
14
- component:
15
- "Full-page admin dashboard templates combining multiple components into ready-to-use layouts. These templates demonstrate real-world compositions of Tabs, LineChart, ButtonGroup, Select, TextInput, and Container for user analytics and leaderboard views.",
16
- },
17
- },
18
- });
11
+ const meta = { title: "Template/User Ranking Dashboard" };
12
+ export default meta;
19
13
 
20
14
  interface User {
21
15
  id: string;
@@ -166,7 +160,7 @@ const OVERALL_STATS = {
166
160
  )} days avg`,
167
161
  };
168
162
 
169
- stories.add("User Ranking Dashboard", () => {
163
+ export const UserRankingDashboard = () => {
170
164
  const [selectedId, setSelectedId] = useState<string>(ALL_USERS_ID);
171
165
  const [search, setSearch] = useState("");
172
166
  const [activeTab, setActiveTab] = useState("users");
@@ -478,4 +472,4 @@ stories.add("User Ranking Dashboard", () => {
478
472
  </div>
479
473
  </Container>
480
474
  );
481
- });
475
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "blixify-ui-web-mcp",
3
- "version": "0.1.2",
3
+ "version": "0.1.18",
4
4
  "license": "MIT",
5
5
  "main": "lib/mcp/server.js",
6
6
  "bin": {