Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: multichain indexer ( part 1 ) #293

Merged
merged 12 commits into from
Aug 4, 2024
Merged

Conversation

gaboesquivel
Copy link
Member

@gaboesquivel gaboesquivel commented Jul 28, 2024

Summary by Sourcery

This pull request introduces a multichain indexer, refactors the directory structure to categorize contracts by type and chain, and adds chain information to EVM token contract data. It also removes outdated contract files and consolidates them into a more organized structure.

  • New Features:
    • Introduced a multichain indexer for both development and production environments, organizing contracts by token type and chain.
  • Enhancements:
    • Refactored the directory structure to categorize contracts into 'auction' and 'tokens' subdirectories.
    • Added chain information to EVM token contract data for better clarity and organization.
  • Chores:
    • Removed outdated contract files and consolidated them into new organized structures.

Summary by CodeRabbit

  • New Features

    • Added a chain property to several contract data objects, providing clearer context regarding the blockchain network associated with each contract.
    • Introduced an appContracts object for organized access to application contracts.
    • New TestnetBLPL token configuration added for the Bitlauncher Prelaunch Token on the EOS EVM testnet.
    • Added a new API key environment variable for integration with Alchemy.
  • Bug Fixes

    • Updated import paths for various modules to ensure correct resolution.
  • Refactor

    • Restructured the organization of contract exports into categorized groups for better clarity and modularity.
    • Simplified client management for blockchain interactions.
  • Types

    • Updated data structures to include a chain property in interfaces, supporting multi-chain functionalities.

Copy link

vercel bot commented Jul 28, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
bitlauncher ✅ Ready (Inspect) Visit Preview 💬 Add feedback Aug 4, 2024 7:22pm
smartsale-faucet ✅ Ready (Inspect) Visit Preview 💬 Add feedback Aug 4, 2024 7:22pm

Copy link
Contributor

sourcery-ai bot commented Jul 28, 2024

Reviewer's Guide by Sourcery

This pull request implements a multichain indexer by reorganizing the contract exports into 'auction' and 'tokens' directories, adding 'chain' properties to contract data, and consolidating contract objects for both development and production environments. It also includes the addition of new USDC contract definitions for multiple chains and the removal of outdated contract files.

File-Level Changes

Files Changes
packages/app-contracts/src/dev/index.ts
packages/app-contracts/src/prod/index.ts
packages/app-contracts/src/index.ts
Reorganized exports and added consolidated contract objects for dev and prod environments.
packages/app-contracts/src/dev/auction/testnet-allow-list.ts
packages/app-contracts/src/dev/auction/testnet-deposit-order.ts
packages/app-contracts/src/dev/auction/testnet-easy-auction.ts
Updated import paths and added 'chain' property to auction contract data.
packages/app-contracts/src/dev/tokens/eos-fake-bitusd.ts
packages/app-contracts/src/dev/tokens/eos-fake-usdt.ts
packages/app-contracts/src/dev/tokens/sepolia-usdt.ts
packages/app-contracts/src/dev/tokens/testnet-mbots-prelaunch.ts
packages/app-contracts/src/dev/tokens/testnet-usd-cred.ts
packages/app-contracts/src/dev/tokens/testnet-usdt.ts
Updated import paths and added 'chain' property to token contract data.
packages/app-contracts/src/prod/tokens/eos-bitusd.ts
packages/app-contracts/src/prod/tokens/eos-usdt.ts
Updated import paths for EOS token contract data.
packages/app-contracts/src/prod/tokens/usdt.ts
packages/app-contracts/src/prod/tokens/usdc.ts
Updated import paths and added 'chain' property to EVM token contract data.
packages/app-contracts/src/types.ts Added 'Chain' type to EVMContractData and EVMTokenContractData interfaces.

Tips
  • Trigger a new Sourcery review by commenting @sourcery-ai review on the pull request.
  • Continue your discussion with Sourcery by replying directly to review comments.
  • You can change your review settings at any time by accessing your dashboard:
    • Enable or disable the Sourcery-generated pull request summary or reviewer's guide;
    • Change the review language;
  • You can always contact us if you have any questions or feedback.

Copy link
Contributor

coderabbitai bot commented Jul 28, 2024

Important

Review skipped

Review was skipped due to path filters

Files ignored due to path filters (1)
  • bun.lockb is excluded by !**/bun.lockb

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Walkthrough

The recent updates significantly enhance the organization and functionality of blockchain contract data structures across various files. A new chain property has been added to several contract objects, explicitly indicating the blockchain network. The directory structure has also been refined for improved modularity, facilitating efficient multi-chain operations and making it easier for developers to manage and integrate contract data within decentralized applications.

Changes

Files Change Summary
packages/app-contracts/src/dev/auction/...,
testnet-deposit-order.ts,
testnet-easy-auction.ts
Added chain: sepolia property to contract objects, enhancing blockchain context.
packages/app-contracts/src/dev/index.ts Restructured exports for better organization, introducing a devContracts object for contracts.
packages/app-contracts/src/prod/index.ts Organized exports into a tokens subdirectory, added prodContracts encapsulating token and auction data.
packages/app-contracts/src/dev/tokens/...,
packages/app-contracts/src/prod/tokens/...
Changed from TokenContractData to specific EOSTokenContractData, added chain properties.
packages/app-contracts/src/types.ts Added chain: Chain; property to EVMContractData and EVMTokenContractData interfaces.
packages/app-contracts/src/prod/tokens/usdc.ts,
usdt.ts
Introduced structured arrays for usdcContracts and usdtContracts with blockchain information.
apps/indexer/src/modules/presale/evm-contributions.ts Updated to use token.chain for chain data and changed transfer addresses to use presaleWallet.

Sequence Diagram(s)

sequenceDiagram
    participant Developer
    participant Contracts
    participant Application

    Developer->>Contracts: Update contract properties
    Contracts->>Contracts: Add chain context
    Contracts->>Application: Export updated contracts
    Application->>Application: Integrate contracts with new structure
Loading

🐰 In the meadow, contracts bloom,
With chains of Sepolia, they spell the room.
Tokens dance and contracts play,
A new structure brightens the day!
With clarity and joy, we hop along,
In the world of code, we all belong! 🌼✨


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share
Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai generate interesting stats about this repository and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link
Contributor

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

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

Hey @gaboesquivel - I've reviewed your changes - here's some feedback:

Overall Comments:

  • Ensure consistent application of the new structure across all files, particularly the addition of the chain property for all EVM contracts.
Here's what I looked at during the review
  • 🟡 General issues: 1 issue found
  • 🟢 Security: all looks good
  • 🟢 Testing: all looks good
  • 🟡 Complexity: 2 issues found
  • 🟢 Documentation: all looks good

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment to tell me if it was helpful.

address: "0xaf88d065e77c8cc2239327c5edb3a432268e5831",
name: "USDC",
symbol: "USDC",
decimals: 6,
Copy link
Contributor

Choose a reason for hiding this comment

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

suggestion: Consider using a constant for USDC decimals

The decimals value is repeated for each USDC contract. Consider defining a constant for this value to improve maintainability and reduce the risk of inconsistencies.

Suggested change
decimals: 6,
const USDC_DECIMALS = 6;
const usdcToken = {
address: "0xaf88d065e77c8cc2239327c5edb3a432268e5831",
name: "USDC",
symbol: "USDC",
decimals: USDC_DECIMALS,
indexFromBlock: 0,
chainId: 42161, // Arbitrum Mainnet
};

export * from "./tokens/eos-fake-bitusd";
export * from "./tokens/eos-fake-usdt";

import { TestnetEasyAuction } from "./auction/testnet-easy-auction";
Copy link
Contributor

Choose a reason for hiding this comment

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

issue (complexity): Consider using dynamic imports and a single source of truth for all modules to simplify the code.

The new code introduces increased complexity due to the number of explicit imports and manual list management. This makes the file harder to maintain and scale. Consider using dynamic imports and a single source of truth for all modules to simplify the code. Here's a suggested refactor:

// Re-export all modules from their respective directories
export * from "./auction/testnet-easy-auction";
export * from "./auction/testnet-deposit-order";
export * from "./tokens/testnet-usd-cred";
export * from "./tokens/testnet-mbots-prelaunch";
export * from "./tokens/sepolia-usdt";
export * from "./tokens/testnet-usdt";
export * from "./tokens/eos-fake-bitusd";
export * from "./tokens/eos-fake-usdt";

// Import all modules dynamically
const modules = {
  auction: {
    TestnetEasyAuction: require("./auction/testnet-easy-auction").TestnetEasyAuction,
    TestnetDepositOrder: require("./auction/testnet-deposit-order").TestnetDepositOrder,
  },
  tokens: {
    TestnetUSDCred: require("./tokens/testnet-usd-cred").TestnetUSDCred,
    TestnetMBOTSPL: require("./tokens/testnet-mbots-prelaunch").TestnetMBOTSPL,
    SepoliaUSDT: require("./tokens/sepolia-usdt").SepoliaUSDT,
    TestnetUSDT: require("./tokens/testnet-usdt").TestnetUSDT,
    EOSFakeBITUSD: require("./tokens/eos-fake-bitusd").EOSFakeBITUSD,
    EOSFakeUSDT: require("./tokens/eos-fake-usdt").EOSFakeUSDT,
  }
};

// Categorize contracts
const evmTokens = [
  modules.tokens.TestnetUSDCred,
  modules.tokens.TestnetMBOTSPL,
  modules.tokens.SepoliaUSDT,
  modules.tokens.TestnetUSDT,
];

const eosTokens = [
  modules.tokens.EOSFakeBITUSD,
  modules.tokens.EOSFakeUSDT,
];

const auctions = [
  modules.auction.TestnetEasyAuction,
  modules.auction.TestnetDepositOrder,
];

export const devContracts = {
  tokens: {
    evm: evmTokens,
    eos: eosTokens,
  },
  auctions,
};

This approach reduces redundancy, makes the code easier to read, and simplifies the process of adding new contracts.

export * from './tokens/usdc'

import {usdtContracts} from './tokens/usdt'
Copy link
Contributor

Choose a reason for hiding this comment

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

issue (complexity): Consider simplifying the code by consolidating imports and directly initializing arrays.

The new code introduces additional complexity that could be simplified. Here are some points to consider:

  1. Increased Number of Imports: The new code has multiple import statements, making the file harder to read and maintain. The original code had a simpler structure with fewer lines and less clutter.

  2. Manual Aggregation of Data: Manually aggregating usdtContracts, usdcContracts, EOSUSDT, and EOSBITUSD into arrays increases the risk of errors and makes the code harder to extend in the future.

  3. Nested Data Structures: Introducing nested data structures (prodContracts with tokens and auctions) adds to the complexity. This should be justified by a clear need.

  4. Redundant Code: There is some redundancy, such as importing and then immediately spreading arrays into new arrays. This can be simplified to reduce complexity.

Here is a suggested refactor to simplify the code:

export * from './tokens/eos-usdt';
export * from './tokens/eos-bitusd';
export * from './tokens/usdt';
export * from './tokens/usdc';

import { usdtContracts } from './tokens/usdt';
import { usdcContracts } from './tokens/usdc';
import { EOSUSDT } from './tokens/eos-usdt';
import { EOSBITUSD } from './tokens/eos-bitusd';
import { ContractData, EOSTokenContractData, EVMTokenContractData } from '../types';

const evmTokens: EVMTokenContractData[] = [
  ...usdtContracts,
  ...usdcContracts
];

const eosTokens: EOSTokenContractData[] = [
  EOSUSDT,
  EOSBITUSD
];

const auctions: ContractData[] = [];

export const prodContracts = {
  tokens: {
    evm: evmTokens,
    eos: eosTokens
  },
  auctions
};

This refactor consolidates imports, directly initializes arrays, and maintains a clear structure, making the code easier to read, maintain, and extend.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 0859420 and b3d4b90.

Files selected for processing (17)
  • packages/app-contracts/src/dev/auction/testnet-allow-list.ts (1 hunks)
  • packages/app-contracts/src/dev/auction/testnet-deposit-order.ts (1 hunks)
  • packages/app-contracts/src/dev/auction/testnet-easy-auction.ts (1 hunks)
  • packages/app-contracts/src/dev/index.ts (1 hunks)
  • packages/app-contracts/src/dev/tokens/eos-fake-bitusd.ts (1 hunks)
  • packages/app-contracts/src/dev/tokens/eos-fake-usdt.ts (1 hunks)
  • packages/app-contracts/src/dev/tokens/sepolia-usdt.ts (2 hunks)
  • packages/app-contracts/src/dev/tokens/testnet-mbots-prelaunch.ts (2 hunks)
  • packages/app-contracts/src/dev/tokens/testnet-usd-cred.ts (2 hunks)
  • packages/app-contracts/src/dev/tokens/testnet-usdt.ts (2 hunks)
  • packages/app-contracts/src/index.ts (1 hunks)
  • packages/app-contracts/src/prod/index.ts (1 hunks)
  • packages/app-contracts/src/prod/tokens/eos-bitusd.ts (1 hunks)
  • packages/app-contracts/src/prod/tokens/eos-usdt.ts (1 hunks)
  • packages/app-contracts/src/prod/tokens/usdc.ts (1 hunks)
  • packages/app-contracts/src/prod/tokens/usdt.ts (15 hunks)
  • packages/app-contracts/src/types.ts (2 hunks)
Additional comments not posted (42)
packages/app-contracts/src/index.ts (3)

1-2: LGTM!

The import statements for devContracts and prodContracts are correct and necessary for the new export structure.


4-6: LGTM!

The export statements correctly re-export everything from the dev, prod, and types modules.


8-11: LGTM!

The new export structure consolidates devContracts and prodContracts into a single appContracts object, improving code organization and accessibility.

packages/app-contracts/src/prod/tokens/eos-usdt.ts (2)

1-1: LGTM!

The import statement correctly brings in EOSTokenContractData from the types module.


Line range hint 3-11:
LGTM!

The type declaration for EOSUSDT has been correctly updated to EOSTokenContractData, aligning with the new type definition.

packages/app-contracts/src/prod/tokens/eos-bitusd.ts (2)

1-1: LGTM!

The import statement correctly brings in EOSTokenContractData from the types module.


Line range hint 3-11:
LGTM!

The type declaration for EOSBITUSD has been correctly updated to EOSTokenContractData, aligning with the new type definition.

packages/app-contracts/src/dev/tokens/eos-fake-bitusd.ts (2)

1-1: Import statement update looks good.

The import statement has been correctly updated to import EOSTokenContractData.


Line range hint 3-11:
Type declaration update looks good.

The type of EOSFakeBITUSD has been correctly updated to EOSTokenContractData, and all properties match the expected structure.

packages/app-contracts/src/dev/tokens/eos-fake-usdt.ts (2)

1-1: Import statement update looks good.

The import statement has been correctly updated to import EOSTokenContractData.


Line range hint 3-11:
Type declaration update looks good.

The type of EOSFakeUSDT has been correctly updated to EOSTokenContractData, and all properties match the expected structure.

packages/app-contracts/src/prod/index.ts (5)

2-5: Export statements update looks good.

The export statements have been correctly updated to reflect the new directory structure.


7-11: Import statements update looks good.

The new import statements have been correctly added for various token contracts and types.


13-16: evmTokens array declaration looks good.

The evmTokens array has been correctly declared and populated with the appropriate contract data.


18-21: eosTokens array declaration looks good.

The eosTokens array has been correctly declared and populated with the appropriate contract data.


28-34: prodContracts object declaration looks good.

The prodContracts object has been correctly declared and populated with the appropriate data.

packages/app-contracts/src/types.ts (2)

21-21: LGTM! The addition of the chain property enhances multi-chain support.

The new chain property in the EVMContractData interface provides more context about the blockchain network associated with the contract.


27-27: LGTM! The addition of the chain property enhances multi-chain support.

The new chain property in the EVMTokenContractData interface provides more context about the blockchain network associated with the contract.

packages/app-contracts/src/dev/index.ts (6)

1-8: LGTM! The restructuring of export statements improves organization and modularity.

The export statements are now grouped under their respective directories, enhancing clarity and maintainability.


10-17: LGTM! The updated import statements align with the restructured exports.

The import statements now reflect the new directory structure, ensuring consistency.


20-25: LGTM! The evmTokens array enhances organization and usability.

The evmTokens array consolidates related contract data into a structured collection, improving maintainability.


27-30: LGTM! The eosTokens array enhances organization and usability.

The eosTokens array consolidates related contract data into a structured collection, improving maintainability.


32-35: LGTM! The auctions array enhances organization and usability.

The auctions array consolidates related contract data into a structured collection, improving maintainability.


37-43: LGTM! The devContracts object encapsulates structured collections of contract data.

The devContracts object enhances the overall structure and usability of the exports, facilitating better integration and use of these contracts in other parts of the application.

packages/app-contracts/src/dev/auction/testnet-allow-list.ts (2)

1-2: LGTM! The updated import statement ensures the correct type is imported.

The import statement now reflects the correct relative path for EVMContractData, aligning with the new directory structure.


10-10: LGTM! The addition of the chain property enhances clarity and functionality.

The new chain property in the TestnetAllowList object specifies the blockchain network, providing additional context.

packages/app-contracts/src/dev/auction/testnet-deposit-order.ts (2)

1-2: LGTM! Imports are correct.

The import statements for sepolia and EVMContractData are correctly added.


10-10: LGTM! Ensure the new property is correctly integrated.

The addition of the chain property with the value sepolia is correct.

However, ensure that the usage of TestnetDepositOrder in the codebase is updated to handle the new chain property.

packages/app-contracts/src/prod/tokens/usdc.ts (2)

1-3: LGTM! Imports are correct.

The import statements for EVMTokenContractData, erc20Abi, and various chains are correctly added.


5-101: LGTM! Ensure the new property is correctly integrated.

The addition of the chain property to each object in the usdcContracts array is correct.

However, ensure that the usage of usdcContracts in the codebase is updated to handle the new chain property.

packages/app-contracts/src/prod/tokens/usdt.ts (2)

1-3: LGTM! Imports are correct.

The import statements for EVMTokenContractData, erc20Abi, and various chains are correctly added.


Line range hint 5-172:
LGTM! Ensure the new property is correctly integrated.

The addition of the chain property to each object in the usdtContracts array is correct.

However, ensure that the usage of usdtContracts in the codebase is updated to handle the new chain property.

Verification successful

Integration of chain Property Verified

The chain property added to the usdtContracts array is correctly integrated and utilized throughout the codebase.

  • Files and locations where chain property is used:
    • packages/app-env/src/env.ts
    • packages/app-contracts/src/prod/index.ts
    • Various other files handling token interactions and chain configurations
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the usage of `usdtContracts` in the codebase.

# Test: Search for the usage of `usdtContracts`. Expect: Updated usage to handle the new `chain` property.
rg --type typescript -A 5 $'usdtContracts'

Length of output: 76


Script:

#!/bin/bash
# Description: Verify the usage of `usdtContracts` in the codebase.

# Test: Search for the usage of `usdtContracts`. Expect: Updated usage to handle the new `chain` property.
rg --type ts -A 5 $'usdtContracts'

Length of output: 1979


Script:

#!/bin/bash
# Description: Verify the integration of the `chain` property in the usage of `usdtContracts`.

# Inspect the relevant lines in `packages/app-env/src/env.ts`
rg --type ts -A 10 -B 10 $'usdtContracts' packages/app-env/src/env.ts

# Inspect the relevant lines in `packages/app-contracts/src/prod/index.ts`
rg --type ts -A 10 -B 10 $'usdtContracts' packages/app-contracts/src/prod/index.ts

Length of output: 2050


Script:

#!/bin/bash
# Description: Verify the usage of the `chain` property in the codebase.

# Search for any usage of the `chain` property within the codebase.
rg --type ts -A 5 $'.chain'

Length of output: 275778

packages/app-contracts/src/dev/tokens/sepolia-usdt.ts (2)

1-2: LGTM! Import statements are correct.

The import statements are updated correctly to include sepolia and adjust the path for EVMTokenContractData.


13-13: LGTM! Addition of chain property enhances clarity.

The addition of the chain property to the SepoliaUSDT object improves its clarity and modularity.

packages/app-contracts/src/dev/tokens/testnet-usdt.ts (2)

1-2: LGTM! Import statements are correct.

The import statements are updated correctly to include eosEvmTestnet and adjust the path for EVMTokenContractData.


13-13: LGTM! Addition of chain property enhances clarity.

The addition of the chain property to the TestnetUSDT object improves its clarity and modularity.

packages/app-contracts/src/dev/tokens/testnet-mbots-prelaunch.ts (2)

1-2: LGTM! Import statements are correct.

The import statements are updated correctly to include eosEvmTestnet and adjust the path for EVMTokenContractData.


13-13: LGTM! Addition of chain property enhances clarity.

The addition of the chain property to the TestnetMBOTSPL object improves its clarity and modularity.

packages/app-contracts/src/dev/tokens/testnet-usd-cred.ts (2)

1-2: Verify the correctness of the updated import paths.

Ensure that the updated import path for EVMTokenContractData and the new import for eosEvmTestnet are correct and necessary.

Verification successful

The updated import paths are correct.

The import paths for EVMTokenContractData and eosEvmTestnet in the file packages/app-contracts/src/dev/tokens/testnet-usd-cred.ts are valid and correctly referenced in the codebase.

  • EVMTokenContractData is correctly imported from ../../types.
  • eosEvmTestnet is correctly imported from ../../../../app-env/src/chains.
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the correctness of the updated import paths.

# Test: Check if the updated import paths are correct. Expect: Valid import paths.
fd -t f -e ts | xargs grep -E 'EVMTokenContractData|eosEvmTestnet'

Length of output: 4244


13-13: LGTM! Verify the impact of the new chain property.

The addition of the chain property to the TestnetUSDCred constant looks good. Ensure that this change does not introduce any issues in the broader application.

Verification successful

To ensure the new chain property does not introduce issues, we need to verify the following:

  1. The chain property is correctly defined in the TestnetUSDCred constant.
  2. All usages of TestnetUSDCred.chain are appropriate and do not introduce errors.

Let's start by checking the definition of the TestnetUSDCred constant to ensure the chain property is correctly defined.


The TestnetUSDCred constant includes the chain property, which is correctly defined. Now, we need to verify that all usages of TestnetUSDCred.chain in the codebase are appropriate and do not introduce errors.


LGTM! Verify the impact of the new chain property.

The addition of the chain property to the TestnetUSDCred constant looks good. The property is correctly defined and used appropriately across the codebase without introducing any issues.

  • apps/webapp/components/routes/wallet/withdraw-card.tsx
  • apps/webapp/components/routes/wallet/balances-table.tsx
  • apps/webapp/components/layout/header/bitcash-access.tsx
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the impact of the new `chain` property.

# Test: Search for the usage of `TestnetUSDCred` in the codebase. Expect: No issues introduced.
rg --type ts -A 5 $'TestnetUSDCred'

Length of output: 11732


Script:

#!/bin/bash
# Verify the definition of the `TestnetUSDCred` constant to ensure the `chain` property is correctly defined.
rg --type ts 'export const TestnetUSDCred' -A 10

Length of output: 993


Script:

#!/bin/bash
# Verify all usages of `TestnetUSDCred.chain` in the codebase to ensure they are appropriate and error-free.
rg --type ts 'TestnetUSDCred.chain'

Length of output: 420

packages/app-contracts/src/dev/auction/testnet-easy-auction.ts (2)

1-2: Verify the correctness of the updated import paths.

Ensure that the updated import path for EVMContractData and the new import for sepolia are correct and necessary.

Verification successful

The updated import paths for EVMContractData and the new import for sepolia are correct and necessary.

  • The import paths are consistent across the codebase.
  • Both sepolia and EVMContractData are used in the file under review and other files.
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the correctness of the updated import paths.

# Test: Check if the updated import paths are correct. Expect: Valid import paths.
fd -t f -e ts | xargs grep -E 'EVMContractData|sepolia'

Length of output: 2892


10-10: LGTM! Verify the impact of the new chain property.

The addition of the chain property to the TestnetEasyAuction constant looks good. Ensure that this change does not introduce any issues in the broader application.

Verification successful

The addition of the chain property to the TestnetEasyAuction constant does not introduce any issues.

The new property is not utilized elsewhere in the codebase, ensuring that its addition does not affect the existing functionality.

Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the impact of the new `chain` property.

# Test: Search for the usage of `TestnetEasyAuction` in the codebase. Expect: No issues introduced.
rg --type ts -A 5 $'TestnetEasyAuction'

Length of output: 9415


Script:

#!/bin/bash
# Description: Verify the impact of the new `chain` property in TestnetEasyAuction.

# Test: Search for the usage of the `chain` property within the `TestnetEasyAuction` object in the codebase.
rg --type ts 'TestnetEasyAuction.chain'

Length of output: 39


Script:

#!/bin/bash
# Description: Verify the impact of the new `chain` property in TestnetEasyAuction.

# Test: Search for the usage of the `chain` property within the `TestnetEasyAuction` object in the codebase.
rg --type ts 'TestnetEasyAuction' -A 5 | grep 'chain'

Length of output: 309

Copy link

github-actions bot commented Jul 28, 2024

⚡️ Lighthouse report

Page: https://bitlauncher-76xd2wc9j-bitcash.vercel.app/
Report undefined

Category Score
🔴 Performance 33
🟠 Accessibility 59
🟠 Best practices 74
🟠 SEO 79
🔴 PWA 38

Page: https://bitlauncher-76xd2wc9j-bitcash.vercel.app/about
Report undefined

Category Score
🔴 Performance 7
🟠 Accessibility 59
🟠 Best practices 74
🟠 SEO 79
🔴 PWA 38

Page: https://bitlauncher-76xd2wc9j-bitcash.vercel.app/security
Report undefined

Category Score
🔴 Performance 30
🟠 Accessibility 61
🟠 Best practices 74
🟠 SEO 79
🔴 PWA 38

Page: https://bitlauncher-76xd2wc9j-bitcash.vercel.app/bitcash-bitlauncher
Report undefined

Category Score
🔴 Performance 35
🟠 Accessibility 65
🟠 Best practices 74
🟠 SEO 86
🔴 PWA 38

Page: https://bitlauncher-76xd2wc9j-bitcash.vercel.app/blog
Report undefined

Category Score
🔴 Performance 37
🟠 Accessibility 66
🟠 Best practices 74
🟠 SEO 86
🔴 PWA 38

Page: https://bitlauncher-76xd2wc9j-bitcash.vercel.app/blog/ai
Report undefined

Category Score
🔴 Performance 39
🟠 Accessibility 59
🟠 Best practices 74
🟠 SEO 79
🔴 PWA 38

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

Outside diff range, codebase verification and nitpick comments (1)
apps/indexer/src/lib/issuer-client.ts (1)

14-17: Issues Found in createPublicClient Configuration

The following instances of createPublicClient do not explicitly set chain to eosEvmTestnet:

  • apps/indexer/src/modules/swaps/evm-transfers.ts

    const client: PublicClient = createPublicClient({
      chain,
      transport: http(),
    })
  • apps/indexer/src/modules/presale/evm-contributions.ts

    const client: PublicClient = createPublicClient({
      chain,
      transport: http(),
    })

These instances should be updated to explicitly set chain to eosEvmTestnet to ensure consistency across the codebase.

Analysis chain

LGTM! But verify the function usage in the codebase.

The code changes are approved.

However, ensure that all function calls to createPublicClient match the new configuration.

Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify all function calls to `createPublicClient` match the new configuration.

# Test: Search for the function usage. Expect: Only occurrences of the new configuration.
rg --type ts -A 5 $'createPublicClient'

Length of output: 5558


Script:

#!/bin/bash
# Description: Verify that all instances of createPublicClient match the new configuration with eosEvmTestnet and http().

# Check each file for the correct configuration of createPublicClient
for file in $(rg --files-with-matches 'createPublicClient'); do
  echo "Checking $file"
  rg 'createPublicClient\(\s*{\s*chain:\s*eosEvmTestnet,\s*transport:\s*http\(\)\s*}' "$file"
done

Length of output: 3015


Script:

#!/bin/bash
# Description: Verify that all instances of createPublicClient match the new configuration with eosEvmTestnet and http().

# Corrected regex pattern to check each file for the correct configuration of createPublicClient
for file in $(rg --files-with-matches 'createPublicClient'); do
  echo "Checking $file"
  rg 'createPublicClient\(\s*{\s*chain:\s*eosEvmTestnet,\s*transport:\s*http\(\)\s*}\s*\)' "$file"
done

Length of output: 3075


Script:

#!/bin/bash
# Description: Verify that all instances of createPublicClient match the new configuration with eosEvmTestnet and http().

# Simplified regex pattern to check each file for the correct configuration of createPublicClient
for file in $(rg --files-with-matches 'createPublicClient'); do
  echo "Checking $file"
  rg 'createPublicClient\({.*chain: eosEvmTestnet,.*transport: http\(\).*}\)' "$file"
done

Length of output: 2901


Script:

#!/bin/bash
# Description: Verify that all instances of createPublicClient match the new configuration with eosEvmTestnet and http().

# Search for createPublicClient function calls and include context lines for manual inspection
rg 'createPublicClient' -A 5

Length of output: 5548

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between b3d4b90 and 7aef555.

Files selected for processing (10)
  • apps/indexer/src/lib/issuer-client.ts (1 hunks)
  • apps/indexer/src/lib/utils.ts (2 hunks)
  • apps/indexer/src/modules/auction/auction-indexer.ts (1 hunks)
  • apps/indexer/src/modules/auction/easyauction.ts (1 hunks)
  • apps/indexer/src/modules/presale/evm-contributions.ts (2 hunks)
  • apps/indexer/src/modules/swaps/evm-transfers.ts (1 hunks)
  • apps/indexer/src/routes/healthcheck.ts (1 hunks)
  • packages/app-contracts/src/prod/index.ts (1 hunks)
  • packages/app-env/src/chains.ts (2 hunks)
  • packages/app-env/src/env.ts (3 hunks)
Files skipped from review as they are similar to previous changes (1)
  • packages/app-contracts/src/prod/index.ts
Additional comments not posted (19)
apps/indexer/src/modules/auction/easyauction.ts (2)

1-3: LGTM!

The updated import statements and client configuration enhance the flexibility and robustness of the client setup.


5-8: LGTM! But verify the function usage in the codebase.

The code changes are approved.

However, ensure that all function calls to createPublicClient match the new configuration.

Verification successful

Verification Successful: All instances of createPublicClient use the new configuration.

  • apps/indexer/src/lib/issuer-client.ts
  • apps/indexer/src/lib/utils.ts
  • apps/indexer/src/modules/swaps/evm-transfers.ts
  • apps/indexer/src/modules/auction/auction-indexer.ts
  • apps/indexer/src/modules/auction/easyauction.ts
  • apps/indexer/src/modules/presale/evm-contributions.ts
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify all function calls to `createPublicClient` match the new configuration.

# Test: Search for the function usage. Expect: Only occurrences of the new configuration.
rg --type ts -A 5 $'createPublicClient'

Length of output: 5558

apps/indexer/src/routes/healthcheck.ts (1)

2-2: LGTM! But verify the function usage in the codebase.

The code changes are approved.

However, ensure that all function calls to getCurrentBlockHeight match the new import path.

Verification successful

Verified: The function usage is correctly updated.

The getCurrentBlockHeight function is consistently imported from ../lib/issuer-client and used accordingly in the codebase.

  • apps/indexer/src/routes/healthcheck.ts: Import and usage are consistent with the new path.
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify all function calls to `getCurrentBlockHeight` match the new import path.

# Test: Search for the function usage. Expect: Only occurrences of the new import path.
rg --type ts -A 5 $'getCurrentBlockHeight'

Length of output: 1250

packages/app-env/src/chains.ts (4)

2-2: Approved: Comprehensive import of chains.

The import statement now includes multiple chains, enhancing the application's flexibility.


25-25: Approved: Updated prodChains array.

The prodChains array now includes multiple chains, enhancing the production environment's flexibility.


26-26: Approved: Updated testChains array.

The testChains array now includes eosEvmTestnet and sepolia, enhancing the test environment's flexibility.


29-31: Approved: Renamed export object to appChains.

The export object has been renamed from smartsaleChains to appChains, reflecting a broader application context.

Ensure that all references to smartsaleChains are updated to appChains across the codebase.

Verification successful

Approved: Renamed export object to appChains.

The export object has been renamed from smartsaleChains to appChains, reflecting a broader application context. All references to smartsaleChains have been updated accordingly across the codebase.

Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify all references to `smartsaleChains` are updated to `appChains`.

# Test: Search for the old reference. Expect: No occurrences of `smartsaleChains`.
rg --type python -A 5 $'smartsaleChains'

Length of output: 70


Script:

#!/bin/bash
# Description: Verify all references to `smartsaleChains` are updated to `appChains`.

# Test: Search for the old reference. Expect: No occurrences of `smartsaleChains`.
rg 'smartsaleChains'

Length of output: 20

apps/indexer/src/lib/utils.ts (2)

3-4: Approved: Comprehensive import of utilities and chain.

The import statement now includes necessary utilities and the eosEvmTestnet chain, enhancing the file's functionality.


41-44: Approved: Enhanced getTokenDetails function.

The function now creates a new client for interacting with the eosEvmTestnet chain, enhancing its capability to retrieve token details.

Ensure that the function is correctly used across the codebase with the new client creation logic.

packages/app-env/src/env.ts (3)

1-1: Approved: Updated import statement to appChains.

The import statement now correctly imports appChains instead of smartsaleChains, reflecting the changes in the file.


19-19: Approved: Updated prod configuration object.

The chains property in the prod configuration object now uses appChains.prod, enhancing the production environment.


42-42: Approved: Updated dev configuration object.

The chains property in the dev configuration object now uses appChains.dev, enhancing the development environment.

apps/indexer/src/modules/presale/evm-contributions.ts (2)

17-17: Verify the correctness and impact of the chain information source change.

Ensure that appChains.dev.get(token.chainId) provides the necessary chain data and that the change does not introduce any issues.

Verification successful

Verified the correctness and impact of the chain information source change.

The appChains.dev.get(token.chainId) usage is correctly implemented and does not introduce any issues. The appChains object is properly defined and initialized, ensuring that it provides the necessary chain data.

  • packages/app-env/src/chains.ts: Definition and initialization of appChains.
  • apps/indexer/src/modules/presale/evm-contributions.ts: Usage of appChains.dev.get.
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the usage of `appChains.dev.get` in the codebase.

# Test: Search for the usage of `appChains.dev.get`. Expect: Correct usage and no issues.
rg --type python -A 5 $'appChains.dev.get'

Length of output: 72


Script:

#!/bin/bash
# Description: Verify the usage of `appChains.dev.get` in the codebase.

# Test: Search for the usage of `appChains.dev.get` within TypeScript files. Expect: Correct usage and no issues.
rg --type ts -A 5 $'appChains.dev.get'

Length of output: 1146


Script:

#!/bin/bash
# Description: Verify the definition and initialization of `appChains` in the codebase.

# Test: Search for the definition and initialization of `appChains`. Expect: Correct definition and initialization.
rg --type ts -A 5 $'appChains'

Length of output: 3433


7-7: Verify the correctness and impact of the import change.

Ensure that appChains from app-env provides the necessary chain data and that the change does not introduce any issues.

Verification successful

The import change to appChains from app-env is correct and does not introduce any issues.

  • The definition of appChains in packages/app-env/src/chains.ts is consistent with its usage in the codebase.
  • The change from smartsaleChains to appChains is appropriate and compatible with the existing code.
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the import of `appChains` and its usage in the codebase.

# Test: Search for the definition of `appChains`. Expect: Correct definition and usage.
rg --type python -A 5 $'appChains'

Length of output: 64


Script:

#!/bin/bash
# Description: Verify the import of `appChains` and its usage in the codebase.

# Test: Search for the definition of `appChains`. Expect: Correct definition and usage.
rg --type typescript -A 5 $'appChains'

Length of output: 72


Script:

#!/bin/bash
# Description: Verify the import of `appChains` and its usage in the codebase.

# Test: Search for the definition of `appChains`. Expect: Correct definition and usage.
rg --type ts -A 5 $'appChains'

Length of output: 3433

apps/indexer/src/modules/swaps/evm-transfers.ts (3)

1-1: Verify the correctness and impact of the import changes.

Ensure that appContracts and appChains from app-env provide the necessary data and that the changes do not introduce any issues.

Verification successful

The import changes for appContracts and appChains are correct and do not introduce any issues.

  • appContracts is defined in packages/app-contracts/src/index.ts and used appropriately in the codebase.
  • appChains is defined in packages/app-env/src/chains.ts and used appropriately in the codebase.
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the import of `appContracts` and `appChains` and their usage in the codebase.

# Test: Search for the definition of `appContracts` and `appChains`. Expect: Correct definition and usage.
rg --type python -A 5 $'appContracts'
rg --type python -A 5 $'appChains'

Length of output: 132


Script:

#!/bin/bash
# Description: Verify the import of `appContracts` and `appChains` and their usage in the codebase.

# Test: Search for the definition of `appContracts` and `appChains`. Expect: Correct definition and usage.
rg --type ts -A 5 'appContracts'
rg --type ts -A 5 'appChains'

Length of output: 4896


9-9: Verify the correctness and impact of the tokens source change.

Ensure that appContracts.dev.tokens.evm provides the necessary token data and that the change does not introduce any issues.

Verification successful

The change to source tokens from appContracts.dev.tokens.evm is verified and correctly integrated.

  • The tokens variable is correctly initialized from appContracts.dev.tokens.evm.
  • The tokens array is used in the listenToEvmTransfers function to apply listenToEvmTransfersFn to each token.
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the usage of `appContracts.dev.tokens.evm` in the codebase.

# Test: Search for the usage of `appContracts.dev.tokens.evm`. Expect: Correct usage and no issues.
rg --type python -A 5 $'appContracts.dev.tokens.evm'

Length of output: 82


Script:

#!/bin/bash
# Description: Verify the usage of `appContracts.dev.tokens.evm` in the codebase.

# Test: Search for the usage of `appContracts.dev.tokens.evm`. Expect: Correct usage and no issues.
rg --type ts -A 5 'appContracts.dev.tokens.evm'

Length of output: 544


17-17: Verify the correctness and impact of the chain information source change.

Ensure that appChains.dev.get(token.chainId) provides the necessary chain data and that the change does not introduce any issues.

Verification successful

The change to use appChains.dev.get(token.chainId) appears correct and should not introduce any issues.

  • The appChains object is correctly defined and initialized in packages/app-env/src/chains.ts.
  • The usage of appChains.dev.get in evm-transfers.ts and evm-contributions.ts is consistent and should work as intended.
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the usage of `appChains.dev.get` in the codebase.

# Test: Search for the usage of `appChains.dev.get`. Expect: Correct usage and no issues.
rg --type python -A 5 $'appChains.dev.get'

Length of output: 72


Script:

#!/bin/bash
# Description: Verify the usage of `appChains.dev.get` in the codebase.

# Test: Search for the usage of `appChains.dev.get`. Expect: Correct usage and no issues.
rg --type ts -A 5 $'appChains.dev.get'

Length of output: 1146


Script:

#!/bin/bash
# Description: Verify the definition and initialization of `appChains`.

# Test: Search for the definition and initialization of `appChains`. Expect: Correct definition and initialization.
rg --type ts -A 5 $'const appChains'

Length of output: 399

apps/indexer/src/modules/auction/auction-indexer.ts (2)

17-21: Verify the correctness and impact of the client instantiation.

Ensure that the client instantiation using createPublicClient with the eosEvmTestnet chain and HTTP transport is correct and does not introduce any issues.

Verification successful

The instantiation of createPublicClient with eosEvmTestnet and HTTP transport is correctly implemented and consistent across the codebase.

  • apps/indexer/src/modules/auction/auction-indexer.ts: Correct usage of createPublicClient with eosEvmTestnet and HTTP transport.
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the usage of `createPublicClient` with `eosEvmTestnet` and HTTP transport in the codebase.

# Test: Search for the usage of `createPublicClient` with `eosEvmTestnet` and HTTP transport. Expect: Correct usage and no issues.
rg --type python -A 5 $'createPublicClient'

Length of output: 73


Script:

#!/bin/bash
# Description: Verify the usage of `createPublicClient` with `eosEvmTestnet` and HTTP transport in the codebase.

# Test: Search for the usage of `createPublicClient` with `eosEvmTestnet` and HTTP transport. Expect: Correct usage and no issues.
rg --type js -A 5 'createPublicClient'

Length of output: 38


Script:

#!/bin/bash
# Description: Verify the usage of `createPublicClient` with `eosEvmTestnet` and HTTP transport in the codebase.

# Test: Search for the usage of `createPublicClient` with `eosEvmTestnet` and HTTP transport in JavaScript and TypeScript files. Expect: Correct usage and no issues.
rg --type js,ts -A 5 'createPublicClient'

Length of output: 71


Script:

#!/bin/bash
# Description: Verify the usage of `createPublicClient` with `eosEvmTestnet` and HTTP transport in the codebase.

# Test: Search for the usage of `createPublicClient` with `eosEvmTestnet` and HTTP transport in JavaScript files. Expect: Correct usage and no issues.
rg --type js -A 5 'createPublicClient'

# Test: Search for the usage of `createPublicClient` with `eosEvmTestnet` and HTTP transport in TypeScript files. Expect: Correct usage and no issues.
rg --type ts -A 5 'createPublicClient'

Length of output: 5597


1-1: Verify the correctness and impact of the import changes.

Ensure that http and createPublicClient from the viem library provide the necessary functionality and that the changes do not introduce any issues.

Verification successful

The import changes to include http and createPublicClient from the viem library are correct and properly utilized in the codebase.

The functions are used to create HTTP clients and public clients for interacting with blockchain networks, which aligns with their intended purposes. No issues were found with these changes.

  • http and createPublicClient are used in:
    • apps/indexer/src/lib/utils.ts
    • apps/indexer/src/lib/issuer-client.ts
    • apps/indexer/src/modules/swaps/evm-transfers.ts
    • apps/indexer/src/modules/presale/evm-contributions.ts
    • apps/indexer/src/modules/auction/easyauction.ts
    • apps/indexer/src/modules/auction/auction-indexer.ts
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the import of `http` and `createPublicClient` and their usage in the codebase.

# Test: Search for the definition of `http` and `createPublicClient`. Expect: Correct definition and usage.
rg --type python -A 5 $'http'
rg --type python -A 5 $'createPublicClient'

Length of output: 133


Script:

#!/bin/bash
# Description: Verify the import of `http` and `createPublicClient` and their usage in the codebase.

# Test: Search for the definition of `http` and `createPublicClient`. Expect: Correct definition and usage.
rg --type typescript -A 5 'http'
rg --type typescript -A 5 'createPublicClient'

Length of output: 149


Script:

#!/bin/bash
# Description: Verify the import of `http` and `createPublicClient` and their usage in the codebase.

# Test: Search for the definition of `http` and `createPublicClient`. Expect: Correct definition and usage.
rg --type ts -A 5 'http'
rg --type ts -A 5 'createPublicClient'

Length of output: 221280

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 7aef555 and 5c897ce.

Files ignored due to path filters (2)
  • bun.lockb is excluded by !**/bun.lockb
  • hardhat/erc20-token/bun.lockb is excluded by !**/bun.lockb
Files selected for processing (10)
  • apps/indexer/src/modules/presale/eos-contributions.ts (2 hunks)
  • apps/indexer/src/modules/presale/evm-contributions.ts (5 hunks)
  • apps/indexer/src/modules/presale/presale-issuer.ts (1 hunks)
  • hardhat/erc20-token/contracts/BLPLToken.sol (1 hunks)
  • hardhat/erc20-token/package.json (2 hunks)
  • hardhat/erc20-token/scripts/deployBLPL.js (1 hunks)
  • hardhat/erc20-token/tsconfig.json (1 hunks)
  • packages/app-contracts/package.json (1 hunks)
  • packages/app-contracts/src/dev/index.ts (1 hunks)
  • packages/app-contracts/src/dev/tokens/testnet-blpl.ts (1 hunks)
Files skipped from review due to trivial changes (2)
  • apps/indexer/src/modules/presale/eos-contributions.ts
  • apps/indexer/src/modules/presale/presale-issuer.ts
Additional comments not posted (25)
hardhat/erc20-token/tsconfig.json (2)

1-6: Ensure compatibility with NodeNext module resolution.

The module and moduleResolution options are set to NodeNext, which is appropriate for projects targeting Node.js environments with ES module support. Ensure that all dependencies and project configurations are compatible with this module resolution strategy.


7-7: Reminder: Verify other compiler options.

Ensure that the rest of the TypeScript compiler options are correctly configured to match the project's requirements.

packages/app-contracts/package.json (1)

12-13: Dependency addition looks good.

The addition of "app-env": "workspace:*" indicates that the package is expected to be resolved from a workspace, suggesting a modular or monorepo structure. Ensure that the app-env package is correctly configured and available in the workspace.

hardhat/erc20-token/scripts/deployBLPL.js (2)

4-11: Deployment script looks good.

The deployment script correctly deploys the BLPLToken contract and logs the deployed contract address. Ensure that the BLPLToken contract is correctly defined and available in the project.


13-16: Error handling is appropriate.

The script catches and logs errors during the deployment process, and sets the process exit code to 1 in case of failure. This is a good practice for handling errors in deployment scripts.

packages/app-contracts/src/dev/tokens/testnet-blpl.ts (2)

1-3: LGTM!

The imports are necessary for the functionality provided in this file.


5-16: LGTM!

The TestnetBLPL object is correctly structured and provides necessary information for the EVM token contract.

hardhat/erc20-token/package.json (2)

10-10: LGTM!

The new script command deployBLPL is correctly added and will run the deployBLPL.js script on the eosevm_testnet network.


21-21: LGTM!

The new dependency @openzeppelin/contracts is correctly added and specifies version ^3.3.0.

hardhat/erc20-token/contracts/BLPLToken.sol (6)

2-3: LGTM!

The SPDX license identifier and pragma directive are correctly specified.


5-7: LGTM!

The imports from OpenZeppelin are necessary and correctly specified.


9-12: LGTM!

The constructor correctly initializes the token with the specified name, symbol, and initial supply.


14-17: LGTM!

The decimals function correctly overrides the default decimals to 6.


19-26: LGTM!

The issue function correctly allows the owner to mint new tokens to a specified recipient.


28-34: LGTM!

The burn function correctly allows the caller to burn their own tokens.

packages/app-contracts/src/dev/index.ts (6)

2-9: LGTM! Imports reflect the new directory structure.

The import statements have been updated correctly to reflect the new directory structure for contracts.


11-11: LGTM! Type imports are correctly included.

The import of ContractData, EOSTokenContractData, and EVMTokenContractData from ../types is necessary for type checking.


13-19: LGTM! evmTokens array is correctly defined.

The evmTokens array consolidates the relevant EVM token contracts.


21-24: LGTM! eosTokens array is correctly defined.

The eosTokens array consolidates the relevant EOS token contracts.


26-29: LGTM! auctions array is correctly defined.

The auctions array consolidates the relevant auction contracts.


31-47: LGTM! Exports are correctly defined.

The devContracts object encapsulates the structured collections of contracts, and individual contracts are also exported correctly.

apps/indexer/src/modules/presale/evm-contributions.ts (4)

7-7: LGTM! Import of appChains is correctly updated.

The import of appChains from app-env replaces smartsaleChains, reflecting the new source of chain data.


9-9: LGTM! presaleWallet constant is correctly defined.

The presaleWallet constant replaces the hardcoded destination address for token transfers, centralizing the address management.


18-18: LGTM! Usage of appChains is correctly updated.

The appChains is used to retrieve the chain data for the token, correctly updating the source of chain data.


32-32: LGTM! Usage of presaleWallet is correctly updated.

The presaleWallet is used as the destination address for token transfers, correctly updating the destination address.

Also applies to: 47-47

@@ -0,0 +1,16 @@

const { ethers } = require("hardhat");
Copy link
Contributor

Choose a reason for hiding this comment

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

Consider using ES6 import syntax.

Since the project uses TypeScript with NodeNext module resolution, consider using ES6 import syntax instead of CommonJS require.

- const { ethers } = require("hardhat");
+ import { ethers } from "hardhat";
Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
const { ethers } = require("hardhat");
import { ethers } from "hardhat";

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

Outside diff range, codebase verification and nitpick comments (1)
apps/indexer/src/modules/presale/evm-contributions.ts (1)

9-9: LGTM! Consider documenting presaleWallet.

The change centralizes the destination address, which is a good practice. Consider adding a comment to document its purpose.

+ // Address for presale token transfers
const presaleWallet = '0xf7bb6BD787FFbA43539219560E3B8162Ba8EEF09'
Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 5c897ce and 086bdd5.

Files ignored due to path filters (1)
  • bun.lockb is excluded by !**/bun.lockb
Files selected for processing (3)
  • apps/indexer/src/modules/presale/evm-contributions.ts (4 hunks)
  • apps/indexer/src/modules/presale/index.ts (1 hunks)
  • packages/app-contracts/src/dev/tokens/testnet-blpl.ts (1 hunks)
Files skipped from review due to trivial changes (1)
  • packages/app-contracts/src/dev/tokens/testnet-blpl.ts
Additional comments not posted (4)
apps/indexer/src/modules/presale/index.ts (1)

5-5: Verify the impact of disabling EOS contributions.

Commenting out listenToEosContributions() disables EOS contributions. Ensure this is intentional and verify the impact on the system.

Verification successful

Disabling EOS contributions impacts only the startPresaleService function.

Commenting out listenToEosContributions() will disable EOS contributions within the startPresaleService function. There are no other dependencies or references to this function elsewhere in the codebase.

  • apps/indexer/src/modules/presale/index.ts
  • apps/indexer/src/modules/presale/eos-contributions.ts
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the impact of disabling EOS contributions.

# Test: Search for the function usage. Expect: Understand the usage context and impact.
rg --type python -A 5 $'listenToEosContributions'

Length of output: 79


Script:

#!/bin/bash
# Description: Verify the impact of disabling EOS contributions.

# Test: Search for the function usage in TypeScript and JavaScript files. Expect: Understand the usage context and impact.
rg --type js,ts -A 5 'listenToEosContributions'

Length of output: 77


Script:

#!/bin/bash
# Description: Verify the impact of disabling EOS contributions.

# Test: Search for the function usage in TypeScript and JavaScript files. Expect: Understand the usage context and impact.
rg -t js -t ts -A 5 'listenToEosContributions'

Length of output: 1219


Script:

#!/bin/bash
# Description: Verify the impact of disabling EOS contributions by searching for all references to `listenToEosContributions`.

# Test: Search for any other references to `listenToEosContributions` across the codebase.
rg 'listenToEosContributions'

Length of output: 342

apps/indexer/src/modules/presale/evm-contributions.ts (3)

32-32: LGTM! Verify the new destination address.

The destination address for token transfers is updated to presaleWallet. Ensure the new destination address is correct and intended.

Also applies to: 47-47

Verification successful

LGTM! Verify the new destination address.

The destination address for token transfers is updated to presaleWallet with the address '0xf7bb6BD787FFbA43539219560E3B8162Ba8EEF09'. Ensure the new destination address is correct and intended.

Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the new destination address for token transfers.

# Test: Search for the usage of `presaleWallet`. Expect: Ensure the new destination address is correct and intended.
rg --type python -A 5 $'presaleWallet'

Length of output: 68


Script:

#!/bin/bash
# Description: Verify the new destination address for token transfers.

# Test: Search for the usage of `presaleWallet`. Expect: Ensure the new destination address is correct and intended.
rg --type ts -A 5 'presaleWallet'

Length of output: 1592


18-18: LGTM! Verify the chain data retrieval.

The change uses appChains to retrieve chain data. Ensure the chain data is correctly retrieved and used.

Verification successful

Let's correct the file type and search for the usage of appChains.dev.get in TypeScript files.


LGTM! Verify the chain data retrieval.

The change uses appChains to retrieve chain data. The chain data is correctly retrieved and used to log a message and create a PublicClient instance, with proper checks to ensure the chain exists.

  • apps/indexer/src/modules/swaps/evm-transfers.ts
  • apps/indexer/src/modules/presale/evm-contributions.ts
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the chain data retrieval using `appChains`.

# Test: Search for the function usage. Expect: Ensure the chain data is correctly retrieved and used.
rg --type python -A 5 $'appChains.dev.get'

Length of output: 72


Script:

#!/bin/bash
# Description: Verify the chain data retrieval using `appChains`.

# Test: Search for the function usage. Expect: Ensure the chain data is correctly retrieved and used.
rg --type ts -A 5 $'appChains.dev.get'

Length of output: 1146


1-1: Verify the correctness and completeness of appChains.

Ensure appChains provides the necessary chain data previously supplied by smartsaleChains.

Also applies to: 7-7

Verification successful

Verify the correctness and completeness of appChains.

The appChains object is correctly defined and used to provide the necessary chain data, replacing the previous smartsaleChains.

  • Definition found in packages/app-env/src/chains.ts
  • Usage in apps/indexer/src/modules/presale/evm-contributions.ts aligns with expected functionality
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the correctness and completeness of `appChains`.

# Test: Search for the definition and usage of `appChains`. Expect: Ensure it provides necessary chain data.
rg --type python -A 5 $'appChains'

Length of output: 64


Script:

#!/bin/bash
# Description: Verify the correctness and completeness of `appChains`.

# Test: Search for the definition and usage of `appChains`. Expect: Ensure it provides necessary chain data.
rg --type typescript -A 5 'appChains'

Length of output: 72


Script:

#!/bin/bash
# Description: Verify the correctness and completeness of `appChains`.

# Test: Search for the definition and usage of `appChains`. Expect: Ensure it provides necessary chain data.
rg --type ts -A 5 'appChains'

Length of output: 3446

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 086bdd5 and 7983ddc.

Files selected for processing (1)
  • apps/indexer/src/modules/presale/evm-contributions.ts (4 hunks)
Additional comments not posted (4)
apps/indexer/src/modules/presale/evm-contributions.ts (4)

1-7: LGTM!

The import statements and the declaration of the presaleWallet constant are correct.


8-11: LGTM!

The initialization of the tokens array and the listenToEvmContributions function are correct.


28-28: LGTM!

The usage of the presaleWallet constant is correct.

Also applies to: 43-43


16-18: LGTM! But verify the function usage in the codebase.

The code changes are approved.

However, ensure that all function calls to listenToEvmTransfersFn match the new usage of the chain property.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

Outside diff range, codebase verification and nitpick comments (1)
packages/app-contracts/src/prod/index.ts (1)

13-16: Ensure all token contracts are included.

The usdcContracts import is commented out in packages/app-contracts/src/prod/index.ts, which might lead to incomplete token data. There is no documentation or comments explaining this decision, and usdcContracts is used in other parts of the codebase, such as packages/app-env/src/env.ts. Please ensure that all required token contracts, including usdcContracts, are included.

  • packages/app-contracts/src/prod/index.ts: Uncomment the usdcContracts import and its usage.
Analysis chain

Ensure all token contracts are included.

The usdcContracts import is commented out, which might lead to incomplete token data. Verify if this is intentional and ensure all required token contracts are included.

Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the inclusion of all required token contracts.

# Test: Search for the usage of `usdcContracts`. Expect: No critical dependencies on `usdcContracts`.
rg --type js --type ts 'usdcContracts'

Length of output: 418


Script:

#!/bin/bash
# Description: Gather more context around the usage of `usdcContracts` and check for comments or documentation.

# Search for the context around `usdcContracts` usage in `packages/app-env/src/env.ts`
rg --type js --type ts -A 5 -B 5 'usdcContracts' packages/app-env/src/env.ts

# Check for any comments or documentation in `packages/app-contracts/src/prod/index.ts`
rg --type js --type ts -A 5 -B 5 'usdcContracts' packages/app-contracts/src/prod/index.ts

Length of output: 1128

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 7983ddc and 6d2488d.

Files ignored due to path filters (1)
  • bun.lockb is excluded by !**/bun.lockb
Files selected for processing (10)
  • apps/indexer/.env-sample (1 hunks)
  • apps/indexer/package.json (1 hunks)
  • apps/indexer/src/index.ts (1 hunks)
  • apps/indexer/src/modules/presale/evm-contributions.ts (4 hunks)
  • apps/indexer/src/modules/presale/index.ts (1 hunks)
  • apps/indexer/src/modules/presale/presale-issuer.ts (2 hunks)
  • packages/app-contracts/src/dev/index.ts (1 hunks)
  • packages/app-contracts/src/prod/index.ts (1 hunks)
  • packages/app-contracts/src/prod/tokens/usdc.ts (1 hunks)
  • packages/app-contracts/src/prod/tokens/usdt.ts (1 hunks)
Files skipped from review due to trivial changes (1)
  • apps/indexer/package.json
Files skipped from review as they are similar to previous changes (4)
  • apps/indexer/src/modules/presale/index.ts
  • apps/indexer/src/modules/presale/presale-issuer.ts
  • packages/app-contracts/src/dev/index.ts
  • packages/app-contracts/src/prod/tokens/usdc.ts
Additional comments not posted (11)
apps/indexer/.env-sample (1)

7-7: Ensure the usage of the new environment variable.

The new environment variable ALCHEMY_API_KEY has been added. Verify that this variable is properly utilized in the codebase and that it is documented for developers.

apps/indexer/src/index.ts (2)

2-3: Verify the implementation of startPresaleService.

The imports for startAuctionIndexer and startSwapsService are commented out, and startPresaleService is added. Ensure that startPresaleService is correctly implemented and that the commented-out services are not required at startup.

Also applies to: 5-5

Verification successful

The implementation of startPresaleService is verified.

  • The function startPresaleService is correctly implemented in apps/indexer/src/modules/presale/index.ts.
  • The commented-out services startAuctionIndexer and startSwapsService are not required at startup.
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the implementation of `startPresaleService`.

# Test: Search for the implementation of `startPresaleService`. Expect: A function definition for `startPresaleService`.
rg --type js --type ts 'function startPresaleService'

Length of output: 137


Script:

#!/bin/bash
# Description: Inspect the implementation details of `startPresaleService` and check if `startAuctionIndexer` and `startSwapsService` are used elsewhere in the startup process.

# Test: Retrieve the full implementation of `startPresaleService`.
rg --context 10 --type js --type ts 'export function startPresaleService' apps/indexer/src/modules/presale/index.ts

# Test: Check if `startAuctionIndexer` is used elsewhere.
rg 'startAuctionIndexer' apps/indexer/src

# Test: Check if `startSwapsService` is used elsewhere.
rg 'startSwapsService' apps/indexer/src

Length of output: 921


11-13: Ensure the commented-out services are not required.

The calls to startAuctionIndexer and startSwapsService are commented out. Verify that these services are not required for the application's startup and that their absence does not impact the application's functionality.

Verification successful

The commented-out services are not required.

The functions startAuctionIndexer and startSwapsService are not referenced elsewhere in the codebase, indicating that their absence does not impact the application's functionality.

  • apps/indexer/src/index.ts: The only references to startAuctionIndexer and startSwapsService are commented out.
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the impact of commenting out `startAuctionIndexer` and `startSwapsService`.

# Test: Search for the usage of `startAuctionIndexer` and `startSwapsService`. Expect: No critical dependencies on these functions.
rg --type js --type ts 'startAuctionIndexer'
rg --type js --type ts 'startSwapsService'

Length of output: 537


Script:

#!/bin/bash
# Search for any references to 'startAuctionIndexer' and 'startSwapsService' throughout the codebase to ensure they are not required for critical functionality.
rg 'startAuctionIndexer'
rg 'startSwapsService'

Length of output: 497

packages/app-contracts/src/prod/index.ts (2)

2-5: LGTM! Verify the usage of the reorganized exports.

The exports have been reorganized into a tokens subdirectory. Ensure that all references to these exports in the codebase are updated to match the new structure.

Verification successful

Verification successful!

The reorganization of exports into the tokens subdirectory has been correctly updated across the codebase. No outdated import paths were found.

Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the usage of the reorganized exports.

# Test: Search for the usage of the reorganized exports. Expect: Updated import paths matching the new structure.
rg --type js --type ts "from './tokens/eos-usdt'"
rg --type js --type ts "from './tokens/eos-bitusd'"
rg --type js --type ts "from './tokens/usdt'"
rg --type js --type ts "from './tokens/usdc'"

Length of output: 864


Script:

#!/bin/bash
# Description: Verify the usage of the reorganized exports across the entire codebase.

# Test: Search for the old import paths to ensure they have been updated.
rg --type js --type ts "from '../eos-usdt'"
rg --type js --type ts "from '../eos-bitusd'"
rg --type js --type ts "from '../usdt'"
rg --type js --type ts "from '../usdc'"

Length of output: 201


27-33: LGTM! Ensure the new structure is correctly utilized.

The prodContracts object encapsulates both tokens and auctions data, providing a unified interface for contract-related information. Ensure that this new structure is correctly utilized in the codebase.

Verification successful

The new prodContracts structure is correctly utilized in the codebase.

The prodContracts object is properly integrated and used within the appContracts structure. The references in evm-transfers.ts and evm-contributions.ts confirm its correct usage.

  • apps/indexer/src/modules/swaps/evm-transfers.ts
  • apps/indexer/src/modules/presale/evm-contributions.ts
Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify the usage of the new `prodContracts` structure.

# Test: Search for the usage of `prodContracts`. Expect: References to `prodContracts` in the codebase.
rg --type js --type ts 'prodContracts'

Length of output: 241


Script:

#!/bin/bash
# Extract lines from packages/app-contracts/src/index.ts to verify the usage of `prodContracts`.
rg --type js --type ts -A 10 'prodContracts' packages/app-contracts/src/index.ts

Length of output: 265


Script:

#!/bin/bash
# Search for the usage of `appContracts` in the codebase to verify its utilization.
rg --type js --type ts 'appContracts'

Length of output: 633

apps/indexer/src/modules/presale/evm-contributions.ts (4)

7-7: LGTM! Adding the presaleWallet constant.

The addition of the presaleWallet constant is clear and improves code readability by avoiding hardcoded values.


16-16: LGTM! Improved logging statement.

The updated logging statement now includes the token.chain.name, providing better context for debugging and monitoring.


18-18: LGTM! Using the chain property directly.

This change simplifies the code by directly using the chain property from the token object when creating the PublicClient.


28-28: LGTM! Using the presaleWallet constant for token transfers.

The update to use the presaleWallet constant for the destination address in token transfers ensures consistency and maintainability.

Also applies to: 43-43

packages/app-contracts/src/prod/tokens/usdt.ts (2)

1-3: LGTM! Necessary imports for USDT contract data.

The imports of EVMTokenContractData, erc20Abi, and chain data from viem/chains are necessary for defining the USDT contract data for various chains.


5-212: LGTM! Comprehensive USDT contract data definitions.

The file provides a comprehensive list of USDT contract data for various chains, including essential information such as address, name, symbol, decimals, indexFromBlock, chainId, chainType, chainName, abi, and chain. This structure is well-organized and enhances the clarity and maintainability of the contract data.

Comment on lines +7 to +11
// import {usdcContracts} from './tokens/usdc'
import {EOSUSDT} from './tokens/eos-usdt';
import {EOSBITUSD} from './tokens/eos-bitusd';
import { ContractData, EOSTokenContractData, EVMTokenContractData } from '../types'
Copy link
Contributor

Choose a reason for hiding this comment

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

Consolidate imports for better readability.

The imports can be consolidated to improve readability and maintainability.

-import { usdtContracts } from './tokens/usdt'
-// import { usdcContracts } from './tokens/usdc'
-import { EOSUSDT } from './tokens/eos-usdt';
-import { EOSBITUSD } from './tokens/eos-bitusd';
-import { ContractData, EOSTokenContractData, EVMTokenContractData } from '../types'
+import { usdtContracts, usdcContracts, EOSUSDT, EOSBITUSD, ContractData, EOSTokenContractData, EVMTokenContractData } from '../types';

Committable suggestion was skipped due to low confidence.

@gaboesquivel gaboesquivel changed the title feat: multichain indexer feat: multichain indexer ( part 1 ) Aug 4, 2024
@gaboesquivel gaboesquivel merged commit 9720e02 into develop Aug 4, 2024
3 of 5 checks passed
@gaboesquivel gaboesquivel deleted the indexer-multichain branch August 4, 2024 19:20
AndlerRL added a commit that referenced this pull request Aug 6, 2024
* chore: add @types/uuid

* chore: add @types/uuid

* fix(app-lib): tsconfig pkg extends

* fix: missing encoding dep

* feat: sitemap (#290)

* feat: add sitemap

* fix: error handling

* fix: move common types

* fix: update base url in sitemap

* Update apps/webapp/app/(routes)/[lang]/blog/[category]/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/wallet/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/whitepaper/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: build error

* fix: remove unnecessary async declarative

* vendor: add @types/uuid

* fix: remove console log for debug

* fix: add 'async' to all sitemaps

* fix: make ProjectPageParams extends CommonPageParams

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(webapp): UI/UX tweaks and upts from final v1 landing designs (#291)

* (webapp)fix:FAQ border radi + muted color

* (webapp)fix:newsletter spacing

* (webapp)fix:participate spacing and font family

* (webapp)fix:header spacing + bitlauncher logo size

* (webapp)fix:blog section 4 per row + purple link + gap

* (webapp)fix:hero-card spacing

* (webapp)fix:auction-card spaces

* (webapp)fix:Upcoming grid gap

* (webapp)fix:article card - text-left

* (webapp)fix:media-card text-start

* (webapp)fix:media-section purple link + space

* (webapp)fix:participate gap + section font and padding

* (webapp)fix:footer links padding + other spacing fix

* (webapp)fix:upcoming background circle

* (webapp)fix:footer margin-10

* (webapp)fix:upcoming bg shape

* (webapp)-andler-changes-request

* (webapp)-debug-toggle navigation icon

* (webapp)-create-mobile-navigation-context

* (webapp)-create-mobile-navigation-context

* (webapp)-fix navigation bug - add key

* (webapp)-Andler-changes

* (webapp)-responsive - upcoming

* (webapp)-fix-responsive-whychooseUs

* (webapp)-fix-responsive-participate

* (webapp)-fix-responsive-media

* (webapp)-fix-responsive-articles

* (webapp)-responsive-project-header+info+sharebtn

* (webapp)-feat-about-base

* (webapp)-feat-about-landing-complete

* (webapp)-feat-security-updated

* (webapp)-fix-steps-padding

* fix typo

* fix bgHeader type

* fix bgHeader type

* impr(webapp): layout tweaks

* impr(webapp): info pages img asset + css class

* fix: bun.lockb

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: multichain indexer ( part 1 ) (#293)

* chore: update app-contracts

* feat: multichain indexer

* feat: prod chains

* feat: presale wallet

* feat: blpl token

* feat: blpl token

* chore: update bunlock

* feat: blpl token

* feat: presale evm contribs

* feat: blpl token

* wip: presale indexer

* chore(indexer): fix dockerfile

* feat: presale transaction indexing (#296)

* feat: report transaction id

* feat: save deposits data

* feat: save deposits data

* feat: read presale transactions

* chore: disable view all

* feat: update presale deposits ui

* feat: display amount raised and contributors

* chore: environment chains and tokens

* fix(webapp): desktop padding (#297)

* feat: multichain presale deposits (#298)

* chore: environment chains and tokens

* fix: chain switch

* fix: chain switch

* feat: update nav links (#299)

* chore: environment chains and tokens

* feat: update nav links

* chore: renable swaps service, index token from latest block

* feat(webapp): wallet ui updates (#300)

* fix: wagmi config

* feat(webapp): presale contribution report

* feat: realtime presale data

* feat: realtime presale data

* feat: update dropdown menu

* feat(supabase): update schema and types

* chore: debug presale token issuance

* feat: show issuance trx link on table

---------

Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Nathanael Liu <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>
AndlerRL added a commit that referenced this pull request Aug 6, 2024
* chore: add @types/uuid

* chore: add @types/uuid

* fix(app-lib): tsconfig pkg extends

* fix: missing encoding dep

* feat: sitemap (#290)

* feat: add sitemap

* fix: error handling

* fix: move common types

* fix: update base url in sitemap

* Update apps/webapp/app/(routes)/[lang]/blog/[category]/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/wallet/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/whitepaper/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: build error

* fix: remove unnecessary async declarative

* vendor: add @types/uuid

* fix: remove console log for debug

* fix: add 'async' to all sitemaps

* fix: make ProjectPageParams extends CommonPageParams

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(webapp): UI/UX tweaks and upts from final v1 landing designs (#291)

* (webapp)fix:FAQ border radi + muted color

* (webapp)fix:newsletter spacing

* (webapp)fix:participate spacing and font family

* (webapp)fix:header spacing + bitlauncher logo size

* (webapp)fix:blog section 4 per row + purple link + gap

* (webapp)fix:hero-card spacing

* (webapp)fix:auction-card spaces

* (webapp)fix:Upcoming grid gap

* (webapp)fix:article card - text-left

* (webapp)fix:media-card text-start

* (webapp)fix:media-section purple link + space

* (webapp)fix:participate gap + section font and padding

* (webapp)fix:footer links padding + other spacing fix

* (webapp)fix:upcoming background circle

* (webapp)fix:footer margin-10

* (webapp)fix:upcoming bg shape

* (webapp)-andler-changes-request

* (webapp)-debug-toggle navigation icon

* (webapp)-create-mobile-navigation-context

* (webapp)-create-mobile-navigation-context

* (webapp)-fix navigation bug - add key

* (webapp)-Andler-changes

* (webapp)-responsive - upcoming

* (webapp)-fix-responsive-whychooseUs

* (webapp)-fix-responsive-participate

* (webapp)-fix-responsive-media

* (webapp)-fix-responsive-articles

* (webapp)-responsive-project-header+info+sharebtn

* (webapp)-feat-about-base

* (webapp)-feat-about-landing-complete

* (webapp)-feat-security-updated

* (webapp)-fix-steps-padding

* fix typo

* fix bgHeader type

* fix bgHeader type

* impr(webapp): layout tweaks

* impr(webapp): info pages img asset + css class

* fix: bun.lockb

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: multichain indexer ( part 1 ) (#293)

* chore: update app-contracts

* feat: multichain indexer

* feat: prod chains

* feat: presale wallet

* feat: blpl token

* feat: blpl token

* chore: update bunlock

* feat: blpl token

* feat: presale evm contribs

* feat: blpl token

* wip: presale indexer

* chore(indexer): fix dockerfile

* feat: presale transaction indexing (#296)

* feat: report transaction id

* feat: save deposits data

* feat: save deposits data

* feat: read presale transactions

* chore: disable view all

* feat: update presale deposits ui

* feat: display amount raised and contributors

* chore: environment chains and tokens

* fix(webapp): desktop padding (#297)

* feat: multichain presale deposits (#298)

* chore: environment chains and tokens

* fix: chain switch

* fix: chain switch

* feat: update nav links (#299)

* chore: environment chains and tokens

* feat: update nav links

* chore: renable swaps service, index token from latest block

* feat(webapp): wallet ui updates (#300)

* fix: wagmi config

* feat(webapp): presale contribution report

* feat: realtime presale data

* feat: realtime presale data

* feat: update dropdown menu

* feat(supabase): update schema and types

* chore: debug presale token issuance

* feat: show issuance trx link on table

* impr(webapp): upt mob ver of more info cards (#294) (#305)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>

---------

Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Nathanael Liu <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>
Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
AndlerRL added a commit that referenced this pull request Aug 22, 2024
* chore: add @types/uuid

* chore: add @types/uuid

* fix(app-lib): tsconfig pkg extends

* fix: missing encoding dep

* feat: sitemap (#290)

* feat: add sitemap

* fix: error handling

* fix: move common types

* fix: update base url in sitemap

* Update apps/webapp/app/(routes)/[lang]/blog/[category]/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/wallet/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/whitepaper/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: build error

* fix: remove unnecessary async declarative

* vendor: add @types/uuid

* fix: remove console log for debug

* fix: add 'async' to all sitemaps

* fix: make ProjectPageParams extends CommonPageParams

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(webapp): UI/UX tweaks and upts from final v1 landing designs (#291)

* (webapp)fix:FAQ border radi + muted color

* (webapp)fix:newsletter spacing

* (webapp)fix:participate spacing and font family

* (webapp)fix:header spacing + bitlauncher logo size

* (webapp)fix:blog section 4 per row + purple link + gap

* (webapp)fix:hero-card spacing

* (webapp)fix:auction-card spaces

* (webapp)fix:Upcoming grid gap

* (webapp)fix:article card - text-left

* (webapp)fix:media-card text-start

* (webapp)fix:media-section purple link + space

* (webapp)fix:participate gap + section font and padding

* (webapp)fix:footer links padding + other spacing fix

* (webapp)fix:upcoming background circle

* (webapp)fix:footer margin-10

* (webapp)fix:upcoming bg shape

* (webapp)-andler-changes-request

* (webapp)-debug-toggle navigation icon

* (webapp)-create-mobile-navigation-context

* (webapp)-create-mobile-navigation-context

* (webapp)-fix navigation bug - add key

* (webapp)-Andler-changes

* (webapp)-responsive - upcoming

* (webapp)-fix-responsive-whychooseUs

* (webapp)-fix-responsive-participate

* (webapp)-fix-responsive-media

* (webapp)-fix-responsive-articles

* (webapp)-responsive-project-header+info+sharebtn

* (webapp)-feat-about-base

* (webapp)-feat-about-landing-complete

* (webapp)-feat-security-updated

* (webapp)-fix-steps-padding

* fix typo

* fix bgHeader type

* fix bgHeader type

* impr(webapp): layout tweaks

* impr(webapp): info pages img asset + css class

* fix: bun.lockb

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: multichain indexer ( part 1 ) (#293)

* chore: update app-contracts

* feat: multichain indexer

* feat: prod chains

* feat: presale wallet

* feat: blpl token

* feat: blpl token

* chore: update bunlock

* feat: blpl token

* feat: presale evm contribs

* feat: blpl token

* wip: presale indexer

* chore(indexer): fix dockerfile

* feat: presale transaction indexing (#296)

* feat: report transaction id

* feat: save deposits data

* feat: save deposits data

* feat: read presale transactions

* chore: disable view all

* feat: update presale deposits ui

* feat: display amount raised and contributors

* chore: environment chains and tokens

* fix(webapp): desktop padding (#297)

* feat: multichain presale deposits (#298)

* chore: environment chains and tokens

* fix: chain switch

* fix: chain switch

* feat: update nav links (#299)

* chore: environment chains and tokens

* feat: update nav links

* chore: renable swaps service, index token from latest block

* feat(webapp): wallet ui updates (#300)

* fix: wagmi config

* feat(webapp): presale contribution report

* feat: realtime presale data

* feat: realtime presale data

* feat: update dropdown menu

* feat(supabase): update schema and types

* chore: debug presale token issuance

* feat: show issuance trx link on table

* impr(webapp): upt mob ver of more info cards (#294) (#305)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>

* chore: august 2nd release [at TEST]  (#315)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: merge typo

* fix: tailwind font config

---------

Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Nathanael Liu <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>
Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
AndlerRL added a commit that referenced this pull request Aug 27, 2024
* chore: add @types/uuid

* chore: add @types/uuid

* fix(app-lib): tsconfig pkg extends

* fix: missing encoding dep

* feat: sitemap (#290)

* feat: add sitemap

* fix: error handling

* fix: move common types

* fix: update base url in sitemap

* Update apps/webapp/app/(routes)/[lang]/blog/[category]/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/wallet/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/whitepaper/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: build error

* fix: remove unnecessary async declarative

* vendor: add @types/uuid

* fix: remove console log for debug

* fix: add 'async' to all sitemaps

* fix: make ProjectPageParams extends CommonPageParams

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(webapp): UI/UX tweaks and upts from final v1 landing designs (#291)

* (webapp)fix:FAQ border radi + muted color

* (webapp)fix:newsletter spacing

* (webapp)fix:participate spacing and font family

* (webapp)fix:header spacing + bitlauncher logo size

* (webapp)fix:blog section 4 per row + purple link + gap

* (webapp)fix:hero-card spacing

* (webapp)fix:auction-card spaces

* (webapp)fix:Upcoming grid gap

* (webapp)fix:article card - text-left

* (webapp)fix:media-card text-start

* (webapp)fix:media-section purple link + space

* (webapp)fix:participate gap + section font and padding

* (webapp)fix:footer links padding + other spacing fix

* (webapp)fix:upcoming background circle

* (webapp)fix:footer margin-10

* (webapp)fix:upcoming bg shape

* (webapp)-andler-changes-request

* (webapp)-debug-toggle navigation icon

* (webapp)-create-mobile-navigation-context

* (webapp)-create-mobile-navigation-context

* (webapp)-fix navigation bug - add key

* (webapp)-Andler-changes

* (webapp)-responsive - upcoming

* (webapp)-fix-responsive-whychooseUs

* (webapp)-fix-responsive-participate

* (webapp)-fix-responsive-media

* (webapp)-fix-responsive-articles

* (webapp)-responsive-project-header+info+sharebtn

* (webapp)-feat-about-base

* (webapp)-feat-about-landing-complete

* (webapp)-feat-security-updated

* (webapp)-fix-steps-padding

* fix typo

* fix bgHeader type

* fix bgHeader type

* impr(webapp): layout tweaks

* impr(webapp): info pages img asset + css class

* fix: bun.lockb

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: multichain indexer ( part 1 ) (#293)

* chore: update app-contracts

* feat: multichain indexer

* feat: prod chains

* feat: presale wallet

* feat: blpl token

* feat: blpl token

* chore: update bunlock

* feat: blpl token

* feat: presale evm contribs

* feat: blpl token

* wip: presale indexer

* chore(indexer): fix dockerfile

* feat: presale transaction indexing (#296)

* feat: report transaction id

* feat: save deposits data

* feat: save deposits data

* feat: read presale transactions

* chore: disable view all

* feat: update presale deposits ui

* feat: display amount raised and contributors

* chore: environment chains and tokens

* fix(webapp): desktop padding (#297)

* feat: multichain presale deposits (#298)

* chore: environment chains and tokens

* fix: chain switch

* fix: chain switch

* feat: update nav links (#299)

* chore: environment chains and tokens

* feat: update nav links

* chore: renable swaps service, index token from latest block

* feat(webapp): wallet ui updates (#300)

* fix: wagmi config

* feat(webapp): presale contribution report

* feat: realtime presale data

* feat: realtime presale data

* feat: update dropdown menu

* feat(supabase): update schema and types

* chore: debug presale token issuance

* feat: show issuance trx link on table

* impr(webapp): upt mob ver of more info cards (#294) (#305)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>

* chore: august 2nd release [at TEST]  (#315)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: merge typo

* fix: tailwind font config

* chore: august 3rd release [pre-prod] (#334)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>

* chore(fix): update apps/trigger package.json dep

* fix: cms gen merged files + use-session table upt + trigger/tsconfig upt

---------

Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Nathanael Liu <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>
Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
AndlerRL added a commit that referenced this pull request Aug 28, 2024
* chore: add @types/uuid

* chore: add @types/uuid

* fix(app-lib): tsconfig pkg extends

* fix: missing encoding dep

* feat: sitemap (#290)

* feat: add sitemap

* fix: error handling

* fix: move common types

* fix: update base url in sitemap

* Update apps/webapp/app/(routes)/[lang]/blog/[category]/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/wallet/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/whitepaper/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: build error

* fix: remove unnecessary async declarative

* vendor: add @types/uuid

* fix: remove console log for debug

* fix: add 'async' to all sitemaps

* fix: make ProjectPageParams extends CommonPageParams

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(webapp): UI/UX tweaks and upts from final v1 landing designs (#291)

* (webapp)fix:FAQ border radi + muted color

* (webapp)fix:newsletter spacing

* (webapp)fix:participate spacing and font family

* (webapp)fix:header spacing + bitlauncher logo size

* (webapp)fix:blog section 4 per row + purple link + gap

* (webapp)fix:hero-card spacing

* (webapp)fix:auction-card spaces

* (webapp)fix:Upcoming grid gap

* (webapp)fix:article card - text-left

* (webapp)fix:media-card text-start

* (webapp)fix:media-section purple link + space

* (webapp)fix:participate gap + section font and padding

* (webapp)fix:footer links padding + other spacing fix

* (webapp)fix:upcoming background circle

* (webapp)fix:footer margin-10

* (webapp)fix:upcoming bg shape

* (webapp)-andler-changes-request

* (webapp)-debug-toggle navigation icon

* (webapp)-create-mobile-navigation-context

* (webapp)-create-mobile-navigation-context

* (webapp)-fix navigation bug - add key

* (webapp)-Andler-changes

* (webapp)-responsive - upcoming

* (webapp)-fix-responsive-whychooseUs

* (webapp)-fix-responsive-participate

* (webapp)-fix-responsive-media

* (webapp)-fix-responsive-articles

* (webapp)-responsive-project-header+info+sharebtn

* (webapp)-feat-about-base

* (webapp)-feat-about-landing-complete

* (webapp)-feat-security-updated

* (webapp)-fix-steps-padding

* fix typo

* fix bgHeader type

* fix bgHeader type

* impr(webapp): layout tweaks

* impr(webapp): info pages img asset + css class

* fix: bun.lockb

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: multichain indexer ( part 1 ) (#293)

* chore: update app-contracts

* feat: multichain indexer

* feat: prod chains

* feat: presale wallet

* feat: blpl token

* feat: blpl token

* chore: update bunlock

* feat: blpl token

* feat: presale evm contribs

* feat: blpl token

* wip: presale indexer

* chore(indexer): fix dockerfile

* feat: presale transaction indexing (#296)

* feat: report transaction id

* feat: save deposits data

* feat: save deposits data

* feat: read presale transactions

* chore: disable view all

* feat: update presale deposits ui

* feat: display amount raised and contributors

* chore: environment chains and tokens

* fix(webapp): desktop padding (#297)

* feat: multichain presale deposits (#298)

* chore: environment chains and tokens

* fix: chain switch

* fix: chain switch

* feat: update nav links (#299)

* chore: environment chains and tokens

* feat: update nav links

* chore: renable swaps service, index token from latest block

* feat(webapp): wallet ui updates (#300)

* fix: wagmi config

* feat(webapp): presale contribution report

* feat: realtime presale data

* feat: realtime presale data

* feat: update dropdown menu

* feat(supabase): update schema and types

* chore: debug presale token issuance

* feat: show issuance trx link on table

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* impr(webapp): upt mob ver of more info cards (#294) (#305)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* chore: august 2nd release [at TEST]  (#315)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: merge typo

* fix: tailwind font config

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

* chore: august 3rd release [pre-prod] (#334)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>

* chore(fix): update apps/trigger package.json dep

* fix: cms gen merged files + use-session table upt + trigger/tsconfig upt

* fix: registration logic and indexer checks (#347)

* feat(indexer): check if address already bought

* fix(webapp): registration logic

* chore: update bunlock

* fix(webapp): arrow icon

* fix(webapp): arrow icon

* feat: upsert accounts table on login

* fix(webapp): move accounts to session hook

* feat: webapp/hotfix bl project status tag (#348)

* fix(webapp): tablet/small-screen header breakpoint

* impr(webapp): project page hero + blog links upt

* fix(webapp): project badge text upt

---------

Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Nathanael Liu <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>
Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
AndlerRL added a commit that referenced this pull request Aug 28, 2024
* chore: add @types/uuid

* chore: add @types/uuid

* fix(app-lib): tsconfig pkg extends

* fix: missing encoding dep

* feat: sitemap (#290)

* feat: add sitemap

* fix: error handling

* fix: move common types

* fix: update base url in sitemap

* Update apps/webapp/app/(routes)/[lang]/blog/[category]/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/wallet/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/whitepaper/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: build error

* fix: remove unnecessary async declarative

* vendor: add @types/uuid

* fix: remove console log for debug

* fix: add 'async' to all sitemaps

* fix: make ProjectPageParams extends CommonPageParams

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(webapp): UI/UX tweaks and upts from final v1 landing designs (#291)

* (webapp)fix:FAQ border radi + muted color

* (webapp)fix:newsletter spacing

* (webapp)fix:participate spacing and font family

* (webapp)fix:header spacing + bitlauncher logo size

* (webapp)fix:blog section 4 per row + purple link + gap

* (webapp)fix:hero-card spacing

* (webapp)fix:auction-card spaces

* (webapp)fix:Upcoming grid gap

* (webapp)fix:article card - text-left

* (webapp)fix:media-card text-start

* (webapp)fix:media-section purple link + space

* (webapp)fix:participate gap + section font and padding

* (webapp)fix:footer links padding + other spacing fix

* (webapp)fix:upcoming background circle

* (webapp)fix:footer margin-10

* (webapp)fix:upcoming bg shape

* (webapp)-andler-changes-request

* (webapp)-debug-toggle navigation icon

* (webapp)-create-mobile-navigation-context

* (webapp)-create-mobile-navigation-context

* (webapp)-fix navigation bug - add key

* (webapp)-Andler-changes

* (webapp)-responsive - upcoming

* (webapp)-fix-responsive-whychooseUs

* (webapp)-fix-responsive-participate

* (webapp)-fix-responsive-media

* (webapp)-fix-responsive-articles

* (webapp)-responsive-project-header+info+sharebtn

* (webapp)-feat-about-base

* (webapp)-feat-about-landing-complete

* (webapp)-feat-security-updated

* (webapp)-fix-steps-padding

* fix typo

* fix bgHeader type

* fix bgHeader type

* impr(webapp): layout tweaks

* impr(webapp): info pages img asset + css class

* fix: bun.lockb

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: multichain indexer ( part 1 ) (#293)

* chore: update app-contracts

* feat: multichain indexer

* feat: prod chains

* feat: presale wallet

* feat: blpl token

* feat: blpl token

* chore: update bunlock

* feat: blpl token

* feat: presale evm contribs

* feat: blpl token

* wip: presale indexer

* chore(indexer): fix dockerfile

* feat: presale transaction indexing (#296)

* feat: report transaction id

* feat: save deposits data

* feat: save deposits data

* feat: read presale transactions

* chore: disable view all

* feat: update presale deposits ui

* feat: display amount raised and contributors

* chore: environment chains and tokens

* fix(webapp): desktop padding (#297)

* feat: multichain presale deposits (#298)

* chore: environment chains and tokens

* fix: chain switch

* fix: chain switch

* feat: update nav links (#299)

* chore: environment chains and tokens

* feat: update nav links

* chore: renable swaps service, index token from latest block

* feat(webapp): wallet ui updates (#300)

* fix: wagmi config

* feat(webapp): presale contribution report

* feat: realtime presale data

* feat: realtime presale data

* feat: update dropdown menu

* feat(supabase): update schema and types

* chore: debug presale token issuance

* feat: show issuance trx link on table

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* impr(webapp): upt mob ver of more info cards (#294) (#305)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* chore: august 2nd release [at TEST]  (#315)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: merge typo

* fix: tailwind font config

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

* chore: august 3rd release [pre-prod] (#334)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>

* chore(fix): update apps/trigger package.json dep

* fix: cms gen merged files + use-session table upt + trigger/tsconfig upt

* fix: registration logic and indexer checks (#347)

* feat(indexer): check if address already bought

* fix(webapp): registration logic

* chore: update bunlock

* fix(webapp): arrow icon

* fix(webapp): arrow icon

* feat: upsert accounts table on login

* fix(webapp): move accounts to session hook

* feat: webapp/hotfix bl project status tag (#348)

* fix(webapp): tablet/small-screen header breakpoint

* impr(webapp): project page hero + blog links upt

* fix(webapp): project badge text upt

* content(webapp): token sale date tbd

* fix(webapp): hero title size (#350)

* fix(webapp): hero title size

* impr(webapp): share link toaster msg

* chore: presale hardcoded txt tweak

---------

Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Nathanael Liu <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>
Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
AndlerRL added a commit that referenced this pull request Aug 29, 2024
… upt (#353)

* chore: add @types/uuid

* chore: add @types/uuid

* fix(app-lib): tsconfig pkg extends

* fix: missing encoding dep

* feat: sitemap (#290)

* feat: add sitemap

* fix: error handling

* fix: move common types

* fix: update base url in sitemap

* Update apps/webapp/app/(routes)/[lang]/blog/[category]/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/wallet/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/whitepaper/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: build error

* fix: remove unnecessary async declarative

* vendor: add @types/uuid

* fix: remove console log for debug

* fix: add 'async' to all sitemaps

* fix: make ProjectPageParams extends CommonPageParams

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(webapp): UI/UX tweaks and upts from final v1 landing designs (#291)

* (webapp)fix:FAQ border radi + muted color

* (webapp)fix:newsletter spacing

* (webapp)fix:participate spacing and font family

* (webapp)fix:header spacing + bitlauncher logo size

* (webapp)fix:blog section 4 per row + purple link + gap

* (webapp)fix:hero-card spacing

* (webapp)fix:auction-card spaces

* (webapp)fix:Upcoming grid gap

* (webapp)fix:article card - text-left

* (webapp)fix:media-card text-start

* (webapp)fix:media-section purple link + space

* (webapp)fix:participate gap + section font and padding

* (webapp)fix:footer links padding + other spacing fix

* (webapp)fix:upcoming background circle

* (webapp)fix:footer margin-10

* (webapp)fix:upcoming bg shape

* (webapp)-andler-changes-request

* (webapp)-debug-toggle navigation icon

* (webapp)-create-mobile-navigation-context

* (webapp)-create-mobile-navigation-context

* (webapp)-fix navigation bug - add key

* (webapp)-Andler-changes

* (webapp)-responsive - upcoming

* (webapp)-fix-responsive-whychooseUs

* (webapp)-fix-responsive-participate

* (webapp)-fix-responsive-media

* (webapp)-fix-responsive-articles

* (webapp)-responsive-project-header+info+sharebtn

* (webapp)-feat-about-base

* (webapp)-feat-about-landing-complete

* (webapp)-feat-security-updated

* (webapp)-fix-steps-padding

* fix typo

* fix bgHeader type

* fix bgHeader type

* impr(webapp): layout tweaks

* impr(webapp): info pages img asset + css class

* fix: bun.lockb

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: multichain indexer ( part 1 ) (#293)

* chore: update app-contracts

* feat: multichain indexer

* feat: prod chains

* feat: presale wallet

* feat: blpl token

* feat: blpl token

* chore: update bunlock

* feat: blpl token

* feat: presale evm contribs

* feat: blpl token

* wip: presale indexer

* chore(indexer): fix dockerfile

* feat: presale transaction indexing (#296)

* feat: report transaction id

* feat: save deposits data

* feat: save deposits data

* feat: read presale transactions

* chore: disable view all

* feat: update presale deposits ui

* feat: display amount raised and contributors

* chore: environment chains and tokens

* fix(webapp): desktop padding (#297)

* feat: multichain presale deposits (#298)

* chore: environment chains and tokens

* fix: chain switch

* fix: chain switch

* feat: update nav links (#299)

* chore: environment chains and tokens

* feat: update nav links

* chore: renable swaps service, index token from latest block

* feat(webapp): wallet ui updates (#300)

* fix: wagmi config

* feat(webapp): presale contribution report

* feat: realtime presale data

* feat: realtime presale data

* feat: update dropdown menu

* feat(supabase): update schema and types

* chore: debug presale token issuance

* feat: show issuance trx link on table

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* impr(webapp): upt mob ver of more info cards (#294) (#305)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* chore: august 2nd release [at TEST]  (#315)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: merge typo

* fix: tailwind font config

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

* chore: august 3rd release [pre-prod] (#334)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>

* chore(fix): update apps/trigger package.json dep

* fix: cms gen merged files + use-session table upt + trigger/tsconfig upt

* fix: registration logic and indexer checks (#347)

* feat(indexer): check if address already bought

* fix(webapp): registration logic

* chore: update bunlock

* fix(webapp): arrow icon

* fix(webapp): arrow icon

* feat: upsert accounts table on login

* fix(webapp): move accounts to session hook

* feat: webapp/hotfix bl project status tag (#348)

* fix(webapp): tablet/small-screen header breakpoint

* impr(webapp): project page hero + blog links upt

* fix(webapp): project badge text upt

* content(webapp): token sale date tbd

* fix(webapp): hero title size (#350)

* fix(webapp): hero title size

* impr(webapp): share link toaster msg

* chore: presale hardcoded txt tweak

* impr(webapp): tailwindcss accent colour upt (#352)

---------

Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Nathanael Liu <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>
Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
AndlerRL added a commit that referenced this pull request Aug 30, 2024
* chore: presale texts revisions (#351)

* chore: add @types/uuid

* chore: add @types/uuid

* fix(app-lib): tsconfig pkg extends

* fix: missing encoding dep

* feat: sitemap (#290)

* feat: add sitemap

* fix: error handling

* fix: move common types

* fix: update base url in sitemap

* Update apps/webapp/app/(routes)/[lang]/blog/[category]/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/wallet/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/whitepaper/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: build error

* fix: remove unnecessary async declarative

* vendor: add @types/uuid

* fix: remove console log for debug

* fix: add 'async' to all sitemaps

* fix: make ProjectPageParams extends CommonPageParams

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(webapp): UI/UX tweaks and upts from final v1 landing designs (#291)

* (webapp)fix:FAQ border radi + muted color

* (webapp)fix:newsletter spacing

* (webapp)fix:participate spacing and font family

* (webapp)fix:header spacing + bitlauncher logo size

* (webapp)fix:blog section 4 per row + purple link + gap

* (webapp)fix:hero-card spacing

* (webapp)fix:auction-card spaces

* (webapp)fix:Upcoming grid gap

* (webapp)fix:article card - text-left

* (webapp)fix:media-card text-start

* (webapp)fix:media-section purple link + space

* (webapp)fix:participate gap + section font and padding

* (webapp)fix:footer links padding + other spacing fix

* (webapp)fix:upcoming background circle

* (webapp)fix:footer margin-10

* (webapp)fix:upcoming bg shape

* (webapp)-andler-changes-request

* (webapp)-debug-toggle navigation icon

* (webapp)-create-mobile-navigation-context

* (webapp)-create-mobile-navigation-context

* (webapp)-fix navigation bug - add key

* (webapp)-Andler-changes

* (webapp)-responsive - upcoming

* (webapp)-fix-responsive-whychooseUs

* (webapp)-fix-responsive-participate

* (webapp)-fix-responsive-media

* (webapp)-fix-responsive-articles

* (webapp)-responsive-project-header+info+sharebtn

* (webapp)-feat-about-base

* (webapp)-feat-about-landing-complete

* (webapp)-feat-security-updated

* (webapp)-fix-steps-padding

* fix typo

* fix bgHeader type

* fix bgHeader type

* impr(webapp): layout tweaks

* impr(webapp): info pages img asset + css class

* fix: bun.lockb

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: multichain indexer ( part 1 ) (#293)

* chore: update app-contracts

* feat: multichain indexer

* feat: prod chains

* feat: presale wallet

* feat: blpl token

* feat: blpl token

* chore: update bunlock

* feat: blpl token

* feat: presale evm contribs

* feat: blpl token

* wip: presale indexer

* chore(indexer): fix dockerfile

* feat: presale transaction indexing (#296)

* feat: report transaction id

* feat: save deposits data

* feat: save deposits data

* feat: read presale transactions

* chore: disable view all

* feat: update presale deposits ui

* feat: display amount raised and contributors

* chore: environment chains and tokens

* fix(webapp): desktop padding (#297)

* feat: multichain presale deposits (#298)

* chore: environment chains and tokens

* fix: chain switch

* fix: chain switch

* feat: update nav links (#299)

* chore: environment chains and tokens

* feat: update nav links

* chore: renable swaps service, index token from latest block

* feat(webapp): wallet ui updates (#300)

* fix: wagmi config

* feat(webapp): presale contribution report

* feat: realtime presale data

* feat: realtime presale data

* feat: update dropdown menu

* feat(supabase): update schema and types

* chore: debug presale token issuance

* feat: show issuance trx link on table

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* impr(webapp): upt mob ver of more info cards (#294) (#305)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* chore: august 2nd release [at TEST]  (#315)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: merge typo

* fix: tailwind font config

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

* chore: august 3rd release [pre-prod] (#334)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>

* chore(fix): update apps/trigger package.json dep

* fix: cms gen merged files + use-session table upt + trigger/tsconfig upt

* fix: registration logic and indexer checks (#347)

* feat(indexer): check if address already bought

* fix(webapp): registration logic

* chore: update bunlock

* fix(webapp): arrow icon

* fix(webapp): arrow icon

* feat: upsert accounts table on login

* fix(webapp): move accounts to session hook

* feat: webapp/hotfix bl project status tag (#348)

* fix(webapp): tablet/small-screen header breakpoint

* impr(webapp): project page hero + blog links upt

* fix(webapp): project badge text upt

* content(webapp): token sale date tbd

* fix(webapp): hero title size (#350)

* fix(webapp): hero title size

* impr(webapp): share link toaster msg

* chore: presale hardcoded txt tweak

---------

Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Nathanael Liu <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>
Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* impr(webapp): tailwindcss accent colours + landing hero accent colour upt (#353)

* chore: add @types/uuid

* chore: add @types/uuid

* fix(app-lib): tsconfig pkg extends

* fix: missing encoding dep

* feat: sitemap (#290)

* feat: add sitemap

* fix: error handling

* fix: move common types

* fix: update base url in sitemap

* Update apps/webapp/app/(routes)/[lang]/blog/[category]/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/wallet/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/whitepaper/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: build error

* fix: remove unnecessary async declarative

* vendor: add @types/uuid

* fix: remove console log for debug

* fix: add 'async' to all sitemaps

* fix: make ProjectPageParams extends CommonPageParams

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(webapp): UI/UX tweaks and upts from final v1 landing designs (#291)

* (webapp)fix:FAQ border radi + muted color

* (webapp)fix:newsletter spacing

* (webapp)fix:participate spacing and font family

* (webapp)fix:header spacing + bitlauncher logo size

* (webapp)fix:blog section 4 per row + purple link + gap

* (webapp)fix:hero-card spacing

* (webapp)fix:auction-card spaces

* (webapp)fix:Upcoming grid gap

* (webapp)fix:article card - text-left

* (webapp)fix:media-card text-start

* (webapp)fix:media-section purple link + space

* (webapp)fix:participate gap + section font and padding

* (webapp)fix:footer links padding + other spacing fix

* (webapp)fix:upcoming background circle

* (webapp)fix:footer margin-10

* (webapp)fix:upcoming bg shape

* (webapp)-andler-changes-request

* (webapp)-debug-toggle navigation icon

* (webapp)-create-mobile-navigation-context

* (webapp)-create-mobile-navigation-context

* (webapp)-fix navigation bug - add key

* (webapp)-Andler-changes

* (webapp)-responsive - upcoming

* (webapp)-fix-responsive-whychooseUs

* (webapp)-fix-responsive-participate

* (webapp)-fix-responsive-media

* (webapp)-fix-responsive-articles

* (webapp)-responsive-project-header+info+sharebtn

* (webapp)-feat-about-base

* (webapp)-feat-about-landing-complete

* (webapp)-feat-security-updated

* (webapp)-fix-steps-padding

* fix typo

* fix bgHeader type

* fix bgHeader type

* impr(webapp): layout tweaks

* impr(webapp): info pages img asset + css class

* fix: bun.lockb

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: multichain indexer ( part 1 ) (#293)

* chore: update app-contracts

* feat: multichain indexer

* feat: prod chains

* feat: presale wallet

* feat: blpl token

* feat: blpl token

* chore: update bunlock

* feat: blpl token

* feat: presale evm contribs

* feat: blpl token

* wip: presale indexer

* chore(indexer): fix dockerfile

* feat: presale transaction indexing (#296)

* feat: report transaction id

* feat: save deposits data

* feat: save deposits data

* feat: read presale transactions

* chore: disable view all

* feat: update presale deposits ui

* feat: display amount raised and contributors

* chore: environment chains and tokens

* fix(webapp): desktop padding (#297)

* feat: multichain presale deposits (#298)

* chore: environment chains and tokens

* fix: chain switch

* fix: chain switch

* feat: update nav links (#299)

* chore: environment chains and tokens

* feat: update nav links

* chore: renable swaps service, index token from latest block

* feat(webapp): wallet ui updates (#300)

* fix: wagmi config

* feat(webapp): presale contribution report

* feat: realtime presale data

* feat: realtime presale data

* feat: update dropdown menu

* feat(supabase): update schema and types

* chore: debug presale token issuance

* feat: show issuance trx link on table

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* impr(webapp): upt mob ver of more info cards (#294) (#305)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* chore: august 2nd release [at TEST]  (#315)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: merge typo

* fix: tailwind font config

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

* chore: august 3rd release [pre-prod] (#334)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>

* chore(fix): update apps/trigger package.json dep

* fix: cms gen merged files + use-session table upt + trigger/tsconfig upt

* fix: registration logic and indexer checks (#347)

* feat(indexer): check if address already bought

* fix(webapp): registration logic

* chore: update bunlock

* fix(webapp): arrow icon

* fix(webapp): arrow icon

* feat: upsert accounts table on login

* fix(webapp): move accounts to session hook

* feat: webapp/hotfix bl project status tag (#348)

* fix(webapp): tablet/small-screen header breakpoint

* impr(webapp): project page hero + blog links upt

* fix(webapp): project badge text upt

* content(webapp): token sale date tbd

* fix(webapp): hero title size (#350)

* fix(webapp): hero title size

* impr(webapp): share link toaster msg

* chore: presale hardcoded txt tweak

* impr(webapp): tailwindcss accent colour upt (#352)

---------

Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Nathanael Liu <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>
Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fix: update text in learn-section

* fix: change "investment" with "contribution"

* fix: typo

* fix(webapp): learn section txt typo upt

---------

Co-authored-by: Roberto Lucas <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>
Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
AndlerRL added a commit that referenced this pull request Sep 2, 2024
* chore: add @types/uuid

* chore: add @types/uuid

* fix(app-lib): tsconfig pkg extends

* fix: missing encoding dep

* feat: sitemap (#290)

* feat: add sitemap

* fix: error handling

* fix: move common types

* fix: update base url in sitemap

* Update apps/webapp/app/(routes)/[lang]/blog/[category]/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/wallet/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/whitepaper/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: build error

* fix: remove unnecessary async declarative

* vendor: add @types/uuid

* fix: remove console log for debug

* fix: add 'async' to all sitemaps

* fix: make ProjectPageParams extends CommonPageParams

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(webapp): UI/UX tweaks and upts from final v1 landing designs (#291)

* (webapp)fix:FAQ border radi + muted color

* (webapp)fix:newsletter spacing

* (webapp)fix:participate spacing and font family

* (webapp)fix:header spacing + bitlauncher logo size

* (webapp)fix:blog section 4 per row + purple link + gap

* (webapp)fix:hero-card spacing

* (webapp)fix:auction-card spaces

* (webapp)fix:Upcoming grid gap

* (webapp)fix:article card - text-left

* (webapp)fix:media-card text-start

* (webapp)fix:media-section purple link + space

* (webapp)fix:participate gap + section font and padding

* (webapp)fix:footer links padding + other spacing fix

* (webapp)fix:upcoming background circle

* (webapp)fix:footer margin-10

* (webapp)fix:upcoming bg shape

* (webapp)-andler-changes-request

* (webapp)-debug-toggle navigation icon

* (webapp)-create-mobile-navigation-context

* (webapp)-create-mobile-navigation-context

* (webapp)-fix navigation bug - add key

* (webapp)-Andler-changes

* (webapp)-responsive - upcoming

* (webapp)-fix-responsive-whychooseUs

* (webapp)-fix-responsive-participate

* (webapp)-fix-responsive-media

* (webapp)-fix-responsive-articles

* (webapp)-responsive-project-header+info+sharebtn

* (webapp)-feat-about-base

* (webapp)-feat-about-landing-complete

* (webapp)-feat-security-updated

* (webapp)-fix-steps-padding

* fix typo

* fix bgHeader type

* fix bgHeader type

* impr(webapp): layout tweaks

* impr(webapp): info pages img asset + css class

* fix: bun.lockb

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: multichain indexer ( part 1 ) (#293)

* chore: update app-contracts

* feat: multichain indexer

* feat: prod chains

* feat: presale wallet

* feat: blpl token

* feat: blpl token

* chore: update bunlock

* feat: blpl token

* feat: presale evm contribs

* feat: blpl token

* wip: presale indexer

* chore(indexer): fix dockerfile

* feat: presale transaction indexing (#296)

* feat: report transaction id

* feat: save deposits data

* feat: save deposits data

* feat: read presale transactions

* chore: disable view all

* feat: update presale deposits ui

* feat: display amount raised and contributors

* chore: environment chains and tokens

* fix(webapp): desktop padding (#297)

* feat: multichain presale deposits (#298)

* chore: environment chains and tokens

* fix: chain switch

* fix: chain switch

* feat: update nav links (#299)

* chore: environment chains and tokens

* feat: update nav links

* chore: renable swaps service, index token from latest block

* feat(webapp): wallet ui updates (#300)

* fix: wagmi config

* feat(webapp): presale contribution report

* feat: realtime presale data

* feat: realtime presale data

* feat: update dropdown menu

* feat(supabase): update schema and types

* chore: debug presale token issuance

* feat: show issuance trx link on table

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* impr(webapp): upt mob ver of more info cards (#294) (#305)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* chore: august 2nd release [at TEST]  (#315)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: merge typo

* fix: tailwind font config

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

* chore: august 3rd release [pre-prod] (#334)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>

* chore(fix): update apps/trigger package.json dep

* fix: cms gen merged files + use-session table upt + trigger/tsconfig upt

* fix: registration logic and indexer checks (#347)

* feat(indexer): check if address already bought

* fix(webapp): registration logic

* chore: update bunlock

* fix(webapp): arrow icon

* fix(webapp): arrow icon

* feat: upsert accounts table on login

* fix(webapp): move accounts to session hook

* feat: webapp/hotfix bl project status tag (#348)

* fix(webapp): tablet/small-screen header breakpoint

* impr(webapp): project page hero + blog links upt

* fix(webapp): project badge text upt

* content(webapp): token sale date tbd

* fix(webapp): hero title size (#350)

* fix(webapp): hero title size

* impr(webapp): share link toaster msg

* chore: presale hardcoded txt tweak

* impr(webapp): tailwindcss accent colour upt (#352)

* chore(webapp): learn section content upt (#354)

* chore: presale texts revisions (#351)

* chore: add @types/uuid

* chore: add @types/uuid

* fix(app-lib): tsconfig pkg extends

* fix: missing encoding dep

* feat: sitemap (#290)

* feat: add sitemap

* fix: error handling

* fix: move common types

* fix: update base url in sitemap

* Update apps/webapp/app/(routes)/[lang]/blog/[category]/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/wallet/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/whitepaper/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: build error

* fix: remove unnecessary async declarative

* vendor: add @types/uuid

* fix: remove console log for debug

* fix: add 'async' to all sitemaps

* fix: make ProjectPageParams extends CommonPageParams

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(webapp): UI/UX tweaks and upts from final v1 landing designs (#291)

* (webapp)fix:FAQ border radi + muted color

* (webapp)fix:newsletter spacing

* (webapp)fix:participate spacing and font family

* (webapp)fix:header spacing + bitlauncher logo size

* (webapp)fix:blog section 4 per row + purple link + gap

* (webapp)fix:hero-card spacing

* (webapp)fix:auction-card spaces

* (webapp)fix:Upcoming grid gap

* (webapp)fix:article card - text-left

* (webapp)fix:media-card text-start

* (webapp)fix:media-section purple link + space

* (webapp)fix:participate gap + section font and padding

* (webapp)fix:footer links padding + other spacing fix

* (webapp)fix:upcoming background circle

* (webapp)fix:footer margin-10

* (webapp)fix:upcoming bg shape

* (webapp)-andler-changes-request

* (webapp)-debug-toggle navigation icon

* (webapp)-create-mobile-navigation-context

* (webapp)-create-mobile-navigation-context

* (webapp)-fix navigation bug - add key

* (webapp)-Andler-changes

* (webapp)-responsive - upcoming

* (webapp)-fix-responsive-whychooseUs

* (webapp)-fix-responsive-participate

* (webapp)-fix-responsive-media

* (webapp)-fix-responsive-articles

* (webapp)-responsive-project-header+info+sharebtn

* (webapp)-feat-about-base

* (webapp)-feat-about-landing-complete

* (webapp)-feat-security-updated

* (webapp)-fix-steps-padding

* fix typo

* fix bgHeader type

* fix bgHeader type

* impr(webapp): layout tweaks

* impr(webapp): info pages img asset + css class

* fix: bun.lockb

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: multichain indexer ( part 1 ) (#293)

* chore: update app-contracts

* feat: multichain indexer

* feat: prod chains

* feat: presale wallet

* feat: blpl token

* feat: blpl token

* chore: update bunlock

* feat: blpl token

* feat: presale evm contribs

* feat: blpl token

* wip: presale indexer

* chore(indexer): fix dockerfile

* feat: presale transaction indexing (#296)

* feat: report transaction id

* feat: save deposits data

* feat: save deposits data

* feat: read presale transactions

* chore: disable view all

* feat: update presale deposits ui

* feat: display amount raised and contributors

* chore: environment chains and tokens

* fix(webapp): desktop padding (#297)

* feat: multichain presale deposits (#298)

* chore: environment chains and tokens

* fix: chain switch

* fix: chain switch

* feat: update nav links (#299)

* chore: environment chains and tokens

* feat: update nav links

* chore: renable swaps service, index token from latest block

* feat(webapp): wallet ui updates (#300)

* fix: wagmi config

* feat(webapp): presale contribution report

* feat: realtime presale data

* feat: realtime presale data

* feat: update dropdown menu

* feat(supabase): update schema and types

* chore: debug presale token issuance

* feat: show issuance trx link on table

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* impr(webapp): upt mob ver of more info cards (#294) (#305)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* chore: august 2nd release [at TEST]  (#315)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: merge typo

* fix: tailwind font config

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

* chore: august 3rd release [pre-prod] (#334)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

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

---------

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

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

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

* fix(webapp): app build, missing file

---------

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

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

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

* feat(indexer): alchemy signature validation

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

---------

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

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

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

---------

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

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>

* chore(fix): update apps/trigger package.json dep

* fix: cms gen merged files + use-session table upt + trigger/tsconfig upt

* fix: registration logic and indexer checks (#347)

* feat(indexer): check if address already bought

* fix(webapp): registration logic

* chore: update bunlock

* fix(webapp): arrow icon

* fix(webapp): arrow icon

* feat: upsert accounts table on login

* fix(webapp): move accounts to session hook

* feat: webapp/hotfix bl project status tag (#348)

* fix(webapp): tablet/small-screen header breakpoint

* impr(webapp): project page hero + blog links upt

* fix(webapp): project badge text upt

* content(webapp): token sale date tbd

* fix(webapp): hero title size (#350)

* fix(webapp): hero title size

* impr(webapp): share link toaster msg

* chore: presale hardcoded txt tweak

---------

Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Nathanael Liu <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>
Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* impr(webapp): tailwindcss accent colours + landing hero accent colour upt (#353)

* chore: add @types/uuid

* chore: add @types/uuid

* fix(app-lib): tsconfig pkg extends

* fix: missing encoding dep

* feat: sitemap (#290)

* feat: add sitemap

* fix: error handling

* fix: move common types

* fix: update base url in sitemap

* Update apps/webapp/app/(routes)/[lang]/blog/[category]/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/wallet/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/whitepaper/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: build error

* fix: remove unnecessary async declarative

* vendor: add @types/uuid

* fix: remove console log for debug

* fix: add 'async' to all sitemaps

* fix: make ProjectPageParams extends CommonPageParams

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(webapp): UI/UX tweaks and upts from final v1 landing designs (#291)

* (webapp)fix:FAQ border radi + muted color

* (webapp)fix:newsletter spacing

* (webapp)fix:participate spacing and font family

* (webapp)fix:header spacing + bitlauncher logo size

* (webapp)fix:blog section 4 per row + purple link + gap

* (webapp)fix:hero-card spacing

* (webapp)fix:auction-card spaces

* (webapp)fix:Upcoming grid gap

* (webapp)fix:article card - text-left

* (webapp)fix:media-card text-start

* (webapp)fix:media-section purple link + space

* (webapp)fix:participate gap + section font and padding

* (webapp)fix:footer links padding + other spacing fix

* (webapp)fix:upcoming background circle

* (webapp)fix:footer margin-10

* (webapp)fix:upcoming bg shape

* (webapp)-andler-changes-request

* (webapp)-debug-toggle navigation icon

* (webapp)-create-mobile-navigation-context

* (webapp)-create-mobile-navigation-context

* (webapp)-fix navigation bug - add key

* (webapp)-Andler-changes

* (webapp)-responsive - upcoming

* (webapp)-fix-responsive-whychooseUs

* (webapp)-fix-responsive-participate

* (webapp)-fix-responsive-media

* (webapp)-fix-responsive-articles

* (webapp)-responsive-project-header+info+sharebtn

* (webapp)-feat-about-base

* (webapp)-feat-about-landing-complete

* (webapp)-feat-security-updated

* (webapp)-fix-steps-padding

* fix typo

* fix bgHeader type

* fix bgHeader type

* impr(webapp): layout tweaks

* impr(webapp): info pages img asset + css class

* fix: bun.lockb

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: multichain indexer ( part 1 ) (#293)

* chore: update app-contracts

* feat: multichain indexer

* feat: prod chains

* feat: presale wallet

* feat: blpl token

* feat: blpl token

* chore: update bunlock

* feat: blpl token

* feat: presale evm contribs

* feat: blpl token

* wip: presale indexer

* chore(indexer): fix dockerfile

* feat: presale transaction indexing (#296)

* feat: report transaction id

* feat: save deposits data

* feat: save deposits data

* feat: read presale transactions

* chore: disable view all

* feat: update presale deposits ui

* feat: display amount raised and contributors

* chore: environment chains and tokens

* fix(webapp): desktop padding (#297)

* feat: multichain presale deposits (#298)

* chore: environment chains and tokens

* fix: chain switch

* fix: chain switch

* feat: update nav links (#299)

* chore: environment chains and tokens

* feat: update nav links

* chore: renable swaps service, index token from latest block

* feat(webapp): wallet ui updates (#300)

* fix: wagmi config

* feat(webapp): presale contribution report

* feat: realtime presale data

* feat: realtime presale data

* feat: update dropdown menu

* feat(supabase): update schema and types

* chore: debug presale token issuance

* feat: show issuance trx link on table

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* impr(webapp): upt mob ver of more info cards (#294) (#305)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant