@arkyn/components 2.2.3 → 2.2.4

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.
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useLocation, Link } from "@remix-run/react";
2
+ import { useLocation, Link } from "react-router";
3
3
  import { ChevronRight } from "lucide-react";
4
4
  import "./styles.css";
5
5
  function BreadcrumbLink(args) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/Form/FormController/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAW/E,OAAO,cAAc,CAAC;AAKtB,iBAAS,cAAc,CAAC,KAAK,EAAE,mBAAmB,2CA4BjD;AAED,iBAAS,iBAAiB,+BAEzB;AAED,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/Form/FormController/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAI/E,OAAO,cAAc,CAAC;AAItB,iBAAS,cAAc,CAAC,KAAK,EAAE,mBAAmB,2CA4BjD;AAED,iBAAS,iBAAiB,+BAEzB;AAED,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { createContext, useContext, useId, useRef, } from "react";
3
- import "./styles.css";
2
+ import { createContext, useContext, useId, useRef } from "react";
4
3
  import { useFieldErrors } from "../../../hooks/useFieldErrors";
4
+ import "./styles.css";
5
5
  const FormControllerContext = createContext({});
6
6
  function FormController(props) {
7
7
  const { children, className: baseClassName, id: formControllerId, ...rest } = props;
@@ -168,8 +168,6 @@ declare function getConfig(props: CpfCnpjInputProps, isFocused: boolean): {
168
168
  onProgressCapture?: import("react").ReactEventHandler<HTMLInputElement>;
169
169
  onRateChange?: import("react").ReactEventHandler<HTMLInputElement>;
170
170
  onRateChangeCapture?: import("react").ReactEventHandler<HTMLInputElement>;
171
- onResize?: import("react").ReactEventHandler<HTMLInputElement>;
172
- onResizeCapture?: import("react").ReactEventHandler<HTMLInputElement>;
173
171
  onSeeked?: import("react").ReactEventHandler<HTMLInputElement>;
174
172
  onSeekedCapture?: import("react").ReactEventHandler<HTMLInputElement>;
175
173
  onSeeking?: import("react").ReactEventHandler<HTMLInputElement>;
@@ -1 +1 @@
1
- {"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../../../src/components/Input/CpfCpnjInput/getConfig.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAMtD,iBAAS,SAAS,CAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkE9D;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../../../src/components/Input/CpfCpnjInput/getConfig.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAMtD,iBAAS,SAAS,CAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkE9D;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -168,8 +168,6 @@ declare function getConfig(props: CurrencyInputProps, isFocused: boolean): {
168
168
  onProgressCapture?: import("react").ReactEventHandler<HTMLInputElement>;
169
169
  onRateChange?: import("react").ReactEventHandler<HTMLInputElement>;
170
170
  onRateChangeCapture?: import("react").ReactEventHandler<HTMLInputElement>;
171
- onResize?: import("react").ReactEventHandler<HTMLInputElement>;
172
- onResizeCapture?: import("react").ReactEventHandler<HTMLInputElement>;
173
171
  onSeeked?: import("react").ReactEventHandler<HTMLInputElement>;
174
172
  onSeekedCapture?: import("react").ReactEventHandler<HTMLInputElement>;
175
173
  onSeeking?: import("react").ReactEventHandler<HTMLInputElement>;
@@ -1 +1 @@
1
- {"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../../../src/components/Input/CurrencyInput/getConfig.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAKvD,iBAAS,SAAS,CAAC,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0D/D;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../../../src/components/Input/CurrencyInput/getConfig.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAKvD,iBAAS,SAAS,CAAC,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0D/D;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -170,8 +170,6 @@ declare function getConfig(props: MaskedInputProps, isFocused: boolean): {
170
170
  onProgressCapture?: import("react").ReactEventHandler<HTMLInputElement>;
171
171
  onRateChange?: import("react").ReactEventHandler<HTMLInputElement>;
172
172
  onRateChangeCapture?: import("react").ReactEventHandler<HTMLInputElement>;
173
- onResize?: import("react").ReactEventHandler<HTMLInputElement>;
174
- onResizeCapture?: import("react").ReactEventHandler<HTMLInputElement>;
175
173
  onSeeked?: import("react").ReactEventHandler<HTMLInputElement>;
176
174
  onSeekedCapture?: import("react").ReactEventHandler<HTMLInputElement>;
177
175
  onSeeking?: import("react").ReactEventHandler<HTMLInputElement>;
@@ -1 +1 @@
1
- {"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../../../src/components/Input/MaskInput/getConfig.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAKrD,iBAAS,SAAS,CAAC,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuD7D;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../../../src/components/Input/MaskInput/getConfig.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAKrD,iBAAS,SAAS,CAAC,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuD7D;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -171,8 +171,6 @@ declare function getConfig(props: SimpleInputProps, isFocused: boolean): {
171
171
  onProgressCapture?: import("react").ReactEventHandler<HTMLInputElement>;
172
172
  onRateChange?: import("react").ReactEventHandler<HTMLInputElement>;
173
173
  onRateChangeCapture?: import("react").ReactEventHandler<HTMLInputElement>;
174
- onResize?: import("react").ReactEventHandler<HTMLInputElement>;
175
- onResizeCapture?: import("react").ReactEventHandler<HTMLInputElement>;
176
174
  onSeeked?: import("react").ReactEventHandler<HTMLInputElement>;
177
175
  onSeekedCapture?: import("react").ReactEventHandler<HTMLInputElement>;
178
176
  onSeeking?: import("react").ReactEventHandler<HTMLInputElement>;
@@ -1 +1 @@
1
- {"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../../../src/components/Input/SimpleInput/getConfig.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAKrD,iBAAS,SAAS,CAAC,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoD7D;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../../../src/components/Input/SimpleInput/getConfig.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAKrD,iBAAS,SAAS,CAAC,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoD7D;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useNavigate } from "@remix-run/react";
3
2
  import { ChevronLeft, ChevronRight, Ellipsis } from "lucide-react";
3
+ import { useNavigate } from "react-router";
4
4
  import { useScopedParams } from "../../hooks/useScopedParams";
5
5
  import "./styles.css";
6
6
  function generatePagesArray(from, to) {
@@ -182,8 +182,6 @@ declare function getConfig(props: SelectProps, isFocused: boolean): {
182
182
  onProgressCapture?: import("react").ReactEventHandler<HTMLInputElement>;
183
183
  onRateChange?: import("react").ReactEventHandler<HTMLInputElement>;
184
184
  onRateChangeCapture?: import("react").ReactEventHandler<HTMLInputElement>;
185
- onResize?: import("react").ReactEventHandler<HTMLInputElement>;
186
- onResizeCapture?: import("react").ReactEventHandler<HTMLInputElement>;
187
185
  onSeeked?: import("react").ReactEventHandler<HTMLInputElement>;
188
186
  onSeekedCapture?: import("react").ReactEventHandler<HTMLInputElement>;
189
187
  onSeeking?: import("react").ReactEventHandler<HTMLInputElement>;
@@ -1 +1 @@
1
- {"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../../src/components/Select/getConfig.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAK3C,iBAAS,SAAS,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2CxD;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"getConfig.d.ts","sourceRoot":"","sources":["../../../src/components/Select/getConfig.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAK3C,iBAAS,SAAS,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2CxD;AAED,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -1,5 +1,5 @@
1
- import { useActionData, useFetchers, useLocation, useNavigate, } from "@remix-run/react";
2
1
  import { useContext, useEffect } from "react";
2
+ import { useActionData, useFetchers, useLocation, useNavigate, } from "react-router";
3
3
  import { animateScroll } from "react-scroll";
4
4
  import { ModalContext } from "../context/ModalContext";
5
5
  import { useScopedParams } from "./useScopedParams";
@@ -1,5 +1,5 @@
1
- import { useActionData, useFetchers, useNavigation } from "@remix-run/react";
2
1
  import { useEffect, useState } from "react";
2
+ import { useActionData, useFetchers, useNavigation } from "react-router";
3
3
  function useFieldErrors() {
4
4
  const actionData = useActionData();
5
5
  const navigation = useNavigation();
@@ -1,4 +1,4 @@
1
- import { useLocation } from "@remix-run/react";
1
+ import { useLocation } from "react-router";
2
2
  function useScopedParams(scope = "") {
3
3
  const location = useLocation();
4
4
  const searchParams = new URLSearchParams(location.search);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arkyn/components",
3
- "version": "2.2.3",
3
+ "version": "2.2.4",
4
4
  "main": "./dist/bundle.js",
5
5
  "types": "./dist/index.d.ts",
6
6
  "author": "Lucas Gonçalves",
@@ -24,14 +24,15 @@
24
24
  "slate-react": "^0.110.3"
25
25
  },
26
26
  "peerDependencies": {
27
- "@remix-run/react": "^2.15.0",
28
- "react": "^18.3.1",
29
- "react-dom": "^18.3.1"
27
+ "react": ">=18.3.1",
28
+ "react-dom": ">=18.3.1",
29
+ "react-router": ">=7.6.0"
30
30
  },
31
31
  "devDependencies": {
32
32
  "@types/is-hotkey": "^0.1.10",
33
33
  "@types/react": "^18.3.20",
34
34
  "@types/react-dom": "^18.3.5",
35
+ "@types/react-scroll": "^1.8.10",
35
36
  "bun-types": "latest",
36
37
  "typescript": "^5.8.2",
37
38
  "vite": "^5.4.15"
@@ -1,5 +1,5 @@
1
1
  import { BreadcrumbLinkProps } from "@arkyn/types";
2
- import { useLocation, Link } from "@remix-run/react";
2
+ import { useLocation, Link } from "react-router";
3
3
  import { ChevronRight } from "lucide-react";
4
4
 
5
5
  import "./styles.css";
@@ -1,16 +1,8 @@
1
1
  import { FormControllerContextProps, FormControllerProps } from "@arkyn/types";
2
- import { useActionData, useFetchers } from "@remix-run/react";
3
- import {
4
- createContext,
5
- useContext,
6
- useEffect,
7
- useId,
8
- useRef,
9
- useState,
10
- } from "react";
2
+ import { createContext, useContext, useId, useRef } from "react";
11
3
 
12
- import "./styles.css";
13
4
  import { useFieldErrors } from "../../../hooks/useFieldErrors";
5
+ import "./styles.css";
14
6
 
15
7
  const FormControllerContext = createContext({} as FormControllerContextProps);
16
8
 
@@ -1,6 +1,6 @@
1
1
  import { PaginationProps } from "@arkyn/types";
2
- import { useNavigate } from "@remix-run/react";
3
2
  import { ChevronLeft, ChevronRight, Ellipsis } from "lucide-react";
3
+ import { useNavigate } from "react-router";
4
4
 
5
5
  import { useScopedParams } from "../../hooks/useScopedParams";
6
6
 
@@ -1,11 +1,11 @@
1
1
  import { ToastProps } from "@arkyn/types";
2
+ import { useContext, useEffect } from "react";
2
3
  import {
3
4
  useActionData,
4
5
  useFetchers,
5
6
  useLocation,
6
7
  useNavigate,
7
- } from "@remix-run/react";
8
- import { useContext, useEffect } from "react";
8
+ } from "react-router";
9
9
  import { animateScroll } from "react-scroll";
10
10
 
11
11
  import { ModalContext } from "../context/ModalContext";
@@ -1,5 +1,5 @@
1
- import { useActionData, useFetchers, useNavigation } from "@remix-run/react";
2
1
  import { useEffect, useState } from "react";
2
+ import { useActionData, useFetchers, useNavigation } from "react-router";
3
3
 
4
4
  function useFieldErrors() {
5
5
  const actionData = useActionData<any>();
@@ -1,4 +1,4 @@
1
- import { useLocation } from "@remix-run/react";
1
+ import { useLocation } from "react-router";
2
2
 
3
3
  type ParamsType = Record<string, string | number | boolean | undefined>;
4
4
 
package/vite.config.js CHANGED
@@ -8,7 +8,7 @@ export default defineConfig({
8
8
  rollupOptions: {
9
9
  external: [
10
10
  "@react-input/mask",
11
- "@remix-run/react",
11
+ "react-router",
12
12
  "framer-motion",
13
13
  "lucide-react",
14
14
  "react",