@refinedev/devtools-internal 1.1.6 → 1.1.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.
Files changed (56) hide show
  1. package/dist/clean-stack.d.cts +3 -0
  2. package/dist/clean-stack.d.cts.map +1 -0
  3. package/dist/clean-stack.d.mts +3 -0
  4. package/dist/clean-stack.d.mts.map +1 -0
  5. package/dist/constants.d.cts +2 -0
  6. package/dist/constants.d.cts.map +1 -0
  7. package/dist/constants.d.mts +2 -0
  8. package/dist/constants.d.mts.map +1 -0
  9. package/dist/create-identifier.d.cts +4 -0
  10. package/dist/create-identifier.d.cts.map +1 -0
  11. package/dist/create-identifier.d.mts +4 -0
  12. package/dist/create-identifier.d.mts.map +1 -0
  13. package/dist/get-package-name-from-filename.d.cts +2 -0
  14. package/dist/get-package-name-from-filename.d.cts.map +1 -0
  15. package/dist/get-package-name-from-filename.d.mts +2 -0
  16. package/dist/get-package-name-from-filename.d.mts.map +1 -0
  17. package/dist/get-resource-path.d.cts +4 -0
  18. package/dist/get-resource-path.d.cts.map +1 -0
  19. package/dist/get-resource-path.d.mts +4 -0
  20. package/dist/get-resource-path.d.mts.map +1 -0
  21. package/dist/get-resource-path.d.ts +1 -1
  22. package/dist/get-resource-path.d.ts.map +1 -1
  23. package/dist/get-trace.d.cts +3 -0
  24. package/dist/get-trace.d.cts.map +1 -0
  25. package/dist/get-trace.d.mts +3 -0
  26. package/dist/get-trace.d.mts.map +1 -0
  27. package/dist/get-xray.d.cts +9 -0
  28. package/dist/get-xray.d.cts.map +1 -0
  29. package/dist/get-xray.d.mts +9 -0
  30. package/dist/get-xray.d.mts.map +1 -0
  31. package/dist/get-xray.d.ts +1 -1
  32. package/dist/get-xray.d.ts.map +1 -1
  33. package/dist/{index.js → index.cjs} +1 -1
  34. package/dist/index.d.cts +4 -0
  35. package/dist/index.d.cts.map +1 -0
  36. package/dist/index.d.mts +4 -0
  37. package/dist/index.d.mts.map +1 -0
  38. package/dist/{esm/index.js → index.mjs} +1 -1
  39. package/dist/index.mjs.map +1 -0
  40. package/dist/is-refine-stack.d.cts +2 -0
  41. package/dist/is-refine-stack.d.cts.map +1 -0
  42. package/dist/is-refine-stack.d.mts +2 -0
  43. package/dist/is-refine-stack.d.mts.map +1 -0
  44. package/dist/listeners.d.cts +4 -0
  45. package/dist/listeners.d.cts.map +1 -0
  46. package/dist/listeners.d.mts +4 -0
  47. package/dist/listeners.d.mts.map +1 -0
  48. package/dist/use-query-subscription.d.cts +3 -0
  49. package/dist/use-query-subscription.d.cts.map +1 -0
  50. package/dist/use-query-subscription.d.mts +3 -0
  51. package/dist/use-query-subscription.d.mts.map +1 -0
  52. package/package.json +23 -9
  53. package/dist/esm/index.js.map +0 -1
  54. package/dist/iife/index.js +0 -3
  55. package/dist/iife/index.js.map +0 -1
  56. /package/dist/{index.js.map → index.cjs.map} +0 -0
@@ -0,0 +1,3 @@
1
+ import type { StackFrame } from "error-stack-parser";
2
+ export declare const cleanStack: (stack: StackFrame[]) => StackFrame[];
3
+ //# sourceMappingURL=clean-stack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clean-stack.d.ts","sourceRoot":"","sources":["../src/clean-stack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrD,eAAO,MAAM,UAAU,UAAW,UAAU,EAAE,iBAU7C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { StackFrame } from "error-stack-parser";
2
+ export declare const cleanStack: (stack: StackFrame[]) => StackFrame[];
3
+ //# sourceMappingURL=clean-stack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clean-stack.d.ts","sourceRoot":"","sources":["../src/clean-stack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrD,eAAO,MAAM,UAAU,UAAW,UAAU,EAAE,iBAU7C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const REFINE_PACKAGE_FILEPATH_REGEXP: RegExp;
2
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,8BAA8B,QAGD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const REFINE_PACKAGE_FILEPATH_REGEXP: RegExp;
2
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,8BAA8B,QAGD,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { TraceType } from "@refinedev/devtools-shared";
2
+ import { MutationKey, QueryKey } from "@tanstack/react-query";
3
+ export declare const createIdentifier: (key?: QueryKey | MutationKey, trace?: TraceType[]) => string;
4
+ //# sourceMappingURL=create-identifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-identifier.d.ts","sourceRoot":"","sources":["../src/create-identifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE9D,eAAO,MAAM,gBAAgB,SACrB,QAAQ,GAAG,WAAW,UACpB,SAAS,EAAE,WAWpB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { TraceType } from "@refinedev/devtools-shared";
2
+ import { MutationKey, QueryKey } from "@tanstack/react-query";
3
+ export declare const createIdentifier: (key?: QueryKey | MutationKey, trace?: TraceType[]) => string;
4
+ //# sourceMappingURL=create-identifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-identifier.d.ts","sourceRoot":"","sources":["../src/create-identifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE9D,eAAO,MAAM,gBAAgB,SACrB,QAAQ,GAAG,WAAW,UACpB,SAAS,EAAE,WAWpB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const getPackageNameFromFilename: (filename?: string) => string | undefined;
2
+ //# sourceMappingURL=get-package-name-from-filename.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-package-name-from-filename.d.ts","sourceRoot":"","sources":["../src/get-package-name-from-filename.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,0BAA0B,cAAe,MAAM,uBAU3D,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const getPackageNameFromFilename: (filename?: string) => string | undefined;
2
+ //# sourceMappingURL=get-package-name-from-filename.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-package-name-from-filename.d.ts","sourceRoot":"","sources":["../src/get-package-name-from-filename.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,0BAA0B,cAAe,MAAM,uBAU3D,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { DevtoolsEvent, DevtoolsEventPayloads, RefineHook } from "@refinedev/devtools-shared";
2
+ export type Activity = DevtoolsEventPayloads[DevtoolsEvent.DEVTOOLS_ACTIVITY_UPDATE]["updatedActivities"][number];
3
+ export declare const getResourcePath: (hookName: RefineHook, legacyKey: boolean) => string | null;
4
+ //# sourceMappingURL=get-resource-path.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-resource-path.d.ts","sourceRoot":"","sources":["../src/get-resource-path.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,UAAU,EAEX,MAAM,4BAA4B,CAAC;AAEpC,MAAM,MAAM,QAAQ,GAClB,qBAAqB,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7F,eAAO,MAAM,eAAe,aAChB,UAAU,aACT,OAAO,KACjB,MAAM,GAAG,IAuCX,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { DevtoolsEvent, DevtoolsEventPayloads, RefineHook } from "@refinedev/devtools-shared";
2
+ export type Activity = DevtoolsEventPayloads[DevtoolsEvent.DEVTOOLS_ACTIVITY_UPDATE]["updatedActivities"][number];
3
+ export declare const getResourcePath: (hookName: RefineHook, legacyKey: boolean) => string | null;
4
+ //# sourceMappingURL=get-resource-path.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-resource-path.d.ts","sourceRoot":"","sources":["../src/get-resource-path.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,UAAU,EAEX,MAAM,4BAA4B,CAAC;AAEpC,MAAM,MAAM,QAAQ,GAClB,qBAAqB,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7F,eAAO,MAAM,eAAe,aAChB,UAAU,aACT,OAAO,KACjB,MAAM,GAAG,IAuCX,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import { DevtoolsEvent, DevtoolsEventPayloads, RefineHook } from "@refinedev/devtools-shared";
2
- export declare type Activity = DevtoolsEventPayloads[DevtoolsEvent.DEVTOOLS_ACTIVITY_UPDATE]["updatedActivities"][number];
2
+ export type Activity = DevtoolsEventPayloads[DevtoolsEvent.DEVTOOLS_ACTIVITY_UPDATE]["updatedActivities"][number];
3
3
  export declare const getResourcePath: (hookName: RefineHook, legacyKey: boolean) => string | null;
4
4
  //# sourceMappingURL=get-resource-path.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-resource-path.d.ts","sourceRoot":"","sources":["../src/get-resource-path.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,UAAU,EAEX,MAAM,4BAA4B,CAAC;AAEpC,oBAAY,QAAQ,GAClB,qBAAqB,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7F,eAAO,MAAM,eAAe,aAChB,UAAU,aACT,OAAO,KACjB,MAAM,GAAG,IAuCX,CAAC"}
1
+ {"version":3,"file":"get-resource-path.d.ts","sourceRoot":"","sources":["../src/get-resource-path.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,UAAU,EAEX,MAAM,4BAA4B,CAAC;AAEpC,MAAM,MAAM,QAAQ,GAClB,qBAAqB,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7F,eAAO,MAAM,eAAe,aAChB,UAAU,aACT,OAAO,KACjB,MAAM,GAAG,IAuCX,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { TraceType } from "@refinedev/devtools-shared";
2
+ export declare function getTrace(): TraceType[];
3
+ //# sourceMappingURL=get-trace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-trace.d.ts","sourceRoot":"","sources":["../src/get-trace.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,wBAAgB,QAAQ,gBAyBvB"}
@@ -0,0 +1,3 @@
1
+ import { TraceType } from "@refinedev/devtools-shared";
2
+ export declare function getTrace(): TraceType[];
3
+ //# sourceMappingURL=get-trace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-trace.d.ts","sourceRoot":"","sources":["../src/get-trace.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,wBAAgB,QAAQ,gBAyBvB"}
@@ -0,0 +1,9 @@
1
+ import { TraceType } from "@refinedev/devtools-shared";
2
+ export type XRayResponse = {
3
+ hookName: string;
4
+ trace: TraceType[];
5
+ resourcePath: string | null;
6
+ legacyKey: boolean;
7
+ };
8
+ export declare function getXRay(hookName: string, legacyKey: boolean): XRayResponse;
9
+ //# sourceMappingURL=get-xray.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-xray.d.ts","sourceRoot":"","sources":["../src/get-xray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAInE,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,YAAY,CAmB1E"}
@@ -0,0 +1,9 @@
1
+ import { TraceType } from "@refinedev/devtools-shared";
2
+ export type XRayResponse = {
3
+ hookName: string;
4
+ trace: TraceType[];
5
+ resourcePath: string | null;
6
+ legacyKey: boolean;
7
+ };
8
+ export declare function getXRay(hookName: string, legacyKey: boolean): XRayResponse;
9
+ //# sourceMappingURL=get-xray.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-xray.d.ts","sourceRoot":"","sources":["../src/get-xray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAInE,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,YAAY,CAmB1E"}
@@ -1,5 +1,5 @@
1
1
  import { TraceType } from "@refinedev/devtools-shared";
2
- export declare type XRayResponse = {
2
+ export type XRayResponse = {
3
3
  hookName: string;
4
4
  trace: TraceType[];
5
5
  resourcePath: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"get-xray.d.ts","sourceRoot":"","sources":["../src/get-xray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAInE,oBAAY,YAAY,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,YAAY,CAmB1E"}
1
+ {"version":3,"file":"get-xray.d.ts","sourceRoot":"","sources":["../src/get-xray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAInE,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,YAAY,CAmB1E"}
@@ -1,3 +1,3 @@
1
1
  "use client"
2
2
  var D=Object.create;var p=Object.defineProperty;var N=Object.getOwnPropertyDescriptor;var A=Object.getOwnPropertyNames;var b=Object.getPrototypeOf,F=Object.prototype.hasOwnProperty;var L=(r,e)=>{for(var s in e)p(r,s,{get:e[s],enumerable:!0})},d=(r,e,s,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of A(e))!F.call(r,t)&&t!==s&&p(r,t,{get:()=>e[t],enumerable:!(n=N(e,t))||n.enumerable});return r};var E=(r,e,s)=>(s=r!=null?D(b(r)):{},d(e||!r||!r.__esModule?p(s,"default",{value:r,enumerable:!0}):s,r)),M=r=>d(p({},"__esModule",{value:!0}),r);var K={};L(K,{getTrace:()=>l,getXRay:()=>I,useQuerySubscription:()=>C});module.exports=M(K);var g=E(require("error-stack-parser"));var O="renderWithHooks",T=r=>{let e=r.findIndex(s=>s.functionName===O);return e!==-1?r.slice(0,e):r};var u=process.env.NODE_ENV!=="development"?/node_modules\/refinedev\/(?<name>.*?)\//:/\/refine\/packages\/(?<name>.*?)\//;var _=r=>r?!!r.match(u):!1;var R=r=>{var n;if(!r)return;let e=r.match(u),s=(n=e==null?void 0:e.groups)==null?void 0:n.name;if(s)return`@refinedev/${s}`};function l(){if(process.env.NODE_ENV!=="development")return[];try{let r=new Error,e=g.default.parse(r);return T(e).map(t=>({file:t.fileName,line:t.lineNumber,column:t.columnNumber,function:t.functionName,isRefine:_(t.fileName),packageName:R(t.fileName)})).filter(t=>t.function).slice(1)}catch{return[]}}var m=require("@refinedev/devtools-shared"),v=(r,e)=>{if(m.scopes[r]==="auth")return null;if(r==="useCan")return e?"key[1].resource":"key[1]";if(m.scopes[r]==="audit-log")return r==="useLog"?"variables.resource":"key[1]";if(m.scopes[r]==="data"){if(r==="useCustom"||r==="useCustomMutation")return null;switch(r){case"useList":case"useInfiniteList":case"useOne":case"useMany":return e?"key[1]":"key[2]";case"useCreate":case"useCreateMany":case"useDelete":case"useDeleteMany":case"useUpdate":case"useUpdateMany":return"variables.resource"}}return null};function I(r,e){if(process.env.NODE_ENV!=="development")return{hookName:"",trace:[],resourcePath:null,legacyKey:!1};let s=l().slice(1),n=v(r,e);return{hookName:r,trace:s,resourcePath:n,legacyKey:e}}var x=require("@refinedev/devtools-shared"),c=E(require("react"));var i=require("@refinedev/devtools-shared");var y=(r,e)=>{let s=e==null?void 0:e.map(t=>`${t.file}:${t.line}:${t.column}#${t.function}-${t.packageName}-${t.isRefine?1:0}`);return JSON.stringify([...r??[],...s??[]])};var P=r=>e=>{var n;if(!((n=e==null?void 0:e.meta)!=null&&n.trace))return;let s=e==null?void 0:e.meta;new Promise(t=>{var a,o;(0,i.send)(r,i.DevtoolsEvent.ACTIVITY,{type:"mutation",identifier:y(e==null?void 0:e.options.mutationKey,(a=e==null?void 0:e.meta)==null?void 0:a.trace),key:e==null?void 0:e.options.mutationKey,status:e==null?void 0:e.state.status,state:e==null?void 0:e.state,variables:(o=e==null?void 0:e.state)==null?void 0:o.variables,...s}),t()})},k=r=>e=>{var n;if(!((n=e==null?void 0:e.meta)!=null&&n.trace))return;let s=e==null?void 0:e.meta;new Promise(t=>{var a;(0,i.send)(r,i.DevtoolsEvent.ACTIVITY,{type:"query",identifier:y(e.queryKey,(a=e.meta)==null?void 0:a.trace),key:e.queryKey,status:e.state.status,state:e.state,...s}),t()})};var C=process.env.NODE_ENV!=="development"?()=>({}):r=>{let{ws:e}=(0,c.useContext)(x.DevToolsContext),s=c.default.useRef(),n=c.default.useRef();return c.default.useEffect(()=>{if(!e)return()=>0;let t=r.getQueryCache(),a=k(e);return t.getAll().forEach(a),s.current=t.subscribe(({query:o,type:f})=>(f==="added"||f==="updated")&&a(o)),()=>{var o;(o=s.current)==null||o.call(s)}},[e,r]),c.default.useEffect(()=>{if(!e)return()=>0;let t=r.getMutationCache(),a=P(e);return t.getAll().forEach(a),n.current=t.subscribe(({mutation:o,type:f})=>(f==="added"||f==="updated")&&a(o)),()=>{var o;(o=n.current)==null||o.call(n)}},[e,r]),{}};
3
- //# sourceMappingURL=index.js.map
3
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1,4 @@
1
+ export { getTrace } from "./get-trace";
2
+ export { getXRay } from "./get-xray";
3
+ export { useQuerySubscription } from "./use-query-subscription";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { getTrace } from "./get-trace";
2
+ export { getXRay } from "./get-xray";
3
+ export { useQuerySubscription } from "./use-query-subscription";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -1,3 +1,3 @@
1
1
  "use client"
2
2
  import I from"error-stack-parser";var v="renderWithHooks",m=r=>{let e=r.findIndex(s=>s.functionName===v);return e!==-1?r.slice(0,e):r};var i=process.env.NODE_ENV!=="development"?/node_modules\/refinedev\/(?<name>.*?)\//:/\/refine\/packages\/(?<name>.*?)\//;var y=r=>r?!!r.match(i):!1;var d=r=>{var n;if(!r)return;let e=r.match(i),s=(n=e==null?void 0:e.groups)==null?void 0:n.name;if(s)return`@refinedev/${s}`};function p(){if(process.env.NODE_ENV!=="development")return[];try{let r=new Error,e=I.parse(r);return m(e).map(t=>({file:t.fileName,line:t.lineNumber,column:t.columnNumber,function:t.functionName,isRefine:y(t.fileName),packageName:d(t.fileName)})).filter(t=>t.function).slice(1)}catch{return[]}}import{scopes as u}from"@refinedev/devtools-shared";var E=(r,e)=>{if(u[r]==="auth")return null;if(r==="useCan")return e?"key[1].resource":"key[1]";if(u[r]==="audit-log")return r==="useLog"?"variables.resource":"key[1]";if(u[r]==="data"){if(r==="useCustom"||r==="useCustomMutation")return null;switch(r){case"useList":case"useInfiniteList":case"useOne":case"useMany":return e?"key[1]":"key[2]";case"useCreate":case"useCreateMany":case"useDelete":case"useDeleteMany":case"useUpdate":case"useUpdateMany":return"variables.resource"}}return null};function P(r,e){if(process.env.NODE_ENV!=="development")return{hookName:"",trace:[],resourcePath:null,legacyKey:!1};let s=p().slice(1),n=E(r,e);return{hookName:r,trace:s,resourcePath:n,legacyKey:e}}import{DevToolsContext as k}from"@refinedev/devtools-shared";import f,{useContext as x}from"react";import{DevtoolsEvent as T,send as _}from"@refinedev/devtools-shared";var l=(r,e)=>{let s=e==null?void 0:e.map(t=>`${t.file}:${t.line}:${t.column}#${t.function}-${t.packageName}-${t.isRefine?1:0}`);return JSON.stringify([...r??[],...s??[]])};var R=r=>e=>{var n;if(!((n=e==null?void 0:e.meta)!=null&&n.trace))return;let s=e==null?void 0:e.meta;new Promise(t=>{var a,o;_(r,T.ACTIVITY,{type:"mutation",identifier:l(e==null?void 0:e.options.mutationKey,(a=e==null?void 0:e.meta)==null?void 0:a.trace),key:e==null?void 0:e.options.mutationKey,status:e==null?void 0:e.state.status,state:e==null?void 0:e.state,variables:(o=e==null?void 0:e.state)==null?void 0:o.variables,...s}),t()})},g=r=>e=>{var n;if(!((n=e==null?void 0:e.meta)!=null&&n.trace))return;let s=e==null?void 0:e.meta;new Promise(t=>{var a;_(r,T.ACTIVITY,{type:"query",identifier:l(e.queryKey,(a=e.meta)==null?void 0:a.trace),key:e.queryKey,status:e.state.status,state:e.state,...s}),t()})};var C=process.env.NODE_ENV!=="development"?()=>({}):r=>{let{ws:e}=x(k),s=f.useRef(),n=f.useRef();return f.useEffect(()=>{if(!e)return()=>0;let t=r.getQueryCache(),a=g(e);return t.getAll().forEach(a),s.current=t.subscribe(({query:o,type:c})=>(c==="added"||c==="updated")&&a(o)),()=>{var o;(o=s.current)==null||o.call(s)}},[e,r]),f.useEffect(()=>{if(!e)return()=>0;let t=r.getMutationCache(),a=R(e);return t.getAll().forEach(a),n.current=t.subscribe(({mutation:o,type:c})=>(c==="added"||c==="updated")&&a(o)),()=>{var o;(o=n.current)==null||o.call(n)}},[e,r]),{}};export{p as getTrace,P as getXRay,C as useQuerySubscription};
3
- //# sourceMappingURL=index.js.map
3
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/get-trace.ts","../src/clean-stack.ts","../src/constants.ts","../src/is-refine-stack.ts","../src/get-package-name-from-filename.ts","../src/get-resource-path.ts","../src/get-xray.ts","../src/use-query-subscription.tsx","../src/listeners.ts","../src/create-identifier.ts"],"sourcesContent":["import ErrorStackParser from \"error-stack-parser\";\nimport { cleanStack } from \"./clean-stack\";\nimport { isRefineStack } from \"./is-refine-stack\";\nimport { getPackageNameFromFilename } from \"./get-package-name-from-filename\";\nimport { TraceType } from \"@refinedev/devtools-shared\";\n\nexport function getTrace() {\n if (__DEV_CONDITION__ !== \"development\") {\n return [];\n }\n try {\n const error = new Error();\n const stack = ErrorStackParser.parse(error);\n const clean = cleanStack(stack);\n const traces = clean\n .map(\n (frame) =>\n ({\n file: frame.fileName,\n line: frame.lineNumber,\n column: frame.columnNumber,\n function: frame.functionName,\n isRefine: isRefineStack(frame.fileName),\n packageName: getPackageNameFromFilename(frame.fileName),\n }) as TraceType,\n )\n .filter((trace) => trace.function);\n return traces.slice(1);\n } catch (error) {\n return [];\n }\n}\n","import type { StackFrame } from \"error-stack-parser\";\n\nconst unrelatedFunctionName = \"renderWithHooks\";\n\nexport const cleanStack = (stack: StackFrame[]) => {\n const firstUnrelatedIndex = stack.findIndex(\n (frame) => frame.functionName === unrelatedFunctionName,\n );\n\n if (firstUnrelatedIndex !== -1) {\n return stack.slice(0, firstUnrelatedIndex);\n }\n\n return stack;\n};\n","export const REFINE_PACKAGE_FILEPATH_REGEXP =\n __DEV_CONDITION__ !== \"development\"\n ? /node_modules\\/refinedev\\/(?<name>.*?)\\//\n : /\\/refine\\/packages\\/(?<name>.*?)\\//;\n","import { REFINE_PACKAGE_FILEPATH_REGEXP } from \"./constants\";\n\nexport const isRefineStack = (filename?: string) => {\n if (!filename) return false;\n\n const match = filename.match(REFINE_PACKAGE_FILEPATH_REGEXP);\n\n return !!match;\n};\n","import { REFINE_PACKAGE_FILEPATH_REGEXP } from \"./constants\";\n\nexport const getPackageNameFromFilename = (filename?: string) => {\n if (!filename) return;\n\n const match = filename.match(REFINE_PACKAGE_FILEPATH_REGEXP);\n\n const name = match?.groups?.name;\n\n if (!name) return;\n\n return `@refinedev/${name}`;\n};\n","import {\n DevtoolsEvent,\n DevtoolsEventPayloads,\n RefineHook,\n scopes,\n} from \"@refinedev/devtools-shared\";\n\nexport type Activity =\n DevtoolsEventPayloads[DevtoolsEvent.DEVTOOLS_ACTIVITY_UPDATE][\"updatedActivities\"][number];\n\nexport const getResourcePath = (\n hookName: RefineHook,\n legacyKey: boolean,\n): string | null => {\n if (scopes[hookName] === \"auth\") {\n return null;\n }\n if (hookName === \"useCan\") {\n if (legacyKey) {\n return \"key[1].resource\";\n }\n return \"key[1]\";\n }\n if (scopes[hookName] === \"audit-log\") {\n if (hookName === \"useLog\") {\n return \"variables.resource\";\n }\n return \"key[1]\";\n }\n if (scopes[hookName] === \"data\") {\n if (hookName === \"useCustom\" || hookName === \"useCustomMutation\") {\n return null;\n }\n switch (hookName) {\n case \"useList\":\n case \"useInfiniteList\":\n case \"useOne\":\n case \"useMany\":\n if (legacyKey) {\n return \"key[1]\";\n }\n return \"key[2]\";\n case \"useCreate\":\n case \"useCreateMany\":\n case \"useDelete\":\n case \"useDeleteMany\":\n case \"useUpdate\":\n case \"useUpdateMany\":\n return \"variables.resource\";\n }\n }\n return null;\n};\n","import { RefineHook, TraceType } from \"@refinedev/devtools-shared\";\nimport { getTrace } from \"./get-trace\";\nimport { getResourcePath } from \"./get-resource-path\";\n\nexport type XRayResponse = {\n hookName: string;\n trace: TraceType[];\n resourcePath: string | null;\n legacyKey: boolean;\n};\n\nexport function getXRay(hookName: string, legacyKey: boolean): XRayResponse {\n if (__DEV_CONDITION__ !== \"development\") {\n return {\n hookName: \"\",\n trace: [],\n resourcePath: null,\n legacyKey: false,\n };\n }\n const trace = getTrace().slice(1);\n\n const resourcePath = getResourcePath(hookName as RefineHook, legacyKey);\n\n return {\n hookName,\n trace,\n resourcePath,\n legacyKey,\n };\n}\n","import { DevToolsContext } from \"@refinedev/devtools-shared\";\nimport { QueryClient } from \"@tanstack/react-query\";\nimport React, { useContext } from \"react\";\nimport { createQueryListener, createMutationListener } from \"./listeners\";\n\nexport const useQuerySubscription =\n __DEV_CONDITION__ !== \"development\"\n ? () => ({})\n : (queryClient: QueryClient) => {\n const { ws } = useContext(DevToolsContext);\n const queryCacheSubscription = React.useRef<() => void>();\n const mutationCacheSubscription = React.useRef<() => void>();\n\n React.useEffect(() => {\n if (!ws) return () => 0;\n\n const queryCache = queryClient.getQueryCache();\n\n const queryListener = createQueryListener(ws);\n\n queryCache.getAll().forEach(queryListener);\n\n queryCacheSubscription.current = queryCache.subscribe(\n ({ query, type }) =>\n (type === \"added\" || type === \"updated\") && queryListener(query),\n );\n\n return () => {\n queryCacheSubscription.current?.();\n };\n }, [ws, queryClient]);\n\n React.useEffect(() => {\n if (!ws) return () => 0;\n\n const mutationCache = queryClient.getMutationCache();\n\n const mutationListener = createMutationListener(ws);\n\n mutationCache.getAll().forEach(mutationListener);\n\n mutationCacheSubscription.current = mutationCache.subscribe(\n ({ mutation, type }) =>\n (type === \"added\" || type === \"updated\") &&\n mutationListener(mutation),\n );\n\n return () => {\n mutationCacheSubscription.current?.();\n };\n }, [ws, queryClient]);\n\n return {};\n };\n","import { DevtoolsEvent, send } from \"@refinedev/devtools-shared\";\nimport { Mutation, Query } from \"@tanstack/react-query\";\n\nimport { createIdentifier } from \"./create-identifier\";\nimport { XRayResponse } from \"./get-xray\";\n\nexport const createMutationListener =\n (ws: WebSocket) => (mutation?: Mutation) => {\n if (!mutation?.meta?.trace) return;\n\n const meta: XRayResponse = mutation?.meta as any;\n\n new Promise<void>((resolve) => {\n send(ws, DevtoolsEvent.ACTIVITY, {\n type: \"mutation\",\n identifier: createIdentifier(\n mutation?.options.mutationKey,\n mutation?.meta?.trace as any,\n ),\n key: mutation?.options.mutationKey as any,\n status: mutation?.state.status,\n state: mutation?.state,\n variables: mutation?.state?.variables,\n ...meta,\n });\n resolve();\n });\n\n // console.table({\n // type: \"mutation\",\n // key: mutation?.options.mutationKey,\n // id: mutation?.mutationId,\n // status: mutation?.state.status,\n // trace: mutation?.meta?.trace,\n // state: mutation?.state,\n // variables: mutation?.state?.variables,\n // });\n };\n\nexport const createQueryListener = (ws: WebSocket) => (query: Query) => {\n if (!query?.meta?.trace) return;\n\n const meta: XRayResponse = query?.meta as any;\n\n new Promise<void>((resolve) => {\n send(ws, DevtoolsEvent.ACTIVITY, {\n type: \"query\",\n identifier: createIdentifier(query.queryKey, query.meta?.trace as any),\n key: query.queryKey as any,\n status: query.state.status,\n state: query.state,\n ...meta,\n });\n resolve();\n });\n\n // console.table({\n // type: \"query\",\n // key: query.queryKey,\n // status: query.state.status,\n // trace: query.meta?.trace,\n // state: query.state,\n // });\n};\n","import { TraceType } from \"@refinedev/devtools-shared\";\nimport { MutationKey, QueryKey } from \"@tanstack/react-query\";\n\nexport const createIdentifier = (\n key?: QueryKey | MutationKey,\n trace?: TraceType[],\n) => {\n const simpleTrace = trace?.map(\n (t) =>\n `${t.file}:${t.line}:${t.column}#${t.function}-${t.packageName}-${\n t.isRefine ? 1 : 0\n }`,\n );\n const str = JSON.stringify([...(key ?? []), ...(simpleTrace ?? [])]);\n\n return str;\n};\n"],"mappings":"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","names":["ErrorStackParser","unrelatedFunctionName","cleanStack","stack","firstUnrelatedIndex","frame","REFINE_PACKAGE_FILEPATH_REGEXP","isRefineStack","filename","REFINE_PACKAGE_FILEPATH_REGEXP","getPackageNameFromFilename","filename","_a","match","REFINE_PACKAGE_FILEPATH_REGEXP","name","getTrace","error","stack","ErrorStackParser","cleanStack","frame","isRefineStack","getPackageNameFromFilename","trace","scopes","getResourcePath","hookName","legacyKey","getXRay","hookName","legacyKey","trace","getTrace","resourcePath","getResourcePath","DevToolsContext","React","useContext","DevtoolsEvent","send","createIdentifier","key","trace","simpleTrace","createMutationListener","ws","mutation","_a","meta","resolve","_b","send","DevtoolsEvent","createIdentifier","createQueryListener","query","useQuerySubscription","queryClient","ws","useContext","DevToolsContext","queryCacheSubscription","React","mutationCacheSubscription","queryCache","queryListener","createQueryListener","query","type","_a","mutationCache","mutationListener","createMutationListener","mutation"]}
@@ -0,0 +1,2 @@
1
+ export declare const isRefineStack: (filename?: string) => boolean;
2
+ //# sourceMappingURL=is-refine-stack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-refine-stack.d.ts","sourceRoot":"","sources":["../src/is-refine-stack.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa,cAAe,MAAM,YAM9C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const isRefineStack: (filename?: string) => boolean;
2
+ //# sourceMappingURL=is-refine-stack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-refine-stack.d.ts","sourceRoot":"","sources":["../src/is-refine-stack.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa,cAAe,MAAM,YAM9C,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Mutation, Query } from "@tanstack/react-query";
2
+ export declare const createMutationListener: (ws: WebSocket) => (mutation?: Mutation) => void;
3
+ export declare const createQueryListener: (ws: WebSocket) => (query: Query) => void;
4
+ //# sourceMappingURL=listeners.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listeners.d.ts","sourceRoot":"","sources":["../src/listeners.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAKxD,eAAO,MAAM,sBAAsB,OAC5B,SAAS,iBAAiB,QAAQ,SA8BtC,CAAC;AAEJ,eAAO,MAAM,mBAAmB,OAAQ,SAAS,aAAa,KAAK,SAwBlE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Mutation, Query } from "@tanstack/react-query";
2
+ export declare const createMutationListener: (ws: WebSocket) => (mutation?: Mutation) => void;
3
+ export declare const createQueryListener: (ws: WebSocket) => (query: Query) => void;
4
+ //# sourceMappingURL=listeners.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listeners.d.ts","sourceRoot":"","sources":["../src/listeners.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAKxD,eAAO,MAAM,sBAAsB,OAC5B,SAAS,iBAAiB,QAAQ,SA8BtC,CAAC;AAEJ,eAAO,MAAM,mBAAmB,OAAQ,SAAS,aAAa,KAAK,SAwBlE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { QueryClient } from "@tanstack/react-query";
2
+ export declare const useQuerySubscription: (queryClient: QueryClient) => {};
3
+ //# sourceMappingURL=use-query-subscription.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-query-subscription.d.ts","sourceRoot":"","sources":["../src/use-query-subscription.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIpD,eAAO,MAAM,oBAAoB,gBAGb,WAAW,OA6CxB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { QueryClient } from "@tanstack/react-query";
2
+ export declare const useQuerySubscription: (queryClient: QueryClient) => {};
3
+ //# sourceMappingURL=use-query-subscription.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-query-subscription.d.ts","sourceRoot":"","sources":["../src/use-query-subscription.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIpD,eAAO,MAAM,oBAAoB,gBAGb,WAAW,OA6CxB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@refinedev/devtools-internal",
3
- "version": "1.1.6",
3
+ "version": "1.1.7",
4
4
  "private": false,
5
5
  "description": "refine devtools offers a set of features from monitoring to quickly prototyping a UI.",
6
6
  "repository": {
@@ -11,21 +11,35 @@
11
11
  "license": "MIT",
12
12
  "author": "refine",
13
13
  "sideEffects": false,
14
- "main": "dist/index.js",
15
- "module": "dist/esm/index.js",
14
+ "exports": {
15
+ ".": {
16
+ "import": {
17
+ "types": "./dist/index.d.mts",
18
+ "default": "./dist/index.mjs"
19
+ },
20
+ "require": {
21
+ "types": "./dist/index.d.cts",
22
+ "default": "./dist/index.cjs"
23
+ }
24
+ }
25
+ },
26
+ "main": "dist/index.cjs",
27
+ "module": "dist/index.mjs",
16
28
  "typings": "dist/index.d.ts",
17
29
  "files": [
18
30
  "dist",
19
31
  "src"
20
32
  ],
21
33
  "scripts": {
22
- "build": "tsup --format esm,cjs,iife --minify --legacy-output",
23
- "dev": "tsup --watch --format esm,cjs,iife --legacy-output",
34
+ "build": "tsup",
35
+ "dev": "tsup --watch",
24
36
  "prepare": "npm run build",
25
- "test": "jest --passWithNoTests --runInBand"
37
+ "publint": "publint --strict=true --level=suggestion",
38
+ "test": "jest --passWithNoTests --runInBand",
39
+ "types": "node ../shared/generate-declarations.js"
26
40
  },
27
41
  "dependencies": {
28
- "@refinedev/devtools-shared": "1.1.4",
42
+ "@refinedev/devtools-shared": "1.1.5",
29
43
  "@tanstack/react-query": "^4.10.1",
30
44
  "error-stack-parser": "^2.1.4"
31
45
  },
@@ -36,8 +50,8 @@
36
50
  "jest": "^29.3.1",
37
51
  "jest-environment-jsdom": "^29.3.1",
38
52
  "react-router-dom": "^6.8.1",
39
- "ts-jest": "^29.0.3",
40
- "tslib": "^2.3.1",
53
+ "ts-jest": "^29.1.2",
54
+ "tslib": "^2.6.2",
41
55
  "tsup": "^6.7.0"
42
56
  },
43
57
  "peerDependencies": {
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/get-trace.ts","../../src/clean-stack.ts","../../src/constants.ts","../../src/is-refine-stack.ts","../../src/get-package-name-from-filename.ts","../../src/get-resource-path.ts","../../src/get-xray.ts","../../src/use-query-subscription.tsx","../../src/listeners.ts","../../src/create-identifier.ts"],"sourcesContent":["import ErrorStackParser from \"error-stack-parser\";\nimport { cleanStack } from \"./clean-stack\";\nimport { isRefineStack } from \"./is-refine-stack\";\nimport { getPackageNameFromFilename } from \"./get-package-name-from-filename\";\nimport { TraceType } from \"@refinedev/devtools-shared\";\n\nexport function getTrace() {\n if (__DEV_CONDITION__ !== \"development\") {\n return [];\n }\n try {\n const error = new Error();\n const stack = ErrorStackParser.parse(error);\n const clean = cleanStack(stack);\n const traces = clean\n .map(\n (frame) =>\n ({\n file: frame.fileName,\n line: frame.lineNumber,\n column: frame.columnNumber,\n function: frame.functionName,\n isRefine: isRefineStack(frame.fileName),\n packageName: getPackageNameFromFilename(frame.fileName),\n }) as TraceType,\n )\n .filter((trace) => trace.function);\n return traces.slice(1);\n } catch (error) {\n return [];\n }\n}\n","import type { StackFrame } from \"error-stack-parser\";\n\nconst unrelatedFunctionName = \"renderWithHooks\";\n\nexport const cleanStack = (stack: StackFrame[]) => {\n const firstUnrelatedIndex = stack.findIndex(\n (frame) => frame.functionName === unrelatedFunctionName,\n );\n\n if (firstUnrelatedIndex !== -1) {\n return stack.slice(0, firstUnrelatedIndex);\n }\n\n return stack;\n};\n","export const REFINE_PACKAGE_FILEPATH_REGEXP =\n __DEV_CONDITION__ !== \"development\"\n ? /node_modules\\/refinedev\\/(?<name>.*?)\\//\n : /\\/refine\\/packages\\/(?<name>.*?)\\//;\n","import { REFINE_PACKAGE_FILEPATH_REGEXP } from \"./constants\";\n\nexport const isRefineStack = (filename?: string) => {\n if (!filename) return false;\n\n const match = filename.match(REFINE_PACKAGE_FILEPATH_REGEXP);\n\n return !!match;\n};\n","import { REFINE_PACKAGE_FILEPATH_REGEXP } from \"./constants\";\n\nexport const getPackageNameFromFilename = (filename?: string) => {\n if (!filename) return;\n\n const match = filename.match(REFINE_PACKAGE_FILEPATH_REGEXP);\n\n const name = match?.groups?.name;\n\n if (!name) return;\n\n return `@refinedev/${name}`;\n};\n","import {\n DevtoolsEvent,\n DevtoolsEventPayloads,\n RefineHook,\n scopes,\n} from \"@refinedev/devtools-shared\";\n\nexport type Activity =\n DevtoolsEventPayloads[DevtoolsEvent.DEVTOOLS_ACTIVITY_UPDATE][\"updatedActivities\"][number];\n\nexport const getResourcePath = (\n hookName: RefineHook,\n legacyKey: boolean,\n): string | null => {\n if (scopes[hookName] === \"auth\") {\n return null;\n }\n if (hookName === \"useCan\") {\n if (legacyKey) {\n return \"key[1].resource\";\n }\n return \"key[1]\";\n }\n if (scopes[hookName] === \"audit-log\") {\n if (hookName === \"useLog\") {\n return \"variables.resource\";\n }\n return \"key[1]\";\n }\n if (scopes[hookName] === \"data\") {\n if (hookName === \"useCustom\" || hookName === \"useCustomMutation\") {\n return null;\n }\n switch (hookName) {\n case \"useList\":\n case \"useInfiniteList\":\n case \"useOne\":\n case \"useMany\":\n if (legacyKey) {\n return \"key[1]\";\n }\n return \"key[2]\";\n case \"useCreate\":\n case \"useCreateMany\":\n case \"useDelete\":\n case \"useDeleteMany\":\n case \"useUpdate\":\n case \"useUpdateMany\":\n return \"variables.resource\";\n }\n }\n return null;\n};\n","import { RefineHook, TraceType } from \"@refinedev/devtools-shared\";\nimport { getTrace } from \"./get-trace\";\nimport { getResourcePath } from \"./get-resource-path\";\n\nexport type XRayResponse = {\n hookName: string;\n trace: TraceType[];\n resourcePath: string | null;\n legacyKey: boolean;\n};\n\nexport function getXRay(hookName: string, legacyKey: boolean): XRayResponse {\n if (__DEV_CONDITION__ !== \"development\") {\n return {\n hookName: \"\",\n trace: [],\n resourcePath: null,\n legacyKey: false,\n };\n }\n const trace = getTrace().slice(1);\n\n const resourcePath = getResourcePath(hookName as RefineHook, legacyKey);\n\n return {\n hookName,\n trace,\n resourcePath,\n legacyKey,\n };\n}\n","import { DevToolsContext } from \"@refinedev/devtools-shared\";\nimport { QueryClient } from \"@tanstack/react-query\";\nimport React, { useContext } from \"react\";\nimport { createQueryListener, createMutationListener } from \"./listeners\";\n\nexport const useQuerySubscription =\n __DEV_CONDITION__ !== \"development\"\n ? () => ({})\n : (queryClient: QueryClient) => {\n const { ws } = useContext(DevToolsContext);\n const queryCacheSubscription = React.useRef<() => void>();\n const mutationCacheSubscription = React.useRef<() => void>();\n\n React.useEffect(() => {\n if (!ws) return () => 0;\n\n const queryCache = queryClient.getQueryCache();\n\n const queryListener = createQueryListener(ws);\n\n queryCache.getAll().forEach(queryListener);\n\n queryCacheSubscription.current = queryCache.subscribe(\n ({ query, type }) =>\n (type === \"added\" || type === \"updated\") && queryListener(query),\n );\n\n return () => {\n queryCacheSubscription.current?.();\n };\n }, [ws, queryClient]);\n\n React.useEffect(() => {\n if (!ws) return () => 0;\n\n const mutationCache = queryClient.getMutationCache();\n\n const mutationListener = createMutationListener(ws);\n\n mutationCache.getAll().forEach(mutationListener);\n\n mutationCacheSubscription.current = mutationCache.subscribe(\n ({ mutation, type }) =>\n (type === \"added\" || type === \"updated\") &&\n mutationListener(mutation),\n );\n\n return () => {\n mutationCacheSubscription.current?.();\n };\n }, [ws, queryClient]);\n\n return {};\n };\n","import { DevtoolsEvent, send } from \"@refinedev/devtools-shared\";\nimport { Mutation, Query } from \"@tanstack/react-query\";\n\nimport { createIdentifier } from \"./create-identifier\";\nimport { XRayResponse } from \"./get-xray\";\n\nexport const createMutationListener =\n (ws: WebSocket) => (mutation?: Mutation) => {\n if (!mutation?.meta?.trace) return;\n\n const meta: XRayResponse = mutation?.meta as any;\n\n new Promise<void>((resolve) => {\n send(ws, DevtoolsEvent.ACTIVITY, {\n type: \"mutation\",\n identifier: createIdentifier(\n mutation?.options.mutationKey,\n mutation?.meta?.trace as any,\n ),\n key: mutation?.options.mutationKey as any,\n status: mutation?.state.status,\n state: mutation?.state,\n variables: mutation?.state?.variables,\n ...meta,\n });\n resolve();\n });\n\n // console.table({\n // type: \"mutation\",\n // key: mutation?.options.mutationKey,\n // id: mutation?.mutationId,\n // status: mutation?.state.status,\n // trace: mutation?.meta?.trace,\n // state: mutation?.state,\n // variables: mutation?.state?.variables,\n // });\n };\n\nexport const createQueryListener = (ws: WebSocket) => (query: Query) => {\n if (!query?.meta?.trace) return;\n\n const meta: XRayResponse = query?.meta as any;\n\n new Promise<void>((resolve) => {\n send(ws, DevtoolsEvent.ACTIVITY, {\n type: \"query\",\n identifier: createIdentifier(query.queryKey, query.meta?.trace as any),\n key: query.queryKey as any,\n status: query.state.status,\n state: query.state,\n ...meta,\n });\n resolve();\n });\n\n // console.table({\n // type: \"query\",\n // key: query.queryKey,\n // status: query.state.status,\n // trace: query.meta?.trace,\n // state: query.state,\n // });\n};\n","import { TraceType } from \"@refinedev/devtools-shared\";\nimport { MutationKey, QueryKey } from \"@tanstack/react-query\";\n\nexport const createIdentifier = (\n key?: QueryKey | MutationKey,\n trace?: TraceType[],\n) => {\n const simpleTrace = trace?.map(\n (t) =>\n `${t.file}:${t.line}:${t.column}#${t.function}-${t.packageName}-${\n t.isRefine ? 1 : 0\n }`,\n );\n const str = JSON.stringify([...(key ?? []), ...(simpleTrace ?? [])]);\n\n return str;\n};\n"],"mappings":"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","names":["ErrorStackParser","unrelatedFunctionName","cleanStack","stack","firstUnrelatedIndex","frame","REFINE_PACKAGE_FILEPATH_REGEXP","isRefineStack","filename","REFINE_PACKAGE_FILEPATH_REGEXP","getPackageNameFromFilename","filename","_a","match","REFINE_PACKAGE_FILEPATH_REGEXP","name","getTrace","error","stack","ErrorStackParser","cleanStack","frame","isRefineStack","getPackageNameFromFilename","trace","scopes","getResourcePath","hookName","legacyKey","getXRay","hookName","legacyKey","trace","getTrace","resourcePath","getResourcePath","DevToolsContext","React","useContext","DevtoolsEvent","send","createIdentifier","key","trace","simpleTrace","createMutationListener","ws","mutation","_a","meta","resolve","_b","send","DevtoolsEvent","createIdentifier","createQueryListener","query","useQuerySubscription","queryClient","ws","useContext","DevToolsContext","queryCacheSubscription","React","mutationCacheSubscription","queryCache","queryListener","createQueryListener","query","type","_a","mutationCache","mutationListener","createMutationListener","mutation"]}
@@ -1,3 +0,0 @@
1
- "use client"
2
- (()=>{var G=Object.create;var g=Object.defineProperty;var K=Object.getOwnPropertyDescriptor;var Q=Object.getOwnPropertyNames;var U=Object.getPrototypeOf,X=Object.prototype.hasOwnProperty;var _=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+t+'" is not supported')});var $=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var j=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Q(e))!X.call(t,s)&&s!==r&&g(t,s,{get:()=>e[s],enumerable:!(o=K(e,s))||o.enumerable});return t};var p=(t,e,r)=>(r=t!=null?G(U(t)):{},j(e||!t||!t.__esModule?g(r,"default",{value:t,enumerable:!0}):r,t));var y=$((_e,k)=>{"use client";var J=Object.create,v=Object.defineProperty,W=Object.getOwnPropertyDescriptor,B=Object.getOwnPropertyNames,z=Object.getPrototypeOf,Z=Object.prototype.hasOwnProperty,q=(t,e)=>{for(var r in e)v(t,r,{get:e[r],enumerable:!0})},N=(t,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of B(e))!Z.call(t,s)&&s!==r&&v(t,s,{get:()=>e[s],enumerable:!(o=W(e,s))||o.enumerable});return t},ee=(t,e,r)=>(r=t!=null?J(z(t)):{},N(e||!t||!t.__esModule?v(r,"default",{value:t,enumerable:!0}):r,t)),te=t=>N(v({},"__esModule",{value:!0}),t),h={};q(h,{DevToolsContext:()=>b,DevToolsContextProvider:()=>se,DevtoolsEvent:()=>C,hooksByScope:()=>re,receive:()=>A,scopes:()=>R,send:()=>S});k.exports=te(h);var C=(t=>(t.RELOAD="devtools:reload",t.DEVTOOLS_INIT="devtools:init",t.DEVTOOLS_HANDSHAKE="devtools:handshake",t.DEVTOOLS_ALREADY_CONNECTED="devtools:already-connected",t.ACTIVITY="devtools:send-activity",t.DEVTOOLS_ACTIVITY_UPDATE="devtools:activity-update",t.DEVTOOLS_CONNECTED_APP="devtools:connected-app",t.DEVTOOLS_DISCONNECTED_APP="devtools:disconnected-app",t.DEVTOOLS_HIGHLIGHT_IN_MONITOR="devtools:highlight-in-monitor",t.DEVTOOLS_HIGHLIGHT_IN_MONITOR_ACTION="devtools:highlight-in-monitor-action",t.DEVTOOLS_LOGIN_SUCCESS="devtools:login-success",t.DEVTOOLS_RELOAD_AFTER_LOGIN="devtools:reload-after-login",t))(C||{}),R={useCan:"access-control",useLog:"audit-log",useLogList:"audit-log",useCreate:"data",useCreateMany:"data",useCustom:"data",useCustomMutation:"data",useDelete:"data",useDeleteMany:"data",useInfiniteList:"data",useList:"data",useMany:"data",useOne:"data",useUpdate:"data",useUpdateMany:"data",useForgotPassword:"auth",useGetIdentity:"auth",useIsAuthenticated:"auth",useLogin:"auth",useLogout:"auth",useOnError:"auth",usePermissions:"auth",useRegister:"auth",useUpdatePassword:"auth"},re=Object.entries(R).reduce((t,[e,r])=>(t[r]||(t[r]=[]),t[r].push(e),t),{}),u=ee(_("react"));async function S(t,e,r){if(t.readyState!==t.OPEN){await new Promise(o=>{let s=()=>{t.send(JSON.stringify({event:e,payload:r})),o(),t.removeEventListener("open",s)};t.addEventListener("open",s)});return}t.send(JSON.stringify({event:e,payload:r}))}function A(t,e,r){let o=s=>{let{event:a,payload:n}=JSON.parse(s.data);e===a&&r(n)};return t.addEventListener("message",o),()=>{t.removeEventListener("message",o)}}var b=u.default.createContext({__devtools:!1,port:5002,url:"localhost",secure:!1,ws:null}),se=({__devtools:t,port:e,children:r})=>{let[o,s]=u.default.useState({__devtools:t??!1,port:e??5002,url:"localhost",secure:!1,ws:null}),[a,n]=u.default.useState(null);u.default.useEffect(()=>{let d=new WebSocket(`${o.secure?"wss":"ws"}://localhost:${o.port}`),T=A(d,"devtools:handshake",H=>{s(F=>({...F,devtoolsUrl:H.url})),T()});return d.addEventListener("open",()=>{o.__devtools||S(d,"devtools:init",{url:window.location.origin})}),n(d),()=>{T(),d.close(1e3,window.location.origin)}},[]);let c=u.default.useMemo(()=>({...o,ws:a}),[o,a]);return u.default.createElement(b.Provider,{value:c},r)}});var P=p(_("error-stack-parser"));var Y="renderWithHooks",I=t=>{let e=t.findIndex(r=>r.functionName===Y);return e!==-1?t.slice(0,e):t};var f=process.env.NODE_ENV!=="development"?/node_modules\/refinedev\/(?<name>.*?)\//:/\/refine\/packages\/(?<name>.*?)\//;var D=t=>t?!!t.match(f):!1;var L=t=>{var o;if(!t)return;let e=t.match(f),r=(o=e==null?void 0:e.groups)==null?void 0:o.name;if(r)return`@refinedev/${r}`};function m(){if(process.env.NODE_ENV!=="development")return[];try{let t=new Error,e=P.default.parse(t);return I(e).map(s=>({file:s.fileName,line:s.lineNumber,column:s.columnNumber,function:s.functionName,isRefine:D(s.fileName),packageName:L(s.fileName)})).filter(s=>s.function).slice(1)}catch{return[]}}var E=p(y()),x=(t,e)=>{if(E.scopes[t]==="auth")return null;if(t==="useCan")return e?"key[1].resource":"key[1]";if(E.scopes[t]==="audit-log")return t==="useLog"?"variables.resource":"key[1]";if(E.scopes[t]==="data"){if(t==="useCustom"||t==="useCustomMutation")return null;switch(t){case"useList":case"useInfiniteList":case"useOne":case"useMany":return e?"key[1]":"key[2]";case"useCreate":case"useCreateMany":case"useDelete":case"useDeleteMany":case"useUpdate":case"useUpdateMany":return"variables.resource"}}return null};function oe(t,e){if(process.env.NODE_ENV!=="development")return{hookName:"",trace:[],resourcePath:null,legacyKey:!1};let r=m().slice(1),o=x(t,e);return{hookName:t,trace:r,resourcePath:o,legacyKey:e}}var V=p(y()),i=p(_("react"));var l=p(y());var O=(t,e)=>{let r=e==null?void 0:e.map(s=>`${s.file}:${s.line}:${s.column}#${s.function}-${s.packageName}-${s.isRefine?1:0}`);return JSON.stringify([...t??[],...r??[]])};var w=t=>e=>{var o;if(!((o=e==null?void 0:e.meta)!=null&&o.trace))return;let r=e==null?void 0:e.meta;new Promise(s=>{var a,n;(0,l.send)(t,l.DevtoolsEvent.ACTIVITY,{type:"mutation",identifier:O(e==null?void 0:e.options.mutationKey,(a=e==null?void 0:e.meta)==null?void 0:a.trace),key:e==null?void 0:e.options.mutationKey,status:e==null?void 0:e.state.status,state:e==null?void 0:e.state,variables:(n=e==null?void 0:e.state)==null?void 0:n.variables,...r}),s()})},M=t=>e=>{var o;if(!((o=e==null?void 0:e.meta)!=null&&o.trace))return;let r=e==null?void 0:e.meta;new Promise(s=>{var a;(0,l.send)(t,l.DevtoolsEvent.ACTIVITY,{type:"query",identifier:O(e.queryKey,(a=e.meta)==null?void 0:a.trace),key:e.queryKey,status:e.state.status,state:e.state,...r}),s()})};var ae=process.env.NODE_ENV!=="development"?()=>({}):t=>{let{ws:e}=(0,i.useContext)(V.DevToolsContext),r=i.default.useRef(),o=i.default.useRef();return i.default.useEffect(()=>{if(!e)return()=>0;let s=t.getQueryCache(),a=M(e);return s.getAll().forEach(a),r.current=s.subscribe(({query:n,type:c})=>(c==="added"||c==="updated")&&a(n)),()=>{var n;(n=r.current)==null||n.call(r)}},[e,t]),i.default.useEffect(()=>{if(!e)return()=>0;let s=t.getMutationCache(),a=w(e);return s.getAll().forEach(a),o.current=s.subscribe(({mutation:n,type:c})=>(c==="added"||c==="updated")&&a(n)),()=>{var n;(n=o.current)==null||n.call(o)}},[e,t]),{}};})();
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../devtools-shared/src/index.ts","../../../devtools-shared/src/event-types.ts","../../../devtools-shared/src/scopes.ts","../../../devtools-shared/src/context.tsx","../../../devtools-shared/src/send.ts","../../../devtools-shared/src/receive.ts","../../src/get-trace.ts","../../src/clean-stack.ts","../../src/constants.ts","../../src/is-refine-stack.ts","../../src/get-package-name-from-filename.ts","../../src/get-resource-path.ts","../../src/get-xray.ts","../../src/use-query-subscription.tsx","../../src/listeners.ts","../../src/create-identifier.ts"],"sourcesContent":["export { DevtoolsEvent, DevtoolsEventPayloads } from \"./event-types\";\nexport { TraceType } from \"./trace\";\nexport { Feed, FeedSection } from \"./feed\";\nexport {\n PackageType,\n PackageLatestVersionType,\n AvailablePackageType,\n} from \"./package\";\nexport { RefineHook, Scopes, hooksByScope, scopes } from \"./scopes\";\n\nexport { DevToolsContextProvider, DevToolsContext } from \"./context\";\n\nexport { send } from \"./send\";\nexport { receive } from \"./receive\";\n","import {\n Mutation,\n MutationKey,\n MutationStatus,\n QueryKey,\n QueryState,\n QueryStatus,\n} from \"@tanstack/react-query\";\nimport { TraceType } from \"./trace\";\n\nexport enum DevtoolsEvent {\n RELOAD = \"devtools:reload\",\n DEVTOOLS_INIT = \"devtools:init\",\n DEVTOOLS_HANDSHAKE = \"devtools:handshake\",\n DEVTOOLS_ALREADY_CONNECTED = \"devtools:already-connected\",\n ACTIVITY = \"devtools:send-activity\",\n DEVTOOLS_ACTIVITY_UPDATE = \"devtools:activity-update\",\n DEVTOOLS_CONNECTED_APP = \"devtools:connected-app\",\n DEVTOOLS_DISCONNECTED_APP = \"devtools:disconnected-app\",\n DEVTOOLS_HIGHLIGHT_IN_MONITOR = \"devtools:highlight-in-monitor\",\n DEVTOOLS_HIGHLIGHT_IN_MONITOR_ACTION = \"devtools:highlight-in-monitor-action\",\n DEVTOOLS_LOGIN_SUCCESS = \"devtools:login-success\",\n DEVTOOLS_RELOAD_AFTER_LOGIN = \"devtools:reload-after-login\",\n}\n\ntype Timestamps = {\n createdAt: number;\n updatedAt: number;\n};\n\ntype ActivityPayload =\n | {\n type: \"mutation\";\n identifier: string;\n key?: MutationKey;\n status?: MutationStatus;\n trace?: TraceType[];\n state: Mutation<any, any, any, any>[\"state\"];\n variables?: Mutation<any, any, any, any>[\"state\"][\"variables\"];\n hookName: string;\n resourcePath: string | null;\n legacyKey: boolean;\n }\n | {\n type: \"query\";\n identifier: string;\n key?: QueryKey;\n status?: QueryStatus;\n trace?: TraceType[];\n state: QueryState<any, any>;\n hookName: string;\n resourcePath: string | null;\n legacyKey: boolean;\n };\n\nexport type DevtoolsEventPayloads = {\n [DevtoolsEvent.RELOAD]: {};\n [DevtoolsEvent.DEVTOOLS_INIT]: { url: string };\n [DevtoolsEvent.DEVTOOLS_HANDSHAKE]: { url: string };\n [DevtoolsEvent.DEVTOOLS_ALREADY_CONNECTED]: { url: string };\n [DevtoolsEvent.ACTIVITY]: ActivityPayload;\n [DevtoolsEvent.DEVTOOLS_ACTIVITY_UPDATE]: {\n updatedActivities: (ActivityPayload & Timestamps)[];\n };\n [DevtoolsEvent.DEVTOOLS_CONNECTED_APP]: { url: string | null };\n [DevtoolsEvent.DEVTOOLS_DISCONNECTED_APP]: {};\n [DevtoolsEvent.DEVTOOLS_HIGHLIGHT_IN_MONITOR]: { name: string };\n [DevtoolsEvent.DEVTOOLS_HIGHLIGHT_IN_MONITOR_ACTION]: { name: string };\n [DevtoolsEvent.DEVTOOLS_LOGIN_SUCCESS]: {};\n [DevtoolsEvent.DEVTOOLS_RELOAD_AFTER_LOGIN]: {};\n};\n","export type RefineHook =\n | \"useCan\"\n | \"useLog\"\n | \"useLogList\"\n | \"useCreate\"\n | \"useCreateMany\"\n | \"useCustom\"\n | \"useCustomMutation\"\n | \"useDelete\"\n | \"useDeleteMany\"\n | \"useInfiniteList\"\n | \"useList\"\n | \"useMany\"\n | \"useOne\"\n | \"useUpdate\"\n | \"useUpdateMany\"\n | \"useForgotPassword\"\n | \"useGetIdentity\"\n | \"useIsAuthenticated\"\n | \"useLogin\"\n | \"useLogout\"\n | \"useOnError\"\n | \"usePermissions\"\n | \"useRegister\"\n | \"useUpdatePassword\";\n\nexport type Scopes = \"data\" | \"audit-log\" | \"access-control\" | \"auth\";\n\nexport const scopes: Record<RefineHook, Scopes> = {\n useCan: \"access-control\",\n useLog: \"audit-log\",\n useLogList: \"audit-log\",\n useCreate: \"data\",\n useCreateMany: \"data\",\n useCustom: \"data\",\n useCustomMutation: \"data\",\n useDelete: \"data\",\n useDeleteMany: \"data\",\n useInfiniteList: \"data\",\n useList: \"data\",\n useMany: \"data\",\n useOne: \"data\",\n useUpdate: \"data\",\n useUpdateMany: \"data\",\n useForgotPassword: \"auth\",\n useGetIdentity: \"auth\",\n useIsAuthenticated: \"auth\",\n useLogin: \"auth\",\n useLogout: \"auth\",\n useOnError: \"auth\",\n usePermissions: \"auth\",\n useRegister: \"auth\",\n useUpdatePassword: \"auth\",\n};\n\nexport const hooksByScope = Object.entries(scopes).reduce(\n (acc, [hook, scope]) => {\n if (!acc[scope]) {\n acc[scope] = [];\n }\n\n acc[scope].push(hook as RefineHook);\n\n return acc;\n },\n {} as Record<Scopes, RefineHook[]>,\n);\n","import React from \"react\";\nimport { DevtoolsEvent } from \"./event-types\";\nimport { send } from \"./send\";\nimport { receive } from \"./receive\";\n\ntype DevToolsContextValue = {\n __devtools: boolean;\n port: number;\n url: string;\n secure: boolean;\n ws: WebSocket | null;\n devtoolsUrl?: string;\n};\n\nexport const DevToolsContext = React.createContext<DevToolsContextValue>({\n __devtools: false,\n port: 5002,\n url: \"localhost\",\n secure: false,\n ws: null,\n});\n\ntype Props = React.PropsWithChildren<\n Partial<Pick<DevToolsContextValue, \"port\" | \"__devtools\">>\n>;\n\nexport const DevToolsContextProvider: React.FC<Props> = ({\n __devtools,\n port,\n children,\n}) => {\n const [values, setValues] = React.useState<DevToolsContextValue>({\n __devtools: __devtools ?? false,\n port: port ?? 5002,\n url: \"localhost\",\n secure: false,\n ws: null,\n });\n\n const [ws, setWs] = React.useState<WebSocket | null>(null);\n\n React.useEffect(() => {\n const wsInstance = new WebSocket(\n `${values.secure ? \"wss\" : \"ws\"}://localhost:${values.port}`,\n );\n\n const unsubscribe = receive(\n wsInstance,\n DevtoolsEvent.DEVTOOLS_HANDSHAKE,\n (data) => {\n setValues((v) => ({\n ...v,\n devtoolsUrl: data.url,\n }));\n unsubscribe();\n },\n );\n\n wsInstance.addEventListener(\"open\", () => {\n if (!values.__devtools) {\n send(wsInstance, DevtoolsEvent.DEVTOOLS_INIT, {\n url: window.location.origin,\n });\n }\n });\n\n setWs(wsInstance);\n\n return () => {\n unsubscribe();\n\n wsInstance.close(1000, window.location.origin);\n };\n }, []);\n\n const contextValues = React.useMemo<DevToolsContextValue>(\n () => ({\n ...values,\n ws,\n }),\n [values, ws],\n );\n\n return (\n <DevToolsContext.Provider value={contextValues}>\n {children}\n </DevToolsContext.Provider>\n );\n};\n","import { DevtoolsEvent, DevtoolsEventPayloads } from \"./event-types\";\n\nexport async function send<T extends DevtoolsEvent>(\n ws: WebSocket,\n event: T,\n payload: DevtoolsEventPayloads[T],\n) {\n // check if the socket is open\n // if not, wait for it to open\n if (ws.readyState !== ws.OPEN) {\n await new Promise<void>((resolve) => {\n const listener = () => {\n ws.send(JSON.stringify({ event, payload }));\n resolve();\n ws.removeEventListener(\"open\", listener);\n };\n\n ws.addEventListener(\"open\", listener);\n });\n return;\n }\n ws.send(JSON.stringify({ event, payload }));\n return;\n}\n","// receive ws message by adding a listener to the ws object\n\nimport { DevtoolsEvent, DevtoolsEventPayloads } from \"./event-types\";\n\nexport function receive<T extends DevtoolsEvent>(\n ws: WebSocket,\n event: T,\n callback: (payload: DevtoolsEventPayloads[T]) => void,\n) {\n const listener = (e: MessageEvent) => {\n const { event: receivedEvent, payload } = JSON.parse(e.data);\n if (event === receivedEvent) {\n callback(payload);\n }\n };\n\n ws.addEventListener(\"message\", listener);\n\n return () => {\n ws.removeEventListener(\"message\", listener);\n };\n}\n","import ErrorStackParser from \"error-stack-parser\";\nimport { cleanStack } from \"./clean-stack\";\nimport { isRefineStack } from \"./is-refine-stack\";\nimport { getPackageNameFromFilename } from \"./get-package-name-from-filename\";\nimport { TraceType } from \"@refinedev/devtools-shared\";\n\nexport function getTrace() {\n if (__DEV_CONDITION__ !== \"development\") {\n return [];\n }\n try {\n const error = new Error();\n const stack = ErrorStackParser.parse(error);\n const clean = cleanStack(stack);\n const traces = clean\n .map(\n (frame) =>\n ({\n file: frame.fileName,\n line: frame.lineNumber,\n column: frame.columnNumber,\n function: frame.functionName,\n isRefine: isRefineStack(frame.fileName),\n packageName: getPackageNameFromFilename(frame.fileName),\n }) as TraceType,\n )\n .filter((trace) => trace.function);\n return traces.slice(1);\n } catch (error) {\n return [];\n }\n}\n","import type { StackFrame } from \"error-stack-parser\";\n\nconst unrelatedFunctionName = \"renderWithHooks\";\n\nexport const cleanStack = (stack: StackFrame[]) => {\n const firstUnrelatedIndex = stack.findIndex(\n (frame) => frame.functionName === unrelatedFunctionName,\n );\n\n if (firstUnrelatedIndex !== -1) {\n return stack.slice(0, firstUnrelatedIndex);\n }\n\n return stack;\n};\n","export const REFINE_PACKAGE_FILEPATH_REGEXP =\n __DEV_CONDITION__ !== \"development\"\n ? /node_modules\\/refinedev\\/(?<name>.*?)\\//\n : /\\/refine\\/packages\\/(?<name>.*?)\\//;\n","import { REFINE_PACKAGE_FILEPATH_REGEXP } from \"./constants\";\n\nexport const isRefineStack = (filename?: string) => {\n if (!filename) return false;\n\n const match = filename.match(REFINE_PACKAGE_FILEPATH_REGEXP);\n\n return !!match;\n};\n","import { REFINE_PACKAGE_FILEPATH_REGEXP } from \"./constants\";\n\nexport const getPackageNameFromFilename = (filename?: string) => {\n if (!filename) return;\n\n const match = filename.match(REFINE_PACKAGE_FILEPATH_REGEXP);\n\n const name = match?.groups?.name;\n\n if (!name) return;\n\n return `@refinedev/${name}`;\n};\n","import {\n DevtoolsEvent,\n DevtoolsEventPayloads,\n RefineHook,\n scopes,\n} from \"@refinedev/devtools-shared\";\n\nexport type Activity =\n DevtoolsEventPayloads[DevtoolsEvent.DEVTOOLS_ACTIVITY_UPDATE][\"updatedActivities\"][number];\n\nexport const getResourcePath = (\n hookName: RefineHook,\n legacyKey: boolean,\n): string | null => {\n if (scopes[hookName] === \"auth\") {\n return null;\n }\n if (hookName === \"useCan\") {\n if (legacyKey) {\n return \"key[1].resource\";\n }\n return \"key[1]\";\n }\n if (scopes[hookName] === \"audit-log\") {\n if (hookName === \"useLog\") {\n return \"variables.resource\";\n }\n return \"key[1]\";\n }\n if (scopes[hookName] === \"data\") {\n if (hookName === \"useCustom\" || hookName === \"useCustomMutation\") {\n return null;\n }\n switch (hookName) {\n case \"useList\":\n case \"useInfiniteList\":\n case \"useOne\":\n case \"useMany\":\n if (legacyKey) {\n return \"key[1]\";\n }\n return \"key[2]\";\n case \"useCreate\":\n case \"useCreateMany\":\n case \"useDelete\":\n case \"useDeleteMany\":\n case \"useUpdate\":\n case \"useUpdateMany\":\n return \"variables.resource\";\n }\n }\n return null;\n};\n","import { RefineHook, TraceType } from \"@refinedev/devtools-shared\";\nimport { getTrace } from \"./get-trace\";\nimport { getResourcePath } from \"./get-resource-path\";\n\nexport type XRayResponse = {\n hookName: string;\n trace: TraceType[];\n resourcePath: string | null;\n legacyKey: boolean;\n};\n\nexport function getXRay(hookName: string, legacyKey: boolean): XRayResponse {\n if (__DEV_CONDITION__ !== \"development\") {\n return {\n hookName: \"\",\n trace: [],\n resourcePath: null,\n legacyKey: false,\n };\n }\n const trace = getTrace().slice(1);\n\n const resourcePath = getResourcePath(hookName as RefineHook, legacyKey);\n\n return {\n hookName,\n trace,\n resourcePath,\n legacyKey,\n };\n}\n","import { DevToolsContext } from \"@refinedev/devtools-shared\";\nimport { QueryClient } from \"@tanstack/react-query\";\nimport React, { useContext } from \"react\";\nimport { createQueryListener, createMutationListener } from \"./listeners\";\n\nexport const useQuerySubscription =\n __DEV_CONDITION__ !== \"development\"\n ? () => ({})\n : (queryClient: QueryClient) => {\n const { ws } = useContext(DevToolsContext);\n const queryCacheSubscription = React.useRef<() => void>();\n const mutationCacheSubscription = React.useRef<() => void>();\n\n React.useEffect(() => {\n if (!ws) return () => 0;\n\n const queryCache = queryClient.getQueryCache();\n\n const queryListener = createQueryListener(ws);\n\n queryCache.getAll().forEach(queryListener);\n\n queryCacheSubscription.current = queryCache.subscribe(\n ({ query, type }) =>\n (type === \"added\" || type === \"updated\") && queryListener(query),\n );\n\n return () => {\n queryCacheSubscription.current?.();\n };\n }, [ws, queryClient]);\n\n React.useEffect(() => {\n if (!ws) return () => 0;\n\n const mutationCache = queryClient.getMutationCache();\n\n const mutationListener = createMutationListener(ws);\n\n mutationCache.getAll().forEach(mutationListener);\n\n mutationCacheSubscription.current = mutationCache.subscribe(\n ({ mutation, type }) =>\n (type === \"added\" || type === \"updated\") &&\n mutationListener(mutation),\n );\n\n return () => {\n mutationCacheSubscription.current?.();\n };\n }, [ws, queryClient]);\n\n return {};\n };\n","import { DevtoolsEvent, send } from \"@refinedev/devtools-shared\";\nimport { Mutation, Query } from \"@tanstack/react-query\";\n\nimport { createIdentifier } from \"./create-identifier\";\nimport { XRayResponse } from \"./get-xray\";\n\nexport const createMutationListener =\n (ws: WebSocket) => (mutation?: Mutation) => {\n if (!mutation?.meta?.trace) return;\n\n const meta: XRayResponse = mutation?.meta as any;\n\n new Promise<void>((resolve) => {\n send(ws, DevtoolsEvent.ACTIVITY, {\n type: \"mutation\",\n identifier: createIdentifier(\n mutation?.options.mutationKey,\n mutation?.meta?.trace as any,\n ),\n key: mutation?.options.mutationKey as any,\n status: mutation?.state.status,\n state: mutation?.state,\n variables: mutation?.state?.variables,\n ...meta,\n });\n resolve();\n });\n\n // console.table({\n // type: \"mutation\",\n // key: mutation?.options.mutationKey,\n // id: mutation?.mutationId,\n // status: mutation?.state.status,\n // trace: mutation?.meta?.trace,\n // state: mutation?.state,\n // variables: mutation?.state?.variables,\n // });\n };\n\nexport const createQueryListener = (ws: WebSocket) => (query: Query) => {\n if (!query?.meta?.trace) return;\n\n const meta: XRayResponse = query?.meta as any;\n\n new Promise<void>((resolve) => {\n send(ws, DevtoolsEvent.ACTIVITY, {\n type: \"query\",\n identifier: createIdentifier(query.queryKey, query.meta?.trace as any),\n key: query.queryKey as any,\n status: query.state.status,\n state: query.state,\n ...meta,\n });\n resolve();\n });\n\n // console.table({\n // type: \"query\",\n // key: query.queryKey,\n // status: query.state.status,\n // trace: query.meta?.trace,\n // state: query.state,\n // });\n};\n","import { TraceType } from \"@refinedev/devtools-shared\";\nimport { MutationKey, QueryKey } from \"@tanstack/react-query\";\n\nexport const createIdentifier = (\n key?: QueryKey | MutationKey,\n trace?: TraceType[],\n) => {\n const simpleTrace = trace?.map(\n (t) =>\n `${t.file}:${t.line}:${t.column}#${t.function}-${t.packageName}-${\n t.isRefine ? 1 : 0\n }`,\n );\n const str = JSON.stringify([...(key ?? []), ...(simpleTrace ?? [])]);\n\n return str;\n};\n"],"mappings":"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","names":["src_exports","__export","DevToolsContext","DevToolsContextProvider","DevtoolsEvent","hooksByScope","receive","scopes","send","module","__toCommonJS","acc","hook","scope","import_react","A","ws","event","payload","resolve","listener","callback","e","receivedEvent","r","React","__devtools","port","children","values","setValues","setWs","wsInstance","unsubscribe","data","v","contextValues","import_error_stack_parser","unrelatedFunctionName","cleanStack","stack","firstUnrelatedIndex","frame","REFINE_PACKAGE_FILEPATH_REGEXP","isRefineStack","filename","REFINE_PACKAGE_FILEPATH_REGEXP","getPackageNameFromFilename","filename","_a","match","REFINE_PACKAGE_FILEPATH_REGEXP","name","getTrace","error","stack","ErrorStackParser","cleanStack","frame","isRefineStack","getPackageNameFromFilename","trace","import_devtools_shared","getResourcePath","hookName","legacyKey","getXRay","hookName","legacyKey","trace","getTrace","resourcePath","getResourcePath","import_devtools_shared","import_react","import_devtools_shared","createIdentifier","key","trace","simpleTrace","t","createMutationListener","ws","mutation","_a","meta","resolve","_b","createIdentifier","createQueryListener","query","useQuerySubscription","queryClient","ws","queryCacheSubscription","React","mutationCacheSubscription","queryCache","queryListener","createQueryListener","query","type","_a","mutationCache","mutationListener","createMutationListener","mutation"]}
File without changes