[SELF-654] feat: add native modules (#919)

* feat: add ios native modules

* fix: extractMRZ

* Add android OCR native module

* wire native mrz module with adapter

* wire Native modules and fix tests

* fixes

* fix license header logic

* fix tests

* fix types

* fix: ci test

* fix: android build ci

* fix: ios build CI

* add podfile.lock

* add yarn.lock

* update lock files

* add yarn.lock

* add license

* order methods

* update lock

* pipeline fixes

* prettier

* update lock file

* fix native modules on external apps

* bundle @selfxyz/common into mobile-sdk-alpha

* chore: address yarn lock issues (#1004)

* address yarn lock issues

* fix postinstall

* update lock

* fix build issues

* fix pipeline issue

* fix ci

* fix bad merge

* fix android ci

* fix ci errors

* fix mobile sdk ci. stop gap fix for now until we create a package

* tweaks

* retry aapt2 approach

* use ^0.8.4 instead of ^0.8.0 due to the use of custom errors

* workflow fixes

* fix file

* update

* fix ci

* test ci fix

* fix test

---------

Co-authored-by: Justin Hernandez <transphorm@gmail.com>
Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
This commit is contained in:
Seshanth.S🐺
2025-09-07 08:11:13 +05:30
committed by GitHub
parent 145cc89487
commit ec93ad564a
96 changed files with 8577 additions and 2502 deletions

View File

@@ -42,9 +42,7 @@ If you want to integrate SelfVerificationRoot.sol into your contract, you should
```solidity
import { SelfVerificationRoot } from "@selfxyz/contracts/contracts/abstract/SelfVerificationRoot.sol";
import {
IVcAndDiscloseCircuitVerifier
} from "@selfxyz/contracts/contracts/interfaces/IVcAndDiscloseCircuitVerifier.sol";
import { IVcAndDiscloseCircuitVerifier } from "@selfxyz/contracts/contracts/interfaces/IVcAndDiscloseCircuitVerifier.sol";
import { IIdentityVerificationHubV1 } from "@selfxyz/contracts/contracts/interfaces/IIdentityVerificationHubV1.sol";

View File

@@ -113,8 +113,7 @@ library CircuitAttributeHandler {
*/
function getOlderThan(bytes memory charcodes) internal pure returns (uint256) {
return
Formatter.numAsciiToUint(uint8(charcodes[OLDER_THAN_START])) *
10 +
Formatter.numAsciiToUint(uint8(charcodes[OLDER_THAN_START])) * 10 +
Formatter.numAsciiToUint(uint8(charcodes[OLDER_THAN_START + 1]));
}

View File

@@ -185,8 +185,7 @@ library CircuitAttributeHandlerV2 {
function getOlderThan(bytes32 attestationId, bytes memory charcodes) internal pure returns (uint256) {
FieldPositions memory positions = getFieldPositions(attestationId);
return
Formatter.numAsciiToUint(uint8(charcodes[positions.olderThanStart])) *
10 +
Formatter.numAsciiToUint(uint8(charcodes[positions.olderThanStart])) * 10 +
Formatter.numAsciiToUint(uint8(charcodes[positions.olderThanStart + 1]));
}

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
pragma solidity ^0.8.4;
import {CircuitAttributeHandlerV2} from "./CircuitAttributeHandlerV2.sol";
import {AttestationId} from "../constants/AttestationId.sol";
import {SelfStructs} from "./SelfStructs.sol";

View File

@@ -114,8 +114,7 @@ library IdCardAttributeHandler {
*/
function getOlderThan(bytes memory charcodes) internal pure returns (uint256) {
return
Formatter.numAsciiToUint(uint8(charcodes[OLDER_THAN_START])) *
10 +
Formatter.numAsciiToUint(uint8(charcodes[OLDER_THAN_START])) * 10 +
Formatter.numAsciiToUint(uint8(charcodes[OLDER_THAN_START + 1]));
}