Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/clear-trains-move.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@exactly/mobile": patch
---

💄 adjust tamagui tokens
5 changes: 5 additions & 0 deletions .changeset/curly-waves-yell.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@exactly/mobile": patch
---

💄 restyle card status component
Comment thread
dieguezguille marked this conversation as resolved.
5 changes: 5 additions & 0 deletions .changeset/easy-snails-brake.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@exactly/mobile": patch
---

💄 restyle action buttons
5 changes: 5 additions & 0 deletions .changeset/frank-schools-clap.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@exactly/mobile": patch
---

💄 restructure sheets layout
5 changes: 5 additions & 0 deletions .changeset/giant-parrots-enter.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@exactly/mobile": patch
---

💄 adjust home scroll view gaps
5 changes: 5 additions & 0 deletions .changeset/khaki-queens-smash.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@exactly/mobile": patch
---

💄 apply tamagui spacing tokens
5 changes: 5 additions & 0 deletions .changeset/lazy-planes-dance.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@exactly/mobile": patch
---

💄 refine benefits carousel
5 changes: 5 additions & 0 deletions .changeset/little-hoops-train.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@exactly/mobile": patch
---

💄 replace fonts
5 changes: 5 additions & 0 deletions .changeset/salty-fans-mate.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@exactly/mobile": patch
---

💄 add vertical frame to styled button
5 changes: 5 additions & 0 deletions .changeset/soft-beans-grow.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@exactly/mobile": patch
---

💫 unify animation parameters
5 changes: 5 additions & 0 deletions .changeset/spicy-doodles-give.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@exactly/mobile": patch
---

💄 restyle portfolio summary
2 changes: 2 additions & 0 deletions .maestro/flows/local.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,5 +24,7 @@ tags: [critical]
file: ../subflows/mint.yaml
env: { asset: ETH, to: "${output.account}", amount: "0.1" }
- runFlow: ../subflows/verifyIdentity.yaml
- runFlow: ../subflows/assertBenefits.yaml
- runFlow: ../subflows/activateCard.yaml
- runFlow: ../subflows/assertHome.yaml
- runFlow: ../subflows/storeCoverage.yaml
41 changes: 32 additions & 9 deletions .maestro/subflows/activateCard.yaml
Original file line number Diff line number Diff line change
@@ -1,16 +1,13 @@
appId: ${APP_ID ?? "app.exactly"}
---
- tapOn: Card
- runFlow:
when: { true: "${maestro.platform != 'web'}" }
commands:
- tapOn: \$[\s\d,.\xa0]+, AVAILABLE BALANCE
- runFlow:
when: { platform: web }
commands: [{ tapOn: Available balance }]
- tapOn: Card details
- waitForAnimationToEnd
- runFlow:
when: { visible: Accept and enable card }
commands: [{ tapOn: Accept and enable card }]
commands:
- runFlow: { file: scrollTo.yaml, env: { element: Accept and enable card } }
- tapOn: Accept and enable card
- assertVisible: Manually add your card to Apple Pay & Google Pay to make contactless payments.
- tapOn: Close
- tapOn: Freeze card
Expand Down Expand Up @@ -42,4 +39,30 @@ appId: ${APP_ID ?? "app.exactly"}
text: \$[\s\d,.\xa0]+
above: Available balance
- tapOn: Home
- assertVisible: SPENDING LIMIT
- runFlow: { file: scrollTo.yaml, env: { element: Exa Card pay mode } }
- tapOn:
text: Learn more
rightOf: Exa Card pay mode
- assertVisible: Change the pay mode before each purchase and pay how you want.
- tapOn: Close
- runFlow: { file: scrollTo.yaml, env: { element: Spending limit } }
- tapOn: Later in 1
Comment thread
dieguezguille marked this conversation as resolved.
- runFlow:
when: { visible: How installment repayment works }
commands:
- tapOn: Close
- runFlow:
when: { visible: Tap here to change the number of installments }
commands:
- tapOn: Tap here to change the number of installments
- runFlow: { file: ../subflows/tapAria.yaml, env: { aria: Close } }
- runFlow: { file: scrollTo.yaml, env: { element: Credit limit } }
Comment thread
dieguezguille marked this conversation as resolved.
- runFlow: { file: ../subflows/tapAria.yaml, env: { aria: Credit limit info } }
- assertVisible: It's based on the value of your collateral assets and updates as their value changes.
- tapOn: Close
- tapOn: Now
- runFlow: { file: scrollTo.yaml, env: { element: Spending limit } }
- runFlow: { file: ../subflows/tapAria.yaml, env: { aria: Spending limit info } }
- assertVisible: It's based on the USDC available in your balance.
- tapOn: Close
- tapOn: Home
33 changes: 33 additions & 0 deletions .maestro/subflows/assertBenefits.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
appId: ${APP_ID ?? "app.exactly"}
---
- repeat:
while:
notVisible: Copy your ID and get 30 days of travel insurance for free on Pax Assistance.
commands:
- extendedWaitUntil:
visible: 30 days of free travel insurance
timeout: 15000
- tapOn: Get now
- assertVisible: "Copy Pax ID [a-z0-9]{10}"
- assertVisible: Get benefit
- runFlow: { file: tapAria.yaml, env: { aria: Close } }
- repeat:
while:
notVisible: Stay connected around the world.
commands:
- extendedWaitUntil:
visible: 20% OFF on eSims
timeout: 15000
- tapOn: 20% OFF on eSims
- assertVisible: Get benefit
- runFlow: { file: tapAria.yaml, env: { aria: Close } }
- repeat:
while:
notVisible: Visa Signature Exa Card benefits
commands:
- extendedWaitUntil:
visible: Visa Signature benefits
timeout: 15000
Comment thread
dieguezguille marked this conversation as resolved.
- tapOn: Learn more
- assertVisible: Go to Visa
- runFlow: { file: tapAria.yaml, env: { aria: Close } }
51 changes: 51 additions & 0 deletions .maestro/subflows/assertHome.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
appId: ${APP_ID ?? "app.exactly"}
---
- tapOn: Home
- assertVisible: ${output.account.slice(0, 6)}…${output.account.slice(-4)}
- runFlow:
when: { true: "${maestro.platform != 'web'}" }
commands: [{ assertVisible: Settings }]
- runFlow:
when: { platform: web }
commands: [{ assertVisible: { id: Settings } }]
- runFlow: { file: tapAria.yaml, env: { aria: Hide sensitive } }
- runFlow:
when: { true: "${maestro.platform != 'web'}" }
commands:
- assertNotVisible:
text: \$[\s\d,.\xa0]+
below: Portfolio
- runFlow:
when: { platform: web }
commands:
- assertNotVisible:
id: \$[\s\d,.\xa0]+
- runFlow: { file: tapAria.yaml, env: { aria: Show sensitive } }
- runFlow:
when: { true: "${maestro.platform != 'web'}" }
commands:
- assertVisible:
text: \$[\s\d,.\xa0]+
below: Portfolio
- runFlow:
when: { platform: web }
commands:
- assertVisible:
id: \$[\s\d,.\xa0]+
- runFlow: readPortfolio.yaml
- assertTrue: ${output.portfolio > 0}
- tapOn: Manage portfolio
- assertVisible: Your Portfolio
- runFlow: { file: tapAria.yaml, env: { aria: Back } }
- assertVisible: Add funds
- assertVisible: Send
- assertVisible: Swap
- assertNotVisible: Getting Started
- runFlow: { file: scrollTo.yaml, env: { element: Upcoming payments } }
- runFlow: { file: scrollTo.yaml, env: { element: Latest activity } }
- assertNotVisible: No activity yet
- tapOn: View all
- tapOn: Home
- tapOn: Home
- waitForAnimationToEnd
- assertVisible: Portfolio
4 changes: 2 additions & 2 deletions .maestro/subflows/borrow.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ appId: ${APP_ID ?? "app.exactly"}
- tapOn: DeFi
- runFlow:
when: { visible: Explore decentralized services }
commands: [{ tapOn: "Explore decentralized services" }]
commands: [{ tapOn: 'Explore decentralized services' }]
- tapOn: USDC funding
- runFlow:
when: { visible: Connect wallet to Exactly Protocol }
Expand All @@ -32,7 +32,7 @@ appId: ${APP_ID ?? "app.exactly"}
- runScript: ../dist/getAccount.js
- runScript:
file: ../dist/hookProposals.js
env: { account: "${output.account}" }
env: { account: '${output.account}' }
- tapOn: Close
- tapOn: Home
- runFlow:
Expand Down
12 changes: 12 additions & 0 deletions .maestro/subflows/copyAria.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
appId: ${APP_ID ?? "app.exactly"}
---
# HACK https://github.com/mobile-dev-inc/Maestro/issues/2914
- runFlow:
when: { true: "${maestro.platform != 'web'}" }
commands:
- copyTextFrom: "${aria}"
- runFlow:
when: { platform: web }
commands:
- copyTextFrom:
id: "${aria}"
2 changes: 1 addition & 1 deletion .maestro/subflows/dismissNotifications.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@ appId: ${APP_ID ?? "app.exactly"}
- tapOn: Not now
- pressKey: home
- launchApp: { permissions: { all: deny, camera: allow } }
- extendedWaitUntil: { visible: Your portfolio, timeout: 180000 }
- extendedWaitUntil: { visible: Portfolio, timeout: 180000 }
Comment thread
dieguezguille marked this conversation as resolved.
- assertNotVisible: Stay updated
6 changes: 3 additions & 3 deletions .maestro/subflows/readPortfolio.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
appId: ${APP_ID ?? "app.exactly"}
---
- copyTextFrom:
below: Your portfolio
text: ^(US)?\$[\s\d,.\xa0]+$
- runFlow:
file: copyAria.yaml
env: { aria: "^(US)?\\$[\\s\\d,.\\xa0]+$" }
Comment thread
dieguezguille marked this conversation as resolved.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Scope portfolio copy selector to the portfolio value

This selector now captures any dollar-formatted string on the screen, but the revamped home view shows multiple $... values (portfolio total, card limits, payment amounts). output.portfolio is then used as the baseline for borrow/send/mint delta assertions, so copying the wrong amount will produce incorrect comparisons and flaky flow failures. Reintroduce a locator that uniquely anchors the portfolio total.

Useful? React with 👍 / 👎.

- evalScript: ${output.portfolio = Number(maestro.copiedText.replace(/\D/g, "")) / 100}
4 changes: 2 additions & 2 deletions .maestro/subflows/repay.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
appId: ${APP_ID ?? "app.exactly"}
---
- waitForAnimationToEnd
- scrollUntilVisible: { element: Upcoming payments }
- runFlow: { file: scrollTo.yaml, env: { element: Repay } }
- copyTextFrom:
text: \d+[,.]\d{2}
below: Upcoming payments
Expand Down Expand Up @@ -43,7 +43,7 @@ appId: ${APP_ID ?? "app.exactly"}
file: ../subflows/tapWhileAria.yaml
env: { aria: Pending proposals, tap: Home }
- waitForAnimationToEnd
- scrollUntilVisible: { element: Upcoming payments }
- runFlow: { file: scrollTo.yaml, env: { element: Repay } }
- runFlow:
when: { true: "${!amount}" }
commands: [{ assertNotVisible: "${output.maturity}" }]
Expand Down
4 changes: 2 additions & 2 deletions .maestro/subflows/rollover.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
appId: ${APP_ID ?? "app.exactly"}
---
- waitForAnimationToEnd
- scrollUntilVisible: { element: Upcoming payments }
- runFlow: { file: scrollTo.yaml, env: { element: Repay, offset: 1 } }
- copyTextFrom:
text: \d+[,.]\d{2}
below: Upcoming payments
Expand All @@ -28,7 +28,7 @@ appId: ${APP_ID ?? "app.exactly"}
file: ../subflows/tapWhileAria.yaml
env: { aria: Pending proposals, tap: Home }
- waitForAnimationToEnd
- scrollUntilVisible: { element: Upcoming payments }
- runFlow: { file: scrollTo.yaml, env: { element: Repay } }
- copyTextFrom:
text: \d+[,.]\d{2}
below: Upcoming payments
Expand Down
44 changes: 44 additions & 0 deletions .maestro/subflows/scrollTo.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
appId: ${APP_ID ?? "app.exactly"}
---
# HACK https://github.com/mobile-dev-inc/maestro/issues/1775
# maestro web uses window.scroll() which doesn't reach inner scroll containers
- runFlow:
when: { true: "${maestro.platform != 'web'}" }
commands:
- scrollUntilVisible: { element: "${element}", centerElement: true }
- runFlow:
when: { platform: web }
commands:
- evalScript: ${output.scrollDeadline = Date.now() + 30_000}
- evalScript: ${output.found = false}
- repeat:
while:
true: "${!output.found}"
commands:
- runFlow:
when: { visible: "${element}" }
commands: [{ evalScript: "${output.found = true}" }]
- runFlow:
when: { visible: { id: "${element}" } }
commands: [{ evalScript: "${output.found = true}" }]
- runFlow:
when: { true: "${!output.found}" }
commands:
- runFlow:
when: { true: "${Date.now() >= output.scrollDeadline}" }
commands: [{ evalScript: "${throw new Error('scroll timeout')}" }]
- swipe:
start: "50%,40%"
end: "50%,10%"
- runFlow:
when: { true: "${typeof offset !== 'undefined' && Number(offset) > 0}" }
commands:
- evalScript: ${output.scrollExtra = 0}
- repeat:
while:
true: "${output.scrollExtra < Number(offset)}"
commands:
- swipe:
start: "50%,70%"
end: "50%,50%"
- evalScript: ${output.scrollExtra = output.scrollExtra + 1}
6 changes: 3 additions & 3 deletions app.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -80,9 +80,9 @@ export default {
"expo-font",
{
fonts: [
"src/assets/fonts/BDOGrotesk-DemiBold.otf",
"src/assets/fonts/BDOGrotesk-Regular.otf",
"src/assets/fonts/IBMPlexMono-Medm.otf",
"src/assets/fonts/SplineSansMono-Medium.otf",
"src/assets/fonts/SplineSans-Regular.otf",
"src/assets/fonts/SplineSans-SemiBold.otf",
],
} satisfies FontProps,
],
Expand Down
4 changes: 1 addition & 3 deletions cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,6 @@
"decisioned",
"defi",
"delegatecall",
"demi",
"deployless",
"dieguezguille",
"dismissable",
Expand All @@ -73,12 +72,10 @@
"gitmoji",
"gitmojis",
"graaljs",
"grotesk",
"hdpi",
"hexlify",
"hideable",
"hono",
"IBMPlexMono-Medm",
"IERC",
"indoc",
"infinitism",
Expand Down Expand Up @@ -151,6 +148,7 @@
"solmate",
"sourcify",
"spkg",
"splinesans",
"spotlightjs",
"staticcall",
"streamingfast",
Expand Down
Loading
Loading