@ledgerhq/coin-module-framework 1.1.0 → 2.0.1

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.
Files changed (53) hide show
  1. package/.unimportedrc.json +0 -1
  2. package/CHANGELOG.md +12 -0
  3. package/lib/config.d.ts +3 -4
  4. package/lib/config.d.ts.map +1 -1
  5. package/lib/config.js +2 -2
  6. package/lib/config.js.map +1 -1
  7. package/lib/currencies/BigNumberToLocaleString.d.ts +7 -0
  8. package/lib/currencies/BigNumberToLocaleString.d.ts.map +1 -0
  9. package/lib/currencies/BigNumberToLocaleString.js +58 -0
  10. package/lib/currencies/BigNumberToLocaleString.js.map +1 -0
  11. package/lib/currencies/formatCurrencyUnit.d.ts +25 -1
  12. package/lib/currencies/formatCurrencyUnit.d.ts.map +1 -1
  13. package/lib/currencies/formatCurrencyUnit.js +130 -4
  14. package/lib/currencies/formatCurrencyUnit.js.map +1 -1
  15. package/lib/currencies/localeUtility.d.ts +8 -0
  16. package/lib/currencies/localeUtility.d.ts.map +1 -0
  17. package/lib/currencies/localeUtility.js +51 -0
  18. package/lib/currencies/localeUtility.js.map +1 -0
  19. package/lib/currencies/parseCurrencyUnit.d.ts +2 -1
  20. package/lib/currencies/parseCurrencyUnit.d.ts.map +1 -1
  21. package/lib/currencies/parseCurrencyUnit.js +9 -2
  22. package/lib/currencies/parseCurrencyUnit.js.map +1 -1
  23. package/lib-es/config.d.ts +3 -4
  24. package/lib-es/config.d.ts.map +1 -1
  25. package/lib-es/config.js +2 -2
  26. package/lib-es/config.js.map +1 -1
  27. package/lib-es/currencies/BigNumberToLocaleString.d.ts +7 -0
  28. package/lib-es/currencies/BigNumberToLocaleString.d.ts.map +1 -0
  29. package/lib-es/currencies/BigNumberToLocaleString.js +54 -0
  30. package/lib-es/currencies/BigNumberToLocaleString.js.map +1 -0
  31. package/lib-es/currencies/formatCurrencyUnit.d.ts +25 -1
  32. package/lib-es/currencies/formatCurrencyUnit.d.ts.map +1 -1
  33. package/lib-es/currencies/formatCurrencyUnit.js +127 -1
  34. package/lib-es/currencies/formatCurrencyUnit.js.map +1 -1
  35. package/lib-es/currencies/localeUtility.d.ts +8 -0
  36. package/lib-es/currencies/localeUtility.d.ts.map +1 -0
  37. package/lib-es/currencies/localeUtility.js +48 -0
  38. package/lib-es/currencies/localeUtility.js.map +1 -0
  39. package/lib-es/currencies/parseCurrencyUnit.d.ts +2 -1
  40. package/lib-es/currencies/parseCurrencyUnit.d.ts.map +1 -1
  41. package/lib-es/currencies/parseCurrencyUnit.js +8 -1
  42. package/lib-es/currencies/parseCurrencyUnit.js.map +1 -1
  43. package/package.json +5 -5
  44. package/src/api/types.ts +1 -1
  45. package/src/config.ts +4 -5
  46. package/src/currencies/BigNumberToLocaleString.test.ts +164 -0
  47. package/src/currencies/BigNumberToLocaleString.ts +70 -0
  48. package/src/currencies/formatCurrencyUnit.test.ts +215 -0
  49. package/src/currencies/formatCurrencyUnit.ts +200 -6
  50. package/src/currencies/localeUtility.test.ts +22 -0
  51. package/src/currencies/localeUtility.ts +59 -0
  52. package/src/currencies/parseCurrencyUnit.test.ts +26 -0
  53. package/src/currencies/parseCurrencyUnit.ts +10 -1
@@ -27,7 +27,6 @@
27
27
  "ignoreUnused": [
28
28
  "@ledgerhq/errors",
29
29
  "@ledgerhq/live-env",
30
- "@ledgerhq/types-cryptoassets",
31
30
  "expect"
32
31
  ]
33
32
  }
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @ledgerhq/coin-module-framework
2
2
 
3
+ ## 2.0.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#492](https://github.com/LedgerHQ/alpaca-coin-module/pull/492) [`fb14c85`](https://github.com/LedgerHQ/alpaca-coin-module/commit/fb14c857eae51571cc1d6540503edd71c0259ed4) Thanks [@francois-guerin-ledger](https://github.com/francois-guerin-ledger)! - chore(coin-module-framework): update comment in `api/types.ts`
8
+
9
+ ## 2.0.0
10
+
11
+ ### Major Changes
12
+
13
+ - [#476](https://github.com/LedgerHQ/alpaca-coin-module/pull/476) [`be0b606`](https://github.com/LedgerHQ/alpaca-coin-module/commit/be0b606ee8ea7d7a365abe39a59465bc00daaf94) Thanks [@francois-guerin-ledger](https://github.com/francois-guerin-ledger)! - chore(coin-module-framework): remove @ledgerhq external dependencies
14
+
3
15
  ## 1.1.0
4
16
 
5
17
  ### Minor Changes
package/lib/config.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- import { CryptoCurrency, CryptoCurrencyId } from '@ledgerhq/types-cryptoassets';
2
1
  import type { FeatureConfig } from './features/types';
3
2
  type ConfigStatus = {
4
3
  type: 'active';
@@ -8,7 +7,7 @@ type ConfigStatus = {
8
7
  message?: string;
9
8
  } | {
10
9
  type: 'migration';
11
- chain: CryptoCurrencyId;
10
+ chain: string;
12
11
  from: string;
13
12
  to: string;
14
13
  link: string;
@@ -34,10 +33,10 @@ export type CurrencyConfig = {
34
33
  customBanner?: Banner;
35
34
  [key: string]: unknown;
36
35
  };
37
- export type CoinConfig<T extends CurrencyConfig> = (currency?: CryptoCurrency) => T;
36
+ export type CoinConfig<T extends CurrencyConfig> = (currencyId?: string) => T;
38
37
  declare function buildCoinConfig<T extends CurrencyConfig>(): {
39
38
  setCoinConfig: (config: CoinConfig<T>) => void;
40
- getCoinConfig: (currency?: CryptoCurrency) => T;
39
+ getCoinConfig: (currencyId?: string) => T;
41
40
  };
42
41
  export default buildCoinConfig;
43
42
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAE/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAErD,KAAK,YAAY,GACb;IACE,IAAI,EAAE,QAAQ,CAAA;IACd,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAA;CAC3B,GACD;IACE,IAAI,EAAE,mBAAmB,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,GACD;IACE,IAAI,EAAE,WAAW,CAAA;IACjB,KAAK,EAAE,gBAAgB,CAAA;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;CACb,GACD;IACE,IAAI,EAAE,qBAAqB,CAAA;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EACH,SAAS,GACT,MAAM,GACN,eAAe,GACf,kBAAkB,GAClB,MAAM,GACN,SAAS,GACT,gBAAgB,GAChB,kBAAkB,GAClB,SAAS,GACT,0BAA0B,CAAA;CAC/B,GACD;IACE,IAAI,EAAE,oBAAoB,CAAA;IAC1B,eAAe,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,MAAM,CAAA;CACb,GACD;IACE,IAAI,EAAE,YAAY,CAAA;CACnB,CAAA;AAEL,KAAK,MAAM,GAAG;IACZ,SAAS,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,YAAY,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,cAAc,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,KAAK,CAAC,CAAA;AAEnF,iBAAS,eAAe,CAAC,CAAC,SAAS,cAAc;4BAGhB,UAAU,CAAC,CAAC,CAAC,KAAG,IAAI;+BAIjB,cAAc,KAAG,CAAC;EAYrD;AAED,eAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAErD,KAAK,YAAY,GACb;IACE,IAAI,EAAE,QAAQ,CAAA;IACd,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAA;CAC3B,GACD;IACE,IAAI,EAAE,mBAAmB,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,GACD;IACE,IAAI,EAAE,WAAW,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;CACb,GACD;IACE,IAAI,EAAE,qBAAqB,CAAA;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EACH,SAAS,GACT,MAAM,GACN,eAAe,GACf,kBAAkB,GAClB,MAAM,GACN,SAAS,GACT,gBAAgB,GAChB,kBAAkB,GAClB,SAAS,GACT,0BAA0B,CAAA;CAC/B,GACD;IACE,IAAI,EAAE,oBAAoB,CAAA;IAC1B,eAAe,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,MAAM,CAAA;CACb,GACD;IACE,IAAI,EAAE,YAAY,CAAA;CACnB,CAAA;AAEL,KAAK,MAAM,GAAG;IACZ,SAAS,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,YAAY,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,cAAc,IAAI,CAAC,UAAU,CAAC,EAAE,MAAM,KAAK,CAAC,CAAA;AAE7E,iBAAS,eAAe,CAAC,CAAC,SAAS,cAAc;4BAGhB,UAAU,CAAC,CAAC,CAAC,KAAG,IAAI;iCAIf,MAAM,KAAG,CAAC;EAY/C;AAED,eAAe,eAAe,CAAA"}
package/lib/config.js CHANGED
@@ -6,11 +6,11 @@ function buildCoinConfig() {
6
6
  const setCoinConfig = (config) => {
7
7
  coinConfig = config;
8
8
  };
9
- const getCoinConfig = (currency) => {
9
+ const getCoinConfig = (currencyId) => {
10
10
  if (!coinConfig) {
11
11
  throw new errors_1.MissingCoinConfig();
12
12
  }
13
- return coinConfig(currency);
13
+ return coinConfig(currencyId);
14
14
  };
15
15
  return {
16
16
  setCoinConfig,
package/lib/config.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;AACA,qCAA4C;AA0D5C,SAAS,eAAe;IACtB,IAAI,UAAqC,CAAA;IAEzC,MAAM,aAAa,GAAG,CAAC,MAAqB,EAAQ,EAAE;QACpD,UAAU,GAAG,MAAM,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,CAAC,QAAyB,EAAK,EAAE;QACrD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,0BAAiB,EAAE,CAAA;QAC/B,CAAC;QAED,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAA;IAC7B,CAAC,CAAA;IAED,OAAO;QACL,aAAa;QACb,aAAa;KACd,CAAA;AACH,CAAC;AAED,kBAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;AAAA,qCAA4C;AA0D5C,SAAS,eAAe;IACtB,IAAI,UAAqC,CAAA;IAEzC,MAAM,aAAa,GAAG,CAAC,MAAqB,EAAQ,EAAE;QACpD,UAAU,GAAG,MAAM,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,CAAC,UAAmB,EAAK,EAAE;QAC/C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,0BAAiB,EAAE,CAAA;QAC/B,CAAC;QAED,OAAO,UAAU,CAAC,UAAU,CAAC,CAAA;IAC/B,CAAC,CAAA;IAED,OAAO;QACL,aAAa;QACb,aAAa;KACd,CAAA;AACH,CAAC;AAED,kBAAe,eAAe,CAAA"}
@@ -0,0 +1,7 @@
1
+ export type SupportedOptions = {
2
+ minimumFractionDigits: number;
3
+ maximumFractionDigits: number;
4
+ useGrouping: boolean;
5
+ };
6
+ export declare const toLocaleString: (n: BigNumber, localeInput?: string, options?: Partial<SupportedOptions>) => string;
7
+ //# sourceMappingURL=BigNumberToLocaleString.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BigNumberToLocaleString.d.ts","sourceRoot":"","sources":["../../src/currencies/BigNumberToLocaleString.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,WAAW,EAAE,OAAO,CAAA;CACrB,CAAA;AAiBD,eAAO,MAAM,cAAc,GACzB,GAAG,SAAS,EACZ,cAAc,MAAM,EACpB,UAAS,OAAO,CAAC,gBAAgB,CAAM,KACtC,MAwCF,CAAA"}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toLocaleString = void 0;
4
+ // Forked from @ledgerhq/live-currency-format/src/BigNumberToLocaleString.ts
5
+ const bignumber_js_1 = require("bignumber.js");
6
+ const localeUtility_1 = require("./localeUtility");
7
+ const getFormatForLocale = (locale) => {
8
+ const { decimal, thousands } = (0, localeUtility_1.getSeparators)(locale);
9
+ const opts = {
10
+ decimalSeparator: '.',
11
+ groupSeparator: ',',
12
+ groupSize: 3,
13
+ secondaryGroupSize: 0,
14
+ fractionGroupSeparator: '\xA0', // non-breaking space
15
+ fractionGroupSize: 0,
16
+ };
17
+ if (typeof decimal === 'string')
18
+ opts.decimalSeparator = decimal;
19
+ if (typeof thousands === 'string')
20
+ opts.groupSeparator = thousands;
21
+ return opts;
22
+ };
23
+ const toLocaleString = (n, localeInput, options = {}) => {
24
+ let locale = localeInput;
25
+ if (!locale)
26
+ locale = 'en';
27
+ const minimumFractionDigits = typeof options.minimumFractionDigits === 'number' ? options.minimumFractionDigits : 0;
28
+ const maximumFractionDigits = typeof options.maximumFractionDigits === 'number'
29
+ ? options.maximumFractionDigits
30
+ : Math.max(minimumFractionDigits, 3);
31
+ const useGrouping = 'useGrouping' in options ? options.useGrouping : true;
32
+ const format = getFormatForLocale(locale);
33
+ if (!useGrouping) {
34
+ format.groupSeparator = '';
35
+ }
36
+ const BN = bignumber_js_1.BigNumber.clone({
37
+ FORMAT: format,
38
+ });
39
+ const bn = new BN(n);
40
+ const maxDecimals = bn.toFormat(maximumFractionDigits, bignumber_js_1.BigNumber.ROUND_FLOOR);
41
+ if (maximumFractionDigits !== minimumFractionDigits) {
42
+ const minDecimals = bn.toFormat(minimumFractionDigits, bignumber_js_1.BigNumber.ROUND_FLOOR);
43
+ let i = maxDecimals.length;
44
+ while (i > minDecimals.length) {
45
+ if (maxDecimals[i - 1] !== '0') {
46
+ if (maxDecimals[i - 1] === format.decimalSeparator) {
47
+ i--;
48
+ }
49
+ break;
50
+ }
51
+ i--;
52
+ }
53
+ return maxDecimals.slice(0, i);
54
+ }
55
+ return maxDecimals;
56
+ };
57
+ exports.toLocaleString = toLocaleString;
58
+ //# sourceMappingURL=BigNumberToLocaleString.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BigNumberToLocaleString.js","sourceRoot":"","sources":["../../src/currencies/BigNumberToLocaleString.ts"],"names":[],"mappings":";;;AAAA,4EAA4E;AAC5E,+CAAwC;AACxC,mDAA+C;AAQ/C,MAAM,kBAAkB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC5C,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAA,6BAAa,EAAC,MAAM,CAAC,CAAA;IACpD,MAAM,IAAI,GAAG;QACX,gBAAgB,EAAE,GAAG;QACrB,cAAc,EAAE,GAAG;QACnB,SAAS,EAAE,CAAC;QACZ,kBAAkB,EAAE,CAAC;QACrB,sBAAsB,EAAE,MAAM,EAAE,qBAAqB;QACrD,iBAAiB,EAAE,CAAC;KACrB,CAAA;IACD,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAA;IAChE,IAAI,OAAO,SAAS,KAAK,QAAQ;QAAE,IAAI,CAAC,cAAc,GAAG,SAAS,CAAA;IAClE,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAEM,MAAM,cAAc,GAAG,CAC5B,CAAY,EACZ,WAAoB,EACpB,UAAqC,EAAE,EAC/B,EAAE;IACV,IAAI,MAAM,GAAG,WAAW,CAAA;IACxB,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,MAAM,qBAAqB,GACzB,OAAO,OAAO,CAAC,qBAAqB,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAA;IACvF,MAAM,qBAAqB,GACzB,OAAO,OAAO,CAAC,qBAAqB,KAAK,QAAQ;QAC/C,CAAC,CAAC,OAAO,CAAC,qBAAqB;QAC/B,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAA;IACxC,MAAM,WAAW,GAAG,aAAa,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAA;IACzE,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAEzC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,cAAc,GAAG,EAAE,CAAA;IAC5B,CAAC;IAED,MAAM,EAAE,GAAG,wBAAS,CAAC,KAAK,CAAC;QACzB,MAAM,EAAE,MAAM;KACf,CAAC,CAAA;IACF,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IACpB,MAAM,WAAW,GAAG,EAAE,CAAC,QAAQ,CAAC,qBAAqB,EAAE,wBAAS,CAAC,WAAW,CAAC,CAAA;IAE7E,IAAI,qBAAqB,KAAK,qBAAqB,EAAE,CAAC;QACpD,MAAM,WAAW,GAAG,EAAE,CAAC,QAAQ,CAAC,qBAAqB,EAAE,wBAAS,CAAC,WAAW,CAAC,CAAA;QAC7E,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAA;QAE1B,OAAO,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;YAC9B,IAAI,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBAC/B,IAAI,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,CAAC,gBAAgB,EAAE,CAAC;oBACnD,CAAC,EAAE,CAAA;gBACL,CAAC;gBACD,MAAK;YACP,CAAC;YACD,CAAC,EAAE,CAAA;QACL,CAAC;QAED,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAChC,CAAC;IAED,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AA5CY,QAAA,cAAc,kBA4C1B"}
@@ -1,2 +1,26 @@
1
- export { formatCurrencyUnit, formatCurrencyUnitFragment, type formatCurrencyUnitOptions, type FormatterValue, } from '@ledgerhq/live-currency-format';
1
+ import type { Unit } from '../api/types';
2
+ declare const defaultFormatOptions: {
3
+ locale: string;
4
+ showCode: boolean;
5
+ alwaysShowSign: boolean;
6
+ showAllDigits: boolean;
7
+ disableRounding: boolean;
8
+ useGrouping: boolean;
9
+ subMagnitude: number;
10
+ discreet: boolean;
11
+ joinFragmentsSeparator: string;
12
+ dynamicSignificantDigits: number;
13
+ staticSignificantDigits: number;
14
+ };
15
+ export type formatCurrencyUnitOptions = Partial<typeof defaultFormatOptions>;
16
+ export type FormatterValue = {
17
+ integerPart: string;
18
+ decimalPart: string;
19
+ decimalSeparator: '.' | ',';
20
+ currencyText: string;
21
+ currencyPosition: 'start' | 'end';
22
+ };
23
+ export declare const formatCurrencyUnitFragment: (unit: Unit, value: BigNumber, options?: formatCurrencyUnitOptions) => FormatterValue;
24
+ export declare const formatCurrencyUnit: (unit: Unit, value: BigNumber, options?: formatCurrencyUnitOptions) => string;
25
+ export {};
2
26
  //# sourceMappingURL=formatCurrencyUnit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatCurrencyUnit.d.ts","sourceRoot":"","sources":["../../src/currencies/formatCurrencyUnit.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,cAAc,GACpB,MAAM,gCAAgC,CAAA"}
1
+ {"version":3,"file":"formatCurrencyUnit.d.ts","sourceRoot":"","sources":["../../src/currencies/formatCurrencyUnit.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAGxC,QAAA,MAAM,oBAAoB;;;;;;;;;;;;CAYzB,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAE5E,MAAM,MAAM,cAAc,GAAG;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,GAAG,GAAG,GAAG,CAAA;IAC3B,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,OAAO,GAAG,KAAK,CAAA;CAClC,CAAA;AA4GD,eAAO,MAAM,0BAA0B,GACrC,MAAM,IAAI,EACV,OAAO,SAAS,EAChB,UAAU,yBAAyB,KAClC,cAgCF,CAAA;AAED,eAAO,MAAM,kBAAkB,GAC7B,MAAM,IAAI,EACV,OAAO,SAAS,EAChB,UAAU,yBAAyB,KAClC,MAoBF,CAAA"}
@@ -1,7 +1,133 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.formatCurrencyUnitFragment = exports.formatCurrencyUnit = void 0;
4
- var live_currency_format_1 = require("@ledgerhq/live-currency-format");
5
- Object.defineProperty(exports, "formatCurrencyUnit", { enumerable: true, get: function () { return live_currency_format_1.formatCurrencyUnit; } });
6
- Object.defineProperty(exports, "formatCurrencyUnitFragment", { enumerable: true, get: function () { return live_currency_format_1.formatCurrencyUnitFragment; } });
3
+ exports.formatCurrencyUnit = exports.formatCurrencyUnitFragment = void 0;
4
+ // Forked from @ledgerhq/live-currency-format/src/formatCurrencyUnit.ts
5
+ const bignumber_js_1 = require("bignumber.js");
6
+ const localeUtility_1 = require("./localeUtility");
7
+ const BigNumberToLocaleString_1 = require("./BigNumberToLocaleString");
8
+ const nonBreakableSpace = '\u00A0';
9
+ const defaultFormatOptions = {
10
+ locale: 'en-EN',
11
+ showCode: false,
12
+ alwaysShowSign: false,
13
+ showAllDigits: false,
14
+ disableRounding: false,
15
+ useGrouping: true,
16
+ subMagnitude: 0,
17
+ discreet: false,
18
+ joinFragmentsSeparator: '',
19
+ dynamicSignificantDigits: 6,
20
+ staticSignificantDigits: 8,
21
+ };
22
+ const buildFormatState = (unit, value, _options) => {
23
+ const emptyState = () => ({
24
+ value: '',
25
+ sign: null,
26
+ code: null,
27
+ decimalSeparator: '.',
28
+ currencyPosition: unit.prefixCode ? 'start' : 'end',
29
+ });
30
+ if (!bignumber_js_1.BigNumber.isBigNumber(value)) {
31
+ console.warn('formatCurrencyUnit called with value=', value);
32
+ return emptyState();
33
+ }
34
+ if (value.isNaN()) {
35
+ console.warn('formatCurrencyUnit called with NaN value!');
36
+ return emptyState();
37
+ }
38
+ if (!value.isFinite()) {
39
+ console.warn('formatCurrencyUnit called with infinite value=', value);
40
+ return emptyState();
41
+ }
42
+ const options = {};
43
+ if (_options) {
44
+ let k;
45
+ for (k in _options) {
46
+ const optionValue = _options[k];
47
+ if (optionValue !== undefined) {
48
+ options[k] = optionValue;
49
+ }
50
+ }
51
+ }
52
+ const resolvedOptions = {
53
+ ...defaultFormatOptions,
54
+ ...unit,
55
+ ...options,
56
+ };
57
+ const { showCode, alwaysShowSign, showAllDigits, locale, disableRounding, useGrouping, subMagnitude, discreet, dynamicSignificantDigits, staticSignificantDigits, } = resolvedOptions;
58
+ const { magnitude, code } = unit;
59
+ const floatValue = value.div(new bignumber_js_1.BigNumber(10).pow(magnitude));
60
+ const floatValueAbs = floatValue.abs();
61
+ const minimumFractionDigits = showAllDigits ? magnitude : 0;
62
+ const maximumFractionDigits = disableRounding
63
+ ? magnitude + subMagnitude
64
+ : Math.max(minimumFractionDigits, Math.max(0, Math.min(dynamicSignificantDigits - Math.ceil(Math.log(floatValueAbs.toNumber()) / Math.log(10)), magnitude + subMagnitude, staticSignificantDigits)));
65
+ const sign = alwaysShowSign || floatValue.isNegative() ? (floatValue.isNegative() ? '-' : '+') : null;
66
+ const formattedValue = discreet
67
+ ? '***'
68
+ : (0, BigNumberToLocaleString_1.toLocaleString)(floatValueAbs, locale, {
69
+ maximumFractionDigits,
70
+ minimumFractionDigits,
71
+ useGrouping,
72
+ });
73
+ const separators = (0, localeUtility_1.getSeparators)(locale);
74
+ const decimalSeparator = separators.decimal === ',' ? ',' : '.';
75
+ const currencyPosition = unit.prefixCode ? 'start' : 'end';
76
+ return {
77
+ value: formattedValue,
78
+ sign,
79
+ code: showCode ? code : null,
80
+ decimalSeparator,
81
+ currencyPosition,
82
+ };
83
+ };
84
+ const formatCurrencyUnitFragment = (unit, value, options) => {
85
+ const { value: formattedValue, sign, code, decimalSeparator, currencyPosition, } = buildFormatState(unit, value, options);
86
+ const hasDecimals = formattedValue.indexOf(decimalSeparator) !== -1;
87
+ const [integerPartRaw, decimalPartRaw] = hasDecimals
88
+ ? formattedValue.split(decimalSeparator)
89
+ : [formattedValue, ''];
90
+ let integerPart = integerPartRaw;
91
+ const decimalPart = decimalPartRaw || '';
92
+ let currencyText = code || '';
93
+ if (sign) {
94
+ if (currencyPosition === 'start' && currencyText) {
95
+ currencyText = `${sign}${currencyText}`;
96
+ }
97
+ else {
98
+ integerPart = `${sign}${integerPart}`;
99
+ }
100
+ }
101
+ return {
102
+ integerPart,
103
+ decimalPart,
104
+ decimalSeparator,
105
+ currencyText,
106
+ currencyPosition,
107
+ };
108
+ };
109
+ exports.formatCurrencyUnitFragment = formatCurrencyUnitFragment;
110
+ const formatCurrencyUnit = (unit, value, options) => {
111
+ const joinFragmentsSeparator = (options && options.joinFragmentsSeparator) || defaultFormatOptions.joinFragmentsSeparator;
112
+ const { value: formattedValue, sign, code } = buildFormatState(unit, value, options);
113
+ const parts = [];
114
+ if (unit.prefixCode) {
115
+ if (sign)
116
+ parts.push(sign);
117
+ if (code)
118
+ parts.push(code);
119
+ parts.push(formattedValue);
120
+ }
121
+ else {
122
+ if (sign)
123
+ parts.push(sign);
124
+ parts.push(formattedValue);
125
+ if (code) {
126
+ parts.push(nonBreakableSpace);
127
+ parts.push(code);
128
+ }
129
+ }
130
+ return parts.join(joinFragmentsSeparator);
131
+ };
132
+ exports.formatCurrencyUnit = formatCurrencyUnit;
7
133
  //# sourceMappingURL=formatCurrencyUnit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatCurrencyUnit.js","sourceRoot":"","sources":["../../src/currencies/formatCurrencyUnit.ts"],"names":[],"mappings":";;;AAAA,uEAKuC;AAJrC,0HAAA,kBAAkB,OAAA;AAClB,kIAAA,0BAA0B,OAAA"}
1
+ {"version":3,"file":"formatCurrencyUnit.js","sourceRoot":"","sources":["../../src/currencies/formatCurrencyUnit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export declare const prefixFormat: readonly ["sign", "code", "value"];
2
+ export declare const suffixFormat: readonly ["sign", "value", "separator", "code"];
3
+ export type GetSeparators = (locale: string) => {
4
+ decimal: string | null | undefined;
5
+ thousands: string | null | undefined;
6
+ };
7
+ export declare const getSeparators: GetSeparators;
8
+ //# sourceMappingURL=localeUtility.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localeUtility.d.ts","sourceRoot":"","sources":["../../src/currencies/localeUtility.ts"],"names":[],"mappings":"AA8BA,eAAO,MAAM,YAAY,oCAAqC,CAAA;AAC9D,eAAO,MAAM,YAAY,iDAAkD,CAAA;AAE3E,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK;IAC9C,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IAClC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CACrC,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,aAoB1B,CAAA"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSeparators = exports.suffixFormat = exports.prefixFormat = void 0;
4
+ // Forked from @ledgerhq/live-currency-format/src/localeUtility.ts
5
+ const memoize = (fn) => {
6
+ const cache = {};
7
+ return ((arg) => {
8
+ if (!(arg in cache)) {
9
+ cache[arg] = fn(arg);
10
+ }
11
+ return cache[arg];
12
+ });
13
+ };
14
+ const options = {
15
+ style: 'currency',
16
+ currency: 'USD',
17
+ };
18
+ const localeNotAvailable = (1.2).toLocaleString('en', options) !== '$1.20';
19
+ const getFallback = (locale) => staticFallback[Object.prototype.hasOwnProperty.call(staticFallback, locale) ? locale : 'en'];
20
+ const staticFallback = {
21
+ en: ['-$1.00', '10,000.2'],
22
+ es: ['-1,00 US$', '10.000,2'],
23
+ fr: ['-1,00 $US', '10 000,2'],
24
+ ja: ['-US$1.00', '10,000.2'],
25
+ ko: ['-US$1.00', '10,000.2'],
26
+ ru: ['-1,00 $', '10 000,2'],
27
+ zh: ['-US$1.00', '10,000.2'],
28
+ };
29
+ exports.prefixFormat = ['sign', 'code', 'value'];
30
+ exports.suffixFormat = ['sign', 'value', 'separator', 'code'];
31
+ exports.getSeparators = memoize((locale) => {
32
+ const res = localeNotAvailable ? getFallback(locale)[1] : (10000.2).toLocaleString(locale);
33
+ let decimal;
34
+ let thousands;
35
+ for (let i = 0; i < res.length; i++) {
36
+ const c = res[i];
37
+ if (/[0-9]/.test(c))
38
+ continue;
39
+ if (!thousands) {
40
+ thousands = c;
41
+ }
42
+ else {
43
+ decimal = c;
44
+ }
45
+ }
46
+ return {
47
+ decimal,
48
+ thousands,
49
+ };
50
+ });
51
+ //# sourceMappingURL=localeUtility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localeUtility.js","sourceRoot":"","sources":["../../src/currencies/localeUtility.ts"],"names":[],"mappings":";;;AAAA,kEAAkE;AAClE,MAAM,OAAO,GAAG,CAA2C,EAAK,EAAK,EAAE;IACrE,MAAM,KAAK,GAAkC,EAAE,CAAA;IAC/C,OAAO,CAAC,CAAC,GAAW,EAAE,EAAE;QACtB,IAAI,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC;YACpB,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;QACtB,CAAC;QACD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAA;IACnB,CAAC,CAAM,CAAA;AACT,CAAC,CAAA;AAED,MAAM,OAAO,GAAG;IACd,KAAK,EAAE,UAAmB;IAC1B,QAAQ,EAAE,KAAK;CAChB,CAAA;AACD,MAAM,kBAAkB,GAAG,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,OAAO,CAAA;AAE1E,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,EAAE,CACrC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;AAE9F,MAAM,cAAc,GAA6B;IAC/C,EAAE,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC1B,EAAE,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;IAC7B,EAAE,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;IAC7B,EAAE,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;IAC5B,EAAE,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;IAC5B,EAAE,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;IAC3B,EAAE,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC;CAC7B,CAAA;AAEY,QAAA,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAU,CAAA;AACjD,QAAA,YAAY,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,CAAU,CAAA;AAO9D,QAAA,aAAa,GAAkB,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;IAC7D,MAAM,GAAG,GAAG,kBAAkB,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;IAC1F,IAAI,OAAO,CAAA;IACX,IAAI,SAAS,CAAA;IAEb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;QAChB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,SAAQ;QAE7B,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,SAAS,GAAG,CAAC,CAAA;QACf,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,CAAC,CAAA;QACb,CAAC;IACH,CAAC;IAED,OAAO;QACL,OAAO;QACP,SAAS;KACV,CAAA;AACH,CAAC,CAAC,CAAA"}
@@ -1,2 +1,3 @@
1
- export { parseCurrencyUnit } from '@ledgerhq/live-currency-format';
1
+ import type { Unit } from '../api/types';
2
+ export declare const parseCurrencyUnit: (unit: Unit, valueString: string) => BigNumber;
2
3
  //# sourceMappingURL=parseCurrencyUnit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parseCurrencyUnit.d.ts","sourceRoot":"","sources":["../../src/currencies/parseCurrencyUnit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA"}
1
+ {"version":3,"file":"parseCurrencyUnit.d.ts","sourceRoot":"","sources":["../../src/currencies/parseCurrencyUnit.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAGxC,eAAO,MAAM,iBAAiB,GAAI,MAAM,IAAI,EAAE,aAAa,MAAM,KAAG,SAKnE,CAAA"}
@@ -1,6 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.parseCurrencyUnit = void 0;
4
- var live_currency_format_1 = require("@ledgerhq/live-currency-format");
5
- Object.defineProperty(exports, "parseCurrencyUnit", { enumerable: true, get: function () { return live_currency_format_1.parseCurrencyUnit; } });
4
+ const bignumber_js_1 = require("bignumber.js");
5
+ const parseCurrencyUnit = (unit, valueString) => {
6
+ const str = valueString.replace(/,/g, '.');
7
+ const value = new bignumber_js_1.BigNumber(str);
8
+ if (value.isNaN())
9
+ return new bignumber_js_1.BigNumber(0);
10
+ return value.times(new bignumber_js_1.BigNumber(10).pow(unit.magnitude)).integerValue();
11
+ };
12
+ exports.parseCurrencyUnit = parseCurrencyUnit;
6
13
  //# sourceMappingURL=parseCurrencyUnit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parseCurrencyUnit.js","sourceRoot":"","sources":["../../src/currencies/parseCurrencyUnit.ts"],"names":[],"mappings":";;;AAAA,uEAAkE;AAAzD,yHAAA,iBAAiB,OAAA"}
1
+ {"version":3,"file":"parseCurrencyUnit.js","sourceRoot":"","sources":["../../src/currencies/parseCurrencyUnit.ts"],"names":[],"mappings":";;;AAEA,+CAAwC;AAEjC,MAAM,iBAAiB,GAAG,CAAC,IAAU,EAAE,WAAmB,EAAa,EAAE;IAC9E,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAC1C,MAAM,KAAK,GAAG,IAAI,wBAAS,CAAC,GAAG,CAAC,CAAA;IAChC,IAAI,KAAK,CAAC,KAAK,EAAE;QAAE,OAAO,IAAI,wBAAS,CAAC,CAAC,CAAC,CAAA;IAC1C,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,wBAAS,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;AAC1E,CAAC,CAAA;AALY,QAAA,iBAAiB,qBAK7B"}
@@ -1,4 +1,3 @@
1
- import { CryptoCurrency, CryptoCurrencyId } from '@ledgerhq/types-cryptoassets';
2
1
  import type { FeatureConfig } from './features/types';
3
2
  type ConfigStatus = {
4
3
  type: 'active';
@@ -8,7 +7,7 @@ type ConfigStatus = {
8
7
  message?: string;
9
8
  } | {
10
9
  type: 'migration';
11
- chain: CryptoCurrencyId;
10
+ chain: string;
12
11
  from: string;
13
12
  to: string;
14
13
  link: string;
@@ -34,10 +33,10 @@ export type CurrencyConfig = {
34
33
  customBanner?: Banner;
35
34
  [key: string]: unknown;
36
35
  };
37
- export type CoinConfig<T extends CurrencyConfig> = (currency?: CryptoCurrency) => T;
36
+ export type CoinConfig<T extends CurrencyConfig> = (currencyId?: string) => T;
38
37
  declare function buildCoinConfig<T extends CurrencyConfig>(): {
39
38
  setCoinConfig: (config: CoinConfig<T>) => void;
40
- getCoinConfig: (currency?: CryptoCurrency) => T;
39
+ getCoinConfig: (currencyId?: string) => T;
41
40
  };
42
41
  export default buildCoinConfig;
43
42
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAE/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAErD,KAAK,YAAY,GACb;IACE,IAAI,EAAE,QAAQ,CAAA;IACd,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAA;CAC3B,GACD;IACE,IAAI,EAAE,mBAAmB,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,GACD;IACE,IAAI,EAAE,WAAW,CAAA;IACjB,KAAK,EAAE,gBAAgB,CAAA;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;CACb,GACD;IACE,IAAI,EAAE,qBAAqB,CAAA;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EACH,SAAS,GACT,MAAM,GACN,eAAe,GACf,kBAAkB,GAClB,MAAM,GACN,SAAS,GACT,gBAAgB,GAChB,kBAAkB,GAClB,SAAS,GACT,0BAA0B,CAAA;CAC/B,GACD;IACE,IAAI,EAAE,oBAAoB,CAAA;IAC1B,eAAe,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,MAAM,CAAA;CACb,GACD;IACE,IAAI,EAAE,YAAY,CAAA;CACnB,CAAA;AAEL,KAAK,MAAM,GAAG;IACZ,SAAS,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,YAAY,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,cAAc,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,KAAK,CAAC,CAAA;AAEnF,iBAAS,eAAe,CAAC,CAAC,SAAS,cAAc;4BAGhB,UAAU,CAAC,CAAC,CAAC,KAAG,IAAI;+BAIjB,cAAc,KAAG,CAAC;EAYrD;AAED,eAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAErD,KAAK,YAAY,GACb;IACE,IAAI,EAAE,QAAQ,CAAA;IACd,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAA;CAC3B,GACD;IACE,IAAI,EAAE,mBAAmB,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,GACD;IACE,IAAI,EAAE,WAAW,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;CACb,GACD;IACE,IAAI,EAAE,qBAAqB,CAAA;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EACH,SAAS,GACT,MAAM,GACN,eAAe,GACf,kBAAkB,GAClB,MAAM,GACN,SAAS,GACT,gBAAgB,GAChB,kBAAkB,GAClB,SAAS,GACT,0BAA0B,CAAA;CAC/B,GACD;IACE,IAAI,EAAE,oBAAoB,CAAA;IAC1B,eAAe,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,MAAM,CAAA;CACb,GACD;IACE,IAAI,EAAE,YAAY,CAAA;CACnB,CAAA;AAEL,KAAK,MAAM,GAAG;IACZ,SAAS,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,YAAY,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,cAAc,IAAI,CAAC,UAAU,CAAC,EAAE,MAAM,KAAK,CAAC,CAAA;AAE7E,iBAAS,eAAe,CAAC,CAAC,SAAS,cAAc;4BAGhB,UAAU,CAAC,CAAC,CAAC,KAAG,IAAI;iCAIf,MAAM,KAAG,CAAC;EAY/C;AAED,eAAe,eAAe,CAAA"}
package/lib-es/config.js CHANGED
@@ -4,11 +4,11 @@ function buildCoinConfig() {
4
4
  const setCoinConfig = (config) => {
5
5
  coinConfig = config;
6
6
  };
7
- const getCoinConfig = (currency) => {
7
+ const getCoinConfig = (currencyId) => {
8
8
  if (!coinConfig) {
9
9
  throw new MissingCoinConfig();
10
10
  }
11
- return coinConfig(currency);
11
+ return coinConfig(currencyId);
12
12
  };
13
13
  return {
14
14
  setCoinConfig,
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AA0D5C,SAAS,eAAe;IACtB,IAAI,UAAqC,CAAA;IAEzC,MAAM,aAAa,GAAG,CAAC,MAAqB,EAAQ,EAAE;QACpD,UAAU,GAAG,MAAM,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,CAAC,QAAyB,EAAK,EAAE;QACrD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,iBAAiB,EAAE,CAAA;QAC/B,CAAC;QAED,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAA;IAC7B,CAAC,CAAA;IAED,OAAO;QACL,aAAa;QACb,aAAa;KACd,CAAA;AACH,CAAC;AAED,eAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AA0D5C,SAAS,eAAe;IACtB,IAAI,UAAqC,CAAA;IAEzC,MAAM,aAAa,GAAG,CAAC,MAAqB,EAAQ,EAAE;QACpD,UAAU,GAAG,MAAM,CAAA;IACrB,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,CAAC,UAAmB,EAAK,EAAE;QAC/C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,iBAAiB,EAAE,CAAA;QAC/B,CAAC;QAED,OAAO,UAAU,CAAC,UAAU,CAAC,CAAA;IAC/B,CAAC,CAAA;IAED,OAAO;QACL,aAAa;QACb,aAAa;KACd,CAAA;AACH,CAAC;AAED,eAAe,eAAe,CAAA"}
@@ -0,0 +1,7 @@
1
+ export type SupportedOptions = {
2
+ minimumFractionDigits: number;
3
+ maximumFractionDigits: number;
4
+ useGrouping: boolean;
5
+ };
6
+ export declare const toLocaleString: (n: BigNumber, localeInput?: string, options?: Partial<SupportedOptions>) => string;
7
+ //# sourceMappingURL=BigNumberToLocaleString.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BigNumberToLocaleString.d.ts","sourceRoot":"","sources":["../../src/currencies/BigNumberToLocaleString.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,WAAW,EAAE,OAAO,CAAA;CACrB,CAAA;AAiBD,eAAO,MAAM,cAAc,GACzB,GAAG,SAAS,EACZ,cAAc,MAAM,EACpB,UAAS,OAAO,CAAC,gBAAgB,CAAM,KACtC,MAwCF,CAAA"}
@@ -0,0 +1,54 @@
1
+ // Forked from @ledgerhq/live-currency-format/src/BigNumberToLocaleString.ts
2
+ import { BigNumber } from 'bignumber.js';
3
+ import { getSeparators } from './localeUtility';
4
+ const getFormatForLocale = (locale) => {
5
+ const { decimal, thousands } = getSeparators(locale);
6
+ const opts = {
7
+ decimalSeparator: '.',
8
+ groupSeparator: ',',
9
+ groupSize: 3,
10
+ secondaryGroupSize: 0,
11
+ fractionGroupSeparator: '\xA0', // non-breaking space
12
+ fractionGroupSize: 0,
13
+ };
14
+ if (typeof decimal === 'string')
15
+ opts.decimalSeparator = decimal;
16
+ if (typeof thousands === 'string')
17
+ opts.groupSeparator = thousands;
18
+ return opts;
19
+ };
20
+ export const toLocaleString = (n, localeInput, options = {}) => {
21
+ let locale = localeInput;
22
+ if (!locale)
23
+ locale = 'en';
24
+ const minimumFractionDigits = typeof options.minimumFractionDigits === 'number' ? options.minimumFractionDigits : 0;
25
+ const maximumFractionDigits = typeof options.maximumFractionDigits === 'number'
26
+ ? options.maximumFractionDigits
27
+ : Math.max(minimumFractionDigits, 3);
28
+ const useGrouping = 'useGrouping' in options ? options.useGrouping : true;
29
+ const format = getFormatForLocale(locale);
30
+ if (!useGrouping) {
31
+ format.groupSeparator = '';
32
+ }
33
+ const BN = BigNumber.clone({
34
+ FORMAT: format,
35
+ });
36
+ const bn = new BN(n);
37
+ const maxDecimals = bn.toFormat(maximumFractionDigits, BigNumber.ROUND_FLOOR);
38
+ if (maximumFractionDigits !== minimumFractionDigits) {
39
+ const minDecimals = bn.toFormat(minimumFractionDigits, BigNumber.ROUND_FLOOR);
40
+ let i = maxDecimals.length;
41
+ while (i > minDecimals.length) {
42
+ if (maxDecimals[i - 1] !== '0') {
43
+ if (maxDecimals[i - 1] === format.decimalSeparator) {
44
+ i--;
45
+ }
46
+ break;
47
+ }
48
+ i--;
49
+ }
50
+ return maxDecimals.slice(0, i);
51
+ }
52
+ return maxDecimals;
53
+ };
54
+ //# sourceMappingURL=BigNumberToLocaleString.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BigNumberToLocaleString.js","sourceRoot":"","sources":["../../src/currencies/BigNumberToLocaleString.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAQ/C,MAAM,kBAAkB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC5C,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;IACpD,MAAM,IAAI,GAAG;QACX,gBAAgB,EAAE,GAAG;QACrB,cAAc,EAAE,GAAG;QACnB,SAAS,EAAE,CAAC;QACZ,kBAAkB,EAAE,CAAC;QACrB,sBAAsB,EAAE,MAAM,EAAE,qBAAqB;QACrD,iBAAiB,EAAE,CAAC;KACrB,CAAA;IACD,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAA;IAChE,IAAI,OAAO,SAAS,KAAK,QAAQ;QAAE,IAAI,CAAC,cAAc,GAAG,SAAS,CAAA;IAClE,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,CAAY,EACZ,WAAoB,EACpB,UAAqC,EAAE,EAC/B,EAAE;IACV,IAAI,MAAM,GAAG,WAAW,CAAA;IACxB,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,MAAM,qBAAqB,GACzB,OAAO,OAAO,CAAC,qBAAqB,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAA;IACvF,MAAM,qBAAqB,GACzB,OAAO,OAAO,CAAC,qBAAqB,KAAK,QAAQ;QAC/C,CAAC,CAAC,OAAO,CAAC,qBAAqB;QAC/B,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAA;IACxC,MAAM,WAAW,GAAG,aAAa,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAA;IACzE,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAEzC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,cAAc,GAAG,EAAE,CAAA;IAC5B,CAAC;IAED,MAAM,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC;QACzB,MAAM,EAAE,MAAM;KACf,CAAC,CAAA;IACF,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IACpB,MAAM,WAAW,GAAG,EAAE,CAAC,QAAQ,CAAC,qBAAqB,EAAE,SAAS,CAAC,WAAW,CAAC,CAAA;IAE7E,IAAI,qBAAqB,KAAK,qBAAqB,EAAE,CAAC;QACpD,MAAM,WAAW,GAAG,EAAE,CAAC,QAAQ,CAAC,qBAAqB,EAAE,SAAS,CAAC,WAAW,CAAC,CAAA;QAC7E,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAA;QAE1B,OAAO,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC;YAC9B,IAAI,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBAC/B,IAAI,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,CAAC,gBAAgB,EAAE,CAAC;oBACnD,CAAC,EAAE,CAAA;gBACL,CAAC;gBACD,MAAK;YACP,CAAC;YACD,CAAC,EAAE,CAAA;QACL,CAAC;QAED,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAChC,CAAC;IAED,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA"}
@@ -1,2 +1,26 @@
1
- export { formatCurrencyUnit, formatCurrencyUnitFragment, type formatCurrencyUnitOptions, type FormatterValue, } from '@ledgerhq/live-currency-format';
1
+ import type { Unit } from '../api/types';
2
+ declare const defaultFormatOptions: {
3
+ locale: string;
4
+ showCode: boolean;
5
+ alwaysShowSign: boolean;
6
+ showAllDigits: boolean;
7
+ disableRounding: boolean;
8
+ useGrouping: boolean;
9
+ subMagnitude: number;
10
+ discreet: boolean;
11
+ joinFragmentsSeparator: string;
12
+ dynamicSignificantDigits: number;
13
+ staticSignificantDigits: number;
14
+ };
15
+ export type formatCurrencyUnitOptions = Partial<typeof defaultFormatOptions>;
16
+ export type FormatterValue = {
17
+ integerPart: string;
18
+ decimalPart: string;
19
+ decimalSeparator: '.' | ',';
20
+ currencyText: string;
21
+ currencyPosition: 'start' | 'end';
22
+ };
23
+ export declare const formatCurrencyUnitFragment: (unit: Unit, value: BigNumber, options?: formatCurrencyUnitOptions) => FormatterValue;
24
+ export declare const formatCurrencyUnit: (unit: Unit, value: BigNumber, options?: formatCurrencyUnitOptions) => string;
25
+ export {};
2
26
  //# sourceMappingURL=formatCurrencyUnit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatCurrencyUnit.d.ts","sourceRoot":"","sources":["../../src/currencies/formatCurrencyUnit.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,cAAc,GACpB,MAAM,gCAAgC,CAAA"}
1
+ {"version":3,"file":"formatCurrencyUnit.d.ts","sourceRoot":"","sources":["../../src/currencies/formatCurrencyUnit.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAGxC,QAAA,MAAM,oBAAoB;;;;;;;;;;;;CAYzB,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAE5E,MAAM,MAAM,cAAc,GAAG;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,GAAG,GAAG,GAAG,CAAA;IAC3B,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,OAAO,GAAG,KAAK,CAAA;CAClC,CAAA;AA4GD,eAAO,MAAM,0BAA0B,GACrC,MAAM,IAAI,EACV,OAAO,SAAS,EAChB,UAAU,yBAAyB,KAClC,cAgCF,CAAA;AAED,eAAO,MAAM,kBAAkB,GAC7B,MAAM,IAAI,EACV,OAAO,SAAS,EAChB,UAAU,yBAAyB,KAClC,MAoBF,CAAA"}