fix(config): align notes product identity across web and mobile

This commit is contained in:
saravanakumardb1 2026-03-10 11:45:59 -07:00
parent 1b81489ecd
commit 8174962ef1
5 changed files with 18 additions and 9 deletions

View File

@ -1,6 +1,6 @@
import { createAuthClient } from '@bytelyst/auth-client'; import { createAuthClient } from '@bytelyst/auth-client';
import type { TokenStorage } from '@bytelyst/auth-client'; import type { TokenStorage } from '@bytelyst/auth-client';
import { API_CONFIG } from './config'; import { API_CONFIG, PRODUCT_ID } from './config';
import { mmkvStorage } from '../store/mmkv-storage'; import { mmkvStorage } from '../store/mmkv-storage';
const tokenStorage: TokenStorage = { const tokenStorage: TokenStorage = {
@ -17,7 +17,7 @@ export function getAuthClient() {
baseUrl: API_CONFIG.platformBaseUrl, baseUrl: API_CONFIG.platformBaseUrl,
productId: API_CONFIG.productId, productId: API_CONFIG.productId,
storage: tokenStorage, storage: tokenStorage,
storagePrefix: 'bytelyst-notes', storagePrefix: PRODUCT_ID,
timeoutMs: API_CONFIG.timeoutMs, timeoutMs: API_CONFIG.timeoutMs,
}); });
} }

View File

@ -1,6 +1,11 @@
import productIdentity from '../../../shared/product.json';
export const PRODUCT_ID = productIdentity.productId;
export const PRODUCT_NAME = productIdentity.displayName;
export const API_CONFIG = { export const API_CONFIG = {
productId: 'bytelyst-notes', productId: PRODUCT_ID,
platformBaseUrl: 'http://localhost:4003/api', platformBaseUrl: process.env.EXPO_PUBLIC_PLATFORM_SERVICE_URL ?? 'http://localhost:4003/api',
productBaseUrl: 'http://localhost:4016/api', productBaseUrl: process.env.EXPO_PUBLIC_NOTES_API_URL ?? 'http://localhost:4016/api',
timeoutMs: 15000, timeoutMs: 15000,
} as const; } as const;

View File

@ -1,11 +1,12 @@
import { createOfflineQueue } from '@bytelyst/offline-queue'; import { createOfflineQueue } from '@bytelyst/offline-queue';
import { PRODUCT_ID } from '../api/config';
import { mmkvStorage } from '../store/mmkv-storage'; import { mmkvStorage } from '../store/mmkv-storage';
export const OFFLINE_QUEUE_MAX_RETRIES = 5; export const OFFLINE_QUEUE_MAX_RETRIES = 5;
export const OFFLINE_QUEUE_MAX_SIZE = 50; export const OFFLINE_QUEUE_MAX_SIZE = 50;
export const noteOfflineQueue = createOfflineQueue({ export const noteOfflineQueue = createOfflineQueue({
storageKey: 'bytelyst-notes-offline-queue', storageKey: `${PRODUCT_ID}-offline-queue`,
storage: { storage: {
getItem: (key: string) => mmkvStorage.getItem(key), getItem: (key: string) => mmkvStorage.getItem(key),
setItem: (key: string, value: string) => mmkvStorage.setItem(key, value), setItem: (key: string, value: string) => mmkvStorage.setItem(key, value),

View File

@ -1,10 +1,11 @@
import { MMKV } from 'react-native-mmkv'; import { MMKV } from 'react-native-mmkv';
import { PRODUCT_ID } from '../api/config';
let storage: MMKV | null = null; let storage: MMKV | null = null;
function getStorage() { function getStorage() {
if (!storage) { if (!storage) {
storage = new MMKV({ id: 'bytelyst-agentic-notes-mobile' }); storage = new MMKV({ id: `${PRODUCT_ID}-mobile` });
} }
return storage; return storage;

View File

@ -1,5 +1,7 @@
export const PRODUCT_NAME = process.env.NEXT_PUBLIC_PRODUCT_NAME ?? "ByteLyst Agentic Notes"; import productIdentity from "../../../shared/product.json";
export const PRODUCT_ID = process.env.NEXT_PUBLIC_PRODUCT_ID ?? "agentic-notes";
export const PRODUCT_NAME = process.env.NEXT_PUBLIC_PRODUCT_NAME ?? productIdentity.displayName;
export const PRODUCT_ID = process.env.NEXT_PUBLIC_PRODUCT_ID ?? productIdentity.productId;
export const PLATFORM_SERVICE_URL = export const PLATFORM_SERVICE_URL =
process.env.NEXT_PUBLIC_PLATFORM_SERVICE_URL ?? "http://localhost:4003/api"; process.env.NEXT_PUBLIC_PLATFORM_SERVICE_URL ?? "http://localhost:4003/api";
export const NOTES_API_URL = process.env.NEXT_PUBLIC_NOTES_API_URL ?? "http://localhost:4016/api"; export const NOTES_API_URL = process.env.NEXT_PUBLIC_NOTES_API_URL ?? "http://localhost:4016/api";