This commit is contained in:
2026-08-28 17:31:02 +02:00
commit 2b30e8bd39
694 changed files with 49243 additions and 0 deletions
+51
View File
@@ -0,0 +1,51 @@
export function env(name: keyof ImportMetaEnv): string {
const value = import.meta.env[name];
return typeof value === 'string' ? value : '';
}
const apiBaseUrl = env('VITE_API_BASE_URL');
export const config = {
api: {
baseUrl: apiBaseUrl,
rootUrl: apiBaseUrl.split('/api')[0]
},
shopFiatCurrency: env('VITE_SHOP_FIAT_CURRENCY'),
productThumb: {
accept: env('VITE_PRODUCT_THUMB_ALLOWED_MIMES'),
maxFileBytes: parseInt(env('VITE_PRODUCT_THUMB_MAX_FILE_BYTES'), 10)
},
shopLogo: {
accept: env('VITE_SHOP_LOGO_ALLOWED_MIMES'),
maxFileBytes: parseInt(env('VITE_SHOP_LOGO_MAX_FILE_BYTES'), 10)
},
shopFavicon: {
accept: env('VITE_SHOP_FAVICON_ALLOWED_MIMES'),
maxFileBytes: parseInt(env('VITE_SHOP_FAVICON_MAX_FILE_BYTES'), 10)
},
digitalStockAttachment: {
accept: env('VITE_DIGITAL_STOCK_ATTACHMENT_ALLOWED_MIMES'),
maxFileBytes: parseInt(env('VITE_DIGITAL_STOCK_ATTACHMENT_MAX_FILE_BYTES'), 10)
},
validation: {
productTitleMaxLength: parseInt(env('VITE_VALIDATION_PRODUCT_TITLE_MAX_LENGTH'), 10),
categoryNameMaxLength: parseInt(env('VITE_VALIDATION_CATEGORY_NAME_MAX_LENGTH'), 10),
discountCodeMaxLength: parseInt(env('VITE_VALIDATION_DISCOUNT_CODE_MAX_LENGTH'), 10),
variantImagesMax: parseInt(env('VITE_VALIDATION_VARIANT_IMAGES_MAX'), 10),
digitalStockAttachmentsMax: parseInt(env('VITE_VALIDATION_DIGITAL_STOCK_ATTACHMENTS_MAX'), 10),
shippingNoteMinLength: parseInt(env('VITE_VALIDATION_SHIPPING_NOTE_MIN_LENGTH'), 10),
shippingNoteMaxLength: parseInt(env('VITE_VALIDATION_SHIPPING_NOTE_MAX_LENGTH'), 10),
orderMessageMaxLength: parseInt(env('VITE_VALIDATION_ORDER_MESSAGE_MAX_LENGTH'), 10)
},
orders: {
detailPollIntervalMs: parseInt(env('VITE_ORDERS_DETAIL_POLL_INTERVAL_MS'), 10)
}
};