meticulous-ui 1.0.4 → 1.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -19,9 +19,8 @@ yarn add meticulous-ui
19
19
  ## 🧩 Usage
20
20
 
21
21
  ```jsx
22
-
23
- import { useState } from "react";
24
- import Pagination from "meticulous-ui/components/Pagination";
22
+ import { useState } from 'react';
23
+ import Pagination from 'meticulous-ui/components/Pagination';
25
24
 
26
25
  function App() {
27
26
  const [pageNumber, setPageNumber] = useState(1);
@@ -35,7 +34,6 @@ function App() {
35
34
  }
36
35
 
37
36
  export default App;
38
-
39
37
  ```
40
38
 
41
39
  ## 📦 Components
@@ -46,6 +44,12 @@ export default App;
46
44
  | `ChevronLeft` | Left navigation icon |
47
45
  | `ChevronRight` | Right navigation icon |
48
46
 
47
+ ## Demo
48
+
49
+ ```
50
+ https://xe3110.github.io/meticulous-ui/
51
+ ```
52
+
49
53
  ## 🌱 Features
50
54
 
51
55
  ⚛️ Built with React + Styled Components
@@ -1,33 +1,33 @@
1
1
  import { j as c } from "../../_virtual/jsx-runtime.js";
2
2
  import f from "../../node_modules/lodash-es/range.js";
3
3
  import { renderPageNum as o, renderThreeDots as C } from "./helpers.js";
4
- import { AllPages as s, ClickableChevronLeft as k, ClickableChevronRight as h } from "./styles.js";
4
+ import { AllPages as k, ClickableChevronLeft as h, ClickableChevronRight as d } from "./styles.js";
5
5
  const R = ({ pageNumber: i, setPageNumber: x, totalPages: n }) => {
6
6
  const j = () => {
7
7
  i > 1 && x(i - 1);
8
- }, d = () => {
8
+ }, s = () => {
9
9
  i < n && x(i + 1);
10
10
  };
11
- return n <= 7 ? /* @__PURE__ */ c.jsxs(s, { children: [
12
- /* @__PURE__ */ c.jsx(k, { onClick: j }),
11
+ return n <= 7 ? /* @__PURE__ */ c.jsxs(k, { children: [
12
+ /* @__PURE__ */ c.jsx(h, { size: 20, onClick: j }),
13
13
  f(1, n + 1).map(o(i, x)),
14
- /* @__PURE__ */ c.jsx(h, { onClick: j })
15
- ] }) : n < 10 || i < 4 || i > n - 3 && i <= n ? /* @__PURE__ */ c.jsxs(s, { children: [
16
- /* @__PURE__ */ c.jsx(k, { size: 20, onClick: j }),
14
+ /* @__PURE__ */ c.jsx(d, { size: 20, onClick: s })
15
+ ] }) : n < 10 || i < 4 || i > n - 3 && i <= n ? /* @__PURE__ */ c.jsxs(k, { children: [
16
+ /* @__PURE__ */ c.jsx(h, { size: 20, onClick: j }),
17
17
  f(1, 5).map(o(i, x)),
18
18
  C(),
19
19
  [n - 3, n - 2, n - 1, n].map(
20
20
  o(i, x)
21
21
  ),
22
- /* @__PURE__ */ c.jsx(h, { size: 20, onClick: d })
23
- ] }) : /* @__PURE__ */ c.jsxs(s, { children: [
24
- /* @__PURE__ */ c.jsx(k, { size: 20, onClick: j }),
22
+ /* @__PURE__ */ c.jsx(d, { size: 20, onClick: s })
23
+ ] }) : /* @__PURE__ */ c.jsxs(k, { children: [
24
+ /* @__PURE__ */ c.jsx(h, { size: 20, onClick: j }),
25
25
  f(1, 3).map(o(i, x)),
26
26
  C(),
27
27
  [i - 1, i, i + 1].map(o(i, x)),
28
28
  C(),
29
29
  [n - 1, n].map(o(i, x)),
30
- /* @__PURE__ */ c.jsx(h, { size: 20, onClick: d })
30
+ /* @__PURE__ */ c.jsx(d, { size: 20, onClick: s })
31
31
  ] });
32
32
  };
33
33
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"Pagination.js","sources":["../../../src/components/Pagination/Pagination.jsx"],"sourcesContent":["// Libraries\nimport _range from 'lodash-es/range';\n\n// helpers\nimport { renderThreeDots, renderPageNum } from './helpers.jsx';\n\n// styles\nimport { AllPages, ClickableChevronLeft, ClickableChevronRight } from './styles';\n\nconst Pagination = ({ pageNumber, setPageNumber, totalPages }) => {\n const setPrevPage = () => {\n if (pageNumber > 1) {\n setPageNumber(pageNumber - 1);\n }\n };\n\n const setNextPage = () => {\n if (pageNumber < totalPages) {\n setPageNumber(pageNumber + 1);\n }\n };\n\n if (totalPages <= 7) {\n return (\n <AllPages>\n <ClickableChevronLeft onClick={setPrevPage} />\n {_range(1, totalPages + 1).map(renderPageNum(pageNumber, setPageNumber))}\n <ClickableChevronRight onClick={setPrevPage} />\n </AllPages>\n );\n }\n\n if (\n totalPages < 10 ||\n pageNumber < 4 ||\n (pageNumber > totalPages - 3 && pageNumber <= totalPages)\n ) {\n return (\n <AllPages>\n <ClickableChevronLeft size={20} onClick={setPrevPage} />\n {_range(1, 5).map(renderPageNum(pageNumber, setPageNumber))}\n {renderThreeDots()}\n {[totalPages - 3, totalPages - 2, totalPages - 1, totalPages].map(\n renderPageNum(pageNumber, setPageNumber)\n )}\n <ClickableChevronRight size={20} onClick={setNextPage} />\n </AllPages>\n );\n }\n\n return (\n <AllPages>\n <ClickableChevronLeft size={20} onClick={setPrevPage} />\n {_range(1, 3).map(renderPageNum(pageNumber, setPageNumber))}\n {renderThreeDots()}\n {[pageNumber - 1, pageNumber, pageNumber + 1].map(renderPageNum(pageNumber, setPageNumber))}\n {renderThreeDots()}\n {[totalPages - 1, totalPages].map(renderPageNum(pageNumber, setPageNumber))}\n <ClickableChevronRight size={20} onClick={setNextPage} />\n </AllPages>\n );\n};\n\nexport default Pagination;\n"],"names":["Pagination","pageNumber","setPageNumber","totalPages","setPrevPage","setNextPage","AllPages","jsx","ClickableChevronLeft","_range","renderPageNum","ClickableChevronRight","renderThreeDots"],"mappings":";;;;AASA,MAAMA,IAAa,CAAC,EAAE,YAAAC,GAAY,eAAAC,GAAe,YAAAC,QAAiB;AAChE,QAAMC,IAAc,MAAM;AACxB,IAAIH,IAAa,KACfC,EAAcD,IAAa,CAAC;AAAA,EAEhC,GAEMI,IAAc,MAAM;AACxB,IAAIJ,IAAaE,KACfD,EAAcD,IAAa,CAAC;AAAA,EAEhC;AAEA,SAAIE,KAAc,2BAEbG,GAAA,EACC,UAAA;AAAA,IAAAC,gBAAAA,EAAAA,IAACC,GAAA,EAAqB,SAASJ,EAAA,CAAa;AAAA,IAC3CK,EAAO,GAAGN,IAAa,CAAC,EAAE,IAAIO,EAAcT,GAAYC,CAAa,CAAC;AAAA,IACvEK,gBAAAA,EAAAA,IAACI,GAAA,EAAsB,SAASP,EAAA,CAAa;AAAA,EAAA,GAC/C,IAKFD,IAAa,MACbF,IAAa,KACZA,IAAaE,IAAa,KAAKF,KAAcE,2BAG3CG,GAAA,EACC,UAAA;AAAA,IAAAC,gBAAAA,EAAAA,IAACC,GAAA,EAAqB,MAAM,IAAI,SAASJ,GAAa;AAAA,IACrDK,EAAO,GAAG,CAAC,EAAE,IAAIC,EAAcT,GAAYC,CAAa,CAAC;AAAA,IACzDU,EAAA;AAAA,IACA,CAACT,IAAa,GAAGA,IAAa,GAAGA,IAAa,GAAGA,CAAU,EAAE;AAAA,MAC5DO,EAAcT,GAAYC,CAAa;AAAA,IAAA;AAAA,IAEzCK,gBAAAA,EAAAA,IAACI,GAAA,EAAsB,MAAM,IAAI,SAASN,EAAA,CAAa;AAAA,EAAA,GACzD,2BAKDC,GAAA,EACC,UAAA;AAAA,IAAAC,gBAAAA,EAAAA,IAACC,GAAA,EAAqB,MAAM,IAAI,SAASJ,GAAa;AAAA,IACrDK,EAAO,GAAG,CAAC,EAAE,IAAIC,EAAcT,GAAYC,CAAa,CAAC;AAAA,IACzDU,EAAA;AAAA,IACA,CAACX,IAAa,GAAGA,GAAYA,IAAa,CAAC,EAAE,IAAIS,EAAcT,GAAYC,CAAa,CAAC;AAAA,IACzFU,EAAA;AAAA,IACA,CAACT,IAAa,GAAGA,CAAU,EAAE,IAAIO,EAAcT,GAAYC,CAAa,CAAC;AAAA,IAC1EK,gBAAAA,EAAAA,IAACI,GAAA,EAAsB,MAAM,IAAI,SAASN,EAAA,CAAa;AAAA,EAAA,GACzD;AAEJ;"}
1
+ {"version":3,"file":"Pagination.js","sources":["../../../src/components/Pagination/Pagination.jsx"],"sourcesContent":["// Libraries\nimport _range from 'lodash-es/range';\n\n// helpers\nimport { renderThreeDots, renderPageNum } from './helpers.jsx';\n\n// styles\nimport { AllPages, ClickableChevronLeft, ClickableChevronRight } from './styles';\n\nconst Pagination = ({ pageNumber, setPageNumber, totalPages }) => {\n const setPrevPage = () => {\n if (pageNumber > 1) {\n setPageNumber(pageNumber - 1);\n }\n };\n\n const setNextPage = () => {\n if (pageNumber < totalPages) {\n setPageNumber(pageNumber + 1);\n }\n };\n\n if (totalPages <= 7) {\n return (\n <AllPages>\n <ClickableChevronLeft size={20} onClick={setPrevPage} />\n {_range(1, totalPages + 1).map(renderPageNum(pageNumber, setPageNumber))}\n <ClickableChevronRight size={20} onClick={setNextPage} />\n </AllPages>\n );\n }\n\n if (\n totalPages < 10 ||\n pageNumber < 4 ||\n (pageNumber > totalPages - 3 && pageNumber <= totalPages)\n ) {\n return (\n <AllPages>\n <ClickableChevronLeft size={20} onClick={setPrevPage} />\n {_range(1, 5).map(renderPageNum(pageNumber, setPageNumber))}\n {renderThreeDots()}\n {[totalPages - 3, totalPages - 2, totalPages - 1, totalPages].map(\n renderPageNum(pageNumber, setPageNumber)\n )}\n <ClickableChevronRight size={20} onClick={setNextPage} />\n </AllPages>\n );\n }\n\n return (\n <AllPages>\n <ClickableChevronLeft size={20} onClick={setPrevPage} />\n {_range(1, 3).map(renderPageNum(pageNumber, setPageNumber))}\n {renderThreeDots()}\n {[pageNumber - 1, pageNumber, pageNumber + 1].map(renderPageNum(pageNumber, setPageNumber))}\n {renderThreeDots()}\n {[totalPages - 1, totalPages].map(renderPageNum(pageNumber, setPageNumber))}\n <ClickableChevronRight size={20} onClick={setNextPage} />\n </AllPages>\n );\n};\n\nexport default Pagination;\n"],"names":["Pagination","pageNumber","setPageNumber","totalPages","setPrevPage","setNextPage","AllPages","jsx","ClickableChevronLeft","_range","renderPageNum","ClickableChevronRight","renderThreeDots"],"mappings":";;;;AASA,MAAMA,IAAa,CAAC,EAAE,YAAAC,GAAY,eAAAC,GAAe,YAAAC,QAAiB;AAChE,QAAMC,IAAc,MAAM;AACxB,IAAIH,IAAa,KACfC,EAAcD,IAAa,CAAC;AAAA,EAEhC,GAEMI,IAAc,MAAM;AACxB,IAAIJ,IAAaE,KACfD,EAAcD,IAAa,CAAC;AAAA,EAEhC;AAEA,SAAIE,KAAc,2BAEbG,GAAA,EACC,UAAA;AAAA,IAAAC,gBAAAA,EAAAA,IAACC,GAAA,EAAqB,MAAM,IAAI,SAASJ,GAAa;AAAA,IACrDK,EAAO,GAAGN,IAAa,CAAC,EAAE,IAAIO,EAAcT,GAAYC,CAAa,CAAC;AAAA,IACvEK,gBAAAA,EAAAA,IAACI,GAAA,EAAsB,MAAM,IAAI,SAASN,EAAA,CAAa;AAAA,EAAA,GACzD,IAKFF,IAAa,MACbF,IAAa,KACZA,IAAaE,IAAa,KAAKF,KAAcE,2BAG3CG,GAAA,EACC,UAAA;AAAA,IAAAC,gBAAAA,EAAAA,IAACC,GAAA,EAAqB,MAAM,IAAI,SAASJ,GAAa;AAAA,IACrDK,EAAO,GAAG,CAAC,EAAE,IAAIC,EAAcT,GAAYC,CAAa,CAAC;AAAA,IACzDU,EAAA;AAAA,IACA,CAACT,IAAa,GAAGA,IAAa,GAAGA,IAAa,GAAGA,CAAU,EAAE;AAAA,MAC5DO,EAAcT,GAAYC,CAAa;AAAA,IAAA;AAAA,IAEzCK,gBAAAA,EAAAA,IAACI,GAAA,EAAsB,MAAM,IAAI,SAASN,EAAA,CAAa;AAAA,EAAA,GACzD,2BAKDC,GAAA,EACC,UAAA;AAAA,IAAAC,gBAAAA,EAAAA,IAACC,GAAA,EAAqB,MAAM,IAAI,SAASJ,GAAa;AAAA,IACrDK,EAAO,GAAG,CAAC,EAAE,IAAIC,EAAcT,GAAYC,CAAa,CAAC;AAAA,IACzDU,EAAA;AAAA,IACA,CAACX,IAAa,GAAGA,GAAYA,IAAa,CAAC,EAAE,IAAIS,EAAcT,GAAYC,CAAa,CAAC;AAAA,IACzFU,EAAA;AAAA,IACA,CAACT,IAAa,GAAGA,CAAU,EAAE,IAAIO,EAAcT,GAAYC,CAAa,CAAC;AAAA,IAC1EK,gBAAAA,EAAAA,IAACI,GAAA,EAAsB,MAAM,IAAI,SAASN,EAAA,CAAa;AAAA,EAAA,GACzD;AAEJ;"}
@@ -7,8 +7,8 @@ const d = r.div`
7
7
  justify-content: center;
8
8
  align-items: center;
9
9
  gap: 0.6rem;
10
- min-width: 175rem;
11
- width: 175rem;
10
+ min-width: 100%;
11
+ width: 100%;
12
12
  `, h = r.div`
13
13
  height: 3rem;
14
14
  width: 3rem;
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sources":["../../../src/components/Pagination/styles.js"],"sourcesContent":["// Libraries\nimport styled, { css } from 'styled-components';\n\n// Icons\nimport ChevronLeft from '../Icons/ChevronLeft';\nimport ChevronRight from '../Icons/ChevronRight';\n\n// constants\nimport { GREY, TEAL, WHITE } from '../../colors';\n\nexport const AllPages = styled.div`\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 0.6rem;\n min-width: 175rem;\n width: 175rem;\n`;\n\nexport const Page = styled.div`\n height: 3rem;\n width: 3rem;\n border-radius: 50%;\n padding-top: 0.6rem;\n text-align: center;\n font-size: 1.4rem;\n ${({ isSelected }) =>\n isSelected\n ? css`\n cursor: auto;\n color: ${WHITE};\n background-color: ${TEAL};\n `\n : css`\n cursor: pointer;\n color: ${GREY};\n `}\n`;\n\nexport const P = styled.p`\n color: ${GREY};\n`;\n\nexport const ClickableChevronLeft = styled(ChevronLeft)`\n cursor: pointer;\n`;\n\nexport const ClickableChevronRight = styled(ChevronRight)`\n cursor: pointer;\n`;\n"],"names":["AllPages","styled","Page","isSelected","css","WHITE","TEAL","GREY","P","ClickableChevronLeft","ChevronLeft","ClickableChevronRight","ChevronRight"],"mappings":";;;;AAUY,MAACA,IAAWC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASlBC,IAAOD,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOvB,CAAC,EAAE,YAAAE,EAAU,MACbA,IACIC;AAAAA;AAAAA,mBAEWC,CAAK;AAAA,8BACMC,CAAI;AAAA,YAE1BF;AAAAA;AAAAA,mBAEWG,CAAI;AAAA,SACd;AAAA,GAGIC,IAAIP,EAAO;AAAA,WACbM,CAAI;AAAA,GAGFE,IAAuBR,EAAOS,CAAW;AAAA;AAAA,GAIzCC,IAAwBV,EAAOW,CAAY;AAAA;AAAA;"}
1
+ {"version":3,"file":"styles.js","sources":["../../../src/components/Pagination/styles.js"],"sourcesContent":["// Libraries\nimport styled, { css } from 'styled-components';\n\n// Icons\nimport ChevronLeft from '../Icons/ChevronLeft';\nimport ChevronRight from '../Icons/ChevronRight';\n\n// constants\nimport { GREY, TEAL, WHITE } from '../../colors';\n\nexport const AllPages = styled.div`\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 0.6rem;\n min-width: 100%;\n width: 100%;\n`;\n\nexport const Page = styled.div`\n height: 3rem;\n width: 3rem;\n border-radius: 50%;\n padding-top: 0.6rem;\n text-align: center;\n font-size: 1.4rem;\n ${({ isSelected }) =>\n isSelected\n ? css`\n cursor: auto;\n color: ${WHITE};\n background-color: ${TEAL};\n `\n : css`\n cursor: pointer;\n color: ${GREY};\n `}\n`;\n\nexport const P = styled.p`\n color: ${GREY};\n`;\n\nexport const ClickableChevronLeft = styled(ChevronLeft)`\n cursor: pointer;\n`;\n\nexport const ClickableChevronRight = styled(ChevronRight)`\n cursor: pointer;\n`;\n"],"names":["AllPages","styled","Page","isSelected","css","WHITE","TEAL","GREY","P","ClickableChevronLeft","ChevronLeft","ClickableChevronRight","ChevronRight"],"mappings":";;;;AAUY,MAACA,IAAWC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GASlBC,IAAOD,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOvB,CAAC,EAAE,YAAAE,EAAU,MACbA,IACIC;AAAAA;AAAAA,mBAEWC,CAAK;AAAA,8BACMC,CAAI;AAAA,YAE1BF;AAAAA;AAAAA,mBAEWG,CAAI;AAAA,SACd;AAAA,GAGIC,IAAIP,EAAO;AAAA,WACbM,CAAI;AAAA,GAGFE,IAAuBR,EAAOS,CAAW;AAAA;AAAA,GAIzCC,IAAwBV,EAAOW,CAAY;AAAA;AAAA;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "meticulous-ui",
3
- "version": "1.0.4",
3
+ "version": "1.0.5",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/index.js",
6
6
  "files": [
@@ -15,18 +15,31 @@
15
15
  },
16
16
  "keywords": [
17
17
  "react",
18
- "components",
19
18
  "ui",
19
+ "icons",
20
+ "components",
21
+ "pagination",
20
22
  "meticulous-ui"
21
23
  ],
22
24
  "scripts": {
23
25
  "dev": "vite",
24
26
  "build": "vite build",
25
27
  "format": "npx prettier --write .",
26
- "publish:latest": "npm run build && npm publish --access public"
28
+ "publish:latest": "npm run build && npm publish --access public",
29
+ "storybook": "storybook dev -p 6006",
30
+ "build-storybook": "storybook build",
31
+ "deploy-storybook": "gh-pages -d storybook-static"
27
32
  },
28
33
  "dependencies": {
29
34
  "@vitejs/plugin-react": "^5.0.4",
30
35
  "lodash-es": "^4.17.21"
36
+ },
37
+ "devDependencies": {
38
+ "@storybook/addon-docs": "^9.1.10",
39
+ "@storybook/react-vite": "^9.1.10",
40
+ "eslint-plugin-storybook": "^9.1.10",
41
+ "gh-pages": "^6.3.0",
42
+ "prop-types": "^15.8.1",
43
+ "storybook": "^9.1.10"
31
44
  }
32
45
  }
@@ -1,5 +0,0 @@
1
- import o from "./Pagination.js";
2
- export {
3
- o as default
4
- };
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}