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

Bob/fix landing #2649

Merged
merged 34 commits into from
Jan 21, 2025
Merged

Bob/fix landing #2649

merged 34 commits into from
Jan 21, 2025

Conversation

bob0005
Copy link
Collaborator

@bob0005 bob0005 commented Jan 21, 2025

Summary by CodeRabbit

Release Notes

  • New Features

    • Added Progressive Web App (PWA) support for the landing application
    • Enhanced type safety for various components and hooks
  • Improvements

    • Updated import paths and module configurations
    • Refined environment variable handling
    • Improved configuration management for game-related utilities
  • Changes

    • Removed Discord and Eternum logo from sidebar
    • Updated bridge fees and leaderboard panel configurations
    • Modified Starknet provider settings
  • Technical Updates

    • Streamlined TypeScript configuration
    • Added new type definitions
    • Updated Vite configuration with new asset path alias

credence0x and others added 30 commits January 7, 2025 17:41
* contracts & client: increase resource precision from 3 to 9

* contracts & discord-bot: update folder structure

* rustfmt
* new production wip

* new production wip

* production simplified

* new production compiles

* update production implementation

* scarb fmt

* improve scripts

* update scripts

* improve scripts

* knip (#2635)

* fix knip

* fixed landing knip

* fix knip balancing

* knip

* improve scripts

* prettier (#2636)

* clean

* add prettier rules

* update prettier ignore

* prettier format

* gql codegen

* Fix lint CI

* scarb fmt

---------

Co-authored-by: Bob <[email protected]>

* improve configuration

* improve configuration

* Enh/clean assets (#2637)

* Delete deprecated pngs from /game

* Delete deprecated mp3 from /game

* Consolidate public assets

* Adapt imports

* Fix spelling

* improve configuration

* Fix naming conventions (#2638)

* Fix naming conventions in game directory

* fix build

* Kebab

* fix imports

* adapt naming conventions

* formatting

* knip

* Formatting

* update policies (#2639)

* update policies

* fix knip

* prettier

* improve scripts

* improve config deploy flow based on env

* improve config deploy flow based on env

* improve config deploy flow based on env

* fix indexing

* fix indexing

* add permisson revoke script

* ++Refactor use-armies and clean battles (#2640)

* clean battles

* refactor use-armies

* refactor use bank

* update

* working client

* working client

* rename s0_eternum to s1_eternum

* update world address

* update env

* Merge branch 'next' of https://github.com/BibliothecaDAO/eternum into feat/labor

---------

Co-authored-by: raschel <[email protected]>
Co-authored-by: Bob <[email protected]>
Co-authored-by: Bob <[email protected]>
Copy link

vercel bot commented Jan 21, 2025

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

Name Status Preview Comments Updated (UTC)
eternum ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jan 21, 2025 10:57am
eternum-docs ❌ Failed (Inspect) Jan 21, 2025 10:57am
1 Skipped Deployment
Name Status Preview Comments Updated (UTC)
eternum-landing ⬜️ Ignored (Inspect) Visit Preview Jan 21, 2025 10:57am

Copy link
Contributor

mentatbot bot commented Jan 21, 2025

Hi @bob0005! You need to be added as a user to interact with me. Please ask @ponderingdemocritus to add you on the settings page.

You are receiving this comment because I am set to review all PRs. That is configurable here.

Copy link
Contributor

coderabbitai bot commented Jan 21, 2025

Warning

There were issues while running some tools. Please review the errors and either fix the tool’s configuration or disable the tool if it’s a critical failure.

🔧 eslint

If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.

client/apps/landing/dojoConfig.ts

Oops! Something went wrong! :(

ESLint: 9.18.0

ESLint couldn't find an eslint.config.(js|mjs|cjs) file.

From ESLint v9.0.0, the default configuration file is now eslint.config.js.
If you are using a .eslintrc.* file, please follow the migration guide
to update your configuration file to the new format:

https://eslint.org/docs/latest/use/configure/migration-guide

If you still have problems after following the migration guide, please stop by
https://eslint.org/chat/help to chat with the team.

Walkthrough

This pull request involves multiple modifications across the client application, focusing on configuration management, import path restructuring, and component updates. The changes primarily affect how game manifests, addresses, and configurations are imported and utilized. Key modifications include updating import paths, changing function invocations to be asynchronous, adjusting type definitions, and simplifying configuration management. The changes aim to improve type safety, streamline configuration retrieval, and enhance the overall structure of the client-side application.

Changes

File Change Summary
client/apps/landing/dojoConfig.ts Updated import path for getGameManifest and changed to async function call
client/apps/landing/package.json Added new script for Vite PWA plugin
client/apps/landing/src/components/modules/app-sidebar.tsx Commented out Discord and EternumLogo imports and components
client/apps/landing/src/components/modules/bridge-fees.tsx Updated bridge configuration retrieval method
client/apps/landing/src/components/modules/player-leaderboard-panel.tsx Changed players property type from Player[] to PlayerInfo[]
client/apps/landing/src/components/providers/starknet-provider.tsx Modified cartridgeController configuration
client/apps/landing/src/routes/mint.lazy.tsx Extended isDev condition check
client/apps/landing/src/types/index.ts Added new SeasonPassMint type
client/apps/landing/vite.config.ts Added new alias for assets path
config/utils/utils.ts Added @vite-ignore comments to import statements
packages/core/src/modelManager/ConfigManager.ts Updated initialization methods in ClientConfigManager

Possibly related PRs

Suggested Reviewers

  • aymericdelab

Poem

🐰 A Rabbit's Configuration Tale 🔧

In paths of code, we hop and weave,
Async calls now make configs breathe
Imports dance, types align just right
Our landing app shines ever bright!

Configuration, our rabbit's delight! 🚀

✨ Finishing Touches
  • 📝 Generate Docstrings (Beta)

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>, please review it.
    • 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 gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @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 using 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 generate docstrings to generate docstrings for this PR. (Beta)
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

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

Failed to generate code suggestions for PR

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: 2

🔭 Outside diff range comments (2)
client/apps/landing/src/components/modules/bridge-fees.tsx (1)

Import BRIDGE_FEE_DENOMINATOR from shared configuration

The constant is already defined in config/environments/_shared_.ts. To maintain consistency and avoid potential errors, import it from there instead of redefining it in the component.

  • Replace the local definition with: import { BRIDGE_FEE_DENOMINATOR } from "config/environments/_shared_";
🔗 Analysis chain

Line range hint 9-10: Address the TODO comment about configuration.

The comment suggests that BRIDGE_FEE_DENOMINATOR should be obtained from configuration. This should be addressed or the comment should be updated with the reason why it's hardcoded.

Let's check if this value exists in the configuration:

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Search for BRIDGE_FEE_DENOMINATOR in configuration files
rg -i "bridge.*fee.*denominator" --type ts --type json

Length of output: 2048

client/apps/landing/src/routes/mint.lazy.tsx (1)

Line range hint 143-149: Fix undefined status variable and improve error handling.

The status variable used in SeasonPassMintDialog is undefined, which could cause runtime errors. Additionally, the component lacks proper error handling.

  1. Add proper status handling:
+  const [status, setStatus] = useState<'idle' | 'loading' | 'success' | 'error'>('idle');
   {isOpen && (
     <SeasonPassMintDialog
       isOpen={isOpen}
       setIsOpen={setIsOpen}
       deselectAllNfts={deselectAllNfts}
       isSuccess={status === "success"}
       realm_ids={selectedTokenIds}
     />
   )}
  1. Consider adding error boundaries and loading states to improve user experience.
🧹 Nitpick comments (13)
client/apps/landing/src/types/index.ts (1)

11-23: LGTM! Consider enhancing type safety.

The SeasonPassMint type is well-structured for GraphQL integration. Consider making the __typename for Token__Balance non-optional since it's a discriminator field.

-    __typename?: "Token__Balance";
+    __typename: "Token__Balance";
config/utils/utils.ts (1)

Line range hint 12-12: Remove debug console.log statement.

Debug logging should be removed before merging to production.

-  console.log({ ADDRESSES_FILE });
client/apps/landing/src/hooks/use-lords-bridged.tsx (3)

2-3: Remove or resolve the commented import.

The comment "why not working" suggests an unresolved issue. Either document the reason why this import doesn't work or remove the commented code if it's no longer needed.


5-5: Simplify the import path.

The relative import path with multiple parent directory references (../../../../../) is fragile and hard to maintain. Consider using path aliases or restructuring the imports.

Consider using a path alias like this:

-import { Chain, getGameManifest } from "../../../../../config/utils/utils";
+import { Chain, getGameManifest } from "@/config/utils";

22-24: Add proper typing for the manifest object.

The inline type annotation for manifest is verbose and could be moved to a proper type definition.

Consider creating a proper type:

type GameManifest = {
  contracts?: Array<{
    tag: string;
    address?: string;
  }>;
};

Then use it like:

-      const manifest: { contracts?: Array<{ tag: string; address?: string }> } = await getGameManifest(
+      const manifest: GameManifest = await getGameManifest(
        VITE_PUBLIC_CHAIN as Chain,
      );
client/apps/landing/src/hooks/use-rewards.tsx (1)

Line range hint 21-44: Consider extracting the prize pool fetching logic.

The useEffect contains complex logic that could be extracted into a separate function for better readability and testability.

Consider refactoring like this:

const fetchPrizePool = async () => {
  const season_pool_fee_recipient = configManager?.getResourceBridgeFeeSplitConfig()?.season_pool_fee_recipient;
  if (!season_pool_fee_recipient) {
    throw new Error("Season pool fee recipient not configured");
  }
  
  const recipientAddress = "0x" + season_pool_fee_recipient.toString(16);
  const balance = await getBalance(recipientAddress);
  
  if (balance?.[0]) {
    return BigInt(balance[0]);
  }
  return 0n;
};

useEffect(() => {
  const getPrizePool = async () => {
    try {
      const pool = await fetchPrizePool();
      setPrizePool(pool);
    } catch (err) {
      console.error("Error getting prize pool:", err);
    }
  };

  getPrizePool();
  const interval = setInterval(getPrizePool, 60000);
  return () => clearInterval(interval);
}, []);
client/apps/landing/src/components/providers/starknet-provider.tsx (2)

9-9: Remove or resolve the commented import.

The commented import for cartridgeController suggests confusion about which import to use.


24-33: Clean up duplicate namespace configuration.

The namespace is declared both as a constant and in the configuration object. Additionally, some properties could be grouped better.

Consider refactoring like this:

 const cartridgeController = new ControllerConnector({
   chains: [{ rpcUrl: env.VITE_PUBLIC_NODE_URL }],
   defaultChainId: constants.StarknetChainId.SN_SEPOLIA,
-  namespace,
-  slot,
-  preset,
-  theme,
+  appearance: {
+    theme,
+    preset,
+  },
+  config: {
+    namespace,
+    slot,
+  },
   tokens: {
     erc20: [LORDS, ...otherResources],
   },
-  // namespace,
 });
client/apps/landing/src/components/modules/bridge-fees.tsx (2)

94-94: Improve type safety when accessing ResourcesIds.

The type casting could be made safer by using type guards or ensuring the type at compile time.

Consider refactoring like this:

function isValidResourceId(id: string): id is keyof typeof ResourcesIds {
  return id in ResourcesIds;
}

// Then use it like:
const resourceName = isValidResourceId(fees.id) 
  ? ResourcesIds[fees.id].toString()
  : 'Unknown Resource';

43-43: Consider extracting fee calculation logic.

The fee calculation logic is repeated multiple times and could be extracted into a utility function for better maintainability.

Consider creating a utility function:

type FeeType = 'deposit' | 'withdrawal';
type FeeCalculation = {
  velordsFee: number;
  seasonPoolFee: number;
  clientFee: number;
  bankFee: number;
};

function calculateFees(amount: string, type: FeeType, config: typeof bridgeConfig): FeeCalculation {
  return {
    velordsFee: calculateBridgeFee(
      type === "deposit" ? config.velords_fee_on_dpt_percent : config.velords_fee_on_wtdr_percent,
      amount
    ),
    seasonPoolFee: calculateBridgeFee(
      type === "deposit" ? config.season_pool_fee_on_dpt_percent : config.season_pool_fee_on_wtdr_percent,
      amount
    ),
    clientFee: calculateBridgeFee(
      type === "deposit" ? config.client_fee_on_dpt_percent : config.client_fee_on_wtdr_percent,
      amount
    ),
    bankFee: calculateBridgeFee(
      type === "deposit" ? config.max_bank_fee_dpt_percent : config.max_bank_fee_wtdr_percent,
      amount
    ),
  };
}

Also applies to: 48-65

packages/core/src/modelManager/ConfigManager.ts (1)

90-90: Remove unnecessary return statements.

The return; statements at the end of these initialization methods are unnecessary as they don't return any value and are at the end of the function.

-    return;

Also applies to: 166-166, 203-203, 241-241

🧰 Tools
🪛 GitHub Actions: lint

[warning] Code formatting does not match Prettier standards. Run Prettier with --write to fix.

client/apps/landing/src/routes/mint.lazy.tsx (2)

54-54: Improve type safety and maintainability of environment variable handling.

While the logic is correct, consider these improvements:

  1. Add type assertions for environment variables
  2. Extract magic strings into constants
  3. Move this logic to a configuration utility
+const CHAIN_TYPE = {
+  LOCAL: 'local'
+} as const;
+
+// In a separate config utility file
+const isDevelopmentMode = () => {
+  const chain = import.meta.env.VITE_PUBLIC_CHAIN as string;
+  const isDev = import.meta.env.VITE_PUBLIC_DEV as string;
+  return chain === CHAIN_TYPE.LOCAL || isDev === 'true';
+};
+
-const isDev = import.meta.env.VITE_PUBLIC_CHAIN === "local" || import.meta.env.VITE_PUBLIC_DEV === "true";
+const isDev = isDevelopmentMode();

Line range hint 31-157: Consider splitting the Mint component for better maintainability.

The component handles multiple responsibilities and has grown quite large. Consider breaking it down into smaller, focused components:

  1. NFTSelectionManager
  2. MintingActions
  3. GridContainer

This would improve:

  • Testability
  • Code reusability
  • Maintenance
  • Performance optimization opportunities

Would you like me to provide a detailed refactoring plan?

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between ca2df00 and 24d2394.

📒 Files selected for processing (16)
  • client/apps/landing/dojoConfig.ts (2 hunks)
  • client/apps/landing/package.json (1 hunks)
  • client/apps/landing/src/components/modules/app-sidebar.tsx (3 hunks)
  • client/apps/landing/src/components/modules/bridge-fees.tsx (3 hunks)
  • client/apps/landing/src/components/modules/player-leaderboard-panel.tsx (2 hunks)
  • client/apps/landing/src/components/providers/starknet-provider.tsx (2 hunks)
  • client/apps/landing/src/components/ui/sidebar.tsx (2 hunks)
  • client/apps/landing/src/components/ui/utils/addresses.ts (1 hunks)
  • client/apps/landing/src/hooks/use-lords-bridged.tsx (2 hunks)
  • client/apps/landing/src/hooks/use-rewards.tsx (1 hunks)
  • client/apps/landing/src/routes/mint.lazy.tsx (1 hunks)
  • client/apps/landing/src/types/index.ts (1 hunks)
  • client/apps/landing/tsconfig.json (1 hunks)
  • client/apps/landing/vite.config.ts (1 hunks)
  • config/utils/utils.ts (2 hunks)
  • packages/core/src/modelManager/ConfigManager.ts (4 hunks)
✅ Files skipped from review due to trivial changes (3)
  • client/apps/landing/src/components/modules/app-sidebar.tsx
  • client/apps/landing/src/components/ui/utils/addresses.ts
  • client/apps/landing/src/components/ui/sidebar.tsx
🧰 Additional context used
🪛 GitHub Actions: knip
client/apps/landing/src/components/modules/bridge-fees.tsx

[warning] 9-9: Unused export 'BRIDGE_FEE_DENOMINATOR'

🪛 GitHub Actions: lint
packages/core/src/modelManager/ConfigManager.ts

[warning] Code formatting does not match Prettier standards. Run Prettier with --write to fix.

⏰ Context from checks skipped due to timeout of 90000ms (2)
  • GitHub Check: clippy
  • GitHub Check: Run pr agent on every pull request, respond to user comments
🔇 Additional comments (6)
client/apps/landing/dojoConfig.ts (1)

2-2: Verify top-level await support in build configuration.

The change to async manifest loading is correct. The required vite-plugin-top-level-await is present in the build config.

Run this script to verify the import path exists:

Also applies to: 16-16

✅ Verification successful

Import path and exported symbols verified successfully

The import path is valid and both Chain type and getGameManifest function are properly exported from config/utils/utils.ts. The async implementation is correctly aligned with the top-level await usage.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Verify the new import path exists
fd "utils.ts$" config/utils/

Length of output: 52


Script:

#!/bin/bash
# Check for exports of Chain and getGameManifest
ast-grep --pattern 'export { $$ Chain $$ }'
ast-grep --pattern 'export function getGameManifest'

Length of output: 100


Script:

#!/bin/bash
# Check file content for exports with broader patterns
rg "export.*Chain" config/utils/utils.ts
rg "export.*getGameManifest" config/utils/utils.ts
rg "export type Chain" config/utils/utils.ts

Length of output: 503

config/utils/utils.ts (1)

16-16: Consider using more robust path resolution for JSON imports.

The relative paths to JSON files might be brittle. Consider:

  1. Using path resolution utilities
  2. Moving paths to configuration
  3. Adding existence checks for the files

Also applies to: 41-41

client/apps/landing/src/components/modules/player-leaderboard-panel.tsx (2)

Line range hint 1-190: Well-structured component with accessibility and UX considerations!

The implementation includes:

  • Clear prop documentation
  • Accessible tooltips
  • Responsive grid layout
  • Proper number formatting
  • Efficient pagination
  • Search functionality

14-14: Verify the PlayerInfo type compatibility.

The change from Player[] to PlayerInfo[] type needs verification to ensure all required properties (name, realms, mines, hyperstructures, points, percentage, lords, isAlive) are present in the new type.

✅ Verification successful

Type change is compatible and correctly implemented

The PlayerInfo interface contains all required properties (name, realms, mines, hyperstructures, points, percentage, lords, isAlive) and they are properly used throughout the leaderboard component.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Search for PlayerInfo type definition and its usage
ast-grep --pattern 'type PlayerInfo = {
  $$$
}'

# Check for any other components using PlayerInfo
rg -l "PlayerInfo"

Length of output: 756


Script:

#!/bin/bash
# Get PlayerInfo type definition
cat packages/core/src/types/common.ts | grep -A 20 "type PlayerInfo"

# Check property usage in leaderboard panel
rg -A 5 "players\." client/apps/landing/src/components/modules/player-leaderboard-panel.tsx

Length of output: 497


Script:

#!/bin/bash
# Try both interface and type patterns for PlayerInfo
ast-grep --pattern 'interface PlayerInfo {
  $$$
}'

ast-grep --pattern 'type PlayerInfo = {
  $$$
}'

# Get more context from the component
cat client/apps/landing/src/components/modules/player-leaderboard-panel.tsx

Length of output: 9141

packages/core/src/modelManager/ConfigManager.ts (1)

Line range hint 91-98: Good simplification of initialization methods!

The refactor improves maintainability by:

  • Removing complex component queries
  • Using direct config access
  • Simplifying the initialization logic

Also applies to: 167-172, 204-209, 242-247

🧰 Tools
🪛 GitHub Actions: lint

[warning] Code formatting does not match Prettier standards. Run Prettier with --write to fix.

client/apps/landing/tsconfig.json (1)

7-9: Clean and minimal path configuration!

The simplified paths configuration maintains the essential @/* mapping while removing unnecessary complexity.

@@ -15,6 +15,7 @@ export default defineConfig(({ mode }) => {
resolve: {
alias: {
"@": path.resolve(__dirname, "./src"),
"@/assets": path.resolve(__dirname, "../../public/assets"),
Copy link
Contributor

Choose a reason for hiding this comment

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

💡 Codebase verification

Misaligned public directory configurations

The current setup has inconsistent public directory configurations:

  • publicDir points to ../../common/public
  • @/assets alias points to ../../public/assets
  • Actual assets are located in client/public/assets/

These paths should be aligned to use the same base public directory to ensure correct asset serving and building.

🔗 Analysis chain

Verify assets directory structure and alignment.

The new alias points to ../../public/assets while the publicDir is set to ../../common/public. Verify that this directory structure is intentional and the assets are in the correct location.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Check if both directories exist and their relationship
echo "Checking public directories..."
fd -t d "public$" --max-depth 3
echo "Checking assets directories..."
fd -t d "assets$" --max-depth 4

Length of output: 246


Script:

#!/bin/bash
# Check the vite config file for publicDir setting
echo "Checking vite.config.ts content..."
cat client/apps/landing/vite.config.ts

Length of output: 1145

Comment on lines +16 to +17
"storybook": "storybook dev -p 6006",
"vite-plugin-pwa": "^0.20.5"
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Move vite-plugin-pwa to dependencies section.

The vite-plugin-pwa entry is incorrectly placed in the scripts section. It should be moved to the dependencies section.

  "scripts": {
-   "storybook": "storybook dev -p 6006",
-   "vite-plugin-pwa": "^0.20.5"
+   "storybook": "storybook dev -p 6006"
  },
  "dependencies": {
+   "vite-plugin-pwa": "^0.20.5",
    "@ark-project/core": "3.0.0-beta.1",

Committable suggestion skipped: line range outside the PR's diff.

@aymericdelab aymericdelab merged commit 356139f into next Jan 21, 2025
7 of 29 checks passed
@aymericdelab aymericdelab deleted the bob/fix-landing branch January 21, 2025 12:07
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.

3 participants