@efffrida/frida-tools 0.0.27 → 0.0.28

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 (38) hide show
  1. package/dist/FridaDevice.d.ts +9 -8
  2. package/dist/FridaDevice.d.ts.map +1 -1
  3. package/dist/FridaDevice.js.map +1 -1
  4. package/dist/FridaDeviceAcquisitionError.d.ts +3 -18
  5. package/dist/FridaDeviceAcquisitionError.d.ts.map +1 -1
  6. package/dist/FridaDeviceAcquisitionError.js +2 -13
  7. package/dist/FridaDeviceAcquisitionError.js.map +1 -1
  8. package/dist/FridaScript.d.ts +12 -13
  9. package/dist/FridaScript.d.ts.map +1 -1
  10. package/dist/FridaScript.js +10 -9
  11. package/dist/FridaScript.js.map +1 -1
  12. package/dist/FridaSession.d.ts +21 -7
  13. package/dist/FridaSession.d.ts.map +1 -1
  14. package/dist/FridaSession.js.map +1 -1
  15. package/dist/FridaSessionError.d.ts +1 -16
  16. package/dist/FridaSessionError.d.ts.map +1 -1
  17. package/dist/FridaSessionError.js +2 -13
  18. package/dist/FridaSessionError.js.map +1 -1
  19. package/dist/internal/compiler.d.ts +2 -0
  20. package/dist/internal/compiler.d.ts.map +1 -0
  21. package/dist/internal/compiler.js +82 -0
  22. package/dist/internal/compiler.js.map +1 -0
  23. package/dist/internal/device.js +33 -32
  24. package/dist/internal/device.js.map +1 -1
  25. package/dist/internal/script.js +56 -105
  26. package/dist/internal/script.js.map +1 -1
  27. package/dist/internal/session.js +90 -48
  28. package/dist/internal/session.js.map +1 -1
  29. package/package.json +9 -16
  30. package/src/FridaDevice.ts +11 -10
  31. package/src/FridaDeviceAcquisitionError.ts +4 -29
  32. package/src/FridaScript.ts +22 -23
  33. package/src/FridaSession.ts +25 -7
  34. package/src/FridaSessionError.ts +2 -24
  35. package/src/internal/compiler.ts +122 -0
  36. package/src/internal/device.ts +85 -67
  37. package/src/internal/script.ts +209 -292
  38. package/src/internal/session.ts +116 -52
@@ -3,14 +3,15 @@
3
3
  *
4
4
  * @since 1.0.0
5
5
  */
6
- import type * as CommandExecutor from "@effect/platform/CommandExecutor";
7
- import type * as ConfigError from "effect/ConfigError";
6
+ import type * as Config from "effect/Config";
8
7
  import type * as Context from "effect/Context";
9
8
  import type * as Effect from "effect/Effect";
10
9
  import type * as Layer from "effect/Layer";
10
+ import type * as Path from "effect/Path";
11
11
  import type * as Scope from "effect/Scope";
12
- import type * as Frida from "frida";
12
+ import type * as ChildProcessSpawner from "effect/unstable/process/ChildProcessSpawner";
13
13
  import type * as FridaDeviceAcquisitionError from "./FridaDeviceAcquisitionError.ts";
14
+ import type * as Frida from "frida";
14
15
  /**
15
16
  * @since 1.0.0
16
17
  * @category Type ids
@@ -34,7 +35,7 @@ export interface FridaDevice {
34
35
  * @since 1.0.0
35
36
  * @category Tags
36
37
  */
37
- export declare const FridaDevice: Context.Tag<FridaDevice, FridaDevice>;
38
+ export declare const FridaDevice: Context.Service<FridaDevice, FridaDevice>;
38
39
  /**
39
40
  * @since 1.0.0
40
41
  * @category Predicates
@@ -65,7 +66,7 @@ export declare const acquireAndroidEmulatorDevice: (name: string, options?: {
65
66
  fridaExecutable?: string | undefined;
66
67
  emulatorExecutable?: string | undefined;
67
68
  extraEmulatorArgs?: Array<string> | undefined;
68
- } | undefined) => Effect.Effect<FridaDevice, FridaDeviceAcquisitionError.FridaDeviceAcquisitionError, CommandExecutor.CommandExecutor | Scope.Scope>;
69
+ } | undefined) => Effect.Effect<FridaDevice, FridaDeviceAcquisitionError.FridaDeviceAcquisitionError, ChildProcessSpawner.ChildProcessSpawner | Scope.Scope>;
69
70
  /**
70
71
  * @since 1.0.0
71
72
  * @category Device acquisition
@@ -74,7 +75,7 @@ export declare const acquireAndroidEmulatorDeviceConfig: (name: string, options?
74
75
  hidden?: boolean | undefined;
75
76
  fridaExecutable?: string | undefined;
76
77
  extraEmulatorArgs?: Array<string> | undefined;
77
- } | undefined) => Effect.Effect<FridaDevice, ConfigError.ConfigError | FridaDeviceAcquisitionError.FridaDeviceAcquisitionError, CommandExecutor.CommandExecutor | Scope.Scope>;
78
+ } | undefined) => Effect.Effect<FridaDevice, Config.ConfigError | FridaDeviceAcquisitionError.FridaDeviceAcquisitionError, ChildProcessSpawner.ChildProcessSpawner | Path.Path | Scope.Scope>;
78
79
  /**
79
80
  * @since 1.0.0
80
81
  * @category Layers
@@ -100,7 +101,7 @@ export declare const layerAndroidEmulatorDevice: (name: string, options?: {
100
101
  fridaExecutable?: string | undefined;
101
102
  emulatorExecutable?: string | undefined;
102
103
  extraEmulatorArgs?: Array<string> | undefined;
103
- } | undefined) => Layer.Layer<FridaDevice, FridaDeviceAcquisitionError.FridaDeviceAcquisitionError, CommandExecutor.CommandExecutor>;
104
+ } | undefined) => Layer.Layer<FridaDevice, FridaDeviceAcquisitionError.FridaDeviceAcquisitionError, ChildProcessSpawner.ChildProcessSpawner>;
104
105
  /**
105
106
  * @since 1.0.0
106
107
  * @category Layers
@@ -109,5 +110,5 @@ export declare const layerAndroidEmulatorDeviceConfig: (name: string, options?:
109
110
  hidden?: boolean | undefined;
110
111
  fridaExecutable?: string | undefined;
111
112
  extraEmulatorArgs?: Array<string> | undefined;
112
- } | undefined) => Layer.Layer<FridaDevice, ConfigError.ConfigError | FridaDeviceAcquisitionError.FridaDeviceAcquisitionError, CommandExecutor.CommandExecutor>;
113
+ } | undefined) => Layer.Layer<FridaDevice, Config.ConfigError | FridaDeviceAcquisitionError.FridaDeviceAcquisitionError, ChildProcessSpawner.ChildProcessSpawner | Path.Path>;
113
114
  //# sourceMappingURL=FridaDevice.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FridaDevice.d.ts","sourceRoot":"","sources":["../src/FridaDevice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FridaDevice.d.ts","sourceRoot":"","sources":["../src/FridaDevice.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FridaDevice.js","names":["internal","FridaDeviceTypeId","FridaDevice","Tag","isFridaDevice","acquireLocalDevice","acquireUsbDevice","acquireRemoteDevice","acquireAndroidEmulatorDevice","acquireAndroidEmulatorDeviceConfig","layerLocalDevice","layerRemoteDevice","layerUsbDevice","layerAndroidEmulatorDevice","layerAndroidEmulatorDeviceConfig"],"sources":["../src/FridaDevice.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAgBA,OAAO,KAAKA,QAAQ,MAAM,sBAAsB;AAEhD;;;;AAIA,OAAO,MAAMC,iBAAiB,GAAkBD,QAAQ,CAACC,iBAAiB;AAkB1E;;;;AAIA,OAAO,MAAMC,WAAW,GAA0CF,QAAQ,CAACG,GAAG;AAE9E;;;;AAIA,OAAO,MAAMC,aAAa,GAAqCJ,QAAQ,CAACI,aAAa;AAErF;;;;AAIA,OAAO,MAAMC,kBAAkB,GAI3BL,QAAQ,CAACK,kBAAkB;AAE/B;;;;AAIA,OAAO,MAAMC,gBAAgB,GAGzBN,QAAQ,CAACM,gBAAgB;AAE7B;;;;AAIA,OAAO,MAAMC,mBAAmB,GAI5BP,QAAQ,CAACO,mBAAmB;AAEhC;;;;AAIA,OAAO,MAAMC,4BAA4B,GAerCR,QAAQ,CAACQ,4BAA4B;AAEzC;;;;AAIA,OAAO,MAAMC,kCAAkC,GAa3CT,QAAQ,CAACS,kCAAkC;AAE/C;;;;AAIA,OAAO,MAAMC,gBAAgB,GAIzBV,QAAQ,CAACU,gBAAgB;AAE7B;;;;AAIA,OAAO,MAAMC,iBAAiB,GAI1BX,QAAQ,CAACW,iBAAiB;AAE9B;;;;AAIA,OAAO,MAAMC,cAAc,GAEqEZ,QAAQ,CAACY,cAAc;AAEvH;;;;AAIA,OAAO,MAAMC,0BAA0B,GAenCb,QAAQ,CAACa,0BAA0B;AAEvC;;;;AAIA,OAAO,MAAMC,gCAAgC,GAazCd,QAAQ,CAACc,gCAAgC","ignoreList":[]}
1
+ {"version":3,"file":"FridaDevice.js","names":["internal","FridaDeviceTypeId","FridaDevice","Tag","isFridaDevice","acquireLocalDevice","acquireUsbDevice","acquireRemoteDevice","acquireAndroidEmulatorDevice","acquireAndroidEmulatorDeviceConfig","layerLocalDevice","layerRemoteDevice","layerUsbDevice","layerAndroidEmulatorDevice","layerAndroidEmulatorDeviceConfig"],"sources":["../src/FridaDevice.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAiBA,OAAO,KAAKA,QAAQ,MAAM,sBAAsB;AAEhD;;;;AAIA,OAAO,MAAMC,iBAAiB,GAAkBD,QAAQ,CAACC,iBAAiB;AAkB1E;;;;AAIA,OAAO,MAAMC,WAAW,GAA8CF,QAAQ,CAACG,GAAG;AAElF;;;;AAIA,OAAO,MAAMC,aAAa,GAAqCJ,QAAQ,CAACI,aAAa;AAErF;;;;AAIA,OAAO,MAAMC,kBAAkB,GAI3BL,QAAQ,CAACK,kBAAkB;AAE/B;;;;AAIA,OAAO,MAAMC,gBAAgB,GAGzBN,QAAQ,CAACM,gBAAgB;AAE7B;;;;AAIA,OAAO,MAAMC,mBAAmB,GAI5BP,QAAQ,CAACO,mBAAmB;AAEhC;;;;AAIA,OAAO,MAAMC,4BAA4B,GAerCR,QAAQ,CAACQ,4BAA4B;AAEzC;;;;AAIA,OAAO,MAAMC,kCAAkC,GAa3CT,QAAQ,CAACS,kCAAkC;AAE/C;;;;AAIA,OAAO,MAAMC,gBAAgB,GAIzBV,QAAQ,CAACU,gBAAgB;AAE7B;;;;AAIA,OAAO,MAAMC,iBAAiB,GAI1BX,QAAQ,CAACW,iBAAiB;AAE9B;;;;AAIA,OAAO,MAAMC,cAAc,GAEqEZ,QAAQ,CAACY,cAAc;AAEvH;;;;AAIA,OAAO,MAAMC,0BAA0B,GAenCb,QAAQ,CAACa,0BAA0B;AAEvC;;;;AAIA,OAAO,MAAMC,gCAAgC,GAazCd,QAAQ,CAACc,gCAAgC","ignoreList":[]}
@@ -3,22 +3,7 @@
3
3
  *
4
4
  * @since 1.0.0
5
5
  */
6
- /**
7
- * @since 1.0.0
8
- * @category Errors
9
- */
10
- export declare const FridaDeviceAcquisitionErrorTypeId: unique symbol;
11
- /**
12
- * @since 1.0.0
13
- * @category Errors
14
- */
15
- export type FridaDeviceAcquisitionErrorTypeId = typeof FridaDeviceAcquisitionErrorTypeId;
16
- /**
17
- * @since 1.0.0
18
- * @category Errors
19
- */
20
- export declare const isFridaDeviceAcquisitionError: (u: unknown) => u is FridaDeviceAcquisitionError;
21
- declare const FridaDeviceAcquisitionError_base: new <A extends Record<string, any>>(args: import("effect/Types").Simplify<A>) => import("effect/Cause").YieldableError & Record<typeof FridaDeviceAcquisitionErrorTypeId, typeof FridaDeviceAcquisitionErrorTypeId> & {
6
+ declare const FridaDeviceAcquisitionError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
22
7
  readonly _tag: "FridaDeviceAcquisitionError";
23
8
  } & Readonly<A>;
24
9
  /**
@@ -26,9 +11,9 @@ declare const FridaDeviceAcquisitionError_base: new <A extends Record<string, an
26
11
  * @category Errors
27
12
  */
28
13
  export declare class FridaDeviceAcquisitionError extends FridaDeviceAcquisitionError_base<{
29
- cause: unknown;
30
- attempts: number;
31
14
  acquisitionMethod: "usb" | "remote" | "local" | "android-emulator";
15
+ attempts: number;
16
+ cause: unknown;
32
17
  }> {
33
18
  get message(): string;
34
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FridaDeviceAcquisitionError.d.ts","sourceRoot":"","sources":["../src/FridaDeviceAcquisitionError.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH;;;GAGG;AACH,eAAO,MAAM,iCAAiC,EAAE,OAAO,MAEjB,CAAC;AAEvC;;;GAGG;AACH,MAAM,MAAM,iCAAiC,GAAG,OAAO,iCAAiC,CAAC;AAEzF;;;GAGG;AACH,eAAO,MAAM,6BAA6B,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,2BACD,CAAC;;;;AAEhE;;;GAGG;AACH,qBAAa,2BAA4B,SAAQ,iCAG/C;IACE,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,kBAAkB,CAAC;CACtE,CAAC;IACE,IAAoB,OAAO,IAAI,MAAM,CAEpC;CACJ"}
1
+ {"version":3,"file":"FridaDeviceAcquisitionError.d.ts","sourceRoot":"","sources":["../src/FridaDeviceAcquisitionError.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;;;AAIH;;;GAGG;AACH,qBAAa,2BAA4B,SAAQ,iCAAgD;IAC7F,iBAAiB,EAAE,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,kBAAkB,CAAC;IACnE,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,OAAO,CAAC;CAClB,CAAC;IACE,IAAoB,OAAO,IAAI,MAAM,CAEpC;CACJ"}
@@ -3,23 +3,12 @@
3
3
  *
4
4
  * @since 1.0.0
5
5
  */
6
- import * as PlatformError from "@effect/platform/Error";
7
- import * as Predicate from "effect/Predicate";
6
+ import * as Data from "effect/Data";
8
7
  /**
9
8
  * @since 1.0.0
10
9
  * @category Errors
11
10
  */
12
- export const FridaDeviceAcquisitionErrorTypeId = /*#__PURE__*/Symbol.for("@efffrida/FridaError/FridaDeviceAcquisitionError");
13
- /**
14
- * @since 1.0.0
15
- * @category Errors
16
- */
17
- export const isFridaDeviceAcquisitionError = u => Predicate.hasProperty(u, FridaDeviceAcquisitionErrorTypeId);
18
- /**
19
- * @since 1.0.0
20
- * @category Errors
21
- */
22
- export class FridaDeviceAcquisitionError extends /*#__PURE__*/PlatformError.TypeIdError(FridaDeviceAcquisitionErrorTypeId, "FridaDeviceAcquisitionError") {
11
+ export class FridaDeviceAcquisitionError extends /*#__PURE__*/Data.TaggedError("FridaDeviceAcquisitionError") {
23
12
  get message() {
24
13
  return `Failed to acquire ${this.acquisitionMethod} Frida device after ${this.attempts} attempt(s)`;
25
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FridaDeviceAcquisitionError.js","names":["PlatformError","Predicate","FridaDeviceAcquisitionErrorTypeId","Symbol","for","isFridaDeviceAcquisitionError","u","hasProperty","FridaDeviceAcquisitionError","TypeIdError","message","acquisitionMethod","attempts"],"sources":["../src/FridaDeviceAcquisitionError.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAMA,OAAO,KAAKA,aAAa,MAAM,wBAAwB;AACvD,OAAO,KAAKC,SAAS,MAAM,kBAAkB;AAE7C;;;;AAIA,OAAO,MAAMC,iCAAiC,gBAAkBC,MAAM,CAACC,GAAG,CACtE,kDAAkD,CAChB;AAQtC;;;;AAIA,OAAO,MAAMC,6BAA6B,GAAIC,CAAU,IACpDL,SAAS,CAACM,WAAW,CAACD,CAAC,EAAEJ,iCAAiC,CAAC;AAE/D;;;;AAIA,OAAM,MAAOM,2BAA4B,sBAAQR,aAAa,CAACS,WAAW,CACtEP,iCAAiC,EACjC,6BAA6B,CAK/B;EACE,IAAoBQ,OAAOA,CAAA;IACvB,OAAO,qBAAqB,IAAI,CAACC,iBAAiB,uBAAuB,IAAI,CAACC,QAAQ,aAAa;EACvG","ignoreList":[]}
1
+ {"version":3,"file":"FridaDeviceAcquisitionError.js","names":["Data","FridaDeviceAcquisitionError","TaggedError","message","acquisitionMethod","attempts"],"sources":["../src/FridaDeviceAcquisitionError.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAMA,OAAO,KAAKA,IAAI,MAAM,aAAa;AAEnC;;;;AAIA,OAAM,MAAOC,2BAA4B,sBAAQD,IAAI,CAACE,WAAW,CAAC,6BAA6B,CAI7F;EACE,IAAoBC,OAAOA,CAAA;IACvB,OAAO,qBAAqB,IAAI,CAACC,iBAAiB,uBAAuB,IAAI,CAACC,QAAQ,aAAa;EACvG","ignoreList":[]}
@@ -3,23 +3,22 @@
3
3
  *
4
4
  * @since 1.0.0
5
5
  */
6
- import type * as FileSystem from "@effect/platform/FileSystem";
7
- import type * as Path from "@effect/platform/Path";
8
6
  import type * as Context from "effect/Context";
9
7
  import type * as Deferred from "effect/Deferred";
10
8
  import type * as Duration from "effect/Duration";
11
9
  import type * as Effect from "effect/Effect";
12
10
  import type * as Exit from "effect/Exit";
11
+ import type * as FileSystem from "effect/FileSystem";
13
12
  import type * as Layer from "effect/Layer";
14
13
  import type * as Option from "effect/Option";
15
- import type * as ParseResult from "effect/ParseResult";
14
+ import type * as Path from "effect/Path";
16
15
  import type * as Schema from "effect/Schema";
17
16
  import type * as Scope from "effect/Scope";
18
17
  import type * as Sink from "effect/Sink";
19
18
  import type * as Stream from "effect/Stream";
20
- import type * as Frida from "frida";
21
19
  import type * as FridaSession from "./FridaSession.ts";
22
20
  import type * as FridaSessionError from "./FridaSessionError.ts";
21
+ import type * as Frida from "frida";
23
22
  /**
24
23
  * @since 1.0.0
25
24
  * @category Type ids
@@ -47,13 +46,13 @@ export interface FridaScript {
47
46
  message: unknown;
48
47
  data: Option.Option<Buffer>;
49
48
  }, never, FridaSessionError.FridaSessionError, never>;
50
- readonly callExport: <A, I, R>(exportName: string, schema: Schema.Schema<A, I, R>) => (...args: Array<any>) => Effect.Effect<A, FridaSessionError.FridaSessionError | ParseResult.ParseError, R>;
49
+ readonly callExport: <A = unknown, R = never>(exportName: string, schema?: Schema.Decoder<A, R> | undefined) => (...args: Array<any>) => Effect.Effect<A, FridaSessionError.FridaSessionError | Schema.SchemaError, R>;
51
50
  }
52
51
  /**
53
52
  * @since 1.0.0
54
53
  * @category Tags
55
54
  */
56
- export declare const FridaScript: Context.Tag<FridaScript, FridaScript>;
55
+ export declare const FridaScript: Context.Service<FridaScript, FridaScript>;
57
56
  /**
58
57
  * @since 1.0.0
59
58
  * @category Predicates
@@ -64,19 +63,19 @@ export declare const isFridaScript: (u: unknown) => u is FridaScript;
64
63
  * @category Options
65
64
  */
66
65
  export interface LoadOptions extends Frida.ScriptOptions, Frida.CompilerOptions {
67
- readonly messageMailboxCapacity?: number | {
68
- readonly capacity?: number;
69
- readonly strategy?: "suspend" | "dropping" | "sliding";
66
+ readonly messageMailboxCapacity?: {
67
+ readonly capacity?: number | undefined;
68
+ readonly strategy?: "suspend" | "dropping" | "sliding" | undefined;
70
69
  } | undefined;
71
70
  readonly streamShareOptions?: {
72
71
  readonly capacity: "unbounded";
73
72
  readonly replay?: number | undefined;
74
- readonly idleTimeToLive?: Duration.DurationInput | undefined;
73
+ readonly idleTimeToLive?: Duration.Input | undefined;
75
74
  } | {
76
75
  readonly capacity: number;
77
76
  readonly strategy?: "sliding" | "dropping" | "suspend" | undefined;
78
77
  readonly replay?: number | undefined;
79
- readonly idleTimeToLive?: Duration.DurationInput | undefined;
78
+ readonly idleTimeToLive?: Duration.Input | undefined;
80
79
  } | undefined;
81
80
  }
82
81
  /**
@@ -84,8 +83,8 @@ export interface LoadOptions extends Frida.ScriptOptions, Frida.CompilerOptions
84
83
  * @category Frida
85
84
  */
86
85
  export declare const compile: {
87
- (entrypoint: string, options?: Frida.CompilerOptions | undefined): Effect.Effect<string, FridaSessionError.FridaSessionError, Scope.Scope>;
88
- (options?: Frida.CompilerOptions | undefined): (entrypoint: string) => Effect.Effect<string, FridaSessionError.FridaSessionError, Scope.Scope>;
86
+ (entrypoint: string, options?: Frida.CompilerOptions | undefined): Effect.Effect<string, FridaSessionError.FridaSessionError>;
87
+ (options?: Frida.CompilerOptions | undefined): (entrypoint: string) => Effect.Effect<string, FridaSessionError.FridaSessionError>;
89
88
  };
90
89
  /**
91
90
  * @since 1.0.0
@@ -1 +1 @@
1
- {"version":3,"file":"FridaScript.d.ts","sourceRoot":"","sources":["../src/FridaScript.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,KAAK,UAAU,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,KAAK,IAAI,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,KAAK,IAAI,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,KAAK,WAAW,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,IAAI,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC,OAAO,KAAK,KAAK,YAAY,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,KAAK,iBAAiB,MAAM,wBAAwB,CAAC;AAIjE;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,OAAO,MAAmC,CAAC;AAE3E;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC;AAEzD;;;GAGG;AACH,MAAM,WAAW,WAAW;IACxB,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;IAC9B,QAAQ,CAAC,CAAC,iBAAiB,CAAC,EAAE,OAAO,iBAAiB,CAAC;IACvD,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACnD,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAC1B;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;KAAE,EACjD,iBAAiB,CAAC,iBAAiB,EACnC,KAAK,CACR,CAAC;IACF,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CACpB,IAAI,EACJ;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;KAAE,EACjD,KAAK,EACL,iBAAiB,CAAC,iBAAiB,EACnC,KAAK,CACR,CAAC;IACF,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACzB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAC7B,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,iBAAiB,CAAC,iBAAiB,GAAG,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;CACnH;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAgB,CAAC;AAE/E;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,CAAC,IAAI,WAAoC,CAAC;AAEtF;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,eAAe;IAC3E,QAAQ,CAAC,sBAAsB,CAAC,EAC1B,MAAM,GACN;QACI,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;KAC1D,GACD,SAAS,CAAC;IAChB,QAAQ,CAAC,kBAAkB,CAAC,EACtB;QACI,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;QAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QACrC,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,aAAa,GAAG,SAAS,CAAC;KAChE,GACD;QACI,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;QACnE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QACrC,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,aAAa,GAAG,SAAS,CAAC;KAChE,GACD,SAAS,CAAC;CACnB;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO,EAAE;IAClB,CACI,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,KAAK,CAAC,eAAe,GAAG,SAAS,GAC5C,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3E,CACI,OAAO,CAAC,EAAE,KAAK,CAAC,eAAe,GAAG,SAAS,GAC5C,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;CACnF,CAAC;AAErB;;;GAGG;AACH,eAAO,MAAM,IAAI,EAAE;IACf,CACI,UAAU,EAAE,GAAG,EACf,OAAO,CAAC,EAAE,WAAW,GAAG,SAAS,GAClC,MAAM,CAAC,MAAM,CACZ,WAAW,EACX,iBAAiB,CAAC,iBAAiB,EACnC,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,YAAY,GAAG,KAAK,CAAC,KAAK,CACtD,CAAC;IACF,CACI,OAAO,CAAC,EAAE,WAAW,GAAG,SAAS,GAClC,CACC,UAAU,EAAE,GAAG,KACd,MAAM,CAAC,MAAM,CACd,WAAW,EACX,iBAAiB,CAAC,iBAAiB,EACnC,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,YAAY,GAAG,KAAK,CAAC,KAAK,CACtD,CAAC;CACW,CAAC;AAElB;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE;IAChB,CACI,UAAU,EAAE,GAAG,EACf,OAAO,CAAC,EAAE,WAAW,GAAG,SAAS,GAClC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;IAC5F,CACI,OAAO,CAAC,EAAE,WAAW,GAAG,SAAS,GAClC,CAAC,UAAU,EAAE,GAAG,KAAK,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;CACnG,CAAC;AAEnB;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE;IAChB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACJ,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC9B,UAAU,EAAE,GAAG,EACf,OAAO,CAAC,EAAE,WAAW,GAAG,SAAS,GAClC,MAAM,CAAC,MAAM,CACZ,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EACf,iBAAiB,CAAC,iBAAiB,EACnC,UAAU,CAAC,UAAU,GAAG,YAAY,CAAC,YAAY,GAAG,OAAO,CAAC,CAAC,EAAE,WAAW,CAAC,CAC9E,CAAC;IACF,CACI,UAAU,EAAE,GAAG,EACf,OAAO,CAAC,EAAE,WAAW,GAAG,SAAS,GAClC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACP,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAC7B,MAAM,CAAC,MAAM,CACd,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EACf,iBAAiB,CAAC,iBAAiB,EACnC,UAAU,CAAC,UAAU,GAAG,YAAY,CAAC,YAAY,GAAG,OAAO,CAAC,CAAC,EAAE,WAAW,CAAC,CAC9E,CAAC;CACY,CAAC;AAEnB;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EACtC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAClD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAA2B,CAAC"}
1
+ {"version":3,"file":"FridaScript.d.ts","sourceRoot":"","sources":["../src/FridaScript.ts"],"names":[],"mappings":"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"}
@@ -3,42 +3,43 @@
3
3
  *
4
4
  * @since 1.0.0
5
5
  */
6
- import * as internal from "./internal/script.js";
6
+ import * as internalCompiler from "./internal/compiler.js";
7
+ import * as internalScript from "./internal/script.js";
7
8
  /**
8
9
  * @since 1.0.0
9
10
  * @category Type ids
10
11
  */
11
- export const FridaScriptTypeId = internal.FridaScriptTypeId;
12
+ export const FridaScriptTypeId = internalScript.FridaScriptTypeId;
12
13
  /**
13
14
  * @since 1.0.0
14
15
  * @category Tags
15
16
  */
16
- export const FridaScript = internal.Tag;
17
+ export const FridaScript = internalScript.Tag;
17
18
  /**
18
19
  * @since 1.0.0
19
20
  * @category Predicates
20
21
  */
21
- export const isFridaScript = internal.isFridaScript;
22
+ export const isFridaScript = internalScript.isFridaScript;
22
23
  /**
23
24
  * @since 1.0.0
24
25
  * @category Frida
25
26
  */
26
- export const compile = internal.compile;
27
+ export const compile = internalCompiler.compile;
27
28
  /**
28
29
  * @since 1.0.0
29
30
  * @category Frida
30
31
  */
31
- export const load = internal.load;
32
+ export const load = internalScript.load;
32
33
  /**
33
34
  * @since 1.0.0
34
35
  * @category Layers
35
36
  */
36
- export const layer = internal.layer;
37
+ export const layer = internalScript.layer;
37
38
  /**
38
39
  * @since 1.0.0
39
40
  * @category Frida
40
41
  */
41
- export const watch = internal.watch;
42
+ export const watch = internalScript.watch;
42
43
  /**
43
44
  * Successes will be logged with info, failures with warning, defects with
44
45
  * error, and interruptions with debug.
@@ -46,5 +47,5 @@ export const watch = internal.watch;
46
47
  * @since 1.0.0
47
48
  * @category Frida
48
49
  */
49
- export const logWatchErrors = internal.logWatchErrors;
50
+ export const logWatchErrors = internalScript.logWatchErrors;
50
51
  //# sourceMappingURL=FridaScript.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FridaScript.js","names":["internal","FridaScriptTypeId","FridaScript","Tag","isFridaScript","compile","load","layer","watch","logWatchErrors"],"sources":["../src/FridaScript.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAyBA,OAAO,KAAKA,QAAQ,MAAM,sBAAsB;AAEhD;;;;AAIA,OAAO,MAAMC,iBAAiB,GAAkBD,QAAQ,CAACC,iBAAiB;AAmC1E;;;;AAIA,OAAO,MAAMC,WAAW,GAA0CF,QAAQ,CAACG,GAAG;AAE9E;;;;AAIA,OAAO,MAAMC,aAAa,GAAqCJ,QAAQ,CAACI,aAAa;AA6BrF;;;;AAIA,OAAO,MAAMC,OAAO,GAQhBL,QAAQ,CAACK,OAAO;AAEpB;;;;AAIA,OAAO,MAAMC,IAAI,GAkBbN,QAAQ,CAACM,IAAI;AAEjB;;;;AAIA,OAAO,MAAMC,KAAK,GAQdP,QAAQ,CAACO,KAAK;AAElB;;;;AAIA,OAAO,MAAMC,KAAK,GAoBdR,QAAQ,CAACQ,KAAK;AAElB;;;;;;;AAOA,OAAO,MAAMC,cAAc,GAEmBT,QAAQ,CAACS,cAAc","ignoreList":[]}
1
+ {"version":3,"file":"FridaScript.js","names":["internalCompiler","internalScript","FridaScriptTypeId","FridaScript","Tag","isFridaScript","compile","load","layer","watch","logWatchErrors"],"sources":["../src/FridaScript.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAwBA,OAAO,KAAKA,gBAAgB,MAAM,wBAAwB;AAC1D,OAAO,KAAKC,cAAc,MAAM,sBAAsB;AAEtD;;;;AAIA,OAAO,MAAMC,iBAAiB,GAAkBD,cAAc,CAACC,iBAAiB;AAmChF;;;;AAIA,OAAO,MAAMC,WAAW,GAA8CF,cAAc,CAACG,GAAG;AAExF;;;;AAIA,OAAO,MAAMC,aAAa,GAAqCJ,cAAc,CAACI,aAAa;AA4B3F;;;;AAIA,OAAO,MAAMC,OAAO,GAQhBN,gBAAgB,CAACM,OAAO;AAE5B;;;;AAIA,OAAO,MAAMC,IAAI,GAkBbN,cAAc,CAACM,IAAI;AAEvB;;;;AAIA,OAAO,MAAMC,KAAK,GAQdP,cAAc,CAACO,KAAK;AAExB;;;;AAIA,OAAO,MAAMC,KAAK,GAoBdR,cAAc,CAACQ,KAAK;AAExB;;;;;;;AAOA,OAAO,MAAMC,cAAc,GAEmBT,cAAc,CAACS,cAAc","ignoreList":[]}
@@ -5,12 +5,14 @@
5
5
  */
6
6
  import type * as Cause from "effect/Cause";
7
7
  import type * as Context from "effect/Context";
8
+ import type * as Deferred from "effect/Deferred";
8
9
  import type * as Effect from "effect/Effect";
9
10
  import type * as Layer from "effect/Layer";
11
+ import type * as Option from "effect/Option";
10
12
  import type * as Scope from "effect/Scope";
11
- import type * as Frida from "frida";
12
13
  import type * as FridaDevice from "./FridaDevice.ts";
13
14
  import type * as FridaSessionError from "./FridaSessionError.ts";
15
+ import type * as Frida from "frida";
14
16
  /**
15
17
  * @since 1.0.0
16
18
  * @category Type ids
@@ -26,19 +28,31 @@ export type FridaSessionTypeId = typeof FridaSessionTypeId;
26
28
  * @category Models
27
29
  */
28
30
  export interface FridaSession {
31
+ readonly pid: number;
29
32
  readonly session: Frida.Session;
30
33
  readonly [FridaSessionTypeId]: typeof FridaSessionTypeId;
31
- readonly resume: Effect.Effect<void, Cause.UnknownException>;
32
- readonly enableChildGating: Effect.Effect<void, Cause.UnknownException>;
33
- readonly disableChildGating: Effect.Effect<void, Cause.UnknownException>;
34
- setupPeerConnection(options?: Frida.PeerOptions | undefined): Effect.Effect<void, Cause.UnknownException>;
35
- joinPortal(address: string, options?: Frida.PortalOptions | undefined): Effect.Effect<Frida.PortalMembership, Cause.UnknownException>;
34
+ readonly detached: Deferred.Deferred<{
35
+ reason: Frida.SessionDetachReason;
36
+ crash: Option.Option<{
37
+ pid: number;
38
+ processName: string;
39
+ summary: string;
40
+ report: string;
41
+ parameters: unknown;
42
+ }>;
43
+ }, FridaSessionError.FridaSessionError>;
44
+ readonly resume: Effect.Effect<void, FridaSessionError.FridaSessionError, never>;
45
+ readonly detach: Effect.Effect<void, FridaSessionError.FridaSessionError, never>;
46
+ readonly enableChildGating: Effect.Effect<void, Cause.UnknownError, never>;
47
+ readonly disableChildGating: Effect.Effect<void, Cause.UnknownError, never>;
48
+ setupPeerConnection(options?: Frida.PeerOptions | undefined): Effect.Effect<void, Cause.UnknownError, never>;
49
+ joinPortal(address: string, options?: Frida.PortalOptions | undefined): Effect.Effect<Frida.PortalMembership, Cause.UnknownError, never>;
36
50
  }
37
51
  /**
38
52
  * @since 1.0.0
39
53
  * @category Tags
40
54
  */
41
- export declare const FridaSession: Context.Tag<FridaSession, FridaSession>;
55
+ export declare const FridaSession: Context.Service<FridaSession, FridaSession>;
42
56
  /**
43
57
  * @since 1.0.0
44
58
  * @category Predicates
@@ -1 +1 @@
1
- {"version":3,"file":"FridaSession.d.ts","sourceRoot":"","sources":["../src/FridaSession.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC,OAAO,KAAK,KAAK,WAAW,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,KAAK,iBAAiB,MAAM,wBAAwB,CAAC;AAIjE;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,OAAO,MAAoC,CAAC;AAE7E;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,kBAAkB,CAAC;AAE3D;;;GAGG;AACH,MAAM,WAAW,YAAY;IACzB,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;IAChC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,EAAE,OAAO,kBAAkB,CAAC;IACzD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC7D,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACxE,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACzE,mBAAmB,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,WAAW,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC1G,UAAU,CACN,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,SAAS,GAC1C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;CACpE;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY,CAAgB,CAAC;AAElF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,CAAC,IAAI,YAAsC,CAAC;AAEzF;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,CACpB,OAAO,CAAC,EAAE,KAAK,CAAC,qBAAqB,GAAG,SAAS,KAChD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,WAAW,CAAC,WAAW,CAC5E,CAAC;AAEvB;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,CAChB,OAAO,EAAE,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,EACvC,OAAO,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,SAAS,KACvC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,WAAW,CAAC,WAAW,GAAG,KAAK,CAAC,KAAK,CAAkB,CAAC;AAExH;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,CACjB,MAAM,EAAE,KAAK,CAAC,aAAa,EAC3B,OAAO,CAAC,EAAE,KAAK,CAAC,cAAc,GAAG,SAAS,KACzC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,WAAW,CAAC,WAAW,GAAG,KAAK,CAAC,KAAK,CACxF,CAAC;AAEpB;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,CAChB,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,EAC/C,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,cAAc,CAAC,GAAG,SAAS,KAChE,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,WAAW,CAAC,WAAW,CAAkB,CAAC;AAE9G;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,CACzB,OAAO,CAAC,EAAE,KAAK,CAAC,qBAAqB,GAAG,SAAS,KAChD,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,WAAW,CAAC,WAAW,CAA2B,CAAC"}
1
+ {"version":3,"file":"FridaSession.d.ts","sourceRoot":"","sources":["../src/FridaSession.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FridaSession.js","names":["internal","FridaSessionTypeId","FridaSession","Tag","isFridaSession","frontmost","spawn","attach","layer","layerFrontmost"],"sources":["../src/FridaSession.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAgBA,OAAO,KAAKA,QAAQ,MAAM,uBAAuB;AAEjD;;;;AAIA,OAAO,MAAMC,kBAAkB,GAAkBD,QAAQ,CAACC,kBAAkB;AAyB5E;;;;AAIA,OAAO,MAAMC,YAAY,GAA4CF,QAAQ,CAACG,GAAG;AAEjF;;;;AAIA,OAAO,MAAMC,cAAc,GAAsCJ,QAAQ,CAACI,cAAc;AAExF;;;;AAIA,OAAO,MAAMC,SAAS,GAGlBL,QAAQ,CAACK,SAAS;AAEtB;;;;AAIA,OAAO,MAAMC,KAAK,GAGuFN,QAAQ,CAACM,KAAK;AAEvH;;;;AAIA,OAAO,MAAMC,MAAM,GAIfP,QAAQ,CAACO,MAAM;AAEnB;;;;AAIA,OAAO,MAAMC,KAAK,GAG6ER,QAAQ,CAACQ,KAAK;AAE7G;;;;AAIA,OAAO,MAAMC,cAAc,GAEoET,QAAQ,CAACS,cAAc","ignoreList":[]}
1
+ {"version":3,"file":"FridaSession.js","names":["internal","FridaSessionTypeId","FridaSession","Tag","isFridaSession","frontmost","spawn","attach","layer","layerFrontmost"],"sources":["../src/FridaSession.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAkBA,OAAO,KAAKA,QAAQ,MAAM,uBAAuB;AAEjD;;;;AAIA,OAAO,MAAMC,kBAAkB,GAAkBD,QAAQ,CAACC,kBAAkB;AAyC5E;;;;AAIA,OAAO,MAAMC,YAAY,GAAgDF,QAAQ,CAACG,GAAG;AAErF;;;;AAIA,OAAO,MAAMC,cAAc,GAAsCJ,QAAQ,CAACI,cAAc;AAExF;;;;AAIA,OAAO,MAAMC,SAAS,GAGlBL,QAAQ,CAACK,SAAS;AAEtB;;;;AAIA,OAAO,MAAMC,KAAK,GAGuFN,QAAQ,CAACM,KAAK;AAEvH;;;;AAIA,OAAO,MAAMC,MAAM,GAIfP,QAAQ,CAACO,MAAM;AAEnB;;;;AAIA,OAAO,MAAMC,KAAK,GAG6ER,QAAQ,CAACQ,KAAK;AAE7G;;;;AAIA,OAAO,MAAMC,cAAc,GAEoET,QAAQ,CAACS,cAAc","ignoreList":[]}
@@ -3,22 +3,7 @@
3
3
  *
4
4
  * @since 1.0.0
5
5
  */
6
- /**
7
- * @since 1.0.0
8
- * @category Errors
9
- */
10
- export declare const FridaSessionErrorTypeId: unique symbol;
11
- /**
12
- * @since 1.0.0
13
- * @category Errors
14
- */
15
- export type FridaSessionErrorTypeId = typeof FridaSessionErrorTypeId;
16
- /**
17
- * @since 1.0.0
18
- * @category Errors
19
- */
20
- export declare const isFridaSessionError: (u: unknown) => u is FridaSessionError;
21
- declare const FridaSessionError_base: new <A extends Record<string, any>>(args: import("effect/Types").Simplify<A>) => import("effect/Cause").YieldableError & Record<typeof FridaSessionErrorTypeId, typeof FridaSessionErrorTypeId> & {
6
+ declare const FridaSessionError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
22
7
  readonly _tag: "FridaSessionError";
23
8
  } & Readonly<A>;
24
9
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"FridaSessionError.d.ts","sourceRoot":"","sources":["../src/FridaSessionError.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAE,OAAO,MAEjB,CAAC;AAE7B;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG,OAAO,uBAAuB,CAAC;AAErE;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,iBACD,CAAC;;;;AAEtD;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,uBAAwE;IAC3G,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EACE,OAAO,GACP,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,OAAO,GACP,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;CACnB,CAAC;IACE,IAAa,OAAO,WAEnB;CACJ"}
1
+ {"version":3,"file":"FridaSessionError.d.ts","sourceRoot":"","sources":["../src/FridaSessionError.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;;;AAIH;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,uBAAsC;IACzE,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EACE,OAAO,GACP,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,OAAO,GACP,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;CACnB,CAAC;IACE,IAAa,OAAO,WAEnB;CACJ"}
@@ -3,23 +3,12 @@
3
3
  *
4
4
  * @since 1.0.0
5
5
  */
6
- import * as PlatformError from "@effect/platform/Error";
7
- import * as Predicate from "effect/Predicate";
6
+ import * as Data from "effect/Data";
8
7
  /**
9
8
  * @since 1.0.0
10
9
  * @category Errors
11
10
  */
12
- export const FridaSessionErrorTypeId = /*#__PURE__*/Symbol.for("@efffrida/FridaError/FridaSessionError");
13
- /**
14
- * @since 1.0.0
15
- * @category Errors
16
- */
17
- export const isFridaSessionError = u => Predicate.hasProperty(u, FridaSessionErrorTypeId);
18
- /**
19
- * @since 1.0.0
20
- * @category Errors
21
- */
22
- export class FridaSessionError extends /*#__PURE__*/PlatformError.TypeIdError(FridaSessionErrorTypeId, "FridaSessionError") {
11
+ export class FridaSessionError extends /*#__PURE__*/Data.TaggedError("FridaSessionError") {
23
12
  get message() {
24
13
  return `A Frida session error occurred on ${this.when}`;
25
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FridaSessionError.js","names":["PlatformError","Predicate","FridaSessionErrorTypeId","Symbol","for","isFridaSessionError","u","hasProperty","FridaSessionError","TypeIdError","message","when"],"sources":["../src/FridaSessionError.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAMA,OAAO,KAAKA,aAAa,MAAM,wBAAwB;AACvD,OAAO,KAAKC,SAAS,MAAM,kBAAkB;AAE7C;;;;AAIA,OAAO,MAAMC,uBAAuB,gBAAkBC,MAAM,CAACC,GAAG,CAC5D,wCAAwC,CAChB;AAQ5B;;;;AAIA,OAAO,MAAMC,mBAAmB,GAAIC,CAAU,IAC1CL,SAAS,CAACM,WAAW,CAACD,CAAC,EAAEJ,uBAAuB,CAAC;AAErD;;;;AAIA,OAAM,MAAOM,iBAAkB,sBAAQR,aAAa,CAACS,WAAW,CAACP,uBAAuB,EAAE,mBAAmB,CAc3G;EACE,IAAaQ,OAAOA,CAAA;IAChB,OAAO,qCAAqC,IAAI,CAACC,IAAI,EAAE;EAC3D","ignoreList":[]}
1
+ {"version":3,"file":"FridaSessionError.js","names":["Data","FridaSessionError","TaggedError","message","when"],"sources":["../src/FridaSessionError.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAMA,OAAO,KAAKA,IAAI,MAAM,aAAa;AAEnC;;;;AAIA,OAAM,MAAOC,iBAAkB,sBAAQD,IAAI,CAACE,WAAW,CAAC,mBAAmB,CAczE;EACE,IAAaC,OAAOA,CAAA;IAChB,OAAO,qCAAqC,IAAI,CAACC,IAAI,EAAE;EAC3D","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=compiler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../../src/internal/compiler.ts"],"names":[],"mappings":""}
@@ -0,0 +1,82 @@
1
+ import * as Cause from "effect/Cause";
2
+ import * as Context from "effect/Context";
3
+ import * as Effect from "effect/Effect";
4
+ import * as Function from "effect/Function";
5
+ import * as Predicate from "effect/Predicate";
6
+ import * as Frida from "frida";
7
+ import * as FridaSessionError from "../FridaSessionError.js";
8
+ /** @internal */
9
+ export const Compiler = /*#__PURE__*/Context.Reference("@efffrida/frida-tools/compiler/default", {
10
+ defaultValue: () => new Frida.Compiler()
11
+ });
12
+ /** @internal */
13
+ export const compile = /*#__PURE__*/Function.dual(arguments_ => Predicate.isString(arguments_[0]), (path, options) => Effect.gen(function* () {
14
+ const compiler = yield* Compiler;
15
+ const formatDiagnostic = diagnostic => {
16
+ const location = diagnostic.file ? `${diagnostic.file.path}:${diagnostic.file.line}:${diagnostic.file.character}` : undefined;
17
+ const message = `TS${diagnostic.code}: ${diagnostic.text}`;
18
+ const cause = location ? `${location} - ${message}` : message;
19
+ return new FridaSessionError.FridaSessionError({
20
+ cause,
21
+ when: "compile"
22
+ });
23
+ };
24
+ const compileErrors = [];
25
+ const cancellable = new Frida.Cancellable();
26
+ const compilerBuildOptions = {
27
+ externals: options?.externals,
28
+ projectRoot: options?.projectRoot,
29
+ platform: options?.platform ?? Frida.JsPlatform.Gum,
30
+ typeCheck: options?.typeCheck ?? Frida.TypeCheckMode.Full,
31
+ sourceMaps: options?.sourceMaps ?? Frida.SourceMaps.Included,
32
+ compression: options?.compression ?? Frida.JsCompression.None,
33
+ bundleFormat: options?.bundleFormat ?? Frida.BundleFormat.Esm,
34
+ outputFormat: options?.outputFormat ?? Frida.OutputFormat.Unescaped
35
+ };
36
+ return yield* Effect.callback(resume => {
37
+ const onOutput = bundle => {
38
+ disconnectAll();
39
+ resume(Effect.succeed(bundle));
40
+ };
41
+ const onDiagnostic = diagnostic => {
42
+ for (const diag of diagnostic) {
43
+ if (diag.category === "error") {
44
+ compileErrors.push(diag);
45
+ }
46
+ }
47
+ };
48
+ const onFinished = () => {
49
+ disconnectAll();
50
+ if (compileErrors.length > 0) {
51
+ resume(Effect.failCauseSync(() => {
52
+ const [first, ...rest] = compileErrors;
53
+ let cause = Cause.fail(formatDiagnostic(first));
54
+ for (const diag of rest) {
55
+ cause = Cause.combine(cause, Cause.fail(formatDiagnostic(diag)));
56
+ }
57
+ return cause;
58
+ }));
59
+ }
60
+ };
61
+ compiler.output.connect(onOutput);
62
+ compiler.diagnostics.connect(onDiagnostic);
63
+ compiler.finished.connect(onFinished);
64
+ const disconnectAll = () => {
65
+ compiler.output.disconnect(onOutput);
66
+ compiler.diagnostics.disconnect(onDiagnostic);
67
+ compiler.finished.disconnect(onFinished);
68
+ };
69
+ compiler.build(path, compilerBuildOptions, cancellable).catch(cause => {
70
+ disconnectAll();
71
+ resume(new FridaSessionError.FridaSessionError({
72
+ when: "compile",
73
+ cause
74
+ }));
75
+ });
76
+ return Effect.sync(() => {
77
+ disconnectAll();
78
+ cancellable.cancel();
79
+ });
80
+ });
81
+ }));
82
+ //# sourceMappingURL=compiler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compiler.js","names":["Cause","Context","Effect","Function","Predicate","Frida","FridaSessionError","Compiler","Reference","defaultValue","compile","dual","arguments_","isString","path","options","gen","compiler","formatDiagnostic","diagnostic","location","file","line","character","undefined","message","code","text","cause","when","compileErrors","cancellable","Cancellable","compilerBuildOptions","externals","projectRoot","platform","JsPlatform","Gum","typeCheck","TypeCheckMode","Full","sourceMaps","SourceMaps","Included","compression","JsCompression","None","bundleFormat","BundleFormat","Esm","outputFormat","OutputFormat","Unescaped","callback","resume","onOutput","bundle","disconnectAll","succeed","onDiagnostic","diag","category","push","onFinished","length","failCauseSync","first","rest","fail","combine","output","connect","diagnostics","finished","disconnect","build","catch","sync","cancel"],"sources":["../../src/internal/compiler.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}