619 Commits

Author SHA1 Message Date
Justin Hernandez
422ba91d87 chore: fix ios e2e workflow; upgrade to Xcode 16.4 (#915)
* chore: streamline ios e2e workflow

* fix version

* fix

* fixes

* fix path

* fix path issue

* revert back to dev. test locally first

* fix missing dep

* update lock

* fix version

* fix ndk

* fix scheme

* fixes

* fix e2e

* fixes

* fix pipeline

* fix and unify xcode version

* update workflow

* fix pipeline

* implement pipeline fix

* fix ios version

* remove || true
2025-08-19 08:10:06 -07:00
Justin Hernandez
691e8b1517 chore: unify lightweight deps and workflow node version (#906)
* chore: unify lightweight deps and workflow node version

* gigamind flow updates

* standardize workflows

* fix workflow

* improvements

* Gigamind tweaks (#911)

* save gigamind updates

* keep manual review on for now

* pr feedback

* fix pipeline

* make runner more dynamic

* fix regex

* fixes

* update simulator

* fixes

* fixes

* fix regex

* try again

* test

* revert back to dev settings

* mobile fixes

* fixes

* fix runtime

* just use latest

* pr feedback

* remove template

* Update .github/workflows/mobile-e2e.yml

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-08-17 21:00:36 -07:00
Justin Hernandez
76f4980ef6 chore: add script to check import / export type sorting (#900)
* Enforce separate type imports

* chore: enforce separate type exports

* refactor: flatten sdk index exports

* updates

* fix improperly sorted types

* fixes and prettier

* prettier
2025-08-15 10:11:44 -07:00
Justin Hernandez
d33e329164 chore: standardize test tooling and type defs (#904)
* chore: standardize test tooling and type defs

* fix bad merge

* move to dev dependencies

* fix version
2025-08-14 19:54:18 -07:00
Justin Hernandez
6b285c9bf3 chore: address TypeScript ESLint v8 upgrade feedback and improve type safety (#895)
* cr feedback

* update based on feedback

* typing updates

* unify yarn package version

* update lock
2025-08-14 09:19:34 -07:00
Justin Hernandez
07addb2a9a chore: add TypeScript tooling (#891)
* chore: add TypeScript tooling

* chore: remove unused tsconfig and migration script

* update settings

* add knip config

* format

* more reliable circuits tests

* fix workflow

* fix types

* updates

* ts updates

* more updates

* fix upgrade

* fixes
2025-08-13 21:02:07 -07:00
Justin Hernandez
2ed8bcfe53 feat: modernize sdk/qrcode build pipeline (#872)
* Modernize qrcode build

* chore(qrcode): add lint helpers

* fix sdk qrcode

* add new qrcode ci

* fix formatting

* qrcode fixes

* fixes

* fixes rd2

* enable corepack

* enable corepack

* build caching

* update caching

* cr feedback
2025-08-10 21:22:02 -07:00
Seshanth.S🐺
2de3634396 update mock dsc generator url (#857) 2025-08-08 10:23:22 -07:00
GarmashAlex
5c6e2d619b fix: simplify getCountryCode function return type (#854) 2025-08-08 06:31:20 -07:00
Justin Hernandez
343515c35f chore: add Node version file (#853) 2025-08-07 17:48:25 -07:00
Justin Hernandez
5305ef83fc Feat: Improved import export sorting for app and common (#833)
* save import sorting work

* remove dupe headers and fix type errors

* sort imports and exports

* fix errors from export sorting

* fix tests

* codex feedback

* fix exports

* fix exports and tweak test build

* fix export and format

* fix license headers

* fix app building and clean up test errors

* fix android local e2e test

* improve caching

* final fixes

* remove invalid option

* fix sorting and get random values loading

* fix import sorting
2025-08-06 15:18:42 -07:00
Justin Hernandez
82d26669bc Enable tree-shakeable exports (#823)
* Add tree-shakeable exports

* Migrate imports for tree-shakeable paths

* Document ESM extension requirement

* udpates

* install new lock

* yarn nice

* build deps

* save working index export no wildcard approach

* save wip

* fix building

* add tree shaking doc and examples

* sort package json files

* update package.json

* fix analyzing web

* make sure that web is built

* wip tree shaking

* building works again. save wip logic

* use granular imports

* wip test

* save wip

* Remove hardcoded .d.ts files and setup automatic TypeScript declaration generation

- Remove redundant constants.d.ts, types.d.ts, utils.d.ts files
- Add build:types script to automatically generate TypeScript declarations
- Update tsup config to disable DTS generation (handled separately)
- Update .gitignore to prevent future commits of generated .d.ts files
- Fixes import resolution errors in app by ensuring declarations are always generated

* Add .gitignore rules for generated TypeScript declarations

* ignore dts files

* Remove redundant index.js re-export files

- Remove constants.js, types.js, utils.js as they're redundant with tsup build
- These were just re-exports pointing to dist files that tsup generates
- package.json exports already point directly to built files
- Update .gitignore to prevent future commits of these generated files
- tsup handles all the building, no manual re-export files needed

* save current wip fixes

* add tsup config for web building

* common prettier and fix imports

* prettier

* fix tests

* implement level 3 tree shaking

* improve splitting

* optimize vite web building and prettier

* remove comments

* sort export params

* feedback and fix pipelines

* fix circuit-names path

* fix test

* fix building

* sort

* fix building

* allow cursor to edit scripts

* fix loadDocumentCatalog undefined

* fix build settings

* fix build settings

* additional metro tree shaking

* improved discovery script for xcode building

* pr feedback and fix camelCasing

* simplify shim setup

* fix xcode building and add command to test building

* remove comment

* simplify
2025-08-02 16:55:05 -07:00
turnoffthiscomputer
0d853a2422 App/deeplink callback (#789)
* add deepllinkCallback support

* bump package version

* yarn nice

* fix background countdown

* cast the URL to prevent malicious code introduction
2025-07-28 10:20:57 +02:00
Kevin Lin
2043c3819a fix: Add localhost validation to prevent invalid endpoint usage in QR Code SDK (#794) 2025-07-27 23:43:47 -04:00
Seshanth.S🐺
4941b2ba58 SEL-544: Generate Mock DSC on mock-passport flow (#772)
* feat: Generate mock DSC on mock-passport flow

* Remove console log

* yarn format

* revert to mock dsc generation
2025-07-25 11:09:05 -07:00
turnoffthiscomputer
874b426ebe Feat/retrieve OFAC trees from api (#769)
* retrieve the ofac trees from the api

* remove the ofac trees from the common repo

* fix ofac test

* yarn nice

* yarn nice

* yarn nice

* refactor ofac fetching
2025-07-21 11:07:04 +02:00
Justin Hernandez
9efe13386b add bulk sort command (#723) 2025-07-01 18:32:56 -07:00
Nesopie
ab45674ef8 chore: update relayer verifier enum to include the register circuits (#699) 2025-06-29 13:26:09 +02:00
turnoffthiscomputer
dd02d04a09 Contracts/deploy staging (#668)
* update scripts

* deploy vc and disclose id

* fix the deployment scripts on staging

* update yarn.lock
2025-06-24 00:29:12 +02:00
Nesopie
72a7f8177d Fix/sdk (#652)
* fix: sdk build configs

* chore: SelfBackendVerifier (WIP)

* feat: add custom verification

* feat: consider destination chain in user defined data

* chore: export attestation id

* chore: export attestation id

* chore: export config storage

* chore: don't throw an error if the proof is not valid

* chore: trim abi and rm typechain types

* refactor

* chore: rm unnecessary exports

* 📝 Add docstrings to `fix/sdk` (#653)

Docstrings generation was requested by @remicolin.

* https://github.com/selfxyz/self/pull/652#issuecomment-2992046545

The following files were modified:

* `sdk/core/src/utils/hash.ts`
* `sdk/core/src/utils/proof.ts`
* `sdk/core/src/utils/utils.ts`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* review fixes

* chore: fix package.json cjs types

* chore: add minor changes to checks

* feat: add InMemoryConfigStore, allIds constant and verificationResult type

* chore: export Verification config

* feat: change the verification config types

* fix: throw issues early if verification config is null

* fix: update yarn.lock file

* chore: lint

* fix: rm ts expect error directive

* fix: contract tests

* use excluded countries instead forbidden countries list

* chore: change types in constnats

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-06-23 14:25:36 +02:00
turnoffthiscomputer
0468719f9f App/eu id updates (#638)
* fix build issues

* generate disclosure proof with euids

* generate disclosure proof with euids

* Eu id updates 2 (#648)

* update vc_and_disclose_id test (dev branch) (#641)

* fix: vc_and_disclose_id test

* chore: yarn prettier

* Show modal on NFC scan error (#642)

* Add help button and error modal actions

* fix the screen management

* yarn nice

* Bump build v2.5.4: ios 132; android 71 (#631)

* bump version and build numbers

* remove tamagui/toast

* fix marketing version

* fix: update TD1 and TD3 checks (#643)

* bum yarn.lock

* add version and user defined data

---------

Co-authored-by: Vishalkulkarni45 <109329073+Vishalkulkarni45@users.noreply.github.com>
Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
Co-authored-by: Seshanth.S🐺 <35675963+seshanthS@users.noreply.github.com>

* remove the mock user define data

* get the useridentifier as a hash from the user defined data

* chore: add version and userDefinedData

* feat: use the version in register / dsc proofs as well

* update calculateUserIdentifierHash

* yarn nice

* refactor: consolidate user context data handling and update payload structure

* fix typing issues on sha1

* remove console.log(sha1)

* fix sha1 import

* refactor: streamline userDefinedData handling and adjust payload type for circuit

* refactor: update sha1 usage and enhance logging in calculateUserIdentifierHash

* yarn nice

* yarn lint common

* use ts-ignore for sha1 import

* fix app ci tests

* fix typing issue

* remove unused ts-ignore

* cast uuid before calling generateinputs

* bump qrcode version

* add tsup on the qrcode sdk

* fix: exports on selfxyz/qrcode

* update how we define config.version

* fix yarn imports

* yarn format

---------

Co-authored-by: Vishalkulkarni45 <109329073+Vishalkulkarni45@users.noreply.github.com>
Co-authored-by: Justin Hernandez <justin.hernandez@self.xyz>
Co-authored-by: Seshanth.S🐺 <35675963+seshanthS@users.noreply.github.com>
Co-authored-by: Ayman <aymanshaik1015@gmail.com>
2025-06-23 13:01:23 +02:00
turnoffthiscomputer
f00b21d455 add build smt function to common sdk 2025-06-17 15:29:16 +02:00
turnoffthiscomputer
cfed790593 update common package version 2025-06-17 11:40:59 +02:00
turnoffthiscomputer
40edfd7e44 replace yarn publish by npm publish 2025-06-16 23:21:21 +02:00
turnoffthiscomputer
2d53b89ff2 bump common sdk version 2025-06-16 23:14:21 +02:00
turnoffthiscomputer
f3f7028c86 bump sdk version (#633) 2025-06-16 23:01:37 +02:00
Nesopie
f4f5903b40 fix: circuit tests and tsconfigs (#621)
* fix: circuit tests and tsconfigs

* fix-ci: downgrade typescript version

* fix: yarn.lock

* fix: linting in common
2025-06-13 14:16:23 +02:00
turnoffthiscomputer
7a85d8734c clean passport.ts (#604) 2025-06-12 11:45:26 -07:00
turnoffthiscomputer
7a8678b72d add euid support in app (#559)
* add euid support in app

* yarn nice

* add euid support to proving machine

* update provingMachine and add id endpoints

* fix circuitsDNSmapping

* fix proving

* fix validateDocument

* add todo comment

* add the skip PCR0 option

* set multiple passportData types

* allow storing different id documents

* fix wording

* use goback on the passportOboardingScreen

* update tamagui version

* update yarn.lock

* remove logs in mockdata screen

* remove SKIP_PRC0_CHECK const

* refactor passport data keychain storage

* update project.pbxproj

* yarn nice

* yarn nice

* fix imports

* yarn nice

* add ManageDocuments screen to tests

* update name of the ManageDocument screen in the settings

* run linter in common repo

* clean mrz before doing the length check on android
2025-06-11 13:19:49 -07:00
turnoffthiscomputer
15e2f88265 add euid support ot format mrz function (#607) 2025-06-11 13:08:49 +02:00
Justin Hernandez
6d27b365c7 Bump build to test PACE polling (ios 127; android 66) (#591)
* bump builds

* update env.sample with new env vars, and add _NFC to mixpanel nfc var

* remove NDEF so we can keep target sdk version at 15

* add sort package json command

* sort all project package.json files

* enable hermes

* disable hermes

* revert disabling

* remove hermes
2025-06-06 07:29:26 -07:00
turnoffthiscomputer
828e5b5188 rename for selfxyz 2025-06-05 17:06:40 +02:00
turnoffthiscomputer
cb3cc8d82e rename for selfxyz 2025-06-05 17:06:29 +02:00
turnoffthiscomputer
e15b3e8c3a bump common package version 2025-06-05 17:00:21 +02:00
turnoffthiscomputer
bedaceda2e fix the ski value of 8bytes 2025-06-05 16:46:13 +02:00
Aaron DeRuvo
0e9c59c0fb SEL-56: Setup Yarn Workspaces (#584) 2025-06-04 11:37:32 +02:00
nicoshark
668732a57b Chore/refactor contracts (#582)
* add eu id support

* add ofac and disclosure euid support

* add contract support for euid cards

* update contracts

* add comment out to remember the interface what we need to implement

* prettier

* get combine verifyVcAndDisclose function and get bytes data

* unified library and clean constant V2

* fix verifyVcAndDisclose interface

* add prettier and run prettier except .sol files

* prettier

* circuit compilation for local environment

* add register id circuit in the contracts dir

* clean up ignition deploy scritps

* refactor deploy scripts

* prettier

* update serialized dsc tree

* fix ofac check

* fix passport attestation id

---------

Co-authored-by: turnoffthiscomputer <colin.remi07@gmail.com>
2025-06-03 14:58:41 +09:00
turnoffthiscomputer
5cec8a0f9f update serialized dsc tree 2025-06-02 12:16:06 +02:00
turnoffthiscomputer
5d01e29bf4 add eu id support (#527)
* add eu id support

* add ofac and disclosure euid support

* add contract support for euid cards

---------

Co-authored-by: motemotech <i.am.nicoshark@gmail.com>
2025-05-30 18:24:11 +02:00
turnoffthiscomputer
8351609046 fix the ski prefix issue (#581) 2025-05-30 18:23:32 +02:00
turnoffthiscomputer
4dc2acdc71 fix getCircuitName function (#575)
* fix getCircuitName function

* fix getCircuitName function
2025-05-27 13:40:48 +02:00
nicoshark
3db25aa469 Push notification (#536)
* add push notification feature

* merge new app impl

* change dsc key

* import

* reverse mock dsc

* worked in the ios

* checked in android

* update url and delete console

* delete small changes

* lint

* add yarn.lock

* fix warning message

* add mock notification service for test code

* fix path for the mock implementation

* add mock deeplink to the test code

* nice notificationServiceMock.js

* delete unused firebase related implementation

* fix wording and UI related to notification service

* hotfix on mockdatascreen

---------

Co-authored-by: turnoffthiscomputer <colin.remi07@gmail.com>
2025-05-15 23:46:21 +02:00
turnoffthiscomputer
73f3814170 Eth dublin (#554)
* add mock id card generator

* add genMockIdDoc in common/sdk exports

* onboard developer id using deeplink, allow custom birthdate on mockpassport
2025-05-13 23:58:56 +02:00
turnoffthiscomputer
cc169061bd add common sdk (#537)
* add common sdk

* remove sdk backend api

* remove registry

* regenerate sha256 rsa dsc each time

* download ski-pem dynamically on staging, refactor initpassportDataParsing

* add state machine for button on prove screen, improve ux on splash screen

* fetch ski-pem in production

* fix linter issues

* fix prove screen button bugs

* update podfile.lock and yarn.lock

* run linter in circuits repo

* bump build

* bump version for sentry debugging

* bump ios to version 118

---------

Co-authored-by: Justin Hernandez <transphorm@gmail.com>
2025-05-07 11:45:21 +02:00
turnoffthiscomputer
0bf324e639 Feat/extend id support (#517)
* refactor proving impleting xstate, speedup proving

* add disclosure proof support

* keep refactoring provingMachine, clean old implementation

* call init method when switching from dsc to register

* rebase with dev to display why the proof verification failed

* refactor ws connexion between front-end and mobile to retrieve self-app

* update the webclient at proofVerification and use selfAppStore in provingMachine

* fix provintStore.init in ProveScreen

* yarn nice

* fetch data correctly in splash screen
2025-04-24 05:55:47 -07:00
crStiv
28ec407e49 fix: improve error handling for forbidden countries list mismatch (#494)
* Update SelfBackendVerifier.ts

* Update constants.ts

* Update formatInputs.ts

* Update formatCallData.ts
2025-04-18 22:18:06 +09:00
Justin Hernandez
35221386da [SEL-154] Step 1: Scan your passport (#511)
* simplify navigation logic

* use aesop design hook

* save wip

* add new aesop redesign screens

* save wip design

* refactor nav bar logic

* fix paths

* save wip

* stub progress navbar and save wip

* save wip progress bar animation

* save wip progress bar, almost done with design

* fix progress bar design

* fix bottom padding

* disable git commit for now

* fix flaky android downloads that causes pipeline to crash

* update lock for ci
2025-04-18 14:35:52 +02:00
turnoffthiscomputer
5904234d2e Feat/simpler contract sdk (#519)
* make contract sdk simpler

* reduce root inputs

* delete convert function

* summarize our library

* update npm package

* update package version

* update attestation id

* add util function to get revealed data

---------

Co-authored-by: motemotech <i.am.nicoshark@gmail.com>
2025-04-17 16:06:49 +02:00
turboblitz
dc5529b507 Fix input generation for 521bit curves (#481)
* fix EC point padding for 521 bit curves

* rename modulus to point in findStartIndexEC as it is a point

* simplify matching logic

* simplify padding logic

* remove comment

* remove log

removing .only so the CI/CD runs circuit tests

fix disclosure test

fix scope in test

fix scope error in circuit tests

remove .only

fix test

* run ci/cd
2025-04-17 09:59:13 +02:00
nicoshark
624d0e568d Feat/forbidden countries utils (#504)
* add forbidden countries util function

* remove casting
2025-04-04 18:58:30 +05:30