Merge pull request #2282 from appwrite/fix-float-data

This commit is contained in:
Darshan
2025-08-30 12:24:13 +05:30
committed by GitHub
2 changed files with 13 additions and 9 deletions
+9 -9
View File
@@ -2,6 +2,7 @@ import { faker } from '@faker-js/faker';
import type { Columns } from '$routes/(console)/project-[region]-[project]/databases/database-[database]/table-[table]/store';
import { ID, type Models } from '@appwrite.io/console';
import { sdk } from '$lib/stores/sdk';
import { isWithinSafeRange } from '$lib/helpers/numbers';
export async function generateColumns(
project: Models.Project,
@@ -167,19 +168,18 @@ function generateSingleValue(column: Columns): string | number | boolean | null
case 'integer': {
const intAttr = column as Models.ColumnInteger;
const min = intAttr.min ?? 0;
const max = intAttr.max ?? 10000;
const min = !isWithinSafeRange(intAttr.min) ? 0 : intAttr.min;
const max = !isWithinSafeRange(intAttr.max) ? 100 : intAttr.max;
return faker.number.int({ min, max });
}
case 'float': {
case 'double': {
const floatAttr = column as Models.ColumnFloat;
const min = floatAttr.min ?? 0;
const max = floatAttr.max ?? 1000000;
const precision = 2;
return parseFloat(
faker.number.float({ min, max, fractionDigits: precision }).toFixed(precision)
);
const min = !isWithinSafeRange(floatAttr.min) ? 0 : floatAttr.min;
const max = !isWithinSafeRange(floatAttr.max) ? 100 : floatAttr.max;
const precision = 4;
return faker.number.float({ min, max, fractionDigits: precision });
}
case 'boolean': {
+4
View File
@@ -32,3 +32,7 @@ export function formatCurrency(number: number, locale = 'en-US', currency = 'USD
});
return formatter.format(number);
}
export function isWithinSafeRange(val: number) {
return Math.abs(val) < Number.MAX_SAFE_INTEGER;
}