electron-webauthn 0.0.6 → 0.0.8

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 (77) hide show
  1. package/dist/example.d.ts +2 -0
  2. package/dist/example.d.ts.map +1 -0
  3. package/dist/example.js +1 -0
  4. package/dist/example.js.map +1 -0
  5. package/dist/index.d.ts +14 -0
  6. package/dist/index.d.ts.map +1 -0
  7. package/dist/index.js +1 -3
  8. package/dist/index.js.map +1 -0
  9. package/dist/objc/authentication-services/as-authorization-controller-delegate.d.ts +53 -0
  10. package/dist/objc/authentication-services/as-authorization-controller-delegate.d.ts.map +1 -0
  11. package/dist/objc/authentication-services/as-authorization-controller-delegate.js +1 -0
  12. package/dist/objc/authentication-services/as-authorization-controller-delegate.js.map +1 -0
  13. package/dist/objc/authentication-services/as-authorization-controller-presentation-context-providing.d.ts +42 -0
  14. package/dist/objc/authentication-services/as-authorization-controller-presentation-context-providing.d.ts.map +1 -0
  15. package/dist/objc/authentication-services/as-authorization-controller-presentation-context-providing.js +1 -0
  16. package/dist/objc/authentication-services/as-authorization-controller-presentation-context-providing.js.map +1 -0
  17. package/dist/objc/authentication-services/as-authorization-controller.d.ts +28 -0
  18. package/dist/objc/authentication-services/as-authorization-controller.d.ts.map +1 -0
  19. package/dist/objc/authentication-services/as-authorization-controller.js +1 -0
  20. package/dist/objc/authentication-services/as-authorization-controller.js.map +1 -0
  21. package/dist/objc/authentication-services/as-authorization-platform-public-key-credential-provider.d.ts +22 -0
  22. package/dist/objc/authentication-services/as-authorization-platform-public-key-credential-provider.d.ts.map +1 -0
  23. package/dist/objc/authentication-services/as-authorization-platform-public-key-credential-provider.js +1 -0
  24. package/dist/objc/authentication-services/as-authorization-platform-public-key-credential-provider.js.map +1 -0
  25. package/dist/objc/authentication-services/index.d.ts +3 -0
  26. package/dist/objc/authentication-services/index.d.ts.map +1 -0
  27. package/dist/objc/authentication-services/index.js +1 -0
  28. package/dist/objc/authentication-services/index.js.map +1 -0
  29. package/dist/objc/foundation/index.d.ts +3 -0
  30. package/dist/objc/foundation/index.d.ts.map +1 -0
  31. package/dist/objc/foundation/index.js +1 -0
  32. package/dist/objc/foundation/index.js.map +1 -0
  33. package/dist/objc/foundation/nsarray.d.ts +18 -0
  34. package/dist/objc/foundation/nsarray.d.ts.map +1 -0
  35. package/dist/objc/foundation/nsarray.js +1 -0
  36. package/dist/objc/foundation/nsarray.js.map +1 -0
  37. package/dist/objc/foundation/nsdata.d.ts +109 -0
  38. package/dist/objc/foundation/nsdata.d.ts.map +1 -0
  39. package/dist/objc/foundation/nsdata.js +1 -0
  40. package/dist/objc/foundation/nsdata.js.map +1 -0
  41. package/dist/objc/foundation/nserror.d.ts +32 -0
  42. package/dist/objc/foundation/nserror.d.ts.map +1 -0
  43. package/dist/objc/foundation/nserror.js +1 -0
  44. package/dist/objc/foundation/nserror.js.map +1 -0
  45. package/dist/objc/foundation/nsstring.d.ts +15 -0
  46. package/dist/objc/foundation/nsstring.d.ts.map +1 -0
  47. package/dist/objc/foundation/nsstring.js +1 -0
  48. package/dist/objc/foundation/nsstring.js.map +1 -0
  49. package/dist/objc/foundation/nsview.d.ts +7 -0
  50. package/dist/objc/foundation/nsview.d.ts.map +1 -0
  51. package/dist/objc/foundation/nsview.js +1 -0
  52. package/dist/objc/foundation/nsview.js.map +1 -0
  53. package/dist/objc/foundation/nswindow.d.ts +5 -0
  54. package/dist/objc/foundation/nswindow.d.ts.map +1 -0
  55. package/dist/objc/foundation/nswindow.js +1 -0
  56. package/dist/objc/foundation/nswindow.js.map +1 -0
  57. package/dist/objc/helpers.d.ts +21 -0
  58. package/dist/objc/helpers.d.ts.map +1 -0
  59. package/dist/objc/helpers.js +1 -0
  60. package/dist/objc/helpers.js.map +1 -0
  61. package/dist/test/example.d.ts +2 -0
  62. package/dist/test/example.d.ts.map +1 -0
  63. package/dist/test/example.js +24 -0
  64. package/dist/test/example.js.map +1 -0
  65. package/dist/test/index.d.ts +2 -0
  66. package/dist/test/index.d.ts.map +1 -0
  67. package/dist/test/index.js +9 -0
  68. package/dist/test/index.js.map +1 -0
  69. package/dist/test/window.d.ts +5 -0
  70. package/dist/test/window.d.ts.map +1 -0
  71. package/dist/test/window.js +58 -0
  72. package/dist/test/window.js.map +1 -0
  73. package/dist/window.d.ts +5 -0
  74. package/dist/window.d.ts.map +1 -0
  75. package/dist/window.js +1 -0
  76. package/dist/window.js.map +1 -0
  77. package/package.json +12 -4
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=example.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../src/example.ts"],"names":[],"mappings":""}
package/dist/example.js CHANGED
@@ -21,3 +21,4 @@ for (let i = 0; i < myArray.count(); i++) {
21
21
  const nsString = obj;
22
22
  console.log(`Array[${i}]:`, nsString.UTF8String());
23
23
  }
24
+ //# sourceMappingURL=example.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.js","sourceRoot":"","sources":["../src/example.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAEvD,MAAM,QAAQ,GAAG,QAAQ,CAAC,qBAAqB,CAAC,yBAAyB,CAAC,CAAC;AAC3E,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;AAE3C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;AACnD,MAAM,MAAM,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;AAC7D,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;AAEvC,eAAe;AACf,MAAM,IAAI,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;AACrD,MAAM,IAAI,GAAG,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;AACtD,MAAM,IAAI,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAErD,8CAA8C;AAC9C,IAAI,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;AAC7C,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;AAC7C,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;AAE7C,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;AAE5D,kBAAkB;AAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;IACzC,MAAM,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC,CAAQ,CAAC;IAC7C,MAAM,QAAQ,GAAG,GAAkB,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;AACrD,CAAC"}
@@ -0,0 +1,14 @@
1
+ declare function getCredential(rpid: string, challenge: Buffer, nativeWindowHandle: Buffer): {
2
+ [key: string]: import("objc-js").NobjcMethod;
3
+ initWithAuthorizationRequests$(authorizationRequests: import("objc-js").NobjcObject): any;
4
+ performRequests(): void;
5
+ performRequestsWithOptions$(options: import("objc-js").NobjcObject): void;
6
+ performAutoFillAssistedRequests(): void;
7
+ cancel(): void;
8
+ setDelegate$(delegate: import("objc-js").NobjcObject): void;
9
+ delegate(): import("objc-js").NobjcObject;
10
+ setPresentationContextProvider$(provider: import("objc-js").NobjcObject): void;
11
+ presentationContextProvider(): import("objc-js").NobjcObject;
12
+ };
13
+ export { getCredential };
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAWA,iBAAS,aAAa,CACpB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,MAAM;;;;;;;;;;;EAmD3B;AAED,OAAO,EAAE,aAAa,EAAE,CAAC"}
package/dist/index.js CHANGED
@@ -6,9 +6,6 @@ import { createPlatformPublicKeyCredentialProvider } from "./objc/authentication
6
6
  import { NSArray } from "./objc/foundation/nsarray.js";
7
7
  import { NSDataFromBuffer } from "./objc/foundation/nsdata.js";
8
8
  import { NSStringFromString } from "./objc/foundation/nsstring.js";
9
- // const window = createEmptyWindow();
10
- // const nsView = getNativeWindowHandle(window);
11
- // const nsViewPointer = getPointer(nsView);
12
9
  function getCredential(rpid, challenge, nativeWindowHandle) {
13
10
  const NS_rpID = NSStringFromString(rpid);
14
11
  // let challenge: Data // Obtain this from the server.
@@ -47,3 +44,4 @@ function getCredential(rpid, challenge, nativeWindowHandle) {
47
44
  return authController;
48
45
  }
49
46
  export { getCredential };
47
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,qCAAqC,EAAE,MAAM,wEAAwE,CAAC;AAC/H,OAAO,EAAE,6BAA6B,EAAE,MAAM,+DAA+D,CAAC;AAC9G,OAAO,EAAE,iCAAiC,EAAE,MAAM,8FAA8F,CAAC;AACjJ,OAAO,EAAE,yCAAyC,EAAE,MAAM,4FAA4F,CAAC;AACvJ,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAInE,SAAS,aAAa,CACpB,IAAY,EACZ,SAAiB,EACjB,kBAA0B;IAE1B,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAEzC,sDAAsD;IACtD,MAAM,YAAY,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAEjD,mHAAmH;IACnH,MAAM,gBAAgB,GAAG,yCAAyC,CAAC,OAAO,CAAC,CAAC;IAE5E,mGAAmG;IACnG,MAAM,kBAAkB,GACtB,gBAAgB,CAAC,8CAA8C,CAC7D,YAAY,CACb,CAAC;IAEJ,8FAA8F;IAC9F,MAAM,aAAa,GAAG,OAAO,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;IACnE,MAAM,cAAc,GAAG,6BAA6B,CAAC,aAAa,CAAC,CAAC;IAEpE,iCAAiC;IACjC,MAAM,QAAQ,GAAG,qCAAqC,CAAC;QACrD,4BAA4B,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,EAAE;YAC1D,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAC;QACzD,CAAC;QACD,oBAAoB,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE;YAC1C,2CAA2C;YAC3C,MAAM,WAAW,GAAG,KAA6C,CAAC;YAClE,OAAO,CAAC,KAAK,CACX,uBAAuB,EACvB,WAAW,CAAC,oBAAoB,EAAE,CAAC,UAAU,EAAE,CAChD,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;IACH,cAAc,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAEtC,oDAAoD;IACpD,MAAM,2BAA2B,GAAG,iCAAiC,CAAC;QACpE,4CAA4C,EAAE,CAAC,UAAU,EAAE,EAAE;YAC3D,yDAAyD;YACzD,MAAM,MAAM,GAAG,WAAW,CAAC,kBAAkB,CAAuB,CAAC;YACrE,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YACjC,OAAO,QAAQ,CAAC;QAClB,CAAC;KACF,CAAC,CAAC;IACH,cAAc,CAAC,+BAA+B,CAAC,2BAA2B,CAAC,CAAC;IAE5E,mCAAmC;IACnC,cAAc,CAAC,eAAe,EAAE,CAAC;IAEjC,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,OAAO,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,53 @@
1
+ import { NobjcObject } from "objc-js";
2
+ /**
3
+ * ASAuthorizationControllerDelegate Protocol
4
+ *
5
+ * A protocol that provides methods for handling authorization flow events.
6
+ * https://developer.apple.com/documentation/authenticationservices/asauthorizationcontrollerdelegate
7
+ *
8
+ * Protocol Methods:
9
+ * - authorizationController:didCompleteWithAuthorization: - Called when authorization succeeds
10
+ * - authorizationController:didCompleteWithError: - Called when authorization fails
11
+ */
12
+ export interface ASAuthorizationControllerDelegateCallbacks {
13
+ /**
14
+ * Tells the delegate that authorization completed successfully.
15
+ * @param controller The authorization controller that completed.
16
+ * @param authorization The authorization object containing the credential.
17
+ */
18
+ didCompleteWithAuthorization?: (controller: NobjcObject, authorization: NobjcObject) => void;
19
+ /**
20
+ * Tells the delegate that authorization failed with an error.
21
+ * @param controller The authorization controller that failed.
22
+ * @param error The error that occurred during authorization.
23
+ */
24
+ didCompleteWithError?: (controller: NobjcObject, error: NobjcObject) => void;
25
+ }
26
+ /**
27
+ * Create an ASAuthorizationControllerDelegate instance
28
+ *
29
+ * This creates an Objective-C object that implements the ASAuthorizationControllerDelegate
30
+ * protocol using the objc-js protocol implementation API.
31
+ *
32
+ * @param callbacks Object containing callback functions for delegate methods
33
+ * @returns A NobjcObject that can be set as the delegate of an ASAuthorizationController
34
+ *
35
+ * @example
36
+ * ```typescript
37
+ * const delegate = createAuthorizationControllerDelegate({
38
+ * didCompleteWithAuthorization: (controller, authorization) => {
39
+ * console.log("Authorization succeeded!");
40
+ * const credential = authorization.credential();
41
+ * // Process the credential
42
+ * },
43
+ * didCompleteWithError: (controller, error) => {
44
+ * console.error("Authorization failed:", error.localizedDescription());
45
+ * }
46
+ * });
47
+ *
48
+ * authController.setDelegate$(delegate);
49
+ * authController.performRequests();
50
+ * ```
51
+ */
52
+ export declare function createAuthorizationControllerDelegate(callbacks: ASAuthorizationControllerDelegateCallbacks): NobjcObject;
53
+ //# sourceMappingURL=as-authorization-controller-delegate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"as-authorization-controller-delegate.d.ts","sourceRoot":"","sources":["../../../src/objc/authentication-services/as-authorization-controller-delegate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAiB,MAAM,SAAS,CAAC;AAErD;;;;;;;;;GASG;AAEH,MAAM,WAAW,0CAA0C;IACzD;;;;OAIG;IACH,4BAA4B,CAAC,EAAE,CAC7B,UAAU,EAAE,WAAW,EACvB,aAAa,EAAE,WAAW,KACvB,IAAI,CAAC;IAEV;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;CAC9E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,qCAAqC,CACnD,SAAS,EAAE,0CAA0C,GACpD,WAAW,CAoBb"}
@@ -38,3 +38,4 @@ export function createAuthorizationControllerDelegate(callbacks) {
38
38
  // Create and return the protocol implementation
39
39
  return NobjcProtocol.implement("ASAuthorizationControllerDelegate", methodImplementations);
40
40
  }
41
+ //# sourceMappingURL=as-authorization-controller-delegate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"as-authorization-controller-delegate.js","sourceRoot":"","sources":["../../../src/objc/authentication-services/as-authorization-controller-delegate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAgCrD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,qCAAqC,CACnD,SAAqD;IAErD,MAAM,qBAAqB,GAA4C,EAAE,CAAC;IAE1E,iEAAiE;IACjE,IAAI,SAAS,CAAC,4BAA4B,EAAE,CAAC;QAC3C,qBAAqB,CACnB,uDAAuD,CACxD,GAAG,SAAS,CAAC,4BAA4B,CAAC;IAC7C,CAAC;IAED,IAAI,SAAS,CAAC,oBAAoB,EAAE,CAAC;QACnC,qBAAqB,CAAC,+CAA+C,CAAC;YACpE,SAAS,CAAC,oBAAoB,CAAC;IACnC,CAAC;IAED,gDAAgD;IAChD,OAAO,aAAa,CAAC,SAAS,CAC5B,mCAAmC,EACnC,qBAAqB,CACtB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,42 @@
1
+ import { NobjcObject } from "objc-js";
2
+ /**
3
+ * ASAuthorizationControllerPresentationContextProviding Protocol
4
+ *
5
+ * A protocol that provides the window in which the authorization controller displays its interface.
6
+ * https://developer.apple.com/documentation/authenticationservices/asauthorizationcontrollerpresentationcontextproviding
7
+ *
8
+ * Protocol Methods:
9
+ * - presentationAnchorForAuthorizationController: - Returns the presentation anchor (window) for the controller
10
+ */
11
+ export interface ASAuthorizationControllerPresentationContextProvidingCallbacks {
12
+ /**
13
+ * Returns the presentation anchor (window) to use when presenting the authorization interface.
14
+ * @param controller The authorization controller requesting the presentation anchor.
15
+ * @returns The window (ASPresentationAnchor/NSWindow) to use as the presentation anchor.
16
+ */
17
+ presentationAnchorForAuthorizationController: (controller: NobjcObject) => NobjcObject;
18
+ }
19
+ /**
20
+ * Create an ASAuthorizationControllerPresentationContextProviding instance
21
+ *
22
+ * This creates an Objective-C object that implements the ASAuthorizationControllerPresentationContextProviding
23
+ * protocol using the objc-js protocol implementation API.
24
+ *
25
+ * @param callbacks Object containing callback functions for protocol methods
26
+ * @returns A NobjcObject that can be set as the presentationContextProvider of an ASAuthorizationController
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * const presentationContextProvider = createPresentationContextProvider({
31
+ * presentationAnchorForAuthorizationController: (controller) => {
32
+ * // Return the NSWindow to present the authorization UI in
33
+ * return myNSWindow;
34
+ * }
35
+ * });
36
+ *
37
+ * authController.setPresentationContextProvider$(presentationContextProvider);
38
+ * authController.performRequests();
39
+ * ```
40
+ */
41
+ export declare function createPresentationContextProvider(callbacks: ASAuthorizationControllerPresentationContextProvidingCallbacks): NobjcObject;
42
+ //# sourceMappingURL=as-authorization-controller-presentation-context-providing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"as-authorization-controller-presentation-context-providing.d.ts","sourceRoot":"","sources":["../../../src/objc/authentication-services/as-authorization-controller-presentation-context-providing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAiB,MAAM,SAAS,CAAC;AAErD;;;;;;;;GAQG;AAEH,MAAM,WAAW,8DAA8D;IAC7E;;;;OAIG;IACH,4CAA4C,EAAE,CAC5C,UAAU,EAAE,WAAW,KACpB,WAAW,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,8DAA8D,GACxE,WAAW,CAYb"}
@@ -29,3 +29,4 @@ export function createPresentationContextProvider(callbacks) {
29
29
  // Create and return the protocol implementation
30
30
  return NobjcProtocol.implement("ASAuthorizationControllerPresentationContextProviding", methodImplementations);
31
31
  }
32
+ //# sourceMappingURL=as-authorization-controller-presentation-context-providing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"as-authorization-controller-presentation-context-providing.js","sourceRoot":"","sources":["../../../src/objc/authentication-services/as-authorization-controller-presentation-context-providing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAuBrD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,iCAAiC,CAC/C,SAAyE;IAEzE,MAAM,qBAAqB,GAA4C,EAAE,CAAC;IAE1E,+DAA+D;IAC/D,qBAAqB,CAAC,+CAA+C,CAAC;QACpE,SAAS,CAAC,4CAA4C,CAAC;IAEzD,gDAAgD;IAChD,OAAO,aAAa,CAAC,SAAS,CAC5B,uDAAuD,EACvD,qBAAqB,CACtB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,28 @@
1
+ import type { NobjcObject } from "objc-js";
2
+ declare class _ASAuthorizationController extends NobjcObject {
3
+ /**
4
+ * ASAuthorizationController.init(authorizationRequests: NSArray<ASAuthorizationRequest>)
5
+ * @private Do not use this method directly.
6
+ */
7
+ initWithAuthorizationRequests$(authorizationRequests: NobjcObject): _ASAuthorizationController;
8
+ /**
9
+ * ASAuthorizationController.performRequests()
10
+ */
11
+ performRequests(): void;
12
+ performRequestsWithOptions$(options: NobjcObject): void;
13
+ performAutoFillAssistedRequests(): void;
14
+ cancel(): void;
15
+ setDelegate$(delegate: NobjcObject): void;
16
+ delegate(): NobjcObject;
17
+ setPresentationContextProvider$(provider: NobjcObject): void;
18
+ presentationContextProvider(): NobjcObject;
19
+ }
20
+ export declare const ASAuthorizationController: typeof _ASAuthorizationController;
21
+ /**
22
+ * Create an ASAuthorizationController instance
23
+ * @param authorizationRequests An NSArray of authorization requests
24
+ * @returns An initialized controller instance
25
+ */
26
+ export declare function createAuthorizationController(authorizationRequests: NobjcObject): _ASAuthorizationController;
27
+ export {};
28
+ //# sourceMappingURL=as-authorization-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"as-authorization-controller.d.ts","sourceRoot":"","sources":["../../../src/objc/authentication-services/as-authorization-controller.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,OAAO,OAAO,0BAA2B,SAAQ,WAAW;IAC1D;;;OAGG;IACH,8BAA8B,CAC5B,qBAAqB,EAAE,WAAW,GACjC,0BAA0B;IAE7B;;OAEG;IACH,eAAe,IAAI,IAAI;IAGvB,2BAA2B,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAGvD,+BAA+B,IAAI,IAAI;IAGvC,MAAM,IAAI,IAAI;IAGd,YAAY,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IACzC,QAAQ,IAAI,WAAW;IAGvB,+BAA+B,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IAC5D,2BAA2B,IAAI,WAAW;CAC3C;AAED,eAAO,MAAM,yBAAyB,EAC2B,OAAO,0BAA0B,CAAC;AAInG;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,qBAAqB,EAAE,WAAW,GACjC,0BAA0B,CAG5B"}
@@ -10,3 +10,4 @@ export function createAuthorizationController(authorizationRequests) {
10
10
  const instance = ASAuthorizationController.alloc();
11
11
  return instance.initWithAuthorizationRequests$(authorizationRequests);
12
12
  }
13
+ //# sourceMappingURL=as-authorization-controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"as-authorization-controller.js","sourceRoot":"","sources":["../../../src/objc/authentication-services/as-authorization-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAoCpD,MAAM,CAAC,MAAM,yBAAyB,GACpC,sBAAsB,CAAC,yBAAyE,CAAC;AAEnG,mBAAmB;AAEnB;;;;GAIG;AACH,MAAM,UAAU,6BAA6B,CAC3C,qBAAkC;IAElC,MAAM,QAAQ,GAAI,yBAAiC,CAAC,KAAK,EAAE,CAAC;IAC5D,OAAO,QAAQ,CAAC,8BAA8B,CAAC,qBAAqB,CAAC,CAAC;AACxE,CAAC"}
@@ -0,0 +1,22 @@
1
+ import type { NobjcObject } from "objc-js";
2
+ declare class _ASAuthorizationPlatformPublicKeyCredentialProvider extends NobjcObject {
3
+ /**
4
+ * ASAuthorizationPlatformPublicKeyCredentialProvider.init(relyingPartyIdentifier: String)
5
+ * @private Do not use this method directly.
6
+ */
7
+ initWithRelyingPartyIdentifier$(relyingPartyIdentifier: NobjcObject): _ASAuthorizationPlatformPublicKeyCredentialProvider;
8
+ createCredentialRegistrationRequestWithChallenge$name$userID$(challenge: NobjcObject, name: NobjcObject, userID: NobjcObject): NobjcObject;
9
+ /**
10
+ * ASAuthorizationPlatformPublicKeyCredentialProvider.createCredentialAssertionRequest(challenge: NSData)
11
+ */
12
+ createCredentialAssertionRequestWithChallenge$(challenge: NobjcObject): NobjcObject;
13
+ }
14
+ export declare const ASAuthorizationPlatformPublicKeyCredentialProvider: typeof _ASAuthorizationPlatformPublicKeyCredentialProvider;
15
+ /**
16
+ * Create an ASAuthorizationPlatformPublicKeyCredentialProvider instance
17
+ * @param relyingPartyIdentifier The relying party identifier (domain)
18
+ * @returns An initialized provider instance
19
+ */
20
+ export declare function createPlatformPublicKeyCredentialProvider(relyingPartyIdentifier: NobjcObject): _ASAuthorizationPlatformPublicKeyCredentialProvider;
21
+ export {};
22
+ //# sourceMappingURL=as-authorization-platform-public-key-credential-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"as-authorization-platform-public-key-credential-provider.d.ts","sourceRoot":"","sources":["../../../src/objc/authentication-services/as-authorization-platform-public-key-credential-provider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,OAAO,OAAO,mDAAoD,SAAQ,WAAW;IACnF;;;OAGG;IACH,+BAA+B,CAC7B,sBAAsB,EAAE,WAAW,GAClC,mDAAmD;IAGtD,6DAA6D,CAC3D,SAAS,EAAE,WAAW,EACtB,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,WAAW,GAClB,WAAW;IAEd;;OAEG;IACH,8CAA8C,CAC5C,SAAS,EAAE,WAAW,GACrB,WAAW;CACf;AAED,eAAO,MAAM,kDAAkD,EAC2B,OAAO,mDAAmD,CAAC;AAIrJ;;;;GAIG;AACH,wBAAgB,yCAAyC,CACvD,sBAAsB,EAAE,WAAW,GAClC,mDAAmD,CAKrD"}
@@ -10,3 +10,4 @@ export function createPlatformPublicKeyCredentialProvider(relyingPartyIdentifier
10
10
  const instance = ASAuthorizationPlatformPublicKeyCredentialProvider.alloc();
11
11
  return instance.initWithRelyingPartyIdentifier$(relyingPartyIdentifier);
12
12
  }
13
+ //# sourceMappingURL=as-authorization-platform-public-key-credential-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"as-authorization-platform-public-key-credential-provider.js","sourceRoot":"","sources":["../../../src/objc/authentication-services/as-authorization-platform-public-key-credential-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AA4BpD,MAAM,CAAC,MAAM,kDAAkD,GAC7D,sBAAsB,CAAC,kDAA2H,CAAC;AAErJ,mBAAmB;AAEnB;;;;GAIG;AACH,MAAM,UAAU,yCAAyC,CACvD,sBAAmC;IAEnC,MAAM,QAAQ,GACZ,kDACD,CAAC,KAAK,EAAE,CAAC;IACV,OAAO,QAAQ,CAAC,+BAA+B,CAAC,sBAAsB,CAAC,CAAC;AAC1E,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { NobjcLibrary } from "objc-js";
2
+ export declare const AuthenticationServices: NobjcLibrary;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/objc/authentication-services/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAGvC,eAAO,MAAM,sBAAsB,cAElC,CAAC"}
@@ -1,3 +1,4 @@
1
1
  import { NobjcLibrary } from "objc-js";
2
2
  // Load the framework
3
3
  export const AuthenticationServices = new NobjcLibrary("/System/Library/Frameworks/AuthenticationServices.framework/AuthenticationServices");
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/objc/authentication-services/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,qBAAqB;AACrB,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,YAAY,CACpD,oFAAoF,CACrF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { NobjcLibrary } from "objc-js";
2
+ export declare const Foundation: NobjcLibrary;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/objc/foundation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAGvC,eAAO,MAAM,UAAU,cAEtB,CAAC"}
@@ -1,3 +1,4 @@
1
1
  import { NobjcLibrary } from "objc-js";
2
2
  // Load the framework
3
3
  export const Foundation = new NobjcLibrary("/System/Library/Frameworks/Foundation.framework/Foundation");
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/objc/foundation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,qBAAqB;AACrB,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,YAAY,CACxC,4DAA4D,CAC7D,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { NobjcObject } from "objc-js";
2
+ declare class _NSArray extends NobjcObject {
3
+ static arrayWithObject$(object: NobjcObject): _NSArray;
4
+ static arrayWithArray$(array: _NSArray): _NSArray;
5
+ static array(): _NSArray;
6
+ count(): number;
7
+ objectAtIndex$(index: number): NobjcObject;
8
+ arrayByAddingObject$(object: NobjcObject): _NSArray;
9
+ }
10
+ export declare const NSArray: typeof _NSArray;
11
+ /**
12
+ * Create an NSArray from an array of objects
13
+ * @param objects The array of objects
14
+ * @returns An NSArray object
15
+ */
16
+ export declare function NSArrayFromObjects(objects: NobjcObject[]): _NSArray;
17
+ export {};
18
+ //# sourceMappingURL=nsarray.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nsarray.d.ts","sourceRoot":"","sources":["../../../src/objc/foundation/nsarray.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,OAAO,OAAO,QAAS,SAAQ,WAAW;IACxC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,GAAG,QAAQ;IACtD,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ;IACjD,MAAM,CAAC,KAAK,IAAI,QAAQ;IACxB,KAAK,IAAI,MAAM;IACf,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW;IAC1C,oBAAoB,CAAC,MAAM,EAAE,WAAW,GAAG,QAAQ;CACpD;AACD,eAAO,MAAM,OAAO,EAAoC,OAAO,QAAQ,CAAC;AAIxE;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,QAAQ,CAMnE"}
@@ -13,3 +13,4 @@ export function NSArrayFromObjects(objects) {
13
13
  }
14
14
  return array;
15
15
  }
16
+ //# sourceMappingURL=nsarray.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nsarray.js","sourceRoot":"","sources":["../../../src/objc/foundation/nsarray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAYxC,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,CAAC,OAAqC,CAAC;AAExE,mBAAmB;AAEnB;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAsB;IACvD,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAC5B,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,KAAK,GAAG,KAAK,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,109 @@
1
+ import { type _NSString } from "./nsstring.js";
2
+ import type { NobjcObject } from "objc-js";
3
+ /**
4
+ * NSData to Buffer Conversion Methods
5
+ * Recommended method: bufferFromNSDataDirect
6
+ *
7
+ * Two methods are provided for converting NSData to JavaScript Buffers:
8
+ *
9
+ * 1. bufferFromNSData (base64): Uses base64 as an intermediate format.
10
+ * - Most reliable and compatible
11
+ * - Recommended for general use
12
+ * - Slight overhead due to base64 encoding/decoding
13
+ *
14
+ * 2. bufferFromNSDataDirect (direct): Uses getBytes:length: for direct memory copy.
15
+ * - More efficient for large data
16
+ * - Direct memory access
17
+ */
18
+ export declare class _NSData extends NobjcObject {
19
+ static dataWithBytes$length$(bytes: Buffer, length: number): _NSData;
20
+ static dataWithData$(data: _NSData): _NSData;
21
+ static data(): _NSData;
22
+ length(): number;
23
+ bytes(): any;
24
+ isEqualToData$(other: _NSData): boolean;
25
+ subdataWithRange$(range: {
26
+ location: number;
27
+ length: number;
28
+ }): _NSData;
29
+ base64EncodedStringWithOptions$(options: number): _NSString;
30
+ initWithBase64EncodedString$options$(base64String: _NSString, options: number): _NSData;
31
+ writeToFile$atomically$(path: _NSString, atomically: boolean): boolean;
32
+ static dataWithContentsOfFile$(path: _NSString): _NSData;
33
+ description(): _NSString;
34
+ getBytes$length$(buffer: Buffer, length: number): void;
35
+ getBytes$range$(buffer: Buffer, range: {
36
+ location: number;
37
+ length: number;
38
+ }): void;
39
+ }
40
+ export declare const NSData: typeof _NSData;
41
+ /**
42
+ * Create NSData from a JavaScript Buffer
43
+ * @param buffer The Buffer object
44
+ * @returns An NSData object
45
+ */
46
+ export declare function NSDataFromBuffer(buffer: Buffer): NobjcObject;
47
+ /**
48
+ * Convert NSData to a JavaScript Buffer using base64 encoding
49
+ * This is the most reliable method for data conversion.
50
+ * @param data The NSData object
51
+ * @returns A Buffer containing the data
52
+ */
53
+ export declare function bufferFromNSData(data: NobjcObject): Buffer;
54
+ /**
55
+ * Convert NSData to a JavaScript Buffer using direct memory copy
56
+ * This method uses getBytes:length: for direct memory access.
57
+ * May be more efficient for large data, but requires proper buffer allocation.
58
+ * @param data The NSData object
59
+ * @returns A Buffer containing the data
60
+ */
61
+ export declare function bufferFromNSDataDirect(data: NobjcObject): Buffer;
62
+ /**
63
+ * Convert NSData to a JavaScript Uint8Array
64
+ * @param data The NSData object
65
+ * @returns A Uint8Array containing the data
66
+ */
67
+ export declare function uint8ArrayFromNSData(data: NobjcObject): Uint8Array;
68
+ /**
69
+ * Convert NSData to a base64 string
70
+ * @param data The NSData object
71
+ * @returns A base64-encoded string
72
+ */
73
+ export declare function base64FromNSData(data: NobjcObject): string;
74
+ /**
75
+ * Create NSData from a base64 string
76
+ * @param base64String The base64-encoded string
77
+ * @returns An NSData object
78
+ */
79
+ export declare function NSDataFromBase64(base64String: string): NobjcObject;
80
+ /**
81
+ * Get the length of NSData
82
+ * @param data The NSData object
83
+ * @returns The length in bytes
84
+ */
85
+ export declare function NSDataLength(data: NobjcObject): number;
86
+ /**
87
+ * Create a copy of NSData
88
+ * @param data The NSData object
89
+ * @returns A new NSData object with copied data
90
+ */
91
+ export declare function NSDataCopy(data: NobjcObject): NobjcObject;
92
+ /**
93
+ * Compare two NSData objects for equality
94
+ * @param data1 The first NSData object
95
+ * @param data2 The second NSData object
96
+ * @returns True if the data is equal
97
+ */
98
+ export declare function NSDataIsEqual(data1: NobjcObject, data2: NobjcObject): boolean;
99
+ /**
100
+ * Extract a subrange of NSData
101
+ * Note: This method may not work with all versions of nobjc due to NSRange struct limitations.
102
+ * As an alternative, convert to Buffer, slice, and convert back.
103
+ * @param data The NSData object
104
+ * @param location The starting position
105
+ * @param length The number of bytes to extract
106
+ * @returns A new NSData object containing the subdata
107
+ */
108
+ export declare function NSDataSubdata(data: NobjcObject, location: number, length: number): NobjcObject;
109
+ //# sourceMappingURL=nsdata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nsdata.d.ts","sourceRoot":"","sources":["../../../src/objc/foundation/nsdata.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C;;;;;;;;;;;;;;GAcG;AAGH,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,WAAW;IAE9C,MAAM,CAAC,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IACpE,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;IAC5C,MAAM,CAAC,IAAI,IAAI,OAAO;IAGtB,MAAM,IAAI,MAAM;IAChB,KAAK,IAAI,GAAG;IAGZ,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IAGvC,iBAAiB,CAAC,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO;IAGvE,+BAA+B,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS;IAG3D,oCAAoC,CAClC,YAAY,EAAE,SAAS,EACvB,OAAO,EAAE,MAAM,GACd,OAAO;IAGV,uBAAuB,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,GAAG,OAAO;IAGtE,MAAM,CAAC,uBAAuB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAGxD,WAAW,IAAI,SAAS;IAGxB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IACtD,eAAe,CACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAC1C,IAAI;CACR;AACD,eAAO,MAAM,MAAM,EAAmC,OAAO,OAAO,CAAC;AAIrE;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAE5D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAY1D;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAYhE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,GAAG,UAAU,CAGlE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAI1D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,WAAW,CAIlE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAGtD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,WAAW,GAAG,WAAW,CAEzD;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAG7E;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,WAAW,CAMb"}
@@ -117,3 +117,4 @@ export function NSDataSubdata(data, location, length) {
117
117
  const slicedBuffer = buffer.subarray(location, location + length);
118
118
  return NSDataFromBuffer(slicedBuffer);
119
119
  }
120
+ //# sourceMappingURL=nsdata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nsdata.js","sourceRoot":"","sources":["../../../src/objc/foundation/nsdata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAkB,MAAM,eAAe,CAAC;AA6DzD,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAmC,CAAC;AAErE,mBAAmB;AAEnB;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,OAAO,MAAM,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAiB;IAChD,MAAM,MAAM,GAAG,IAA0C,CAAC;IAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;IAE/B,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACjB,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAED,wEAAwE;IACxE,MAAM,YAAY,GAAG,MAAM,CAAC,+BAA+B,CAAC,CAAC,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,EAAE,CAAC;IAC5C,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAiB;IACtD,MAAM,MAAM,GAAG,IAA0C,CAAC;IAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;IAE/B,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACjB,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAED,4CAA4C;IAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAiB;IACpD,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACtC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAiB;IAChD,MAAM,MAAM,GAAG,IAA0C,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,CAAC,+BAA+B,CAAC,CAAC,CAAC,CAAC;IAC3D,OAAO,QAAQ,CAAC,UAAU,EAAE,CAAC;AAC/B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,YAAoB;IACnD,MAAM,QAAQ,GAAG,QAAQ,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAI,MAAc,CAAC,KAAK,EAAE,CAAC;IACvC,OAAO,MAAM,CAAC,oCAAoC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AAClE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,IAAiB;IAC5C,MAAM,MAAM,GAAG,IAA0C,CAAC;IAC1D,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC;AACzB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,IAAiB;IAC1C,OAAO,MAAM,CAAC,aAAa,CAAC,IAAW,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,KAAkB,EAAE,KAAkB;IAClE,MAAM,OAAO,GAAG,KAA2C,CAAC;IAC5D,OAAO,OAAO,CAAC,cAAc,CAAC,KAAY,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAiB,EACjB,QAAgB,EAChB,MAAc;IAEd,yDAAyD;IACzD,kDAAkD;IAClD,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAAC,CAAC;IAClE,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC;AACxC,CAAC"}
@@ -0,0 +1,32 @@
1
+ import type { NobjcObject } from "objc-js";
2
+ import { type _NSString } from "./nsstring.js";
3
+ export declare class _NSError extends NobjcObject {
4
+ domain(): _NSString;
5
+ code(): number;
6
+ userInfo(): NobjcObject;
7
+ localizedDescription(): _NSString;
8
+ localizedFailureReason(): _NSString;
9
+ localizedRecoverySuggestion(): _NSString;
10
+ localizedRecoveryOptions(): NobjcObject;
11
+ }
12
+ export declare const NSError: typeof _NSError;
13
+ /**
14
+ * Parse an NSError object into a JavaScript-friendly format
15
+ * @param error The NSError object
16
+ * @returns An object containing the error details
17
+ */
18
+ export declare function parseNSError(error: NobjcObject): {
19
+ domain: string;
20
+ code: number;
21
+ localizedDescription: string;
22
+ localizedFailureReason?: string;
23
+ localizedRecoverySuggestion?: string;
24
+ userInfo?: Record<string, any>;
25
+ };
26
+ /**
27
+ * Convert an NSError to a JavaScript Error object
28
+ * @param error The NSError object
29
+ * @returns A JavaScript Error with NSError details
30
+ */
31
+ export declare function nsErrorToJSError(error: NobjcObject): Error;
32
+ //# sourceMappingURL=nserror.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nserror.d.ts","sourceRoot":"","sources":["../../../src/objc/foundation/nserror.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAG/C,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,WAAW;IAE/C,MAAM,IAAI,SAAS;IACnB,IAAI,IAAI,MAAM;IACd,QAAQ,IAAI,WAAW;IACvB,oBAAoB,IAAI,SAAS;IACjC,sBAAsB,IAAI,SAAS;IACnC,2BAA2B,IAAI,SAAS;IACxC,wBAAwB,IAAI,WAAW;CACxC;AAED,eAAO,MAAM,OAAO,EAAoC,OAAO,QAAQ,CAAC;AAExE;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB,EAAE,MAAM,CAAC;IAC7B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC,CAmDA;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,KAAK,CAM1D"}
@@ -68,3 +68,4 @@ export function nsErrorToJSError(error) {
68
68
  jsError.nsError = parsed;
69
69
  return jsError;
70
70
  }
71
+ //# sourceMappingURL=nserror.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nserror.js","sourceRoot":"","sources":["../../../src/objc/foundation/nserror.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAkB,MAAM,eAAe,CAAC;AAc/C,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,CAAC,OAAqC,CAAC;AAExE;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,KAAkB;IAQ7C,MAAM,OAAO,GAAG,KAA4C,CAAC;IAE7D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,CAAC;IAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC5B,MAAM,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,UAAU,EAAE,CAAC;IAEzE,uCAAuC;IACvC,IAAI,sBAA0C,CAAC;IAC/C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;QAChD,IAAI,MAAM,EAAE,CAAC;YACX,sBAAsB,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAC/C,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,oCAAoC;IACtC,CAAC;IAED,IAAI,2BAA+C,CAAC;IACpD,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,OAAO,CAAC,2BAA2B,EAAE,CAAC;QACzD,IAAI,UAAU,EAAE,CAAC;YACf,2BAA2B,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC;QACxD,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,oCAAoC;IACtC,CAAC;IAED,2CAA2C;IAC3C,IAAI,QAAyC,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QACxC,IAAI,YAAY,EAAE,CAAC;YACjB,oCAAoC;YACpC,6DAA6D;YAC7D,QAAQ,GAAG;gBACT,WAAW,EAAG,YAAoB,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE;aAC9D,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,iCAAiC;IACnC,CAAC;IAED,OAAO;QACL,MAAM;QACN,IAAI;QACJ,oBAAoB;QACpB,GAAG,CAAC,sBAAsB,IAAI,EAAE,sBAAsB,EAAE,CAAC;QACzD,GAAG,CAAC,2BAA2B,IAAI,EAAE,2BAA2B,EAAE,CAAC;QACnE,GAAG,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,CAAC;KAC9B,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAkB;IACjD,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACvD,OAAO,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC;IAClD,OAAe,CAAC,OAAO,GAAG,MAAM,CAAC;IAClC,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { NobjcObject } from "objc-js";
2
+ export declare class _NSString extends NobjcObject {
3
+ static stringWithUTF8String$(str: string): _NSString;
4
+ UTF8String(): string;
5
+ length(): number;
6
+ toString(): string;
7
+ }
8
+ export declare const NSString: typeof _NSString;
9
+ /**
10
+ * Create NSString from a JavaScript string
11
+ * @param str The string object
12
+ * @returns An NSString object
13
+ */
14
+ export declare function NSStringFromString(str: string): _NSString;
15
+ //# sourceMappingURL=nsstring.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nsstring.d.ts","sourceRoot":"","sources":["../../../src/objc/foundation/nsstring.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,WAAW;IAChD,MAAM,CAAC,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS;IACpD,UAAU,IAAI,MAAM;IACpB,MAAM,IAAI,MAAM;IAChB,QAAQ,IAAI,MAAM;CACnB;AACD,eAAO,MAAM,QAAQ,EAAqC,OAAO,SAAS,CAAC;AAI3E;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAEzD"}
@@ -9,3 +9,4 @@ export const NSString = Foundation.NSString;
9
9
  export function NSStringFromString(str) {
10
10
  return NSString.stringWithUTF8String$(str);
11
11
  }
12
+ //# sourceMappingURL=nsstring.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nsstring.js","sourceRoot":"","sources":["../../../src/objc/foundation/nsstring.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAUxC,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAuC,CAAC;AAE3E,mBAAmB;AAEnB;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAW;IAC5C,OAAO,QAAQ,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;AAC7C,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { NobjcObject } from "objc-js";
2
+ import type { _NSWindow } from "./nswindow.js";
3
+ export declare class _NSView extends NobjcObject {
4
+ window(): _NSWindow;
5
+ }
6
+ export declare const NSView: typeof _NSView;
7
+ //# sourceMappingURL=nsview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nsview.d.ts","sourceRoot":"","sources":["../../../src/objc/foundation/nsview.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG/C,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,WAAW;IAC9C,MAAM,IAAI,SAAS;CACpB;AACD,eAAO,MAAM,MAAM,EAAmC,OAAO,OAAO,CAAC"}
@@ -1,2 +1,3 @@
1
1
  import { Foundation } from "./index.js";
2
2
  export const NSView = Foundation.NSView;
3
+ //# sourceMappingURL=nsview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nsview.js","sourceRoot":"","sources":["../../../src/objc/foundation/nsview.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAQxC,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAmC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { NobjcObject } from "objc-js";
2
+ export declare class _NSWindow extends NobjcObject {
3
+ }
4
+ export declare const NSWindow: typeof _NSWindow;
5
+ //# sourceMappingURL=nswindow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nswindow.d.ts","sourceRoot":"","sources":["../../../src/objc/foundation/nswindow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,WAAW;CAAG;AACrD,eAAO,MAAM,QAAQ,EAAqC,OAAO,SAAS,CAAC"}
@@ -1,2 +1,3 @@
1
1
  import { Foundation } from "./index.js";
2
2
  export const NSWindow = Foundation.NSWindow;
3
+ //# sourceMappingURL=nswindow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nswindow.js","sourceRoot":"","sources":["../../../src/objc/foundation/nswindow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAKxC,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAuC,CAAC"}
@@ -0,0 +1,21 @@
1
+ import type { NobjcObject } from "objc-js";
2
+ export declare class NobjcInstanceWrapper {
3
+ private _instance;
4
+ constructor(instance: NobjcObject);
5
+ get instance(): NobjcObject;
6
+ }
7
+ /**
8
+ * Helper to allocate and initialize an Objective-C object with a single argument initializer
9
+ * @param cls The Objective-C class
10
+ * @param initMethod The initializer method name (e.g., "initWithRelyingPartyIdentifier:")
11
+ * @param arg The argument to pass to the initializer
12
+ * @returns The initialized instance
13
+ */
14
+ export declare function allocInit(cls: NobjcObject, initMethod: string, arg: NobjcObject): NobjcObject;
15
+ /**
16
+ * Helper to allocate and initialize an Objective-C object with no arguments
17
+ * @param cls The Objective-C class
18
+ * @returns The initialized instance
19
+ */
20
+ export declare function allocInitPlain(cls: NobjcObject): NobjcObject;
21
+ //# sourceMappingURL=helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/objc/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,SAAS,CAAc;gBAEnB,QAAQ,EAAE,WAAW;IAIjC,IAAI,QAAQ,IAAI,WAAW,CAE1B;CACF;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CACvB,GAAG,EAAE,WAAW,EAChB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,WAAW,GACf,WAAW,CAMb;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,WAAW,CAI5D"}
@@ -29,3 +29,4 @@ export function allocInitPlain(cls) {
29
29
  const initializer = instance["init"];
30
30
  return initializer();
31
31
  }
32
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/objc/helpers.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,oBAAoB;IACvB,SAAS,CAAc;IAE/B,YAAY,QAAqB;QAC/B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC5B,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CACvB,GAAgB,EAChB,UAAkB,EAClB,GAAgB;IAEhB,MAAM,QAAQ,GAAI,GAAG,CAAC,OAAO,CAAkC,EAAE,CAAC;IAClE,MAAM,WAAW,GAAG,QAAQ,CAAC,UAAU,CAEvB,CAAC;IACjB,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,GAAgB;IAC7C,MAAM,QAAQ,GAAI,GAAG,CAAC,OAAO,CAAkC,EAAE,CAAC;IAClE,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAiC,CAAC;IACrE,OAAO,WAAW,EAAE,CAAC;AACvB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=example.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../src/test/example.ts"],"names":[],"mappings":""}
@@ -0,0 +1,24 @@
1
+ import { NSData } from "../objc/foundation/nsdata.js";
2
+ import { NSString } from "../objc/foundation/nsstring.js";
3
+ import { NSArray } from "../objc/foundation/nsarray.js";
4
+ const myString = NSString.stringWithUTF8String$("Hello from Objective-C!");
5
+ console.log("Created NSString:", myString);
6
+ const buf = Buffer.from("Hello from Objective-C!");
7
+ const myData = NSData.dataWithBytes$length$(buf, buf.length);
8
+ console.log("Created NSData:", myData);
9
+ // Test NSArray
10
+ const str1 = NSString.stringWithUTF8String$("First");
11
+ const str2 = NSString.stringWithUTF8String$("Second");
12
+ const str3 = NSString.stringWithUTF8String$("Third");
13
+ // Create array with one object, then add more
14
+ let myArray = NSArray.arrayWithObject$(str1);
15
+ myArray = myArray.arrayByAddingObject$(str2);
16
+ myArray = myArray.arrayByAddingObject$(str3);
17
+ console.log("Created NSArray with count:", myArray.count());
18
+ // Access elements
19
+ for (let i = 0; i < myArray.count(); i++) {
20
+ const obj = myArray.objectAtIndex$(i);
21
+ const nsString = obj;
22
+ console.log(`Array[${i}]:`, nsString.UTF8String());
23
+ }
24
+ //# sourceMappingURL=example.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.js","sourceRoot":"","sources":["../../src/test/example.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAExD,MAAM,QAAQ,GAAG,QAAQ,CAAC,qBAAqB,CAAC,yBAAyB,CAAC,CAAC;AAC3E,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;AAE3C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;AACnD,MAAM,MAAM,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;AAC7D,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;AAEvC,eAAe;AACf,MAAM,IAAI,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;AACrD,MAAM,IAAI,GAAG,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;AACtD,MAAM,IAAI,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAErD,8CAA8C;AAC9C,IAAI,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;AAC7C,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;AAC7C,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;AAE7C,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;AAE5D,kBAAkB;AAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;IACzC,MAAM,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC,CAAQ,CAAC;IAC7C,MAAM,QAAQ,GAAG,GAAkB,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;AACrD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/test/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { getPointer } from "objc-js";
2
+ import { createEmptyWindow, getNativeWindowHandle } from "./window.js";
3
+ import { getCredential } from "../index.js";
4
+ const window = createEmptyWindow();
5
+ const nsView = getNativeWindowHandle(window);
6
+ const nsViewPointer = getPointer(nsView);
7
+ const result = getCredential("example.com", Buffer.from("challenge"), nsViewPointer);
8
+ console.log(result);
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/test/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;AACnC,MAAM,MAAM,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAC7C,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;AAEzC,MAAM,MAAM,GAAG,aAAa,CAC1B,aAAa,EACb,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EACxB,aAAa,CACd,CAAC;AACF,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { type NobjcObject } from "objc-js";
2
+ declare function createEmptyWindow(): NobjcObject;
3
+ declare function getNativeWindowHandle(window: NobjcObject): NobjcObject;
4
+ export { createEmptyWindow, getNativeWindowHandle };
5
+ //# sourceMappingURL=window.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"window.d.ts","sourceRoot":"","sources":["../../src/test/window.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAWxE,iBAAS,iBAAiB,IAAI,WAAW,CAmDxC;AAED,iBAAS,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAG/D;AAED,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,CAAC"}
@@ -0,0 +1,58 @@
1
+ import { NobjcLibrary, NobjcProtocol } from "objc-js";
2
+ import { allocInitPlain } from "../objc/helpers.js";
3
+ import { NSStringFromString } from "../objc/foundation/nsstring.js";
4
+ const AppKit = new NobjcLibrary("/System/Library/Frameworks/AppKit.framework/AppKit");
5
+ const Foundation = new NobjcLibrary("/System/Library/Frameworks/Foundation.framework/Foundation");
6
+ function createEmptyWindow() {
7
+ const NSApp = AppKit.NSApplication.sharedApplication();
8
+ const window = allocInitPlain(AppKit.NSWindow);
9
+ const styleMask = (1 << 0) | (1 << 1) | (1 << 2) | (1 << 3); // titled, closable, miniaturizable, resizable
10
+ // Make the app active and show the window.
11
+ window.setStyleMask$(styleMask);
12
+ window.setFrameFromString$(NSStringFromString("{{100, 100}, {800, 600}}"));
13
+ NSApp.setActivationPolicy$(0);
14
+ NSApp.finishLaunching();
15
+ NSApp.activateIgnoringOtherApps$(true);
16
+ window.setIsVisible$(true);
17
+ window.makeKeyWindow();
18
+ window.orderFrontRegardless();
19
+ const delegate = NobjcProtocol.implement("NSWindowDelegate", {
20
+ windowShouldClose$: () => {
21
+ NSApp.terminate$(NSApp);
22
+ return true;
23
+ },
24
+ windowWillClose$: () => {
25
+ NSApp.terminate$(NSApp);
26
+ },
27
+ });
28
+ window.setDelegate$(delegate);
29
+ const shutdown = () => {
30
+ try {
31
+ window.close();
32
+ }
33
+ finally {
34
+ NSApp.stop$(NSApp);
35
+ NSApp.terminate$(NSApp);
36
+ }
37
+ };
38
+ const handleSignal = () => shutdown();
39
+ process.once("exit", shutdown);
40
+ process.once("SIGINT", handleSignal);
41
+ process.once("SIGTERM", handleSignal);
42
+ process.once("SIGQUIT", handleSignal);
43
+ // Pump the AppKit run loop for a short tick to keep JS responsive.
44
+ const runLoop = Foundation.NSRunLoop.currentRunLoop();
45
+ const pump = () => {
46
+ const untilDate = Foundation.NSDate.dateWithTimeIntervalSinceNow$(0.01);
47
+ runLoop.runUntilDate$(untilDate);
48
+ };
49
+ const pumpId = setInterval(pump, 10);
50
+ process.once("exit", () => clearInterval(pumpId));
51
+ return window;
52
+ }
53
+ function getNativeWindowHandle(window) {
54
+ // Electron expects an NSView* on macOS; contentView returns that NSView.
55
+ return window.contentView();
56
+ }
57
+ export { createEmptyWindow, getNativeWindowHandle };
58
+ //# sourceMappingURL=window.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"window.js","sourceRoot":"","sources":["../../src/test/window.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { type NobjcObject } from "objc-js";
2
+ declare function createEmptyWindow(): NobjcObject;
3
+ declare function getNativeWindowHandle(window: NobjcObject): NobjcObject;
4
+ export { createEmptyWindow, getNativeWindowHandle };
5
+ //# sourceMappingURL=window.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"window.d.ts","sourceRoot":"","sources":["../src/window.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAWxE,iBAAS,iBAAiB,IAAI,WAAW,CAmDxC;AAED,iBAAS,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAG/D;AAED,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,CAAC"}
package/dist/window.js CHANGED
@@ -55,3 +55,4 @@ function getNativeWindowHandle(window) {
55
55
  return window.contentView();
56
56
  }
57
57
  export { createEmptyWindow, getNativeWindowHandle };
58
+ //# sourceMappingURL=window.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"window.js","sourceRoot":"","sources":["../src/window.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,20 +1,25 @@
1
1
  {
2
2
  "name": "electron-webauthn",
3
- "version": "0.0.6",
3
+ "version": "0.0.8",
4
4
  "repository": "https://github.com/iamEvanYT/electron-webauthn",
5
5
  "description": "Add support for WebAuthn for Electron.",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
8
+ "types": "dist/index.d.ts",
8
9
  "exports": {
9
10
  ".": {
10
11
  "import": "./dist/index.js",
11
- "require": "./dist/index.js"
12
+ "require": "./dist/index.js",
13
+ "types": "./dist/index.d.ts"
12
14
  }
13
15
  },
14
16
  "files": [
15
17
  "dist/"
16
18
  ],
17
19
  "type": "module",
20
+ "scripts": {
21
+ "test": "bun run src/test/index.ts"
22
+ },
18
23
  "devDependencies": {
19
24
  "@types/bun": "latest"
20
25
  },
@@ -22,6 +27,9 @@
22
27
  "typescript": "^5"
23
28
  },
24
29
  "dependencies": {
25
- "objc-js": "^0.0.8"
26
- }
30
+ "objc-js": "^0.0.11"
31
+ },
32
+ "trustedDependencies": [
33
+ "objc-js"
34
+ ]
27
35
  }