@tracktor/shared-module 0.18.0 → 0.18.2
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/CHANGELOG.md
CHANGED
package/dist/main.js
CHANGED
|
@@ -634,7 +634,7 @@ const K = gr({
|
|
|
634
634
|
translate: void 0,
|
|
635
635
|
useAuth: void 0,
|
|
636
636
|
useLocation: void 0
|
|
637
|
-
}),
|
|
637
|
+
}), Pr = ({
|
|
638
638
|
axios: a,
|
|
639
639
|
children: i,
|
|
640
640
|
translate: o,
|
|
@@ -657,7 +657,7 @@ const K = gr({
|
|
|
657
657
|
[v, c, a, o, u, t, m]
|
|
658
658
|
);
|
|
659
659
|
return /* @__PURE__ */ A.jsx(K.Provider, { value: l, children: i });
|
|
660
|
-
}, H = (a) => `RequireAuth require « ${a} » dependency. You can provide with InjectDependenciesProvider or directly in props.`,
|
|
660
|
+
}, H = (a) => `RequireAuth require « ${a} » dependency. You can provide with InjectDependenciesProvider or directly in props.`, xr = ({
|
|
661
661
|
Fallback: a,
|
|
662
662
|
loginPath: i = "/login",
|
|
663
663
|
localStorageKey: o = "user",
|
|
@@ -690,7 +690,7 @@ const K = gr({
|
|
|
690
690
|
}
|
|
691
691
|
));
|
|
692
692
|
}, [v == null ? void 0 : v.defaults.headers.common, v == null ? void 0 : v.interceptors.response, o, u]), O && !h ? /* @__PURE__ */ A.jsx(yr, { fallback: a, children: (D = ($ = T.state) == null ? void 0 : $.from) != null && D.state && ((_ = (j = T.state) == null ? void 0 : j.from) == null ? void 0 : _.pathname) === i ? /* @__PURE__ */ A.jsx(E, { to: T.state.from.state.from.pathname + T.state.from.state.from.search, replace: !0 }) : /* @__PURE__ */ A.jsx(l, {}) }) : /* @__PURE__ */ A.jsx(E, { to: i, state: { from: T }, replace: !0 });
|
|
693
|
-
}, ie = (a) => `GTMSendPageView require « ${a} » dependency. You can provide with InjectDependenciesProvider or directly in props.`,
|
|
693
|
+
}, ie = (a) => `GTMSendPageView require « ${a} » dependency. You can provide with InjectDependenciesProvider or directly in props.`, Ar = ({ ...a }) => {
|
|
694
694
|
const {
|
|
695
695
|
useLocation: i = a.useLocation,
|
|
696
696
|
Outlet: o = a.Outlet,
|
|
@@ -706,7 +706,7 @@ const K = gr({
|
|
|
706
706
|
return Rr(() => {
|
|
707
707
|
v({ event: "pageView", pathname: c });
|
|
708
708
|
}, [c, v]), /* @__PURE__ */ A.jsx(o, {});
|
|
709
|
-
},
|
|
709
|
+
}, kr = ({
|
|
710
710
|
axios: a,
|
|
711
711
|
baseURL: i,
|
|
712
712
|
tokenTypeKey: o = "tokenType",
|
|
@@ -718,7 +718,7 @@ const K = gr({
|
|
|
718
718
|
return null;
|
|
719
719
|
const m = localStorage.getItem(u), t = m ? JSON.parse(m) : null, l = t != null && t[o] ? t[o] : null, E = t != null && t[c] ? t[c] : null, h = m ? `${l} ${E}` : null;
|
|
720
720
|
return a.defaults.baseURL = i, a.defaults.headers.post["Content-Type"] = v, h && (a.defaults.headers.common.Authorization = h), null;
|
|
721
|
-
},
|
|
721
|
+
}, $r = ({
|
|
722
722
|
i18n: a,
|
|
723
723
|
debug: i,
|
|
724
724
|
initReactI18next: o,
|
|
@@ -741,7 +741,7 @@ const K = gr({
|
|
|
741
741
|
document.documentElement.lang !== a.resolvedLanguage && a.resolvedLanguage && document.documentElement.setAttribute("lang", a.resolvedLanguage);
|
|
742
742
|
}), a.on("languageChanged", (v) => {
|
|
743
743
|
document.documentElement.setAttribute("lang", v);
|
|
744
|
-
})), null),
|
|
744
|
+
})), null), Dr = ({
|
|
745
745
|
dsn: a,
|
|
746
746
|
sentry: i,
|
|
747
747
|
integrations: o,
|
|
@@ -773,14 +773,14 @@ const K = gr({
|
|
|
773
773
|
replaysSessionSampleRate: v || 0.1,
|
|
774
774
|
tracePropagationTargets: t,
|
|
775
775
|
tracesSampleRate: u || 1
|
|
776
|
-
}), null),
|
|
776
|
+
}), null), Fr = ({ IMaskMixin: a, ...i }) => {
|
|
777
777
|
const o = se(
|
|
778
778
|
// eslint-disable-next-line react/jsx-props-no-spreading
|
|
779
779
|
() => a(({ TextField: u, ...c }) => /* @__PURE__ */ A.jsx(u, { ...c })),
|
|
780
780
|
[a]
|
|
781
781
|
);
|
|
782
782
|
return /* @__PURE__ */ A.jsx(o, { ...i });
|
|
783
|
-
},
|
|
783
|
+
}, Ir = ({ mapbox: a, accessToken: i }) => (a && i && (a.accessToken = i), null), Lr = ({
|
|
784
784
|
children: a,
|
|
785
785
|
defaultOptions: i,
|
|
786
786
|
QueryClient: o,
|
|
@@ -796,7 +796,7 @@ const K = gr({
|
|
|
796
796
|
}
|
|
797
797
|
});
|
|
798
798
|
return /* @__PURE__ */ A.jsx(u, { client: c, children: a });
|
|
799
|
-
},
|
|
799
|
+
}, Wr = (a) => {
|
|
800
800
|
const { unknownErrorTranslationKey: i = "error.unknownError" } = a || {}, { translate: o = a == null ? void 0 : a.translate } = ce(K), u = o ? o(i) : "Unknown error", c = U(
|
|
801
801
|
(m) => {
|
|
802
802
|
var l, E, h, C, O, T, k, $, D;
|
|
@@ -813,7 +813,7 @@ const K = gr({
|
|
|
813
813
|
[u, o]
|
|
814
814
|
);
|
|
815
815
|
return { printError: c, printErrorCode: v };
|
|
816
|
-
},
|
|
816
|
+
}, Nr = ({
|
|
817
817
|
data: a,
|
|
818
818
|
fetchNextPage: i,
|
|
819
819
|
isFetchingNextPage: o,
|
|
@@ -836,7 +836,7 @@ const K = gr({
|
|
|
836
836
|
loadingVariant: u ? "skeleton" : "linear",
|
|
837
837
|
rows: t
|
|
838
838
|
};
|
|
839
|
-
},
|
|
839
|
+
}, Vr = (a) => {
|
|
840
840
|
const i = U(
|
|
841
841
|
({ tokenType: u, accessToken: c }) => {
|
|
842
842
|
a.defaults.headers.common.Authorization = `${u} ${c}`;
|
|
@@ -863,7 +863,7 @@ const K = gr({
|
|
|
863
863
|
useInfiniteQueryParam: "offset"
|
|
864
864
|
}
|
|
865
865
|
}, i), {})) || {};
|
|
866
|
-
},
|
|
866
|
+
}, Mr = (a) => {
|
|
867
867
|
const { input: i = "./openapi.json", operationsToGenerateInfiniteQueryHook: o = void 0 } = a || {};
|
|
868
868
|
return {
|
|
869
869
|
api: {
|
|
@@ -913,26 +913,26 @@ const K = gr({
|
|
|
913
913
|
"vite-plugin-dts": "^3.7.3",
|
|
914
914
|
"vite-plugin-static-copy": "^0.17.1",
|
|
915
915
|
vitest: "^1.3.1"
|
|
916
|
-
}, Sr = () => "react-native" in W && W["react-native"] && "expo" in W && W.expo ? process.env.EXPO_PUBLIC_API_URL : "react" in W && W.react && "vite" in We && We.vite ? imprort.meta.env.VITE_API_URL : "",
|
|
916
|
+
}, Sr = () => "react-native" in W && W["react-native"] && "expo" in W && W.expo ? process.env.EXPO_PUBLIC_API_URL : "react" in W && W.react && "vite" in We && We.vite ? imprort.meta.env.VITE_API_URL : "", Yr = (a, i) => {
|
|
917
917
|
if (!a)
|
|
918
918
|
return "";
|
|
919
919
|
const o = a.startsWith("/") ? a : `/${a}`, u = Sr();
|
|
920
920
|
return typeof i == "number" ? `${u}${o.replace("/files", `/thumbs/${i}`)}` : `${u}${o}`;
|
|
921
|
-
}
|
|
921
|
+
};
|
|
922
922
|
export {
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
Dr as I18nConfig,
|
|
923
|
+
kr as AxiosConfig,
|
|
924
|
+
Ar as GTMSendPageView,
|
|
925
|
+
$r as I18nConfig,
|
|
927
926
|
K as InjectDependenciesContext,
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
Yr as
|
|
935
|
-
Mr as
|
|
936
|
-
Vr as
|
|
937
|
-
Nr as
|
|
927
|
+
Pr as InjectDependenciesProvider,
|
|
928
|
+
Ir as MapBoxConfig,
|
|
929
|
+
Fr as MaskTextField,
|
|
930
|
+
Lr as QueryClientConfigProvider,
|
|
931
|
+
xr as RequireAuth,
|
|
932
|
+
Dr as SentryConfig,
|
|
933
|
+
Yr as filePathAdapter,
|
|
934
|
+
Mr as getOrvalConfig,
|
|
935
|
+
Vr as useAuth,
|
|
936
|
+
Nr as useInfiniteDataGrid,
|
|
937
|
+
Wr as useResponseError
|
|
938
938
|
};
|
package/dist/main.umd.cjs
CHANGED
|
@@ -24,4 +24,4 @@ Check the top-level render call using <`+n+">.")}return r}}function Ie(e,r){{if(
|
|
|
24
24
|
*
|
|
25
25
|
* This source code is licensed under the MIT license found in the
|
|
26
26
|
* LICENSE file in the root directory of this source tree.
|
|
27
|
-
*/var le;function Ne(){if(le)return U;le=1;var a=E,i=Symbol.for("react.element"),o=Symbol.for("react.fragment"),u=Object.prototype.hasOwnProperty,c=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,v={key:!0,ref:!0,__self:!0,__source:!0};function m(t,l,y){var h,O={},j=null,S=null;y!==void 0&&(j=""+y),l.key!==void 0&&(j=""+l.key),l.ref!==void 0&&(S=l.ref);for(h in l)u.call(l,h)&&!v.hasOwnProperty(h)&&(O[h]=l[h]);if(t&&t.defaultProps)for(h in l=t.defaultProps,l)O[h]===void 0&&(O[h]=l[h]);return{$$typeof:i,type:t,key:j,ref:S,props:O,_owner:c.current}}return U.Fragment=o,U.jsx=m,U.jsxs=m,U}process.env.NODE_ENV==="production"?Q.exports=Ne():Q.exports=We();var k=Q.exports;const z=E.createContext({axios:void 0,children:void 0,Navigate:void 0,Outlet:void 0,translate:void 0,useAuth:void 0,useLocation:void 0}),Ve=({axios:a,children:i,translate:o,useAuth:u,Outlet:c,Navigate:v,useLocation:m,useGoogleTagManager:t})=>{const l=E.useMemo(()=>({axios:a,Navigate:v,Outlet:c,translate:o,useAuth:u,useGoogleTagManager:t,useLocation:m}),[v,c,a,o,u,t,m]);return k.jsx(z.Provider,{value:l,children:i})},J=a=>`RequireAuth require « ${a} » dependency. You can provide with InjectDependenciesProvider or directly in props.`,Ye=({Fallback:a,loginPath:i="/login",localStorageKey:o="user",redirect401Path:u="/login",...c})=>{var F,L,A,C;const{axios:v=c.axios,useLocation:m=c.useLocation,useAuth:t=c.useAuth,Outlet:l=c.Outlet,Navigate:y=c.Navigate}=E.useContext(z);if(t===void 0)throw new Error(J("useAuth"));if(m===void 0)throw new Error(J("useLocation"));if(l===void 0)throw new Error(J("Outlet"));if(y===void 0)throw new Error(J("Navigate"));const[h,O]=E.useState(null),{isLogged:j}=t(),S=m(),I=E.useRef(!1);return E.useLayoutEffect(()=>{I.current||(I.current=!0,v==null||v.interceptors.response.use(w=>w,async w=>{var $;return typeof w=="object"&&w&&"response"in w&&w.response&&typeof w.response=="object"&&"status"in w.response&&w.response&&typeof w.response=="object"&&"status"in w.response&&(($=w==null?void 0:w.response)==null?void 0:$.status)===401&&(v.defaults.headers.common.Authorization=null,localStorage.removeItem(o),O(u)),Promise.reject(w)}))},[v==null?void 0:v.defaults.headers.common,v==null?void 0:v.interceptors.response,o,u]),j&&!h?k.jsx(E.Suspense,{fallback:a,children:(L=(F=S.state)==null?void 0:F.from)!=null&&L.state&&((C=(A=S.state)==null?void 0:A.from)==null?void 0:C.pathname)===i?k.jsx(y,{to:S.state.from.state.from.pathname+S.state.from.state.from.search,replace:!0}):k.jsx(l,{})}):k.jsx(y,{to:i,state:{from:S},replace:!0})},ee=a=>`GTMSendPageView require « ${a} » dependency. You can provide with InjectDependenciesProvider or directly in props.`,Ue=({...a})=>{const{useLocation:i=a.useLocation,Outlet:o=a.Outlet,useGoogleTagManager:u=a.useGoogleTagManager}=E.useContext(z);if(i===void 0)throw new Error(ee("useLocation"));if(o===void 0)throw new Error(ee("Outlet"));if(u===void 0)throw new Error(ee("useGoogleTagManager"));const{pathname:c}=i(),{sendEvent:v}=u();return E.useEffect(()=>{v({event:"pageView",pathname:c})},[c,v]),k.jsx(o,{})},ze=({axios:a,baseURL:i,tokenTypeKey:o="tokenType",userLocalStorageKey:u="user",tokenKey:c="accessToken",postContentType:v="application/json"})=>{if(!a.defaults)return null;const m=localStorage.getItem(u),t=m?JSON.parse(m):null,l=t!=null&&t[o]?t[o]:null,y=t!=null&&t[c]?t[c]:null,h=m?`${l} ${y}`:null;return a.defaults.baseURL=i,a.defaults.headers.post["Content-Type"]=v,h&&(a.defaults.headers.common.Authorization=h),null},Be=({i18n:a,debug:i,initReactI18next:o,resources:u,LanguageDetector:c})=>(a!=null&&a.isInitialized||(a.use(c).use(o).init({debug:i,fallbackLng:"en",interpolation:{escapeValue:!1},load:"languageOnly",react:{bindI18n:!1,useSuspense:!0},resources:u,returnNull:!1}).then(()=>{document.documentElement.lang!==a.resolvedLanguage&&a.resolvedLanguage&&document.documentElement.setAttribute("lang",a.resolvedLanguage)}),a.on("languageChanged",v=>{document.documentElement.setAttribute("lang",v)})),null),Ge=({dsn:a,sentry:i,integrations:o,tracesSampleRate:u,routingInstrumentationDependencies:c,replaysSessionSampleRate:v,replaysOnErrorSampleRate:m,tracePropagationTargets:t,ignoreErrors:l,debug:y})=>(i.isInitialized()||(y||process.env.NODE_ENV==="prod"||process.env.NODE_ENV==="production")&&i.init({debug:y,dsn:a,ignoreErrors:l||[/Failed to fetch dynamically imported module/],integrations:[new i.BrowserTracing({routingInstrumentation:i.reactRouterV6Instrumentation(c.useEffect,c.useLocation,c.useNavigationType,c.createRoutesFromChildren,c.matchRoutes)}),i.replayIntegration(),...o||[]],replaysOnErrorSampleRate:m||1,replaysSessionSampleRate:v||.1,tracePropagationTargets:t,tracesSampleRate:u||1}),null),Je=({IMaskMixin:a,...i})=>{const o=E.useMemo(()=>a(({TextField:u,...c})=>k.jsx(u,{...c})),[a]);return k.jsx(o,{...i})},$e=({mapbox:a,accessToken:i})=>(a&&i&&(a.accessToken=i),null),Xe=({children:a,defaultOptions:i,QueryClient:o,QueryClientProvider:u})=>{const c=new o({defaultOptions:{queries:{refetchOnWindowFocus:!1,retry:3,...i}}});return k.jsx(u,{client:c,children:a})},He=a=>{const{unknownErrorTranslationKey:i="error.unknownError"}=a||{},{translate:o=a==null?void 0:a.translate}=E.useContext(z),u=o?o(i):"Unknown error",c=E.useCallback(m=>{var l,y,h,O,j,S,I,F,L;const{response:t}=m||{};return t!=null&&t.reason?String(t.reason):(l=t==null?void 0:t.data)!=null&&l.reason?String(t.data.reason):(y=t==null?void 0:t.data)!=null&&y.message?String(t.data.message):(O=(h=t==null?void 0:t.data)==null?void 0:h.detail)!=null&&O.length&&Array.isArray((j=t==null?void 0:t.data)==null?void 0:j.detail)&&((I=(S=t==null?void 0:t.data)==null?void 0:S.detail[0])!=null&&I.msg)&&typeof((L=(F=t==null?void 0:t.data)==null?void 0:F.detail[0])==null?void 0:L.msg)=="string"?String(t.data.detail[0].msg):u},[u]),v=E.useCallback(m=>{var l,y,h;const{response:t}=m||{};return o&&(t!=null&&t.error_code)?o(t==null?void 0:t.error_code):o&&((l=t==null?void 0:t.data)!=null&&l.error_code)?o((y=t==null?void 0:t.data)==null?void 0:y.error_code):t!=null&&t.error_code?String(t==null?void 0:t.error_code):(h=t==null?void 0:t.data)!=null&&h.error_code?String(t.data.error_code):u},[u,o]);return{printError:c,printErrorCode:v}},Ke=({data:a,fetchNextPage:i,isFetchingNextPage:o,isInitialLoading:u,isLoading:c,enabled:v=!0})=>{const m=E.useCallback(async l=>{o||!v||await i({pageParam:(l==null?void 0:l.pageParam)||l.visibleRowsCount})},[v,i,o]),t=E.useMemo(()=>{if(a)return a.pages.reduce((l,y)=>[...l,...y],[])},[a]);return{fetchNextPageOnRowsScrollEnd:m,isLoading:o||c,loadingVariant:u?"skeleton":"linear",rows:t}},Ze=a=>{const i=E.useCallback(({tokenType:u,accessToken:c})=>{a.defaults.headers.common.Authorization=`${u} ${c}`},[a.defaults.headers.common]);return{clearAuthenticationToken:E.useCallback(()=>{a.defaults.headers.common.Authorization=null},[a.defaults.headers.common]),setAuthenticationToken:i}},qe=a=>a.charAt(0).toUpperCase()+a.slice(1).toLowerCase(),Qe=a=>{const u=a.split("/").filter(c=>c.length>0).map(c=>c.replace(/\${([^}]*)}/g,"$1").split(/[_-]/).map(l=>l.charAt(0).toUpperCase()+l.slice(1)).join("")).join("");return u.charAt(0).toLowerCase()+u.slice(1)},er=(a,i,o)=>{const u=Qe(i),c=qe(o);return`${u}${c}`},rr=a=>{if(a)return(a==null?void 0:a.reduce((i,o)=>(i[o]={query:{useInfinite:!0,useInfiniteQueryParam:"offset"}},i),{}))||{}},tr=a=>{const{input:i="./openapi.json",operationsToGenerateInfiniteQueryHook:o=void 0}=a||{};return{api:{hooks:{afterAllFilesWrite:"prettier src/api/ --write"},input:i,output:{client:"react-query",mode:"tags-split",override:{header:u=>["Generated by orval 🍺",...u.title?[u.title]:[],...u.description?[u.description]:[]],mutator:{name:"axiosCustomInstance",path:`${__dirname}/config/orval/mutator/axiosCustomInstance.ts`},operationName:er,...(o==null?void 0:o.length)&&{operations:rr(o)},query:{useQuery:!0}},schemas:"src/api/model",target:"src/api/services/api.ts"}}}},W={react:"^18.2.0","react-dom":"^18.2.0"},fe={"@testing-library/jest-dom":"^5.17.0","@testing-library/react":"^14.0.0","@testing-library/user-event":"^14.5.1","@types/react":"^18.2.30","@types/react-dom":"^18.2.14","@vitejs/plugin-react":"^4.2.1","eslint-config-react-tracktor":"^1.7.1",husky:"^8.0.3",jsdom:"^22.1.0",typescript:"^5.3.3",vite:"^5.1.5","vite-plugin-dts":"^3.7.3","vite-plugin-static-copy":"^0.17.1",vitest:"^1.3.1"},nr=()=>"react-native"in W&&W["react-native"]&&"expo"in W&&W.expo?process.env.EXPO_PUBLIC_API_URL:"react"in W&&W.react&&"vite"in fe&&fe.vite?imprort.meta.env.VITE_API_URL:"",ar=
|
|
27
|
+
*/var le;function Ne(){if(le)return U;le=1;var a=E,i=Symbol.for("react.element"),o=Symbol.for("react.fragment"),u=Object.prototype.hasOwnProperty,c=a.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,v={key:!0,ref:!0,__self:!0,__source:!0};function m(t,l,y){var h,O={},j=null,S=null;y!==void 0&&(j=""+y),l.key!==void 0&&(j=""+l.key),l.ref!==void 0&&(S=l.ref);for(h in l)u.call(l,h)&&!v.hasOwnProperty(h)&&(O[h]=l[h]);if(t&&t.defaultProps)for(h in l=t.defaultProps,l)O[h]===void 0&&(O[h]=l[h]);return{$$typeof:i,type:t,key:j,ref:S,props:O,_owner:c.current}}return U.Fragment=o,U.jsx=m,U.jsxs=m,U}process.env.NODE_ENV==="production"?Q.exports=Ne():Q.exports=We();var k=Q.exports;const z=E.createContext({axios:void 0,children:void 0,Navigate:void 0,Outlet:void 0,translate:void 0,useAuth:void 0,useLocation:void 0}),Ve=({axios:a,children:i,translate:o,useAuth:u,Outlet:c,Navigate:v,useLocation:m,useGoogleTagManager:t})=>{const l=E.useMemo(()=>({axios:a,Navigate:v,Outlet:c,translate:o,useAuth:u,useGoogleTagManager:t,useLocation:m}),[v,c,a,o,u,t,m]);return k.jsx(z.Provider,{value:l,children:i})},J=a=>`RequireAuth require « ${a} » dependency. You can provide with InjectDependenciesProvider or directly in props.`,Ye=({Fallback:a,loginPath:i="/login",localStorageKey:o="user",redirect401Path:u="/login",...c})=>{var F,L,A,C;const{axios:v=c.axios,useLocation:m=c.useLocation,useAuth:t=c.useAuth,Outlet:l=c.Outlet,Navigate:y=c.Navigate}=E.useContext(z);if(t===void 0)throw new Error(J("useAuth"));if(m===void 0)throw new Error(J("useLocation"));if(l===void 0)throw new Error(J("Outlet"));if(y===void 0)throw new Error(J("Navigate"));const[h,O]=E.useState(null),{isLogged:j}=t(),S=m(),I=E.useRef(!1);return E.useLayoutEffect(()=>{I.current||(I.current=!0,v==null||v.interceptors.response.use(w=>w,async w=>{var $;return typeof w=="object"&&w&&"response"in w&&w.response&&typeof w.response=="object"&&"status"in w.response&&w.response&&typeof w.response=="object"&&"status"in w.response&&(($=w==null?void 0:w.response)==null?void 0:$.status)===401&&(v.defaults.headers.common.Authorization=null,localStorage.removeItem(o),O(u)),Promise.reject(w)}))},[v==null?void 0:v.defaults.headers.common,v==null?void 0:v.interceptors.response,o,u]),j&&!h?k.jsx(E.Suspense,{fallback:a,children:(L=(F=S.state)==null?void 0:F.from)!=null&&L.state&&((C=(A=S.state)==null?void 0:A.from)==null?void 0:C.pathname)===i?k.jsx(y,{to:S.state.from.state.from.pathname+S.state.from.state.from.search,replace:!0}):k.jsx(l,{})}):k.jsx(y,{to:i,state:{from:S},replace:!0})},ee=a=>`GTMSendPageView require « ${a} » dependency. You can provide with InjectDependenciesProvider or directly in props.`,Ue=({...a})=>{const{useLocation:i=a.useLocation,Outlet:o=a.Outlet,useGoogleTagManager:u=a.useGoogleTagManager}=E.useContext(z);if(i===void 0)throw new Error(ee("useLocation"));if(o===void 0)throw new Error(ee("Outlet"));if(u===void 0)throw new Error(ee("useGoogleTagManager"));const{pathname:c}=i(),{sendEvent:v}=u();return E.useEffect(()=>{v({event:"pageView",pathname:c})},[c,v]),k.jsx(o,{})},ze=({axios:a,baseURL:i,tokenTypeKey:o="tokenType",userLocalStorageKey:u="user",tokenKey:c="accessToken",postContentType:v="application/json"})=>{if(!a.defaults)return null;const m=localStorage.getItem(u),t=m?JSON.parse(m):null,l=t!=null&&t[o]?t[o]:null,y=t!=null&&t[c]?t[c]:null,h=m?`${l} ${y}`:null;return a.defaults.baseURL=i,a.defaults.headers.post["Content-Type"]=v,h&&(a.defaults.headers.common.Authorization=h),null},Be=({i18n:a,debug:i,initReactI18next:o,resources:u,LanguageDetector:c})=>(a!=null&&a.isInitialized||(a.use(c).use(o).init({debug:i,fallbackLng:"en",interpolation:{escapeValue:!1},load:"languageOnly",react:{bindI18n:!1,useSuspense:!0},resources:u,returnNull:!1}).then(()=>{document.documentElement.lang!==a.resolvedLanguage&&a.resolvedLanguage&&document.documentElement.setAttribute("lang",a.resolvedLanguage)}),a.on("languageChanged",v=>{document.documentElement.setAttribute("lang",v)})),null),Ge=({dsn:a,sentry:i,integrations:o,tracesSampleRate:u,routingInstrumentationDependencies:c,replaysSessionSampleRate:v,replaysOnErrorSampleRate:m,tracePropagationTargets:t,ignoreErrors:l,debug:y})=>(i.isInitialized()||(y||process.env.NODE_ENV==="prod"||process.env.NODE_ENV==="production")&&i.init({debug:y,dsn:a,ignoreErrors:l||[/Failed to fetch dynamically imported module/],integrations:[new i.BrowserTracing({routingInstrumentation:i.reactRouterV6Instrumentation(c.useEffect,c.useLocation,c.useNavigationType,c.createRoutesFromChildren,c.matchRoutes)}),i.replayIntegration(),...o||[]],replaysOnErrorSampleRate:m||1,replaysSessionSampleRate:v||.1,tracePropagationTargets:t,tracesSampleRate:u||1}),null),Je=({IMaskMixin:a,...i})=>{const o=E.useMemo(()=>a(({TextField:u,...c})=>k.jsx(u,{...c})),[a]);return k.jsx(o,{...i})},$e=({mapbox:a,accessToken:i})=>(a&&i&&(a.accessToken=i),null),Xe=({children:a,defaultOptions:i,QueryClient:o,QueryClientProvider:u})=>{const c=new o({defaultOptions:{queries:{refetchOnWindowFocus:!1,retry:3,...i}}});return k.jsx(u,{client:c,children:a})},He=a=>{const{unknownErrorTranslationKey:i="error.unknownError"}=a||{},{translate:o=a==null?void 0:a.translate}=E.useContext(z),u=o?o(i):"Unknown error",c=E.useCallback(m=>{var l,y,h,O,j,S,I,F,L;const{response:t}=m||{};return t!=null&&t.reason?String(t.reason):(l=t==null?void 0:t.data)!=null&&l.reason?String(t.data.reason):(y=t==null?void 0:t.data)!=null&&y.message?String(t.data.message):(O=(h=t==null?void 0:t.data)==null?void 0:h.detail)!=null&&O.length&&Array.isArray((j=t==null?void 0:t.data)==null?void 0:j.detail)&&((I=(S=t==null?void 0:t.data)==null?void 0:S.detail[0])!=null&&I.msg)&&typeof((L=(F=t==null?void 0:t.data)==null?void 0:F.detail[0])==null?void 0:L.msg)=="string"?String(t.data.detail[0].msg):u},[u]),v=E.useCallback(m=>{var l,y,h;const{response:t}=m||{};return o&&(t!=null&&t.error_code)?o(t==null?void 0:t.error_code):o&&((l=t==null?void 0:t.data)!=null&&l.error_code)?o((y=t==null?void 0:t.data)==null?void 0:y.error_code):t!=null&&t.error_code?String(t==null?void 0:t.error_code):(h=t==null?void 0:t.data)!=null&&h.error_code?String(t.data.error_code):u},[u,o]);return{printError:c,printErrorCode:v}},Ke=({data:a,fetchNextPage:i,isFetchingNextPage:o,isInitialLoading:u,isLoading:c,enabled:v=!0})=>{const m=E.useCallback(async l=>{o||!v||await i({pageParam:(l==null?void 0:l.pageParam)||l.visibleRowsCount})},[v,i,o]),t=E.useMemo(()=>{if(a)return a.pages.reduce((l,y)=>[...l,...y],[])},[a]);return{fetchNextPageOnRowsScrollEnd:m,isLoading:o||c,loadingVariant:u?"skeleton":"linear",rows:t}},Ze=a=>{const i=E.useCallback(({tokenType:u,accessToken:c})=>{a.defaults.headers.common.Authorization=`${u} ${c}`},[a.defaults.headers.common]);return{clearAuthenticationToken:E.useCallback(()=>{a.defaults.headers.common.Authorization=null},[a.defaults.headers.common]),setAuthenticationToken:i}},qe=a=>a.charAt(0).toUpperCase()+a.slice(1).toLowerCase(),Qe=a=>{const u=a.split("/").filter(c=>c.length>0).map(c=>c.replace(/\${([^}]*)}/g,"$1").split(/[_-]/).map(l=>l.charAt(0).toUpperCase()+l.slice(1)).join("")).join("");return u.charAt(0).toLowerCase()+u.slice(1)},er=(a,i,o)=>{const u=Qe(i),c=qe(o);return`${u}${c}`},rr=a=>{if(a)return(a==null?void 0:a.reduce((i,o)=>(i[o]={query:{useInfinite:!0,useInfiniteQueryParam:"offset"}},i),{}))||{}},tr=a=>{const{input:i="./openapi.json",operationsToGenerateInfiniteQueryHook:o=void 0}=a||{};return{api:{hooks:{afterAllFilesWrite:"prettier src/api/ --write"},input:i,output:{client:"react-query",mode:"tags-split",override:{header:u=>["Generated by orval 🍺",...u.title?[u.title]:[],...u.description?[u.description]:[]],mutator:{name:"axiosCustomInstance",path:`${__dirname}/config/orval/mutator/axiosCustomInstance.ts`},operationName:er,...(o==null?void 0:o.length)&&{operations:rr(o)},query:{useQuery:!0}},schemas:"src/api/model",target:"src/api/services/api.ts"}}}},W={react:"^18.2.0","react-dom":"^18.2.0"},fe={"@testing-library/jest-dom":"^5.17.0","@testing-library/react":"^14.0.0","@testing-library/user-event":"^14.5.1","@types/react":"^18.2.30","@types/react-dom":"^18.2.14","@vitejs/plugin-react":"^4.2.1","eslint-config-react-tracktor":"^1.7.1",husky:"^8.0.3",jsdom:"^22.1.0",typescript:"^5.3.3",vite:"^5.1.5","vite-plugin-dts":"^3.7.3","vite-plugin-static-copy":"^0.17.1",vitest:"^1.3.1"},nr=()=>"react-native"in W&&W["react-native"]&&"expo"in W&&W.expo?process.env.EXPO_PUBLIC_API_URL:"react"in W&&W.react&&"vite"in fe&&fe.vite?imprort.meta.env.VITE_API_URL:"",ar=(a,i)=>{if(!a)return"";const o=a.startsWith("/")?a:`/${a}`,u=nr();return typeof i=="number"?`${u}${o.replace("/files",`/thumbs/${i}`)}`:`${u}${o}`};b.AxiosConfig=ze,b.GTMSendPageView=Ue,b.I18nConfig=Be,b.InjectDependenciesContext=z,b.InjectDependenciesProvider=Ve,b.MapBoxConfig=$e,b.MaskTextField=Je,b.QueryClientConfigProvider=Xe,b.RequireAuth=Ye,b.SentryConfig=Ge,b.filePathAdapter=ar,b.getOrvalConfig=tr,b.useAuth=Ze,b.useInfiniteDataGrid=Ke,b.useResponseError=He,Object.defineProperty(b,Symbol.toStringTag,{value:"Module"})});
|
package/dist/src/main.d.ts
CHANGED
|
@@ -24,5 +24,5 @@ export { default as useAuth } from './hooks/useAuth';
|
|
|
24
24
|
export * from './hooks/useAuth';
|
|
25
25
|
export { default as getOrvalConfig } from './config/orval';
|
|
26
26
|
export * from './config/orval';
|
|
27
|
-
export { default as
|
|
28
|
-
export * from './utils/adapter';
|
|
27
|
+
export { default as filePathAdapter } from './utils/adapter/filePathAdapter';
|
|
28
|
+
export * from './utils/adapter/filePathAdapter';
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* @param path
|
|
4
4
|
* @param size - full or number for thumbs
|
|
5
5
|
*/
|
|
6
|
-
|
|
6
|
+
declare const filePathAdapter: (path?: string | null, size?: number | "full") => string;
|
|
7
7
|
export default filePathAdapter;
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tracktor/shared-module",
|
|
3
|
-
"version": "0.18.
|
|
3
|
+
"version": "0.18.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
|
-
"types": "./dist/main.d.ts",
|
|
6
|
+
"types": "./dist/src/main.d.ts",
|
|
7
7
|
"main": "./dist/main.umd.cjs",
|
|
8
8
|
"module": "./dist/main.js",
|
|
9
9
|
"engines": {
|
|
@@ -15,7 +15,8 @@
|
|
|
15
15
|
"exports": {
|
|
16
16
|
".": {
|
|
17
17
|
"import": "./dist/main.js",
|
|
18
|
-
"require": "./dist/main.umd.cjs"
|
|
18
|
+
"require": "./dist/main.umd.cjs",
|
|
19
|
+
"types": "./dist/src/main.d.ts"
|
|
19
20
|
}
|
|
20
21
|
},
|
|
21
22
|
"repository": {
|