@cranberry-money/shared-constants 8.9.1 → 8.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/auth.d.ts +21 -0
- package/dist/api/auth.d.ts.map +1 -0
- package/dist/api/auth.js +24 -0
- package/dist/api/auth.js.map +1 -0
- package/dist/api/config.d.ts +36 -0
- package/dist/api/config.d.ts.map +1 -0
- package/dist/api/config.js +45 -0
- package/dist/api/config.js.map +1 -0
- package/dist/api/endpoints.d.ts +157 -0
- package/dist/api/endpoints.d.ts.map +1 -0
- package/dist/api/endpoints.js +185 -0
- package/dist/api/endpoints.js.map +1 -0
- package/dist/api/http.d.ts +57 -0
- package/dist/api/http.d.ts.map +1 -0
- package/dist/api/http.js +63 -0
- package/dist/api/http.js.map +1 -0
- package/dist/api/index.d.ts +9 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +9 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/services.d.ts +9 -0
- package/dist/api/services.d.ts.map +1 -0
- package/dist/api/services.js +9 -0
- package/dist/api/services.js.map +1 -0
- package/dist/business/accounts.d.ts +38 -0
- package/dist/business/accounts.d.ts.map +1 -0
- package/dist/business/accounts.js +54 -0
- package/dist/business/accounts.js.map +1 -0
- package/dist/business/bank-accounts.d.ts +71 -0
- package/dist/business/bank-accounts.d.ts.map +1 -0
- package/dist/business/bank-accounts.js +70 -0
- package/dist/business/bank-accounts.js.map +1 -0
- package/dist/business/banking.d.ts +44 -0
- package/dist/business/banking.d.ts.map +1 -0
- package/dist/business/banking.js +70 -0
- package/dist/business/banking.js.map +1 -0
- package/dist/business/cache.d.ts +9 -0
- package/dist/business/cache.d.ts.map +1 -0
- package/dist/business/cache.js +9 -0
- package/dist/business/cache.js.map +1 -0
- package/dist/business/countries.d.ts +11 -0
- package/dist/business/countries.d.ts.map +1 -0
- package/dist/business/countries.js +12 -0
- package/dist/business/countries.js.map +1 -0
- package/dist/business/documents.d.ts +48 -0
- package/dist/business/documents.d.ts.map +1 -0
- package/dist/business/documents.js +76 -0
- package/dist/business/documents.js.map +1 -0
- package/dist/business/holdings.d.ts +34 -0
- package/dist/business/holdings.d.ts.map +1 -0
- package/dist/business/holdings.js +35 -0
- package/dist/business/holdings.js.map +1 -0
- package/dist/business/index.d.ts +16 -0
- package/dist/business/index.d.ts.map +1 -0
- package/dist/business/index.js +28 -0
- package/dist/business/index.js.map +1 -0
- package/dist/business/industries.d.ts +9 -0
- package/dist/business/industries.d.ts.map +1 -0
- package/dist/business/industries.js +10 -0
- package/dist/business/industries.js.map +1 -0
- package/dist/business/investments.d.ts +87 -0
- package/dist/business/investments.d.ts.map +1 -0
- package/dist/business/investments.js +94 -0
- package/dist/business/investments.js.map +1 -0
- package/dist/business/status/banks.d.ts +29 -0
- package/dist/business/status/banks.d.ts.map +1 -0
- package/dist/business/status/banks.js +36 -0
- package/dist/business/status/banks.js.map +1 -0
- package/dist/business/status/cash-accounts.d.ts +56 -0
- package/dist/business/status/cash-accounts.d.ts.map +1 -0
- package/dist/business/status/cash-accounts.js +63 -0
- package/dist/business/status/cash-accounts.js.map +1 -0
- package/dist/business/status/documents.d.ts +25 -0
- package/dist/business/status/documents.d.ts.map +1 -0
- package/dist/business/status/documents.js +35 -0
- package/dist/business/status/documents.js.map +1 -0
- package/dist/business/status/index.d.ts +11 -0
- package/dist/business/status/index.d.ts.map +1 -0
- package/dist/business/status/index.js +11 -0
- package/dist/business/status/index.js.map +1 -0
- package/dist/business/status/instruments.d.ts +42 -0
- package/dist/business/status/instruments.d.ts.map +1 -0
- package/dist/business/status/instruments.js +56 -0
- package/dist/business/status/instruments.js.map +1 -0
- package/dist/business/status/portfolios.d.ts +18 -0
- package/dist/business/status/portfolios.d.ts.map +1 -0
- package/dist/business/status/portfolios.js +22 -0
- package/dist/business/status/portfolios.js.map +1 -0
- package/dist/business/status/trades.d.ts +89 -0
- package/dist/business/status/trades.d.ts.map +1 -0
- package/dist/business/status/trades.js +131 -0
- package/dist/business/status/trades.js.map +1 -0
- package/dist/business/status/withdrawals.d.ts +104 -0
- package/dist/business/status/withdrawals.d.ts.map +1 -0
- package/dist/business/status/withdrawals.js +154 -0
- package/dist/business/status/withdrawals.js.map +1 -0
- package/dist/business/trading.d.ts +52 -0
- package/dist/business/trading.d.ts.map +1 -0
- package/dist/business/trading.js +69 -0
- package/dist/business/trading.js.map +1 -0
- package/dist/common/index.d.ts +2 -0
- package/dist/common/index.d.ts.map +1 -0
- package/dist/common/index.js +2 -0
- package/dist/common/index.js.map +1 -0
- package/dist/common/statuses.d.ts +18 -0
- package/dist/common/statuses.d.ts.map +1 -0
- package/dist/common/statuses.js +18 -0
- package/dist/common/statuses.js.map +1 -0
- package/dist/config/defaults.d.ts +68 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/defaults.js +67 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/index.d.ts +8 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +8 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/pagination.d.ts +28 -0
- package/dist/config/pagination.d.ts.map +1 -0
- package/dist/config/pagination.js +41 -0
- package/dist/config/pagination.js.map +1 -0
- package/dist/config/thresholds.d.ts +65 -0
- package/dist/config/thresholds.d.ts.map +1 -0
- package/dist/config/thresholds.js +83 -0
- package/dist/config/thresholds.js.map +1 -0
- package/dist/financial/currency.d.ts +38 -0
- package/dist/financial/currency.d.ts.map +1 -0
- package/dist/financial/currency.js +76 -0
- package/dist/financial/currency.js.map +1 -0
- package/dist/financial/formatting.d.ts +52 -0
- package/dist/financial/formatting.d.ts.map +1 -0
- package/dist/financial/formatting.js +50 -0
- package/dist/financial/formatting.js.map +1 -0
- package/dist/financial/index.d.ts +7 -0
- package/dist/financial/index.d.ts.map +1 -0
- package/dist/financial/index.js +7 -0
- package/dist/financial/index.js.map +1 -0
- package/dist/financial/instruments.d.ts +51 -0
- package/dist/financial/instruments.d.ts.map +1 -0
- package/dist/financial/instruments.js +69 -0
- package/dist/financial/instruments.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +23 -0
- package/dist/index.js.map +1 -0
- package/dist/ui/cache.d.ts +47 -0
- package/dist/ui/cache.d.ts.map +1 -0
- package/dist/ui/cache.js +46 -0
- package/dist/ui/cache.js.map +1 -0
- package/dist/ui/chart-config.d.ts +35 -0
- package/dist/ui/chart-config.d.ts.map +1 -0
- package/dist/ui/chart-config.js +34 -0
- package/dist/ui/chart-config.js.map +1 -0
- package/dist/ui/colors.d.ts +53 -0
- package/dist/ui/colors.d.ts.map +1 -0
- package/dist/ui/colors.js +95 -0
- package/dist/ui/colors.js.map +1 -0
- package/dist/ui/display.d.ts +69 -0
- package/dist/ui/display.d.ts.map +1 -0
- package/dist/ui/display.js +81 -0
- package/dist/ui/display.js.map +1 -0
- package/dist/ui/index.d.ts +13 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +13 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/labels/index.d.ts +20 -0
- package/dist/ui/labels/index.d.ts.map +1 -0
- package/dist/ui/labels/index.js +24 -0
- package/dist/ui/labels/index.js.map +1 -0
- package/dist/ui/navigation.d.ts +45 -0
- package/dist/ui/navigation.d.ts.map +1 -0
- package/dist/ui/navigation.js +48 -0
- package/dist/ui/navigation.js.map +1 -0
- package/dist/ui/status-colors-unified.d.ts +91 -0
- package/dist/ui/status-colors-unified.d.ts.map +1 -0
- package/dist/ui/status-colors-unified.js +107 -0
- package/dist/ui/status-colors-unified.js.map +1 -0
- package/dist/ui/timing.d.ts +26 -0
- package/dist/ui/timing.d.ts.map +1 -0
- package/dist/ui/timing.js +25 -0
- package/dist/ui/timing.js.map +1 -0
- package/dist/ui/zIndex.d.ts +80 -0
- package/dist/ui/zIndex.d.ts.map +1 -0
- package/dist/ui/zIndex.js +78 -0
- package/dist/ui/zIndex.js.map +1 -0
- package/dist/utilities/common.d.ts +29 -0
- package/dist/utilities/common.d.ts.map +1 -0
- package/dist/utilities/common.js +29 -0
- package/dist/utilities/common.js.map +1 -0
- package/dist/utilities/defaults.d.ts +52 -0
- package/dist/utilities/defaults.d.ts.map +1 -0
- package/dist/utilities/defaults.js +69 -0
- package/dist/utilities/defaults.js.map +1 -0
- package/dist/utilities/index.d.ts +9 -0
- package/dist/utilities/index.d.ts.map +1 -0
- package/dist/utilities/index.js +9 -0
- package/dist/utilities/index.js.map +1 -0
- package/dist/utilities/sorting.d.ts +45 -0
- package/dist/utilities/sorting.d.ts.map +1 -0
- package/dist/utilities/sorting.js +52 -0
- package/dist/utilities/sorting.js.map +1 -0
- package/dist/utilities/time.d.ts +53 -0
- package/dist/utilities/time.d.ts.map +1 -0
- package/dist/utilities/time.js +66 -0
- package/dist/utilities/time.js.map +1 -0
- package/dist/utilities/validation.d.ts +57 -0
- package/dist/utilities/validation.d.ts.map +1 -0
- package/dist/utilities/validation.js +66 -0
- package/dist/utilities/validation.js.map +1 -0
- package/dist/validation/index.d.ts +27 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +27 -0
- package/dist/validation/index.js.map +1 -0
- package/package.json +17 -15
- package/README.md +0 -146
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unified threshold and limit constants
|
|
3
|
+
* Consolidates numeric thresholds, limits, and common values
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Common numeric thresholds used across the application
|
|
7
|
+
*/
|
|
8
|
+
export declare const COMMON_THRESHOLDS: {
|
|
9
|
+
readonly THOUSAND: 1000;
|
|
10
|
+
readonly MILLION: 1000000;
|
|
11
|
+
readonly BILLION: 1000000000;
|
|
12
|
+
readonly DEFAULT_DECIMALS: 2;
|
|
13
|
+
readonly CURRENCY_DECIMALS: 2;
|
|
14
|
+
readonly PERCENTAGE_DECIMALS: 2;
|
|
15
|
+
readonly QUANTITY_DECIMALS: 6;
|
|
16
|
+
readonly PRICE_DECIMALS: 4;
|
|
17
|
+
readonly MAX_NAME_LENGTH: 100;
|
|
18
|
+
readonly MAX_DESCRIPTION_LENGTH: 500;
|
|
19
|
+
readonly MAX_NOTES_LENGTH: 1000;
|
|
20
|
+
readonly MIN_PASSWORD_LENGTH: 8;
|
|
21
|
+
readonly MAX_FILE_SIZE_MB: 10;
|
|
22
|
+
readonly MAX_FILE_NAME_LENGTH: 255;
|
|
23
|
+
readonly MIN_PORTFOLIO_VALUE: 1000;
|
|
24
|
+
readonly MIN_TRADE_AMOUNT: 10;
|
|
25
|
+
readonly MIN_WITHDRAWAL_AMOUNT: 100;
|
|
26
|
+
readonly MAX_PORTFOLIOS_PER_USER: 10;
|
|
27
|
+
readonly MAX_TRADES_PER_DAY: 100;
|
|
28
|
+
readonly MIN_DISPLAY_AMOUNT: 0.01;
|
|
29
|
+
readonly MIN_DISPLAY_PERCENTAGE: 0.01;
|
|
30
|
+
readonly DEFAULT_TIMEOUT_MS: 30000;
|
|
31
|
+
readonly DEFAULT_RETRY_ATTEMPTS: 3;
|
|
32
|
+
readonly DEFAULT_RETRY_DELAY_MS: 1000;
|
|
33
|
+
readonly MAX_RETRY_DELAY_MS: 10000;
|
|
34
|
+
readonly REQUEST_DEBOUNCE_MS: 300;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Numeric ranges for validation
|
|
38
|
+
*/
|
|
39
|
+
export declare const NUMERIC_RANGES: {
|
|
40
|
+
readonly AMOUNT: {
|
|
41
|
+
readonly MIN: 0;
|
|
42
|
+
readonly MAX: 999999999.99;
|
|
43
|
+
};
|
|
44
|
+
readonly PERCENTAGE: {
|
|
45
|
+
readonly MIN: 0;
|
|
46
|
+
readonly MAX: 100;
|
|
47
|
+
};
|
|
48
|
+
readonly QUANTITY: {
|
|
49
|
+
readonly MIN: 0;
|
|
50
|
+
readonly MAX: 999999999.999999;
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Format a number with thousand separators
|
|
55
|
+
*/
|
|
56
|
+
export declare const formatWithThousandSeparator: (value: number) => string;
|
|
57
|
+
/**
|
|
58
|
+
* Abbreviation suffixes for large numbers
|
|
59
|
+
*/
|
|
60
|
+
export declare const NUMBER_ABBREVIATIONS: {
|
|
61
|
+
readonly THOUSAND: "K";
|
|
62
|
+
readonly MILLION: "M";
|
|
63
|
+
readonly BILLION: "B";
|
|
64
|
+
};
|
|
65
|
+
//# sourceMappingURL=thresholds.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thresholds.d.ts","sourceRoot":"","sources":["../../src/config/thresholds.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCpB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;CAajB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,2BAA2B,GAAI,OAAO,MAAM,KAAG,MAW3D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;CAIvB,CAAC"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unified threshold and limit constants
|
|
3
|
+
* Consolidates numeric thresholds, limits, and common values
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Common numeric thresholds used across the application
|
|
7
|
+
*/
|
|
8
|
+
export const COMMON_THRESHOLDS = {
|
|
9
|
+
// Base units
|
|
10
|
+
THOUSAND: 1000,
|
|
11
|
+
MILLION: 1000000,
|
|
12
|
+
BILLION: 1000000000,
|
|
13
|
+
// Decimal places
|
|
14
|
+
DEFAULT_DECIMALS: 2,
|
|
15
|
+
CURRENCY_DECIMALS: 2,
|
|
16
|
+
PERCENTAGE_DECIMALS: 2,
|
|
17
|
+
QUANTITY_DECIMALS: 6,
|
|
18
|
+
PRICE_DECIMALS: 4,
|
|
19
|
+
// String lengths
|
|
20
|
+
MAX_NAME_LENGTH: 100,
|
|
21
|
+
MAX_DESCRIPTION_LENGTH: 500,
|
|
22
|
+
MAX_NOTES_LENGTH: 1000,
|
|
23
|
+
MIN_PASSWORD_LENGTH: 8,
|
|
24
|
+
// File limits
|
|
25
|
+
MAX_FILE_SIZE_MB: 10,
|
|
26
|
+
MAX_FILE_NAME_LENGTH: 255,
|
|
27
|
+
// Business limits
|
|
28
|
+
MIN_PORTFOLIO_VALUE: 1000,
|
|
29
|
+
MIN_TRADE_AMOUNT: 10,
|
|
30
|
+
MIN_WITHDRAWAL_AMOUNT: 100,
|
|
31
|
+
MAX_PORTFOLIOS_PER_USER: 10,
|
|
32
|
+
MAX_TRADES_PER_DAY: 100,
|
|
33
|
+
// Display thresholds
|
|
34
|
+
MIN_DISPLAY_AMOUNT: 0.01,
|
|
35
|
+
MIN_DISPLAY_PERCENTAGE: 0.01,
|
|
36
|
+
// API/Network
|
|
37
|
+
DEFAULT_TIMEOUT_MS: 30000, // 30 seconds
|
|
38
|
+
DEFAULT_RETRY_ATTEMPTS: 3,
|
|
39
|
+
DEFAULT_RETRY_DELAY_MS: 1000, // 1 second
|
|
40
|
+
MAX_RETRY_DELAY_MS: 10000, // 10 seconds
|
|
41
|
+
REQUEST_DEBOUNCE_MS: 300,
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Numeric ranges for validation
|
|
45
|
+
*/
|
|
46
|
+
export const NUMERIC_RANGES = {
|
|
47
|
+
AMOUNT: {
|
|
48
|
+
MIN: 0,
|
|
49
|
+
MAX: 999999999.99,
|
|
50
|
+
},
|
|
51
|
+
PERCENTAGE: {
|
|
52
|
+
MIN: 0,
|
|
53
|
+
MAX: 100,
|
|
54
|
+
},
|
|
55
|
+
QUANTITY: {
|
|
56
|
+
MIN: 0,
|
|
57
|
+
MAX: 999999999.999999,
|
|
58
|
+
},
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* Format a number with thousand separators
|
|
62
|
+
*/
|
|
63
|
+
export const formatWithThousandSeparator = (value) => {
|
|
64
|
+
if (value >= COMMON_THRESHOLDS.BILLION) {
|
|
65
|
+
return `${(value / COMMON_THRESHOLDS.BILLION).toFixed(1)}B`;
|
|
66
|
+
}
|
|
67
|
+
if (value >= COMMON_THRESHOLDS.MILLION) {
|
|
68
|
+
return `${(value / COMMON_THRESHOLDS.MILLION).toFixed(1)}M`;
|
|
69
|
+
}
|
|
70
|
+
if (value >= COMMON_THRESHOLDS.THOUSAND) {
|
|
71
|
+
return `${(value / COMMON_THRESHOLDS.THOUSAND).toFixed(1)}K`;
|
|
72
|
+
}
|
|
73
|
+
return value.toString();
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* Abbreviation suffixes for large numbers
|
|
77
|
+
*/
|
|
78
|
+
export const NUMBER_ABBREVIATIONS = {
|
|
79
|
+
THOUSAND: 'K',
|
|
80
|
+
MILLION: 'M',
|
|
81
|
+
BILLION: 'B',
|
|
82
|
+
};
|
|
83
|
+
//# sourceMappingURL=thresholds.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thresholds.js","sourceRoot":"","sources":["../../src/config/thresholds.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,aAAa;IACb,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,UAAU;IAEnB,iBAAiB;IACjB,gBAAgB,EAAE,CAAC;IACnB,iBAAiB,EAAE,CAAC;IACpB,mBAAmB,EAAE,CAAC;IACtB,iBAAiB,EAAE,CAAC;IACpB,cAAc,EAAE,CAAC;IAEjB,iBAAiB;IACjB,eAAe,EAAE,GAAG;IACpB,sBAAsB,EAAE,GAAG;IAC3B,gBAAgB,EAAE,IAAI;IACtB,mBAAmB,EAAE,CAAC;IAEtB,cAAc;IACd,gBAAgB,EAAE,EAAE;IACpB,oBAAoB,EAAE,GAAG;IAEzB,kBAAkB;IAClB,mBAAmB,EAAE,IAAI;IACzB,gBAAgB,EAAE,EAAE;IACpB,qBAAqB,EAAE,GAAG;IAC1B,uBAAuB,EAAE,EAAE;IAC3B,kBAAkB,EAAE,GAAG;IAEvB,qBAAqB;IACrB,kBAAkB,EAAE,IAAI;IACxB,sBAAsB,EAAE,IAAI;IAE5B,cAAc;IACd,kBAAkB,EAAE,KAAK,EAAE,aAAa;IACxC,sBAAsB,EAAE,CAAC;IACzB,sBAAsB,EAAE,IAAI,EAAE,WAAW;IACzC,kBAAkB,EAAE,KAAK,EAAE,aAAa;IACxC,mBAAmB,EAAE,GAAG;CAChB,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE;QACN,GAAG,EAAE,CAAC;QACN,GAAG,EAAE,YAAY;KAClB;IACD,UAAU,EAAE;QACV,GAAG,EAAE,CAAC;QACN,GAAG,EAAE,GAAG;KACT;IACD,QAAQ,EAAE;QACR,GAAG,EAAE,CAAC;QACN,GAAG,EAAE,gBAAgB;KACtB;CACO,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,KAAa,EAAU,EAAE;IACnE,IAAI,KAAK,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;QACvC,OAAO,GAAG,CAAC,KAAK,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9D,CAAC;IACD,IAAI,KAAK,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;QACvC,OAAO,GAAG,CAAC,KAAK,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9D,CAAC;IACD,IAAI,KAAK,IAAI,iBAAiB,CAAC,QAAQ,EAAE,CAAC;QACxC,OAAO,GAAG,CAAC,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAC/D,CAAC;IACD,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;AAC1B,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,GAAG;CACJ,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Currency-related constants
|
|
3
|
+
*/
|
|
4
|
+
export declare const CURRENCY_CODES: {
|
|
5
|
+
readonly AUD: "AUD";
|
|
6
|
+
readonly USD: "USD";
|
|
7
|
+
readonly EUR: "EUR";
|
|
8
|
+
readonly GBP: "GBP";
|
|
9
|
+
readonly JPY: "JPY";
|
|
10
|
+
readonly CAD: "CAD";
|
|
11
|
+
readonly CHF: "CHF";
|
|
12
|
+
readonly NZD: "NZD";
|
|
13
|
+
readonly SGD: "SGD";
|
|
14
|
+
readonly HKD: "HKD";
|
|
15
|
+
};
|
|
16
|
+
export type CurrencyCode = (typeof CURRENCY_CODES)[keyof typeof CURRENCY_CODES];
|
|
17
|
+
export declare const CURRENCY_SYMBOLS: Record<CurrencyCode, string>;
|
|
18
|
+
export declare const CURRENCY_NAMES: Record<CurrencyCode, string>;
|
|
19
|
+
export declare const CURRENCY_DECIMALS: Record<CurrencyCode, number>;
|
|
20
|
+
/**
|
|
21
|
+
* Default currency for the platform
|
|
22
|
+
* @intentional-duplicate AUD value appears in multiple places
|
|
23
|
+
* @reason Different semantic purposes - DEFAULT_CURRENCY sets platform default,
|
|
24
|
+
* CURRENCY_AUD defines the currency code constant
|
|
25
|
+
* @see INTENTIONAL-DUPLICATES.md
|
|
26
|
+
*/
|
|
27
|
+
export declare const DEFAULT_CURRENCY: "AUD";
|
|
28
|
+
export declare const CURRENCY_OPTIONS: {
|
|
29
|
+
value: string;
|
|
30
|
+
label: string;
|
|
31
|
+
}[];
|
|
32
|
+
export declare const CURRENCY_AUD: "AUD";
|
|
33
|
+
export declare const CURRENCY_USD: "USD";
|
|
34
|
+
export declare const CURRENCY_EUR: "EUR";
|
|
35
|
+
export declare const CURRENCY_GBP: "GBP";
|
|
36
|
+
export declare const CURRENCY_LABEL_AUD: string;
|
|
37
|
+
export declare const CURRENCY_LABEL_USD: string;
|
|
38
|
+
//# sourceMappingURL=currency.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"currency.d.ts","sourceRoot":"","sources":["../../src/financial/currency.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,cAAc;;;;;;;;;;;CAWjB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAGhF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAWhD,CAAC;AAGX,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAW9C,CAAC;AAGX,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAWjD,CAAC;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,OAAqB,CAAC;AAGnD,eAAO,MAAM,gBAAgB;;;GAG1B,CAAC;AAGJ,eAAO,MAAM,YAAY,OAAqB,CAAC;AAC/C,eAAO,MAAM,YAAY,OAAqB,CAAC;AAC/C,eAAO,MAAM,YAAY,OAAqB,CAAC;AAC/C,eAAO,MAAM,YAAY,OAAqB,CAAC;AAC/C,eAAO,MAAM,kBAAkB,QAAqC,CAAC;AACrE,eAAO,MAAM,kBAAkB,QAAqC,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Currency-related constants
|
|
3
|
+
*/
|
|
4
|
+
// Currency codes (ISO 4217)
|
|
5
|
+
export const CURRENCY_CODES = {
|
|
6
|
+
AUD: 'AUD',
|
|
7
|
+
USD: 'USD',
|
|
8
|
+
EUR: 'EUR',
|
|
9
|
+
GBP: 'GBP',
|
|
10
|
+
JPY: 'JPY',
|
|
11
|
+
CAD: 'CAD',
|
|
12
|
+
CHF: 'CHF',
|
|
13
|
+
NZD: 'NZD',
|
|
14
|
+
SGD: 'SGD',
|
|
15
|
+
HKD: 'HKD',
|
|
16
|
+
};
|
|
17
|
+
// Currency symbols
|
|
18
|
+
export const CURRENCY_SYMBOLS = {
|
|
19
|
+
[CURRENCY_CODES.AUD]: '$',
|
|
20
|
+
[CURRENCY_CODES.USD]: '$',
|
|
21
|
+
[CURRENCY_CODES.EUR]: '€',
|
|
22
|
+
[CURRENCY_CODES.GBP]: '£',
|
|
23
|
+
[CURRENCY_CODES.JPY]: '¥',
|
|
24
|
+
[CURRENCY_CODES.CAD]: '$',
|
|
25
|
+
[CURRENCY_CODES.CHF]: 'CHF',
|
|
26
|
+
[CURRENCY_CODES.NZD]: '$',
|
|
27
|
+
[CURRENCY_CODES.SGD]: '$',
|
|
28
|
+
[CURRENCY_CODES.HKD]: '$',
|
|
29
|
+
};
|
|
30
|
+
// Currency names
|
|
31
|
+
export const CURRENCY_NAMES = {
|
|
32
|
+
[CURRENCY_CODES.AUD]: 'Australian Dollar',
|
|
33
|
+
[CURRENCY_CODES.USD]: 'US Dollar',
|
|
34
|
+
[CURRENCY_CODES.EUR]: 'Euro',
|
|
35
|
+
[CURRENCY_CODES.GBP]: 'British Pound',
|
|
36
|
+
[CURRENCY_CODES.JPY]: 'Japanese Yen',
|
|
37
|
+
[CURRENCY_CODES.CAD]: 'Canadian Dollar',
|
|
38
|
+
[CURRENCY_CODES.CHF]: 'Swiss Franc',
|
|
39
|
+
[CURRENCY_CODES.NZD]: 'New Zealand Dollar',
|
|
40
|
+
[CURRENCY_CODES.SGD]: 'Singapore Dollar',
|
|
41
|
+
[CURRENCY_CODES.HKD]: 'Hong Kong Dollar',
|
|
42
|
+
};
|
|
43
|
+
// Currency decimal places
|
|
44
|
+
export const CURRENCY_DECIMALS = {
|
|
45
|
+
[CURRENCY_CODES.AUD]: 2,
|
|
46
|
+
[CURRENCY_CODES.USD]: 2,
|
|
47
|
+
[CURRENCY_CODES.EUR]: 2,
|
|
48
|
+
[CURRENCY_CODES.GBP]: 2,
|
|
49
|
+
[CURRENCY_CODES.JPY]: 0, // Japanese Yen doesn't use decimal places
|
|
50
|
+
[CURRENCY_CODES.CAD]: 2,
|
|
51
|
+
[CURRENCY_CODES.CHF]: 2,
|
|
52
|
+
[CURRENCY_CODES.NZD]: 2,
|
|
53
|
+
[CURRENCY_CODES.SGD]: 2,
|
|
54
|
+
[CURRENCY_CODES.HKD]: 2,
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Default currency for the platform
|
|
58
|
+
* @intentional-duplicate AUD value appears in multiple places
|
|
59
|
+
* @reason Different semantic purposes - DEFAULT_CURRENCY sets platform default,
|
|
60
|
+
* CURRENCY_AUD defines the currency code constant
|
|
61
|
+
* @see INTENTIONAL-DUPLICATES.md
|
|
62
|
+
*/
|
|
63
|
+
export const DEFAULT_CURRENCY = CURRENCY_CODES.AUD;
|
|
64
|
+
// Currency options for forms
|
|
65
|
+
export const CURRENCY_OPTIONS = Object.entries(CURRENCY_NAMES).map(([code, name]) => ({
|
|
66
|
+
value: code,
|
|
67
|
+
label: `${code} - ${name}`,
|
|
68
|
+
}));
|
|
69
|
+
// Blueberry compatibility exports
|
|
70
|
+
export const CURRENCY_AUD = CURRENCY_CODES.AUD;
|
|
71
|
+
export const CURRENCY_USD = CURRENCY_CODES.USD;
|
|
72
|
+
export const CURRENCY_EUR = CURRENCY_CODES.EUR;
|
|
73
|
+
export const CURRENCY_GBP = CURRENCY_CODES.GBP;
|
|
74
|
+
export const CURRENCY_LABEL_AUD = CURRENCY_NAMES[CURRENCY_CODES.AUD];
|
|
75
|
+
export const CURRENCY_LABEL_USD = CURRENCY_NAMES[CURRENCY_CODES.USD];
|
|
76
|
+
//# sourceMappingURL=currency.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"currency.js","sourceRoot":"","sources":["../../src/financial/currency.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,4BAA4B;AAC5B,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;CACF,CAAC;AAIX,mBAAmB;AACnB,MAAM,CAAC,MAAM,gBAAgB,GAAiC;IAC5D,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG;IACzB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG;IACzB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG;IACzB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG;IACzB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG;IACzB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG;IACzB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,KAAK;IAC3B,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG;IACzB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG;IACzB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG;CACjB,CAAC;AAEX,iBAAiB;AACjB,MAAM,CAAC,MAAM,cAAc,GAAiC;IAC1D,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,mBAAmB;IACzC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,WAAW;IACjC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM;IAC5B,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,eAAe;IACrC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,cAAc;IACpC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,iBAAiB;IACvC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,aAAa;IACnC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,oBAAoB;IAC1C,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,kBAAkB;IACxC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,kBAAkB;CAChC,CAAC;AAEX,0BAA0B;AAC1B,MAAM,CAAC,MAAM,iBAAiB,GAAiC;IAC7D,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;IACvB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;IACvB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;IACvB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;IACvB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,0CAA0C;IACnE,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;IACvB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;IACvB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;IACvB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;IACvB,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;CACf,CAAC;AAEX;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,cAAc,CAAC,GAAG,CAAC;AAEnD,6BAA6B;AAC7B,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACpF,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,GAAG,IAAI,MAAM,IAAI,EAAE;CAC3B,CAAC,CAAC,CAAC;AAEJ,kCAAkC;AAClC,MAAM,CAAC,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC;AAC/C,MAAM,CAAC,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC;AAC/C,MAAM,CAAC,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC;AAC/C,MAAM,CAAC,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC;AAC/C,MAAM,CAAC,MAAM,kBAAkB,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;AACrE,MAAM,CAAC,MAAM,kBAAkB,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Financial formatting constants
|
|
3
|
+
*/
|
|
4
|
+
export declare const NUMBER_FORMATS: {
|
|
5
|
+
readonly CURRENCY_DECIMALS: 2;
|
|
6
|
+
readonly PERCENTAGE_DECIMALS: 2;
|
|
7
|
+
readonly QUANTITY_DECIMALS: 6;
|
|
8
|
+
readonly PRICE_DECIMALS: 4;
|
|
9
|
+
readonly MIN_CURRENCY_DECIMALS: 2;
|
|
10
|
+
readonly MIN_PERCENTAGE_DECIMALS: 0;
|
|
11
|
+
readonly MIN_QUANTITY_DECIMALS: 0;
|
|
12
|
+
readonly MIN_PRICE_DECIMALS: 2;
|
|
13
|
+
readonly MAX_CURRENCY_DECIMALS: 2;
|
|
14
|
+
readonly MAX_PERCENTAGE_DECIMALS: 4;
|
|
15
|
+
readonly MAX_QUANTITY_DECIMALS: 8;
|
|
16
|
+
readonly MAX_PRICE_DECIMALS: 6;
|
|
17
|
+
};
|
|
18
|
+
export declare const LOCALE_SETTINGS: {
|
|
19
|
+
readonly DEFAULT: "en-AU";
|
|
20
|
+
readonly FALLBACK: "en-US";
|
|
21
|
+
readonly SUPPORTED: readonly ["en-AU", "en-US", "en-GB"];
|
|
22
|
+
};
|
|
23
|
+
export declare const FORMATTING_OPTIONS: {
|
|
24
|
+
readonly CURRENCY: {
|
|
25
|
+
readonly style: "currency";
|
|
26
|
+
readonly minimumFractionDigits: 2;
|
|
27
|
+
readonly maximumFractionDigits: 2;
|
|
28
|
+
};
|
|
29
|
+
readonly PERCENTAGE: {
|
|
30
|
+
readonly style: "percent";
|
|
31
|
+
readonly minimumFractionDigits: 0;
|
|
32
|
+
readonly maximumFractionDigits: 2;
|
|
33
|
+
};
|
|
34
|
+
readonly DECIMAL: {
|
|
35
|
+
readonly style: "decimal";
|
|
36
|
+
readonly minimumFractionDigits: 0;
|
|
37
|
+
readonly maximumFractionDigits: 8;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
export declare const DISPLAY_THRESHOLDS: {
|
|
41
|
+
readonly MIN_DISPLAY_AMOUNT: 0.01;
|
|
42
|
+
readonly MIN_DISPLAY_PERCENTAGE: 0.01;
|
|
43
|
+
readonly THOUSAND: 1000;
|
|
44
|
+
readonly MILLION: 1000000;
|
|
45
|
+
readonly BILLION: 1000000000;
|
|
46
|
+
};
|
|
47
|
+
export declare const ABBREVIATION_SUFFIXES: {
|
|
48
|
+
readonly THOUSAND: "K";
|
|
49
|
+
readonly MILLION: "M";
|
|
50
|
+
readonly BILLION: "B";
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=formatting.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatting.d.ts","sourceRoot":"","sources":["../../src/financial/formatting.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,eAAO,MAAM,cAAc;;;;;;;;;;;;;CAkBjB,CAAC;AAIX,eAAO,MAAM,eAAe;;;;CAIlB,CAAC;AAIX,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;CAIrB,CAAC;AAGX,eAAO,MAAM,kBAAkB;;;;;;CASrB,CAAC;AAIX,eAAO,MAAM,qBAAqB;;;;CAAuB,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Financial formatting constants
|
|
3
|
+
*/
|
|
4
|
+
import { COMMON_THRESHOLDS, LOCALE_CONFIG, DEFAULT_FORMAT_OPTIONS, NUMBER_ABBREVIATIONS } from '../config';
|
|
5
|
+
// Number formatting
|
|
6
|
+
export const NUMBER_FORMATS = {
|
|
7
|
+
// Decimal places
|
|
8
|
+
CURRENCY_DECIMALS: COMMON_THRESHOLDS.CURRENCY_DECIMALS,
|
|
9
|
+
PERCENTAGE_DECIMALS: COMMON_THRESHOLDS.PERCENTAGE_DECIMALS,
|
|
10
|
+
QUANTITY_DECIMALS: COMMON_THRESHOLDS.QUANTITY_DECIMALS,
|
|
11
|
+
PRICE_DECIMALS: COMMON_THRESHOLDS.PRICE_DECIMALS,
|
|
12
|
+
// Minimum decimal places
|
|
13
|
+
MIN_CURRENCY_DECIMALS: 2,
|
|
14
|
+
MIN_PERCENTAGE_DECIMALS: 0,
|
|
15
|
+
MIN_QUANTITY_DECIMALS: 0,
|
|
16
|
+
MIN_PRICE_DECIMALS: 2,
|
|
17
|
+
// Maximum decimal places
|
|
18
|
+
MAX_CURRENCY_DECIMALS: 2,
|
|
19
|
+
MAX_PERCENTAGE_DECIMALS: 4,
|
|
20
|
+
MAX_QUANTITY_DECIMALS: 8,
|
|
21
|
+
MAX_PRICE_DECIMALS: 6,
|
|
22
|
+
};
|
|
23
|
+
// Locale settings
|
|
24
|
+
// Now references consolidated locale config
|
|
25
|
+
export const LOCALE_SETTINGS = {
|
|
26
|
+
DEFAULT: LOCALE_CONFIG.DEFAULT,
|
|
27
|
+
FALLBACK: LOCALE_CONFIG.FALLBACK,
|
|
28
|
+
SUPPORTED: LOCALE_CONFIG.SUPPORTED,
|
|
29
|
+
};
|
|
30
|
+
// Formatting options
|
|
31
|
+
// Partially references consolidated options
|
|
32
|
+
export const FORMATTING_OPTIONS = {
|
|
33
|
+
CURRENCY: DEFAULT_FORMAT_OPTIONS.CURRENCY,
|
|
34
|
+
PERCENTAGE: DEFAULT_FORMAT_OPTIONS.PERCENTAGE,
|
|
35
|
+
DECIMAL: DEFAULT_FORMAT_OPTIONS.DECIMAL,
|
|
36
|
+
};
|
|
37
|
+
// Display thresholds
|
|
38
|
+
export const DISPLAY_THRESHOLDS = {
|
|
39
|
+
// Values below these thresholds show as "< threshold"
|
|
40
|
+
MIN_DISPLAY_AMOUNT: COMMON_THRESHOLDS.MIN_DISPLAY_AMOUNT,
|
|
41
|
+
MIN_DISPLAY_PERCENTAGE: COMMON_THRESHOLDS.MIN_DISPLAY_PERCENTAGE,
|
|
42
|
+
// Large number abbreviations
|
|
43
|
+
THOUSAND: COMMON_THRESHOLDS.THOUSAND,
|
|
44
|
+
MILLION: COMMON_THRESHOLDS.MILLION,
|
|
45
|
+
BILLION: COMMON_THRESHOLDS.BILLION,
|
|
46
|
+
};
|
|
47
|
+
// Abbreviation suffixes
|
|
48
|
+
// @deprecated Use NUMBER_ABBREVIATIONS from config/thresholds instead
|
|
49
|
+
export const ABBREVIATION_SUFFIXES = NUMBER_ABBREVIATIONS;
|
|
50
|
+
//# sourceMappingURL=formatting.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatting.js","sourceRoot":"","sources":["../../src/financial/formatting.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAE3G,oBAAoB;AACpB,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,iBAAiB;IACjB,iBAAiB,EAAE,iBAAiB,CAAC,iBAAiB;IACtD,mBAAmB,EAAE,iBAAiB,CAAC,mBAAmB;IAC1D,iBAAiB,EAAE,iBAAiB,CAAC,iBAAiB;IACtD,cAAc,EAAE,iBAAiB,CAAC,cAAc;IAEhD,yBAAyB;IACzB,qBAAqB,EAAE,CAAC;IACxB,uBAAuB,EAAE,CAAC;IAC1B,qBAAqB,EAAE,CAAC;IACxB,kBAAkB,EAAE,CAAC;IAErB,yBAAyB;IACzB,qBAAqB,EAAE,CAAC;IACxB,uBAAuB,EAAE,CAAC;IAC1B,qBAAqB,EAAE,CAAC;IACxB,kBAAkB,EAAE,CAAC;CACb,CAAC;AAEX,kBAAkB;AAClB,4CAA4C;AAC5C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,aAAa,CAAC,OAAO;IAC9B,QAAQ,EAAE,aAAa,CAAC,QAAQ;IAChC,SAAS,EAAE,aAAa,CAAC,SAAS;CAC1B,CAAC;AAEX,qBAAqB;AACrB,4CAA4C;AAC5C,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,QAAQ,EAAE,sBAAsB,CAAC,QAAQ;IACzC,UAAU,EAAE,sBAAsB,CAAC,UAAU;IAC7C,OAAO,EAAE,sBAAsB,CAAC,OAAO;CAC/B,CAAC;AAEX,qBAAqB;AACrB,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,sDAAsD;IACtD,kBAAkB,EAAE,iBAAiB,CAAC,kBAAkB;IACxD,sBAAsB,EAAE,iBAAiB,CAAC,sBAAsB;IAEhE,6BAA6B;IAC7B,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;IACpC,OAAO,EAAE,iBAAiB,CAAC,OAAO;IAClC,OAAO,EAAE,iBAAiB,CAAC,OAAO;CAC1B,CAAC;AAEX,wBAAwB;AACxB,sEAAsE;AACtE,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/financial/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/financial/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Financial instrument constants
|
|
3
|
+
*/
|
|
4
|
+
export declare const INSTRUMENT_TYPE: {
|
|
5
|
+
readonly ETF: "ETF";
|
|
6
|
+
readonly FUND: "FUND";
|
|
7
|
+
readonly STOCK: "STOCK";
|
|
8
|
+
readonly BOND: "BOND";
|
|
9
|
+
readonly COMMODITY: "COMMODITY";
|
|
10
|
+
readonly CRYPTO: "CRYPTO";
|
|
11
|
+
readonly INDEX: "INDEX";
|
|
12
|
+
};
|
|
13
|
+
export declare const INSTRUMENT_TYPE_VALUES: {
|
|
14
|
+
readonly ETF: "etf";
|
|
15
|
+
readonly FUND: "fund";
|
|
16
|
+
readonly STOCK: "stock";
|
|
17
|
+
readonly BOND: "bond";
|
|
18
|
+
readonly COMMODITY: "commodity";
|
|
19
|
+
readonly CRYPTO: "crypto";
|
|
20
|
+
readonly INDEX: "index";
|
|
21
|
+
};
|
|
22
|
+
export type InstrumentType = (typeof INSTRUMENT_TYPE)[keyof typeof INSTRUMENT_TYPE];
|
|
23
|
+
export declare const INSTRUMENT_TYPE_LABELS: {
|
|
24
|
+
readonly etf: "ETF";
|
|
25
|
+
readonly fund: "Fund";
|
|
26
|
+
readonly stock: "Stock";
|
|
27
|
+
};
|
|
28
|
+
export declare const ASSET_CLASS: {
|
|
29
|
+
readonly EQUITY: "EQUITY";
|
|
30
|
+
readonly FIXED_INCOME: "FIXED_INCOME";
|
|
31
|
+
readonly CASH: "CASH";
|
|
32
|
+
readonly COMMODITY: "COMMODITY";
|
|
33
|
+
readonly REAL_ESTATE: "REAL_ESTATE";
|
|
34
|
+
readonly ALTERNATIVE: "ALTERNATIVE";
|
|
35
|
+
};
|
|
36
|
+
export type AssetClass = (typeof ASSET_CLASS)[keyof typeof ASSET_CLASS];
|
|
37
|
+
export declare const ASSET_CLASS_LABELS: Record<AssetClass, string>;
|
|
38
|
+
export declare const MARKET_IDENTIFIER: {
|
|
39
|
+
readonly NYSE: "NYSE";
|
|
40
|
+
readonly NASDAQ: "NASDAQ";
|
|
41
|
+
readonly ASX: "ASX";
|
|
42
|
+
readonly LSE: "LSE";
|
|
43
|
+
readonly TSX: "TSX";
|
|
44
|
+
readonly HKEX: "HKEX";
|
|
45
|
+
};
|
|
46
|
+
export type MarketIdentifier = (typeof MARKET_IDENTIFIER)[keyof typeof MARKET_IDENTIFIER];
|
|
47
|
+
export declare const EXCHANGE_SUFFIX: Record<MarketIdentifier, string>;
|
|
48
|
+
export declare const INSTRUMENT_TYPE_ETF: "etf";
|
|
49
|
+
export declare const INSTRUMENT_TYPE_FUND: "fund";
|
|
50
|
+
export declare const INSTRUMENT_TYPE_STOCK: "stock";
|
|
51
|
+
//# sourceMappingURL=instruments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instruments.d.ts","sourceRoot":"","sources":["../../src/financial/instruments.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,eAAe;;;;;;;;CAQlB,CAAC;AAGX,eAAO,MAAM,sBAAsB;;;;;;;;CAQzB,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAGpF,eAAO,MAAM,sBAAsB;;;;CAIzB,CAAC;AAGX,eAAO,MAAM,WAAW;;;;;;;CAOd,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAExE,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAOhD,CAAC;AAGX,eAAO,MAAM,iBAAiB;;;;;;;CAOpB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AAG1F,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAOnD,CAAC;AAGX,eAAO,MAAM,mBAAmB,OAA6B,CAAC;AAC9D,eAAO,MAAM,oBAAoB,QAA8B,CAAC;AAChE,eAAO,MAAM,qBAAqB,SAA+B,CAAC"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Financial instrument constants
|
|
3
|
+
*/
|
|
4
|
+
// Instrument types
|
|
5
|
+
export const INSTRUMENT_TYPE = {
|
|
6
|
+
ETF: 'ETF',
|
|
7
|
+
FUND: 'FUND',
|
|
8
|
+
STOCK: 'STOCK',
|
|
9
|
+
BOND: 'BOND',
|
|
10
|
+
COMMODITY: 'COMMODITY',
|
|
11
|
+
CRYPTO: 'CRYPTO',
|
|
12
|
+
INDEX: 'INDEX',
|
|
13
|
+
};
|
|
14
|
+
// Lowercase values for Blueberry compatibility
|
|
15
|
+
export const INSTRUMENT_TYPE_VALUES = {
|
|
16
|
+
ETF: 'etf',
|
|
17
|
+
FUND: 'fund',
|
|
18
|
+
STOCK: 'stock',
|
|
19
|
+
BOND: 'bond',
|
|
20
|
+
COMMODITY: 'commodity',
|
|
21
|
+
CRYPTO: 'crypto',
|
|
22
|
+
INDEX: 'index',
|
|
23
|
+
};
|
|
24
|
+
// Instrument type labels (using lowercase keys for Blueberry compatibility)
|
|
25
|
+
export const INSTRUMENT_TYPE_LABELS = {
|
|
26
|
+
[INSTRUMENT_TYPE_VALUES.ETF]: 'ETF',
|
|
27
|
+
[INSTRUMENT_TYPE_VALUES.FUND]: 'Fund',
|
|
28
|
+
[INSTRUMENT_TYPE_VALUES.STOCK]: 'Stock',
|
|
29
|
+
};
|
|
30
|
+
// Asset classes
|
|
31
|
+
export const ASSET_CLASS = {
|
|
32
|
+
EQUITY: 'EQUITY',
|
|
33
|
+
FIXED_INCOME: 'FIXED_INCOME',
|
|
34
|
+
CASH: 'CASH',
|
|
35
|
+
COMMODITY: 'COMMODITY',
|
|
36
|
+
REAL_ESTATE: 'REAL_ESTATE',
|
|
37
|
+
ALTERNATIVE: 'ALTERNATIVE',
|
|
38
|
+
};
|
|
39
|
+
export const ASSET_CLASS_LABELS = {
|
|
40
|
+
[ASSET_CLASS.EQUITY]: 'Equity',
|
|
41
|
+
[ASSET_CLASS.FIXED_INCOME]: 'Fixed Income',
|
|
42
|
+
[ASSET_CLASS.CASH]: 'Cash',
|
|
43
|
+
[ASSET_CLASS.COMMODITY]: 'Commodity',
|
|
44
|
+
[ASSET_CLASS.REAL_ESTATE]: 'Real Estate',
|
|
45
|
+
[ASSET_CLASS.ALTERNATIVE]: 'Alternative',
|
|
46
|
+
};
|
|
47
|
+
// Market identifiers
|
|
48
|
+
export const MARKET_IDENTIFIER = {
|
|
49
|
+
NYSE: 'NYSE',
|
|
50
|
+
NASDAQ: 'NASDAQ',
|
|
51
|
+
ASX: 'ASX',
|
|
52
|
+
LSE: 'LSE',
|
|
53
|
+
TSX: 'TSX',
|
|
54
|
+
HKEX: 'HKEX',
|
|
55
|
+
};
|
|
56
|
+
// Exchange suffixes
|
|
57
|
+
export const EXCHANGE_SUFFIX = {
|
|
58
|
+
[MARKET_IDENTIFIER.NYSE]: '',
|
|
59
|
+
[MARKET_IDENTIFIER.NASDAQ]: '',
|
|
60
|
+
[MARKET_IDENTIFIER.ASX]: '.AX',
|
|
61
|
+
[MARKET_IDENTIFIER.LSE]: '.L',
|
|
62
|
+
[MARKET_IDENTIFIER.TSX]: '.TO',
|
|
63
|
+
[MARKET_IDENTIFIER.HKEX]: '.HK',
|
|
64
|
+
};
|
|
65
|
+
// Blueberry compatibility exports (lowercase values)
|
|
66
|
+
export const INSTRUMENT_TYPE_ETF = INSTRUMENT_TYPE_VALUES.ETF;
|
|
67
|
+
export const INSTRUMENT_TYPE_FUND = INSTRUMENT_TYPE_VALUES.FUND;
|
|
68
|
+
export const INSTRUMENT_TYPE_STOCK = INSTRUMENT_TYPE_VALUES.STOCK;
|
|
69
|
+
//# sourceMappingURL=instruments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instruments.js","sourceRoot":"","sources":["../../src/financial/instruments.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,mBAAmB;AACnB,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;CACN,CAAC;AAEX,+CAA+C;AAC/C,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;CACN,CAAC;AAIX,4EAA4E;AAC5E,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,CAAC,sBAAsB,CAAC,GAAG,CAAC,EAAE,KAAK;IACnC,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,MAAM;IACrC,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,OAAO;CAC/B,CAAC;AAEX,gBAAgB;AAChB,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,MAAM,EAAE,QAAQ;IAChB,YAAY,EAAE,cAAc;IAC5B,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;CAClB,CAAC;AAIX,MAAM,CAAC,MAAM,kBAAkB,GAA+B;IAC5D,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,QAAQ;IAC9B,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,cAAc;IAC1C,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM;IAC1B,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,WAAW;IACpC,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,aAAa;IACxC,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,aAAa;CAChC,CAAC;AAEX,qBAAqB;AACrB,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;CACJ,CAAC;AAIX,oBAAoB;AACpB,MAAM,CAAC,MAAM,eAAe,GAAqC;IAC/D,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE;IAC5B,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE;IAC9B,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,KAAK;IAC9B,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,IAAI;IAC7B,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,KAAK;IAC9B,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,KAAK;CACvB,CAAC;AAEX,qDAAqD;AACrD,MAAM,CAAC,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,GAAG,CAAC;AAC9D,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC,IAAI,CAAC;AAChE,MAAM,CAAC,MAAM,qBAAqB,GAAG,sBAAsB,CAAC,KAAK,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @cranberry-money/shared-constants
|
|
3
|
+
*
|
|
4
|
+
* Shared constants for the Blueberry platform.
|
|
5
|
+
* This package provides all constant values used across frontend applications.
|
|
6
|
+
*/
|
|
7
|
+
export * from './api';
|
|
8
|
+
export * from './business';
|
|
9
|
+
export * from './financial';
|
|
10
|
+
export * from './ui';
|
|
11
|
+
export * from './utilities';
|
|
12
|
+
export * from './common';
|
|
13
|
+
export * from './config';
|
|
14
|
+
export * from './validation';
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,cAAc,OAAO,CAAC;AAGtB,cAAc,YAAY,CAAC;AAG3B,cAAc,aAAa,CAAC;AAG5B,cAAc,MAAM,CAAC;AAGrB,cAAc,aAAa,CAAC;AAG5B,cAAc,UAAU,CAAC;AAGzB,cAAc,UAAU,CAAC;AAGzB,cAAc,cAAc,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @cranberry-money/shared-constants
|
|
3
|
+
*
|
|
4
|
+
* Shared constants for the Blueberry platform.
|
|
5
|
+
* This package provides all constant values used across frontend applications.
|
|
6
|
+
*/
|
|
7
|
+
// API-related constants
|
|
8
|
+
export * from './api';
|
|
9
|
+
// Business domain constants
|
|
10
|
+
export * from './business';
|
|
11
|
+
// Financial constants
|
|
12
|
+
export * from './financial';
|
|
13
|
+
// UI/Display constants
|
|
14
|
+
export * from './ui';
|
|
15
|
+
// Utility constants
|
|
16
|
+
export * from './utilities';
|
|
17
|
+
// Common shared constants
|
|
18
|
+
export * from './common';
|
|
19
|
+
// Configuration constants
|
|
20
|
+
export * from './config';
|
|
21
|
+
// Validation constants
|
|
22
|
+
export * from './validation';
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,wBAAwB;AACxB,cAAc,OAAO,CAAC;AAEtB,4BAA4B;AAC5B,cAAc,YAAY,CAAC;AAE3B,sBAAsB;AACtB,cAAc,aAAa,CAAC;AAE5B,uBAAuB;AACvB,cAAc,MAAM,CAAC;AAErB,oBAAoB;AACpB,cAAc,aAAa,CAAC;AAE5B,0BAA0B;AAC1B,cAAc,UAAU,CAAC;AAEzB,0BAA0B;AAC1B,cAAc,UAAU,CAAC;AAEzB,uBAAuB;AACvB,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cache timing constants for React Query and other caching mechanisms
|
|
3
|
+
*/
|
|
4
|
+
export declare const CACHE_TIMING: {
|
|
5
|
+
/**
|
|
6
|
+
* Very short cache - 30 seconds
|
|
7
|
+
*/
|
|
8
|
+
readonly VERY_SHORT_STALE_TIME: number;
|
|
9
|
+
/**
|
|
10
|
+
* Trades data stale time - 2 minutes
|
|
11
|
+
*/
|
|
12
|
+
readonly TRADES_STALE_TIME: number;
|
|
13
|
+
/**
|
|
14
|
+
* Auth data stale time - 5 minutes
|
|
15
|
+
*/
|
|
16
|
+
readonly AUTH_STALE_TIME: number;
|
|
17
|
+
/**
|
|
18
|
+
* Default stale time for general data - 5 minutes
|
|
19
|
+
*/
|
|
20
|
+
readonly DEFAULT_STALE_TIME: number;
|
|
21
|
+
/**
|
|
22
|
+
* Asset allocation data stale time - 10 minutes
|
|
23
|
+
*/
|
|
24
|
+
readonly ASSET_ALLOCATION_STALE_TIME: number;
|
|
25
|
+
/**
|
|
26
|
+
* Long cache time - 30 minutes
|
|
27
|
+
*/
|
|
28
|
+
readonly LONG_STALE_TIME: number;
|
|
29
|
+
/**
|
|
30
|
+
* Default garbage collection time - 2 minutes
|
|
31
|
+
*/
|
|
32
|
+
readonly DEFAULT_GC_TIME: number;
|
|
33
|
+
/**
|
|
34
|
+
* Medium garbage collection time - 5 minutes
|
|
35
|
+
*/
|
|
36
|
+
readonly MEDIUM_GC_TIME: number;
|
|
37
|
+
/**
|
|
38
|
+
* Long garbage collection time - 10 minutes
|
|
39
|
+
*/
|
|
40
|
+
readonly LONG_GC_TIME: number;
|
|
41
|
+
/**
|
|
42
|
+
* Very long garbage collection time - 30 minutes
|
|
43
|
+
*/
|
|
44
|
+
readonly VERY_LONG_GC_TIME: number;
|
|
45
|
+
};
|
|
46
|
+
export type CacheTiming = typeof CACHE_TIMING;
|
|
47
|
+
//# sourceMappingURL=cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/ui/cache.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,YAAY;IACvB;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEK,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,OAAO,YAAY,CAAC"}
|