@moneko/react 0.0.6 → 0.0.7

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/lib/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
- export { default as Link } from './link.js';
2
- export { default as useNavigate } from './use-navgate.js';
1
+ export * from 'react-router-dom';
2
+ export { default as LinkWithMenuId } from './link.js';
3
+ export { default as useNavigateWithMenuId } from './use-navgate.js';
package/lib/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export{default as Link}from"./link.js";export{default as useNavigate}from"./use-navgate.js";
1
+ export*from"react-router-dom";export{default as LinkWithMenuId}from"./link.js";export{default as useNavigateWithMenuId}from"./use-navgate.js";
2
2
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export { default as Link } from './link.js';\nexport { default as useNavigate } from './use-navgate.js';\n"],"names":["default","Link","useNavigate"],"mappings":"AAAA,OAASA,WAAWC,IAAI,KAAQ,WAAY,AAC5C,QAASD,WAAWE,WAAW,KAAQ,kBAAmB"}
1
+ {"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from 'react-router-dom';\nexport { default as LinkWithMenuId } from './link.js';\nexport { default as useNavigateWithMenuId } from './use-navgate.js';\n"],"names":["default","LinkWithMenuId","useNavigateWithMenuId"],"mappings":"AAAA,WAAc,kBAAmB,AACjC,QAASA,WAAWC,cAAc,KAAQ,WAAY,AACtD,QAASD,WAAWE,qBAAqB,KAAQ,kBAAmB"}
package/lib/link.d.ts CHANGED
@@ -1,9 +1,12 @@
1
1
  import { type FC } from 'react';
2
2
  import { type LinkProps as ReactRouterLinkProps, type To } from 'react-router-dom';
3
3
  export interface LinkProps extends Omit<ReactRouterLinkProps, 'to'> {
4
- /** search保留字 */
4
+ /** 保留字 */
5
5
  reserved?: string | string[];
6
6
  to: To | -1;
7
7
  }
8
+ /** 跳转时继承部分query参数
9
+ * @default {string[]} ['menuId', 'dynamicTitle']
10
+ */
8
11
  declare const Link: FC<LinkProps>;
9
12
  export default Link;
package/lib/link.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/link.tsx"],"sourcesContent":["import React, { type FC, useMemo } from 'react';\nimport {\n Link as ReactRouterLink,\n type LinkProps as ReactRouterLinkProps,\n type To,\n useSearchParams,\n} from 'react-router-dom';\n\nexport interface LinkProps extends Omit<ReactRouterLinkProps, 'to'> {\n /** search保留字 */\n reserved?: string | string[];\n to: To | -1;\n}\n\nconst Link: FC<LinkProps> = ({ reserved, to, children, ...props }) => {\n const reservedWord = useMemo(() => {\n return ['menuId', 'dynamicTitle', ...(Array.isArray(reserved) ? reserved : [reserved])].filter(\n Boolean,\n );\n }, [reserved]);\n const [search] = useSearchParams();\n const toUrl = useMemo(() => {\n if (to === -1) {\n return -1;\n }\n /** 提取保留字属性 */\n const nextSearch: Record<string, string> = {};\n\n search.forEach((val, key) => {\n if (reservedWord.includes(key)) {\n nextSearch[key] = val;\n }\n });\n\n let entryUrl = to as string;\n const entrySearchIdx = entryUrl.indexOf('?');\n\n if (entrySearchIdx !== -1) {\n const searchByToUrl = new URLSearchParams(entryUrl.slice(entrySearchIdx));\n\n searchByToUrl.forEach((val, key) => {\n nextSearch[key] = val;\n });\n entryUrl = entryUrl.substring(0, entrySearchIdx);\n }\n const searchString = new URLSearchParams(nextSearch).toString();\n\n return searchString?.trim().length ? [entryUrl, searchString].join('?') : entryUrl;\n }, [reservedWord, search, to]);\n\n return (\n <ReactRouterLink {...props} to={toUrl as To}>\n {children}\n </ReactRouterLink>\n );\n};\n\nexport default Link;\n"],"names":["useMemo","Link","ReactRouterLink","useSearchParams","reserved","to","children","props","reservedWord","Array","isArray","filter","Boolean","search","toUrl","nextSearch","forEach","val","key","includes","entryUrl","entrySearchIdx","indexOf","searchByToUrl","URLSearchParams","slice","substring","searchString","toString","trim","length","join"],"mappings":"uCAAA,QAAyBA,WAAAA,CAAO,KAAQ,OAAQ,AAChD,QACEC,QAAQC,CAAe,CAGvBC,mBAAAA,CAAe,KACV,kBAAmB,AAmD1B,eA3C4B,CAAA,CAAC,CAAEC,SAAAA,CAAQ,CAAEC,GAAAA,CAAE,CAAEC,SAAAA,CAAQ,CAAE,GAAGC,EAAO,IAC/D,IAAMC,EAAeR,EAAQ,IACpB,CAAC,SAAU,kBAAoBS,MAAMC,QAAQN,GAAYA,EAAW,CAACA,EAAS,CAAE,CAACO,OACtFC,SAED,CAACR,EAAS,EACP,CAACS,EAAO,CAAGV,IACXW,EAAQd,EAAQ,KACpB,GAAIK,AAAO,KAAPA,EACF,OAAO,GAGT,IAAMU,EAAqC,CAAC,EAE5CF,EAAOG,QAAQ,CAACC,EAAKC,KACfV,EAAaW,SAASD,IACxBH,CAAAA,CAAU,CAACG,EAAI,CAAGD,CAAE,CAExB,GAEA,IAAIG,EAAWf,EACTgB,EAAiBD,EAASE,QAAQ,KAExC,GAAID,AAAmB,KAAnBA,EAAuB,CACzB,IAAME,EAAgB,IAAIC,gBAAgBJ,EAASK,MAAMJ,IAEzDE,EAAcP,QAAQ,CAACC,EAAKC,KAC1BH,CAAU,CAACG,EAAI,CAAGD,CACpB,GACAG,EAAWA,EAASM,UAAU,EAAGL,EACnC,CACA,IAAMM,EAAe,IAAIH,gBAAgBT,GAAYa,WAErD,OAAOD,GAAcE,OAAOC,OAAS,CAACV,EAAUO,EAAa,CAACI,KAAK,KAAOX,CAC5E,EAAG,CAACZ,EAAcK,EAAQR,EAAG,EAE7B,OACE,EAACH,GAAiB,GAAGK,CAAK,CAAEF,GAAIS,WAC7BR,GAGP,CAAA,CAEoB"}
1
+ {"version":3,"sources":["../src/link.tsx"],"sourcesContent":["import React, { type FC, useMemo } from 'react';\nimport {\n Link as ReactRouterLink,\n type LinkProps as ReactRouterLinkProps,\n type To,\n useSearchParams,\n} from 'react-router-dom';\n\nexport interface LinkProps extends Omit<ReactRouterLinkProps, 'to'> {\n /** 保留字 */\n reserved?: string | string[];\n to: To | -1;\n}\n\n/** 跳转时继承部分query参数\n * @default {string[]} ['menuId', 'dynamicTitle'] \n */\nconst Link: FC<LinkProps> = ({ reserved, to, children, ...props }) => {\n const reservedWord = useMemo(() => {\n return ['menuId', 'dynamicTitle', ...(Array.isArray(reserved) ? reserved : [reserved])].filter(\n Boolean,\n );\n }, [reserved]);\n const [search] = useSearchParams();\n const toUrl = useMemo(() => {\n if (to === -1) {\n return -1;\n }\n /** 提取保留字属性 */\n const nextSearch: Record<string, string> = {};\n\n search.forEach((val, key) => {\n if (reservedWord.includes(key)) {\n nextSearch[key] = val;\n }\n });\n\n let entryUrl = to as string;\n const entrySearchIdx = entryUrl.indexOf('?');\n\n if (entrySearchIdx !== -1) {\n const searchByToUrl = new URLSearchParams(entryUrl.slice(entrySearchIdx));\n\n searchByToUrl.forEach((val, key) => {\n nextSearch[key] = val;\n });\n entryUrl = entryUrl.substring(0, entrySearchIdx);\n }\n const searchString = new URLSearchParams(nextSearch).toString();\n\n return searchString?.trim().length ? [entryUrl, searchString].join('?') : entryUrl;\n }, [reservedWord, search, to]);\n\n return (\n <ReactRouterLink {...props} to={toUrl as To}>\n {children}\n </ReactRouterLink>\n );\n};\n\nexport default Link;\n"],"names":["useMemo","Link","ReactRouterLink","useSearchParams","reserved","to","children","props","reservedWord","Array","isArray","filter","Boolean","search","toUrl","nextSearch","forEach","val","key","includes","entryUrl","entrySearchIdx","indexOf","searchByToUrl","URLSearchParams","slice","substring","searchString","toString","trim","length","join"],"mappings":"uCAAA,QAAyBA,WAAAA,CAAO,KAAQ,OAAQ,AAChD,QACEC,QAAQC,CAAe,CAGvBC,mBAAAA,CAAe,KACV,kBAAmB,AAsD1B,eA3C4B,CAAA,CAAC,CAAEC,SAAAA,CAAQ,CAAEC,GAAAA,CAAE,CAAEC,SAAAA,CAAQ,CAAE,GAAGC,EAAO,IAC/D,IAAMC,EAAeR,EAAQ,IACpB,CAAC,SAAU,kBAAoBS,MAAMC,QAAQN,GAAYA,EAAW,CAACA,EAAS,CAAE,CAACO,OACtFC,SAED,CAACR,EAAS,EACP,CAACS,EAAO,CAAGV,IACXW,EAAQd,EAAQ,KACpB,GAAIK,AAAO,KAAPA,EACF,OAAO,GAGT,IAAMU,EAAqC,CAAC,EAE5CF,EAAOG,QAAQ,CAACC,EAAKC,KACfV,EAAaW,SAASD,IACxBH,CAAAA,CAAU,CAACG,EAAI,CAAGD,CAAE,CAExB,GAEA,IAAIG,EAAWf,EACTgB,EAAiBD,EAASE,QAAQ,KAExC,GAAID,AAAmB,KAAnBA,EAAuB,CACzB,IAAME,EAAgB,IAAIC,gBAAgBJ,EAASK,MAAMJ,IAEzDE,EAAcP,QAAQ,CAACC,EAAKC,KAC1BH,CAAU,CAACG,EAAI,CAAGD,CACpB,GACAG,EAAWA,EAASM,UAAU,EAAGL,EACnC,CACA,IAAMM,EAAe,IAAIH,gBAAgBT,GAAYa,WAErD,OAAOD,GAAcE,OAAOC,OAAS,CAACV,EAAUO,EAAa,CAACI,KAAK,KAAOX,CAC5E,EAAG,CAACZ,EAAcK,EAAQR,EAAG,EAE7B,OACE,EAACH,GAAiB,GAAGK,CAAK,CAAEF,GAAIS,WAC7BR,GAGP,CAAA,CAEoB"}
@@ -1,3 +1,6 @@
1
1
  import { type NavigateOptions, type To } from 'react-router-dom';
2
+ /** 跳转时继承部分query参数
3
+ * @default {string[]} ['menuId', 'dynamicTitle']
4
+ */
2
5
  declare const useNavigate: (reserved?: string | string[]) => (to: To | -1, options?: NavigateOptions) => void;
3
6
  export default useNavigate;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/use-navgate.ts"],"sourcesContent":["import {\n type NavigateOptions,\n type To,\n useNavigate as useNavigateReactRouter,\n useSearchParams,\n} from 'react-router-dom';\n\nconst useNavigate = (\n /** search保留字 */\n reserved?: string | string[],\n) => {\n const reservedWord = Array.from(new Set(['menuId', 'dynamicTitle', ...(reserved || [])])).filter(\n Boolean,\n );\n const navigate = useNavigateReactRouter();\n const [search] = useSearchParams();\n\n const navigateTo = (to: To | -1, options?: NavigateOptions) => {\n if (to === -1) {\n navigate(-1);\n return;\n }\n /** 提取保留字属性 */\n const nextSearch: Record<string, string> = {};\n const urlParts = (to as string).split('?');\n const searchByToUrl = new URLSearchParams(urlParts[1] || '');\n\n for (const [key, val] of search) {\n if (reservedWord.includes(key)) {\n nextSearch[key] = val;\n }\n }\n for (const [key, val] of searchByToUrl) {\n if (reservedWord.includes(key)) {\n nextSearch[key] = val;\n }\n }\n\n const searchObj = new URLSearchParams(nextSearch);\n const searchString = searchObj.toString();\n const toUrl = searchString ? `${urlParts[0]}?${searchString}` : urlParts[0];\n\n navigate(toUrl, options);\n };\n\n return navigateTo;\n};\n\nexport default useNavigate;\n"],"names":["useNavigate","useNavigateReactRouter","useSearchParams","reserved","reservedWord","Array","from","Set","filter","Boolean","navigate","search","to","options","nextSearch","urlParts","split","searchByToUrl","URLSearchParams","key","val","includes","searchObj","searchString","toString","toUrl"],"mappings":"AAAA,OAGEA,eAAeC,CAAsB,CACrCC,mBAAAA,CAAe,KACV,kBAAmB,AA2C1B,eAzCoB,CAAA,AAElBC,IAEA,IAAMC,EAAeC,MAAMC,KAAK,IAAIC,IAAI,CAAC,SAAU,kBAAoBJ,GAAY,EAAE,CAAE,GAAGK,OACxFC,SAEIC,EAAWT,IACX,CAACU,EAAO,CAAGT,IA8BjB,MA5BmB,CAACU,EAAaC,KAC/B,GAAID,AAAO,KAAPA,EAAW,CACbF,EAAS,IACT,MACF,CAEA,IAAMI,EAAqC,CAAC,EACtCC,EAAW,AAACH,EAAcI,MAAM,KAChCC,EAAgB,IAAIC,gBAAgBH,CAAQ,CAAC,EAAE,EAAI,IAEzD,IAAK,GAAM,CAACI,EAAKC,EAAI,GAAIT,EACnBP,EAAaiB,SAASF,IACxBL,CAAAA,CAAU,CAACK,EAAI,CAAGC,CAAE,EAGxB,IAAK,GAAM,CAACD,EAAKC,EAAI,GAAIH,EACnBb,EAAaiB,SAASF,IACxBL,CAAAA,CAAU,CAACK,EAAI,CAAGC,CAAE,EAIxB,IAAME,EAAY,IAAIJ,gBAAgBJ,GAChCS,EAAeD,EAAUE,WACzBC,EAAQF,EAAe,CAAC,EAAER,CAAQ,CAAC,EAAE,CAAC,CAAC,EAAEQ,EAAa,CAAC,CAAGR,CAAQ,CAAC,EAAE,CAE3EL,EAASe,EAAOZ,EAClB,CAGF,CAAA,CAE2B"}
1
+ {"version":3,"sources":["../src/use-navgate.ts"],"sourcesContent":["import {\n type NavigateOptions,\n type To,\n useNavigate as useNavigateReactRouter,\n useSearchParams,\n} from 'react-router-dom';\n\n/** 跳转时继承部分query参数\n * @default {string[]} ['menuId', 'dynamicTitle'] \n */\nconst useNavigate = (\n /** search保留字 */\n reserved?: string | string[],\n) => {\n const reservedWord = Array.from(new Set(['menuId', 'dynamicTitle', ...(reserved || [])])).filter(\n Boolean,\n );\n const navigate = useNavigateReactRouter();\n const [search] = useSearchParams();\n\n const navigateTo = (to: To | -1, options?: NavigateOptions) => {\n if (to === -1) {\n navigate(-1);\n return;\n }\n /** 提取保留字属性 */\n const nextSearch: Record<string, string> = {};\n const urlParts = (to as string).split('?');\n const searchByToUrl = new URLSearchParams(urlParts[1] || '');\n\n for (const [key, val] of search) {\n if (reservedWord.includes(key)) {\n nextSearch[key] = val;\n }\n }\n for (const [key, val] of searchByToUrl) {\n if (reservedWord.includes(key)) {\n nextSearch[key] = val;\n }\n }\n\n const searchObj = new URLSearchParams(nextSearch);\n const searchString = searchObj.toString();\n const toUrl = searchString ? `${urlParts[0]}?${searchString}` : urlParts[0];\n\n navigate(toUrl, options);\n };\n\n return navigateTo;\n};\n\nexport default useNavigate;\n"],"names":["useNavigate","useNavigateReactRouter","useSearchParams","reserved","reservedWord","Array","from","Set","filter","Boolean","navigate","search","to","options","nextSearch","urlParts","split","searchByToUrl","URLSearchParams","key","val","includes","searchObj","searchString","toString","toUrl"],"mappings":"AAAA,OAGEA,eAAeC,CAAsB,CACrCC,mBAAAA,CAAe,KACV,kBAAmB,AA8C1B,eAzCoB,CAAA,AAElBC,IAEA,IAAMC,EAAeC,MAAMC,KAAK,IAAIC,IAAI,CAAC,SAAU,kBAAoBJ,GAAY,EAAE,CAAE,GAAGK,OACxFC,SAEIC,EAAWT,IACX,CAACU,EAAO,CAAGT,IA8BjB,MA5BmB,CAACU,EAAaC,KAC/B,GAAID,AAAO,KAAPA,EAAW,CACbF,EAAS,IACT,MACF,CAEA,IAAMI,EAAqC,CAAC,EACtCC,EAAW,AAACH,EAAcI,MAAM,KAChCC,EAAgB,IAAIC,gBAAgBH,CAAQ,CAAC,EAAE,EAAI,IAEzD,IAAK,GAAM,CAACI,EAAKC,EAAI,GAAIT,EACnBP,EAAaiB,SAASF,IACxBL,CAAAA,CAAU,CAACK,EAAI,CAAGC,CAAE,EAGxB,IAAK,GAAM,CAACD,EAAKC,EAAI,GAAIH,EACnBb,EAAaiB,SAASF,IACxBL,CAAAA,CAAU,CAACK,EAAI,CAAGC,CAAE,EAIxB,IAAME,EAAY,IAAIJ,gBAAgBJ,GAChCS,EAAeD,EAAUE,WACzBC,EAAQF,EAAe,CAAC,EAAER,CAAQ,CAAC,EAAE,CAAC,CAAC,EAAEQ,EAAa,CAAC,CAAGR,CAAQ,CAAC,EAAE,CAE3EL,EAASe,EAAOZ,EAClB,CAGF,CAAA,CAE2B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moneko/react",
3
- "version": "0.0.6",
3
+ "version": "0.0.7",
4
4
  "description": "react",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -11,26 +11,21 @@
11
11
  "type": "module",
12
12
  "license": "MIT",
13
13
  "dependencies": {
14
- "@moneko/common": "1.2.0",
15
- "@moneko/css": "1.0.5",
16
14
  "@pmmmwh/react-refresh-webpack-plugin": "0.5.11",
17
- "@types/react": "^18.2.16",
18
- "@types/react-dom": "^18.2.7",
19
15
  "@types/react-router-dom": "^5.3.3",
20
- "react-activation": "0.12.4",
21
16
  "react-refresh": "0.14.0",
22
17
  "react-refresh-typescript": "2.0.9",
23
18
  "react-router": "6.15.0",
24
19
  "react-router-dom": "6.15.0",
25
- "shared-store-object": "^1.0.8",
26
- "eslint-plugin-react-hooks": "^4.6.0",
27
- "eslint-plugin-react": "7.33.2"
20
+ "shared-store-object": "^1.0.8"
28
21
  },
29
22
  "devDependencies": {
30
23
  "@swc/cli": "0.1.62",
31
24
  "@swc/core": "1.3.62",
32
25
  "@types/shelljs": "^0.8.12",
33
26
  "@types/webpack-env": "1.18.1",
27
+ "@types/react": "^18.2.16",
28
+ "@types/react-dom": "^18.2.7",
34
29
  "antd": "5.7.3",
35
30
  "eslint-config-neko": "^1.1.1",
36
31
  "react": "^18.2.0",