react-filter-by-url
Advanced tools
@@ -8,6 +8,7 @@ /** | ||
| */ | ||
| export declare function useFilter(params: string[], apiUrl: string): { | ||
| queryStr: string; | ||
| export declare function useUrlFilter(params: string[], apiUrl: string): { | ||
| apiQuery: string; | ||
| queryString: string; | ||
| getDefaultParamValue: (params: string, defaultValue: string) => string; | ||
| handleSelectFilter: (name: string, value: string) => void; | ||
| }; |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.useFilter = void 0; | ||
| exports.useUrlFilter = void 0; | ||
| const react_1 = require("react"); | ||
@@ -13,6 +13,7 @@ const react_router_dom_1 = require("react-router-dom"); | ||
| */ | ||
| function useFilter(params, apiUrl) { | ||
| function useUrlFilter(params, apiUrl) { | ||
| const query = useQuery(); | ||
| const navigate = (0, react_router_dom_1.useNavigate)(); | ||
| const [queryStr, setQueryStr] = (0, react_1.useState)(apiUrl); | ||
| const [apiQuery, setApiQuery] = (0, react_1.useState)(apiUrl); | ||
| const [queryString, setQueryString] = (0, react_1.useState)(''); | ||
| const handleSelectFilter = (name, value) => { | ||
@@ -22,3 +23,4 @@ const filter = convertParamsToFilterObject(params); | ||
| const query = buildQuery(params, filter); | ||
| setQueryStr(apiUrl + query); | ||
| setApiQuery(apiUrl + query); | ||
| setQueryString(query); | ||
| navigate(query); | ||
@@ -44,3 +46,4 @@ }; | ||
| return { | ||
| queryStr, | ||
| apiQuery, | ||
| queryString, | ||
| getDefaultParamValue, | ||
@@ -50,3 +53,3 @@ handleSelectFilter | ||
| } | ||
| exports.useFilter = useFilter; | ||
| exports.useUrlFilter = useUrlFilter; | ||
| function useQuery() { | ||
@@ -53,0 +56,0 @@ const { search } = (0, react_router_dom_1.useLocation)(); |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"useUrlFilter.js","sourceRoot":"","sources":["../../../src/hooks/useUrlFilter.ts"],"names":[],"mappings":";;;AAAA,iCAA0C;AAC1C,uDAA4D;AAE5D;;;;;;GAMG;AAEH,SAAgB,SAAS,CAAC,MAAgB,EAAE,MAAc;IACtD,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,IAAA,8BAAW,GAAE,CAAC;IAC/B,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAS,MAAM,CAAC,CAAC;IAEzD,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,KAAa,EAAQ,EAAE;QAC7D,MAAM,MAAM,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACrB,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzC,WAAW,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;QAC5B,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,MAAgB,EAAE,MAAW,EAAU,EAAE;QACzD,IAAI,GAAG,GAAG,GAAG,CAAC;QACd,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACrB,GAAG,IAAI,IAAI,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,2BAA2B,GAAG,CAAC,MAAgB,EAAO,EAAE;QAC1D,MAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,MAAM,CAAC,OAAO,CAAC,CAAC,KAAa,EAAE,EAAE;YAC7B,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC3C,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAE,YAAoB,EAAU,EAAE;QAC1E,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC;IAC7C,CAAC,CAAC;IAEF,OAAO;QACH,QAAQ;QACR,oBAAoB;QACpB,kBAAkB;KACrB,CAAC;AACN,CAAC;AAtCD,8BAsCC;AAED,SAAS,QAAQ;IACb,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,8BAAW,GAAE,CAAC;IACjC,OAAO,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AAChE,CAAC"} | ||
| {"version":3,"file":"useUrlFilter.js","sourceRoot":"","sources":["../../../src/hooks/useUrlFilter.ts"],"names":[],"mappings":";;;AAAA,iCAA0C;AAC1C,uDAA4D;AAE5D;;;;;;GAMG;AAEH,SAAgB,YAAY,CAAC,MAAgB,EAAE,MAAc;IACzD,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,IAAA,8BAAW,GAAE,CAAC;IAC/B,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAS,MAAM,CAAC,CAAC;IACzD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,EAAS,EAAE,CAAC,CAAC;IAE3D,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,KAAa,EAAQ,EAAE;QAC7D,MAAM,MAAM,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACrB,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzC,WAAW,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;QAC5B,cAAc,CAAC,KAAK,CAAC,CAAC;QACtB,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,MAAgB,EAAE,MAAW,EAAU,EAAE;QACzD,IAAI,GAAG,GAAG,GAAG,CAAC;QACd,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACrB,GAAG,IAAI,IAAI,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,2BAA2B,GAAG,CAAC,MAAgB,EAAO,EAAE;QAC1D,MAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,MAAM,CAAC,OAAO,CAAC,CAAC,KAAa,EAAE,EAAE;YAC7B,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC3C,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAE,YAAoB,EAAU,EAAE;QAC1E,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC;IAC7C,CAAC,CAAC;IAEF,OAAO;QACH,QAAQ;QACR,WAAW;QACX,oBAAoB;QACpB,kBAAkB;KACrB,CAAC;AACN,CAAC;AAzCD,oCAyCC;AAED,SAAS,QAAQ;IACb,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,8BAAW,GAAE,CAAC;IACjC,OAAO,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AAChE,CAAC"} |
@@ -8,6 +8,7 @@ /** | ||
| */ | ||
| export declare function useFilter(params: string[], apiUrl: string): { | ||
| queryStr: string; | ||
| export declare function useUrlFilter(params: string[], apiUrl: string): { | ||
| apiQuery: string; | ||
| queryString: string; | ||
| getDefaultParamValue: (params: string, defaultValue: string) => string; | ||
| handleSelectFilter: (name: string, value: string) => void; | ||
| }; |
@@ -10,6 +10,7 @@ import { useMemo, useState } from 'react'; | ||
| */ | ||
| export function useFilter(params, apiUrl) { | ||
| export function useUrlFilter(params, apiUrl) { | ||
| const query = useQuery(); | ||
| const navigate = useNavigate(); | ||
| const [queryStr, setQueryStr] = useState(apiUrl); | ||
| const [apiQuery, setApiQuery] = useState(apiUrl); | ||
| const [queryString, setQueryString] = useState(''); | ||
| const handleSelectFilter = (name, value) => { | ||
@@ -19,3 +20,4 @@ const filter = convertParamsToFilterObject(params); | ||
| const query = buildQuery(params, filter); | ||
| setQueryStr(apiUrl + query); | ||
| setApiQuery(apiUrl + query); | ||
| setQueryString(query); | ||
| navigate(query); | ||
@@ -41,3 +43,4 @@ }; | ||
| return { | ||
| queryStr, | ||
| apiQuery, | ||
| queryString, | ||
| getDefaultParamValue, | ||
@@ -44,0 +47,0 @@ handleSelectFilter |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"useUrlFilter.js","sourceRoot":"","sources":["../../../src/hooks/useUrlFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE5D;;;;;;GAMG;AAEH,MAAM,UAAU,SAAS,CAAC,MAAgB,EAAE,MAAc;IACtD,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAS,MAAM,CAAC,CAAC;IAEzD,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,KAAa,EAAQ,EAAE;QAC7D,MAAM,MAAM,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACrB,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzC,WAAW,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;QAC5B,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,MAAgB,EAAE,MAAW,EAAU,EAAE;QACzD,IAAI,GAAG,GAAG,GAAG,CAAC;QACd,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACrB,GAAG,IAAI,IAAI,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,2BAA2B,GAAG,CAAC,MAAgB,EAAO,EAAE;QAC1D,MAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,MAAM,CAAC,OAAO,CAAC,CAAC,KAAa,EAAE,EAAE;YAC7B,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC3C,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAE,YAAoB,EAAU,EAAE;QAC1E,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC;IAC7C,CAAC,CAAC;IAEF,OAAO;QACH,QAAQ;QACR,oBAAoB;QACpB,kBAAkB;KACrB,CAAC;AACN,CAAC;AAED,SAAS,QAAQ;IACb,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IACjC,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AAChE,CAAC"} | ||
| {"version":3,"file":"useUrlFilter.js","sourceRoot":"","sources":["../../../src/hooks/useUrlFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE5D;;;;;;GAMG;AAEH,MAAM,UAAU,YAAY,CAAC,MAAgB,EAAE,MAAc;IACzD,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAS,MAAM,CAAC,CAAC;IACzD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IAE3D,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,KAAa,EAAQ,EAAE;QAC7D,MAAM,MAAM,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACrB,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzC,WAAW,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;QAC5B,cAAc,CAAC,KAAK,CAAC,CAAC;QACtB,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,MAAgB,EAAE,MAAW,EAAU,EAAE;QACzD,IAAI,GAAG,GAAG,GAAG,CAAC;QACd,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACrB,GAAG,IAAI,IAAI,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,2BAA2B,GAAG,CAAC,MAAgB,EAAO,EAAE;QAC1D,MAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,MAAM,CAAC,OAAO,CAAC,CAAC,KAAa,EAAE,EAAE;YAC7B,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC3C,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAE,YAAoB,EAAU,EAAE;QAC1E,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC;IAC7C,CAAC,CAAC;IAEF,OAAO;QACH,QAAQ;QACR,WAAW;QACX,oBAAoB;QACpB,kBAAkB;KACrB,CAAC;AACN,CAAC;AAED,SAAS,QAAQ;IACb,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IACjC,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AAChE,CAAC"} |
+1
-1
| { | ||
| "name": "react-filter-by-url", | ||
| "version": "0.0.3", | ||
| "version": "0.0.4", | ||
| "description": "", | ||
@@ -5,0 +5,0 @@ "main": "dist/cjs/index.js", |
14223
3.86%170
4.94%