@1money/component-ui 0.0.67 → 0.0.69

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 (163) hide show
  1. package/es/business/Filter/Account/Account.d.ts +2 -0
  2. package/es/business/Filter/Account/Account.js +289 -0
  3. package/es/business/Filter/Account/index.d.ts +2 -0
  4. package/es/business/Filter/Account/index.js +3 -0
  5. package/es/business/Filter/Account/interface.d.ts +83 -0
  6. package/es/business/Filter/Account/interface.js +2 -0
  7. package/es/business/Filter/Account/style/Account.css +84 -0
  8. package/es/business/Filter/Account/style/css.js +2 -0
  9. package/es/business/Filter/Account/style/index.d.ts +1 -0
  10. package/es/business/Filter/Account/style/index.js +2 -0
  11. package/es/business/Filter/Asset/Asset.d.ts +2 -0
  12. package/es/business/Filter/Asset/Asset.js +306 -0
  13. package/es/business/Filter/Asset/index.d.ts +2 -0
  14. package/es/business/Filter/Asset/index.js +3 -0
  15. package/es/business/Filter/Asset/interface.d.ts +90 -0
  16. package/es/business/Filter/Asset/interface.js +2 -0
  17. package/es/business/Filter/Asset/style/Asset.css +96 -0
  18. package/es/business/Filter/Asset/style/css.js +2 -0
  19. package/es/business/Filter/Asset/style/index.d.ts +1 -0
  20. package/es/business/Filter/Asset/style/index.js +2 -0
  21. package/es/business/Filter/DateRange/DateRange.d.ts +2 -0
  22. package/es/business/Filter/DateRange/DateRange.js +393 -0
  23. package/es/business/Filter/DateRange/index.d.ts +2 -0
  24. package/es/business/Filter/DateRange/index.js +3 -0
  25. package/es/business/Filter/DateRange/interface.d.ts +68 -0
  26. package/es/business/Filter/DateRange/interface.js +9 -0
  27. package/es/business/Filter/DateRange/style/DateRange.css +85 -0
  28. package/es/business/Filter/DateRange/style/css.js +2 -0
  29. package/es/business/Filter/DateRange/style/index.d.ts +1 -0
  30. package/es/business/Filter/DateRange/style/index.js +2 -0
  31. package/es/business/Filter/Option/Option.d.ts +2 -0
  32. package/es/business/Filter/Option/Option.js +264 -0
  33. package/es/business/Filter/Option/index.d.ts +2 -0
  34. package/es/business/Filter/Option/index.js +3 -0
  35. package/es/business/Filter/Option/interface.d.ts +81 -0
  36. package/es/business/Filter/Option/interface.js +2 -0
  37. package/es/business/Filter/Option/style/Option.css +72 -0
  38. package/es/business/Filter/Option/style/css.js +2 -0
  39. package/es/business/Filter/Option/style/index.d.ts +1 -0
  40. package/es/business/Filter/Option/style/index.js +2 -0
  41. package/es/business/Filter/index.d.ts +4 -0
  42. package/es/business/Filter/index.js +5 -0
  43. package/es/business/Select/Asset/AssetSelect.js +49 -27
  44. package/es/business/Select/Asset/interface.d.ts +16 -1
  45. package/es/business/Select/Asset/style/AssetSelect.css +5 -0
  46. package/es/business/Select/Network/NetworkSelect.js +79 -13
  47. package/es/business/Select/Network/interface.d.ts +43 -9
  48. package/es/business/Select/Network/interface.js +9 -2
  49. package/es/business/Select/Network/style/NetworkSelect.css +10 -0
  50. package/es/business/index.d.ts +1 -0
  51. package/es/business/index.js +2 -1
  52. package/es/components/ProForm/interface.d.ts +3 -1
  53. package/es/components/ProForm/layouts/QueryFilter.js +5 -1
  54. package/es/components/ProTable/ProTable.d.ts +5 -0
  55. package/es/components/ProTable/ProTable.js +309 -0
  56. package/es/components/ProTable/constants.d.ts +12 -0
  57. package/es/components/ProTable/constants.js +12 -0
  58. package/es/components/ProTable/core/genColumns.d.ts +10 -0
  59. package/es/components/ProTable/core/genColumns.js +81 -0
  60. package/es/components/ProTable/core/genSearchFields.d.ts +19 -0
  61. package/es/components/ProTable/core/genSearchFields.js +103 -0
  62. package/es/components/ProTable/core/useAwaitableReload.d.ts +17 -0
  63. package/es/components/ProTable/core/useAwaitableReload.js +39 -0
  64. package/es/components/ProTable/core/utils.d.ts +12 -0
  65. package/es/components/ProTable/core/utils.js +21 -0
  66. package/es/components/ProTable/index.d.ts +4 -0
  67. package/es/components/ProTable/index.js +5 -0
  68. package/es/components/ProTable/interface.d.ts +132 -0
  69. package/es/components/ProTable/interface.js +2 -0
  70. package/es/components/ProTable/style/ProTable.css +47 -0
  71. package/es/components/ProTable/style/css.js +6 -0
  72. package/es/components/ProTable/style/index.d.ts +5 -0
  73. package/es/components/ProTable/style/index.js +6 -0
  74. package/es/components/ProTable/useFetchData.d.ts +48 -0
  75. package/es/components/ProTable/useFetchData.js +270 -0
  76. package/es/components/Select/Select.js +3 -2
  77. package/es/components/Select/interface.d.ts +2 -0
  78. package/es/index.css +1 -1
  79. package/es/index.d.ts +2 -0
  80. package/es/index.js +2 -1
  81. package/lib/business/Filter/Account/Account.d.ts +2 -0
  82. package/lib/business/Filter/Account/Account.js +296 -0
  83. package/lib/business/Filter/Account/index.d.ts +2 -0
  84. package/lib/business/Filter/Account/index.js +28 -0
  85. package/lib/business/Filter/Account/interface.d.ts +83 -0
  86. package/lib/business/Filter/Account/interface.js +6 -0
  87. package/lib/business/Filter/Account/style/Account.css +84 -0
  88. package/lib/business/Filter/Account/style/css.js +4 -0
  89. package/lib/business/Filter/Account/style/index.d.ts +1 -0
  90. package/lib/business/Filter/Account/style/index.js +4 -0
  91. package/lib/business/Filter/Asset/Asset.d.ts +2 -0
  92. package/lib/business/Filter/Asset/Asset.js +313 -0
  93. package/lib/business/Filter/Asset/index.d.ts +2 -0
  94. package/lib/business/Filter/Asset/index.js +28 -0
  95. package/lib/business/Filter/Asset/interface.d.ts +90 -0
  96. package/lib/business/Filter/Asset/interface.js +6 -0
  97. package/lib/business/Filter/Asset/style/Asset.css +96 -0
  98. package/lib/business/Filter/Asset/style/css.js +4 -0
  99. package/lib/business/Filter/Asset/style/index.d.ts +1 -0
  100. package/lib/business/Filter/Asset/style/index.js +4 -0
  101. package/lib/business/Filter/DateRange/DateRange.d.ts +2 -0
  102. package/lib/business/Filter/DateRange/DateRange.js +400 -0
  103. package/lib/business/Filter/DateRange/index.d.ts +2 -0
  104. package/lib/business/Filter/DateRange/index.js +28 -0
  105. package/lib/business/Filter/DateRange/interface.d.ts +68 -0
  106. package/lib/business/Filter/DateRange/interface.js +15 -0
  107. package/lib/business/Filter/DateRange/style/DateRange.css +85 -0
  108. package/lib/business/Filter/DateRange/style/css.js +4 -0
  109. package/lib/business/Filter/DateRange/style/index.d.ts +1 -0
  110. package/lib/business/Filter/DateRange/style/index.js +4 -0
  111. package/lib/business/Filter/Option/Option.d.ts +2 -0
  112. package/lib/business/Filter/Option/Option.js +271 -0
  113. package/lib/business/Filter/Option/index.d.ts +2 -0
  114. package/lib/business/Filter/Option/index.js +28 -0
  115. package/lib/business/Filter/Option/interface.d.ts +81 -0
  116. package/lib/business/Filter/Option/interface.js +6 -0
  117. package/lib/business/Filter/Option/style/Option.css +72 -0
  118. package/lib/business/Filter/Option/style/css.js +4 -0
  119. package/lib/business/Filter/Option/style/index.d.ts +1 -0
  120. package/lib/business/Filter/Option/style/index.js +4 -0
  121. package/lib/business/Filter/index.d.ts +4 -0
  122. package/lib/business/Filter/index.js +50 -0
  123. package/lib/business/Select/Asset/AssetSelect.js +49 -27
  124. package/lib/business/Select/Asset/interface.d.ts +16 -1
  125. package/lib/business/Select/Asset/style/AssetSelect.css +5 -0
  126. package/lib/business/Select/Network/NetworkSelect.js +80 -13
  127. package/lib/business/Select/Network/interface.d.ts +43 -9
  128. package/lib/business/Select/Network/interface.js +10 -1
  129. package/lib/business/Select/Network/style/NetworkSelect.css +10 -0
  130. package/lib/business/index.d.ts +1 -0
  131. package/lib/business/index.js +12 -1
  132. package/lib/components/ProForm/interface.d.ts +3 -1
  133. package/lib/components/ProForm/layouts/QueryFilter.js +5 -1
  134. package/lib/components/ProTable/ProTable.d.ts +5 -0
  135. package/lib/components/ProTable/ProTable.js +316 -0
  136. package/lib/components/ProTable/constants.d.ts +12 -0
  137. package/lib/components/ProTable/constants.js +18 -0
  138. package/lib/components/ProTable/core/genColumns.d.ts +10 -0
  139. package/lib/components/ProTable/core/genColumns.js +87 -0
  140. package/lib/components/ProTable/core/genSearchFields.d.ts +19 -0
  141. package/lib/components/ProTable/core/genSearchFields.js +111 -0
  142. package/lib/components/ProTable/core/useAwaitableReload.d.ts +17 -0
  143. package/lib/components/ProTable/core/useAwaitableReload.js +46 -0
  144. package/lib/components/ProTable/core/utils.d.ts +12 -0
  145. package/lib/components/ProTable/core/utils.js +28 -0
  146. package/lib/components/ProTable/index.d.ts +4 -0
  147. package/lib/components/ProTable/index.js +33 -0
  148. package/lib/components/ProTable/interface.d.ts +132 -0
  149. package/lib/components/ProTable/interface.js +6 -0
  150. package/lib/components/ProTable/style/ProTable.css +47 -0
  151. package/lib/components/ProTable/style/css.js +8 -0
  152. package/lib/components/ProTable/style/index.d.ts +5 -0
  153. package/lib/components/ProTable/style/index.js +8 -0
  154. package/lib/components/ProTable/useFetchData.d.ts +48 -0
  155. package/lib/components/ProTable/useFetchData.js +277 -0
  156. package/lib/components/Select/Select.js +3 -2
  157. package/lib/components/Select/interface.d.ts +2 -0
  158. package/lib/index.css +1 -1
  159. package/lib/index.d.ts +2 -0
  160. package/lib/index.js +8 -1
  161. package/package.json +31 -1
  162. package/scripts/mcp-server/examples.generated.json +156 -0
  163. package/scripts/mcp-server/index.generated.json +741 -1
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Retrieves the spacing value for a given token key.
3
+ *
4
+ * @param {string} $key - The spacing token key (e.g., '100', '200').
5
+ * @return {length|null} The computed spacing value or null if the key is invalid.
6
+ * @example
7
+ * .element {
8
+ * padding: om-spacing-token('200'); // Returns 8px if $om-sys-spacing-unit is 4px
9
+ * }
10
+ */
11
+ /**
12
+ * Computes the spacing value based on a token key or a direct length value.
13
+ *
14
+ * @param {string|length} $value - The spacing token key (e.g., '100') or a direct length value (e.g., '16px').
15
+ * @return {length} The computed spacing value.
16
+ * @example
17
+ * .element {
18
+ * margin: om-spacing-value('300'); // Returns 12px if $om-sys-spacing-unit is 4px
19
+ * padding: om-spacing-value(16px); // Returns 16px
20
+ * gap: om-spacing-value(2); // Returns 8px if $om-sys-spacing-unit is 4px
21
+ * }
22
+ */
23
+ .om-option-filter__value {
24
+ display: inline-flex;
25
+ align-items: center;
26
+ width: 100%;
27
+ overflow: hidden;
28
+ line-height: 18px;
29
+ }
30
+ .om-option-filter__value-label {
31
+ flex: 0 1 auto;
32
+ min-width: 0;
33
+ overflow: hidden;
34
+ white-space: nowrap;
35
+ text-overflow: ellipsis;
36
+ }
37
+ .om-option-filter__value-more {
38
+ flex: 0 0 auto;
39
+ margin-left: var(--om-spacing-100, 4px);
40
+ color: var(--om-text-default-tertiary, #646465);
41
+ }
42
+
43
+ .om-option-filter-panel .om-component-ui-select-panel-header {
44
+ margin-bottom: var(--om-spacing-050, 2px);
45
+ }
46
+ .om-option-filter-panel .om-option-filter__row {
47
+ width: 100%;
48
+ }
49
+ .om-option-filter-panel .om-option-filter__row-name {
50
+ min-width: 0;
51
+ overflow: hidden;
52
+ white-space: nowrap;
53
+ text-overflow: ellipsis;
54
+ }
55
+ .om-option-filter-panel .om-option-filter__row-check {
56
+ flex: 0 0 auto;
57
+ pointer-events: none;
58
+ }
59
+ .om-option-filter-panel .om-option-filter__all {
60
+ display: flex;
61
+ align-items: center;
62
+ justify-content: space-between;
63
+ width: 100%;
64
+ padding: var(--om-spacing-200, 8px);
65
+ border: none;
66
+ background: transparent;
67
+ border-radius: var(--om-radius-200, 8px);
68
+ cursor: pointer;
69
+ }
70
+ .om-option-filter-panel .om-option-filter__all:hover, .om-option-filter-panel .om-option-filter__all--checked {
71
+ background: var(--om-bg-default-secondary, #f8f8f8);
72
+ }
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ require("./Option.css");
4
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL0ZpbHRlci9PcHRpb24vc3JjL2J1c2luZXNzL0ZpbHRlci9PcHRpb24vc3R5bGUvaW5kZXgudHMiXSwibmFtZXMiOlsicmVxdWlyZSJdLCJtYXBwaW5ncyI6Ijs7QUFBQUEsT0FBQSIsImZpbGUiOiJidXNpbmVzcy9GaWx0ZXIvT3B0aW9uL3N0eWxlL2Nzcy5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -0,0 +1 @@
1
+ import './Option.css';
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ require("./Option.css");
4
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL0ZpbHRlci9PcHRpb24vc3JjL2J1c2luZXNzL0ZpbHRlci9PcHRpb24vc3R5bGUvaW5kZXgudHMiXSwibmFtZXMiOlsicmVxdWlyZSJdLCJtYXBwaW5ncyI6Ijs7QUFBQUEsT0FBQSIsImZpbGUiOiJidXNpbmVzcy9GaWx0ZXIvT3B0aW9uL3N0eWxlL2luZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
@@ -0,0 +1,4 @@
1
+ export * from './Account';
2
+ export * from './Asset';
3
+ export * from './DateRange';
4
+ export * from './Option';
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _Account = require("./Account");
7
+ Object.keys(_Account).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _Account[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _Account[key];
14
+ }
15
+ });
16
+ });
17
+ var _Asset = require("./Asset");
18
+ Object.keys(_Asset).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _Asset[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function get() {
24
+ return _Asset[key];
25
+ }
26
+ });
27
+ });
28
+ var _DateRange = require("./DateRange");
29
+ Object.keys(_DateRange).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _DateRange[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function get() {
35
+ return _DateRange[key];
36
+ }
37
+ });
38
+ });
39
+ var _Option = require("./Option");
40
+ Object.keys(_Option).forEach(function (key) {
41
+ if (key === "default" || key === "__esModule") return;
42
+ if (key in exports && exports[key] === _Option[key]) return;
43
+ Object.defineProperty(exports, key, {
44
+ enumerable: true,
45
+ get: function get() {
46
+ return _Option[key];
47
+ }
48
+ });
49
+ });
50
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL3NyYy9idXNpbmVzcy9GaWx0ZXIvaW5kZXgudHMiXSwibmFtZXMiOlsiX0FjY291bnQiLCJyZXF1aXJlIiwiT2JqZWN0Iiwia2V5cyIsImZvckVhY2giLCJrZXkiLCJleHBvcnRzIiwiZGVmaW5lUHJvcGVydHkiLCJlbnVtZXJhYmxlIiwiZ2V0IiwiX0Fzc2V0IiwiX0RhdGVSYW5nZSIsIl9PcHRpb24iXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsSUFBQUEsUUFBQSxHQUFBQyxPQUFBO0FBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBSCxRQUFBLEVBQUFJLE9BQUEsV0FBQUMsR0FBQTtFQUFBLElBQUFBLEdBQUEsa0JBQUFBLEdBQUE7RUFBQSxJQUFBQSxHQUFBLElBQUFDLE9BQUEsSUFBQUEsT0FBQSxDQUFBRCxHQUFBLE1BQUFMLFFBQUEsQ0FBQUssR0FBQTtFQUFBSCxNQUFBLENBQUFLLGNBQUEsQ0FBQUQsT0FBQSxFQUFBRCxHQUFBO0lBQUFHLFVBQUE7SUFBQUMsR0FBQSxXQUFBQSxJQUFBO01BQUEsT0FBQVQsUUFBQSxDQUFBSyxHQUFBO0lBQUE7RUFBQTtBQUFBO0FBQ0EsSUFBQUssTUFBQSxHQUFBVCxPQUFBO0FBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBTyxNQUFBLEVBQUFOLE9BQUEsV0FBQUMsR0FBQTtFQUFBLElBQUFBLEdBQUEsa0JBQUFBLEdBQUE7RUFBQSxJQUFBQSxHQUFBLElBQUFDLE9BQUEsSUFBQUEsT0FBQSxDQUFBRCxHQUFBLE1BQUFLLE1BQUEsQ0FBQUwsR0FBQTtFQUFBSCxNQUFBLENBQUFLLGNBQUEsQ0FBQUQsT0FBQSxFQUFBRCxHQUFBO0lBQUFHLFVBQUE7SUFBQUMsR0FBQSxXQUFBQSxJQUFBO01BQUEsT0FBQUMsTUFBQSxDQUFBTCxHQUFBO0lBQUE7RUFBQTtBQUFBO0FBQ0EsSUFBQU0sVUFBQSxHQUFBVixPQUFBO0FBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBUSxVQUFBLEVBQUFQLE9BQUEsV0FBQUMsR0FBQTtFQUFBLElBQUFBLEdBQUEsa0JBQUFBLEdBQUE7RUFBQSxJQUFBQSxHQUFBLElBQUFDLE9BQUEsSUFBQUEsT0FBQSxDQUFBRCxHQUFBLE1BQUFNLFVBQUEsQ0FBQU4sR0FBQTtFQUFBSCxNQUFBLENBQUFLLGNBQUEsQ0FBQUQsT0FBQSxFQUFBRCxHQUFBO0lBQUFHLFVBQUE7SUFBQUMsR0FBQSxXQUFBQSxJQUFBO01BQUEsT0FBQUUsVUFBQSxDQUFBTixHQUFBO0lBQUE7RUFBQTtBQUFBO0FBQ0EsSUFBQU8sT0FBQSxHQUFBWCxPQUFBO0FBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBUyxPQUFBLEVBQUFSLE9BQUEsV0FBQUMsR0FBQTtFQUFBLElBQUFBLEdBQUEsa0JBQUFBLEdBQUE7RUFBQSxJQUFBQSxHQUFBLElBQUFDLE9BQUEsSUFBQUEsT0FBQSxDQUFBRCxHQUFBLE1BQUFPLE9BQUEsQ0FBQVAsR0FBQTtFQUFBSCxNQUFBLENBQUFLLGNBQUEsQ0FBQUQsT0FBQSxFQUFBRCxHQUFBO0lBQUFHLFVBQUE7SUFBQUMsR0FBQSxXQUFBQSxJQUFBO01BQUEsT0FBQUcsT0FBQSxDQUFBUCxHQUFBO0lBQUE7RUFBQTtBQUFBIiwiZmlsZSI6ImJ1c2luZXNzL0ZpbHRlci9pbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -9,6 +9,7 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
9
9
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
10
10
  var _jsxRuntime = require("react/jsx-runtime");
11
11
  var _react = require("react");
12
+ var _reactNumberFormat = require("react-number-format");
12
13
  var _Empty = require("../../../components/Empty");
13
14
  var _Flex = require("../../../components/Flex");
14
15
  var _Select = require("../../../components/Select");
@@ -24,6 +25,7 @@ var __rest = void 0 && (void 0).__rest || function (s, e) {
24
25
  };
25
26
  var WRAP_CLS = 'om-asset-select';
26
27
  var ICON_CLS = "".concat(WRAP_CLS, "-icon");
28
+ var BALANCE_CLS = "".concat(WRAP_CLS, "-balance");
27
29
  var ICON_SIZE = 24;
28
30
  var GROUP_FIAT = 'Cash';
29
31
  var GROUP_CRYPTO = 'Stablecoins';
@@ -33,6 +35,7 @@ var toOption = function toOption(currency) {
33
35
  value: currency.currencyName,
34
36
  icon: currency.currencyIconUrl,
35
37
  name: currency.currencyDesc,
38
+ balance: currency.currencyBalance,
36
39
  // Match the search against both the symbol and the human-readable name.
37
40
  searchText: "".concat(currency.currencyName, " ").concat(currency.currencyDesc)
38
41
  };
@@ -63,10 +66,12 @@ var AssetSelectBase = function AssetSelectBase(_a) {
63
66
  filterInputAutoFocus = _a$filterInputAutoFoc === void 0 ? true : _a$filterInputAutoFoc,
64
67
  _a$strong = _a.strong,
65
68
  strong = _a$strong === void 0 ? true : _a$strong,
69
+ _a$showBalance = _a.showBalance,
70
+ showBalance = _a$showBalance === void 0 ? false : _a$showBalance,
66
71
  emptyContent = _a.emptyContent,
67
72
  onSearchChange = _a.onSearchChange,
68
73
  panelClassName = _a.panelClassName,
69
- rest = __rest(_a, ["options", "className", "labelClassName", "label", "name", "placeholder", "searchable", "filterInputAutoFocus", "strong", "emptyContent", "onSearchChange", "panelClassName"]);
74
+ rest = __rest(_a, ["options", "className", "labelClassName", "label", "name", "placeholder", "searchable", "filterInputAutoFocus", "strong", "showBalance", "emptyContent", "onSearchChange", "panelClassName"]);
70
75
  var _useState = (0, _react.useState)(''),
71
76
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
72
77
  keyword = _useState2[0],
@@ -76,18 +81,20 @@ var AssetSelectBase = function AssetSelectBase(_a) {
76
81
  onSearchChange === null || onSearchChange === void 0 ? void 0 : onSearchChange(value);
77
82
  };
78
83
  var groupedOptions = (0, _react.useMemo)(function () {
79
- var groups = [];
80
84
  var fiat = toGroupOptions(options.fiat);
81
85
  var crypto = toGroupOptions(options.crypto);
82
- if (fiat.length > 0) groups.push({
86
+ // With only one populated group, drop the group label and render a flat
87
+ // list — a lone "Cash"/"Stablecoins" heading is just noise. `Select` only
88
+ // shows a heading for groups that carry a truthy `label`.
89
+ if (fiat.length === 0) return crypto;
90
+ if (crypto.length === 0) return fiat;
91
+ return [{
83
92
  label: GROUP_FIAT,
84
93
  options: fiat
85
- });
86
- if (crypto.length > 0) groups.push({
94
+ }, {
87
95
  label: GROUP_CRYPTO,
88
96
  options: crypto
89
- });
90
- return groups;
97
+ }];
91
98
  }, [options.fiat, options.crypto]);
92
99
  return (0, _jsxRuntime.jsx)(_Select.Select, Object.assign({}, rest, {
93
100
  label: label,
@@ -128,40 +135,55 @@ var AssetSelectBase = function AssetSelectBase(_a) {
128
135
  });
129
136
  },
130
137
  renderOptionContent: function renderOptionContent(option) {
131
- var _a;
138
+ var _a, _b;
132
139
  var item = option;
133
140
  return (0, _jsxRuntime.jsxs)(_Flex.Flex, {
134
141
  align: 'center',
142
+ justify: 'space-between',
135
143
  gap: 8,
136
144
  style: {
137
145
  width: '100%'
138
146
  },
139
- children: [(0, _jsxRuntime.jsx)("img", {
140
- src: item.icon,
141
- alt: String((_a = item.value) !== null && _a !== void 0 ? _a : ''),
142
- width: ICON_SIZE,
143
- height: ICON_SIZE,
144
- className: ICON_CLS
145
- }), (0, _jsxRuntime.jsxs)(_Flex.Flex, {
146
- vertical: true,
147
- gap: 0,
148
- align: 'start',
147
+ children: [(0, _jsxRuntime.jsxs)(_Flex.Flex, {
148
+ align: 'center',
149
+ gap: 8,
149
150
  style: {
150
151
  minWidth: 0
151
152
  },
152
- children: [(0, _jsxRuntime.jsx)(_Typography.TypographyLabel, {
153
- size: 'md',
154
- color: 'default',
155
- children: item.label
156
- }), (0, _jsxRuntime.jsx)(_Typography.TypographyBody, {
157
- size: 'sm',
158
- color: 'default-tertiary',
159
- children: item.name
153
+ children: [(0, _jsxRuntime.jsx)("img", {
154
+ src: item.icon,
155
+ alt: String((_a = item.value) !== null && _a !== void 0 ? _a : ''),
156
+ width: ICON_SIZE,
157
+ height: ICON_SIZE,
158
+ className: ICON_CLS
159
+ }), (0, _jsxRuntime.jsxs)(_Flex.Flex, {
160
+ vertical: true,
161
+ gap: 0,
162
+ align: 'start',
163
+ style: {
164
+ minWidth: 0
165
+ },
166
+ children: [(0, _jsxRuntime.jsx)(_Typography.TypographyLabel, {
167
+ size: 'md',
168
+ color: 'default',
169
+ children: item.label
170
+ }), (0, _jsxRuntime.jsx)(_Typography.TypographyBody, {
171
+ size: 'sm',
172
+ color: 'default-tertiary',
173
+ children: item.name
174
+ })]
160
175
  })]
176
+ }), showBalance && item.balance != null && (0, _jsxRuntime.jsxs)(_Typography.TypographyBody, {
177
+ size: 'md',
178
+ color: 'default',
179
+ className: BALANCE_CLS,
180
+ children: [(0, _reactNumberFormat.numericFormatter)(item.balance, {
181
+ thousandSeparator: true
182
+ }), " ", String((_b = item.value) !== null && _b !== void 0 ? _b : '')]
161
183
  })]
162
184
  });
163
185
  }
164
186
  }));
165
187
  };
166
188
  var AssetSelect = exports.AssetSelect = /*#__PURE__*/(0, _react.memo)(AssetSelectBase);
167
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL1NlbGVjdC9Bc3NldC9Bc3NldFNlbGVjdC5qcyIsImJ1c2luZXNzL1NlbGVjdC9zcmMvYnVzaW5lc3MvU2VsZWN0L0Fzc2V0L0Fzc2V0U2VsZWN0LnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfRW1wdHkiLCJfRmxleCIsIl9TZWxlY3QiLCJfVHlwb2dyYXBoeSIsIl9jbGFzc25hbWVzIiwiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJXUkFQX0NMUyIsIklDT05fQ0xTIiwiY29uY2F0IiwiSUNPTl9TSVpFIiwiR1JPVVBfRklBVCIsIkdST1VQX0NSWVBUTyIsInRvT3B0aW9uIiwiY3VycmVuY3kiLCJsYWJlbCIsImN1cnJlbmN5TmFtZSIsInZhbHVlIiwiaWNvbiIsImN1cnJlbmN5SWNvblVybCIsIm5hbWUiLCJjdXJyZW5jeURlc2MiLCJzZWFyY2hUZXh0IiwiYnlPcmRlciIsImEiLCJiIiwiX2EiLCJfYiIsIm9yZGVyIiwidG9Hcm91cE9wdGlvbnMiLCJjdXJyZW5jaWVzIiwiYXJndW1lbnRzIiwidW5kZWZpbmVkIiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsInNvcnQiLCJtYXAiLCJBc3NldFNlbGVjdEJhc2UiLCJvcHRpb25zIiwiY2xhc3NOYW1lIiwibGFiZWxDbGFzc05hbWUiLCJfYSRsYWJlbCIsIl9hJG5hbWUiLCJfYSRwbGFjZWhvbGRlciIsInBsYWNlaG9sZGVyIiwiX2Ekc2VhcmNoYWJsZSIsInNlYXJjaGFibGUiLCJfYSRmaWx0ZXJJbnB1dEF1dG9Gb2MiLCJmaWx0ZXJJbnB1dEF1dG9Gb2N1cyIsIl9hJHN0cm9uZyIsInN0cm9uZyIsImVtcHR5Q29udGVudCIsIm9uU2VhcmNoQ2hhbmdlIiwicGFuZWxDbGFzc05hbWUiLCJyZXN0IiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwia2V5d29yZCIsInNldEtleXdvcmQiLCJoYW5kbGVTZWFyY2hDaGFuZ2UiLCJncm91cGVkT3B0aW9ucyIsInVzZU1lbW8iLCJncm91cHMiLCJmaWF0IiwiY3J5cHRvIiwicHVzaCIsIl9qc3giLCJTZWxlY3QiLCJhc3NpZ24iLCJFbXB0eSIsImRlc2NyaXB0aW9uIiwiam9pbkNscyIsInJlbmRlclZhbHVlIiwib3B0aW9uIiwiX3JlZiIsImZvbnRTaXplIiwiQXJyYXkiLCJpc0FycmF5IiwiaXRlbSIsIl9qc3hzIiwiRmxleCIsImFsaWduIiwiZ2FwIiwiY2hpbGRyZW4iLCJzcmMiLCJhbHQiLCJTdHJpbmciLCJ3aWR0aCIsImhlaWdodCIsIlR5cG9ncmFwaHlCb2R5Iiwic2l6ZSIsInJlbmRlck9wdGlvbkNvbnRlbnQiLCJzdHlsZSIsInZlcnRpY2FsIiwibWluV2lkdGgiLCJUeXBvZ3JhcGh5TGFiZWwiLCJjb2xvciIsIkFzc2V0U2VsZWN0IiwiZXhwb3J0cyIsIm1lbW8iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQVdBLElBQUFBLFdBQUEsR0FBQUMsT0FBQTtBQ1hBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE1BQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLEtBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLE9BQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFdBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFdBQUEsR0FBQU4sT0FBQTtBRExBLElBQUlPLE1BQU0sR0FBSSxVQUFRLFNBQUtBLE1BQU0sSUFBSyxVQUFVQyxDQUFDLEVBQUVDLENBQUMsRUFBRTtFQUNsRCxJQUFJQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VBQ1YsS0FBSyxJQUFJQyxDQUFDLElBQUlILENBQUMsRUFBRSxJQUFJSSxNQUFNLENBQUNDLFNBQVMsQ0FBQ0MsY0FBYyxDQUFDQyxJQUFJLENBQUNQLENBQUMsRUFBRUcsQ0FBQyxDQUFDLElBQUlGLENBQUMsQ0FBQ08sT0FBTyxDQUFDTCxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQy9FRCxDQUFDLENBQUNDLENBQUMsQ0FBQyxHQUFHSCxDQUFDLENBQUNHLENBQUMsQ0FBQztFQUNmLElBQUlILENBQUMsSUFBSSxJQUFJLElBQUksT0FBT0ksTUFBTSxDQUFDSyxxQkFBcUIsS0FBSyxVQUFVLEVBQy9ELEtBQUssSUFBSUMsQ0FBQyxHQUFHLENBQUMsRUFBRVAsQ0FBQyxHQUFHQyxNQUFNLENBQUNLLHFCQUFxQixDQUFDVCxDQUFDLENBQUMsRUFBRVUsQ0FBQyxHQUFHUCxDQUFDLENBQUNRLE1BQU0sRUFBRUQsQ0FBQyxFQUFFLEVBQUU7SUFDcEUsSUFBSVQsQ0FBQyxDQUFDTyxPQUFPLENBQUNMLENBQUMsQ0FBQ08sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUlOLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDTyxvQkFBb0IsQ0FBQ0wsSUFBSSxDQUFDUCxDQUFDLEVBQUVHLENBQUMsQ0FBQ08sQ0FBQyxDQUFDLENBQUMsRUFDMUVSLENBQUMsQ0FBQ0MsQ0FBQyxDQUFDTyxDQUFDLENBQUMsQ0FBQyxHQUFHVixDQUFDLENBQUNHLENBQUMsQ0FBQ08sQ0FBQyxDQUFDLENBQUM7RUFDekI7RUFDSixPQUFPUixDQUFDO0FBQ1osQ0FBQztBQ0FELElBQU1XLFFBQVEsR0FBRyxpQkFBaUI7QUFDbEMsSUFBTUMsUUFBUSxNQUFBQyxNQUFBLENBQU1GLFFBQVEsVUFBTztBQUNuQyxJQUFNRyxTQUFTLEdBQUcsRUFBRTtBQUNwQixJQUFNQyxVQUFVLEdBQUcsTUFBTTtBQUN6QixJQUFNQyxZQUFZLEdBQUcsYUFBYTtBQVNsQyxJQUFNQyxRQUFRLEdBQUcsU0FBWEEsUUFBUUEsQ0FBSUMsUUFBdUI7RUFBQSxPQUFtQjtJQUMxREMsS0FBSyxFQUFFRCxRQUFRLENBQUNFLFlBQVk7SUFDNUJDLEtBQUssRUFBRUgsUUFBUSxDQUFDRSxZQUFZO0lBQzVCRSxJQUFJLEVBQUVKLFFBQVEsQ0FBQ0ssZUFBZTtJQUM5QkMsSUFBSSxFQUFFTixRQUFRLENBQUNPLFlBQVk7SUFDM0I7SUFDQUMsVUFBVSxLQUFBYixNQUFBLENBQUtLLFFBQVEsQ0FBQ0UsWUFBWSxPQUFBUCxNQUFBLENBQUlLLFFBQVEsQ0FBQ08sWUFBWTtFREMvRCxDQ0FDO0FBQUEsQ0FBQztBQUVGO0FBQ0E7QUFDQSxJQUFNRSxPQUFPLEdBQUcsU0FBVkEsT0FBT0EsQ0FBSUMsQ0FBZ0IsRUFBRUMsQ0FBZ0IsRUFBSTtFQUFBLElBQUFDLEVBQUEsRUFBQUMsRUFBQTtFQUFDLE9BQUEsQ0FBQyxDQUFBRCxFQUFBLEdBQUFGLENBQUMsQ0FBQ0ksS0FBSyxNQUFBLElBQUEsSUFBQUYsRUFBQSxLQUFBLEtBQUEsQ0FBQSxHQUFBQSxFQUFBLEdBQUksQ0FBQyxLQUFLLENBQUFDLEVBQUEsR0FBQUYsQ0FBQyxDQUFDRyxLQUFLLE1BQUEsSUFBQSxJQUFBRCxFQUFBLEtBQUEsS0FBQSxDQUFBLEdBQUFBLEVBQUEsR0FBSSxDQUFDLENBQUM7QUFBQSxDQUFBO0FBQ3ZGLElBQU1FLGNBQWMsR0FBRyxTQUFqQkEsY0FBY0EsQ0FBQTtFQUFBLElBQUlDLFVBQUEsR0FBQUMsU0FBQSxDQUFBMUIsTUFBQSxRQUFBMEIsU0FBQSxRQUFBQyxTQUFBLEdBQUFELFNBQUEsTUFBOEIsRUFBRTtFQUFBLE9BQ3RELElBQUFFLG1CQUFBLGFBQUlILFVBQVUsRUFBRUksSUFBSSxDQUFDWCxPQUFPLENBQUMsQ0FBQ1ksR0FBRyxDQUFDdEIsUUFBUSxDQUFDO0FBQUE7QUFFN0MsSUFBTXVCLGVBQWUsR0FBeUIsU0FBeENBLGVBQWVBLENBQTBCVixFQWM5QyxFQUFJO0VEaEJELElDR0ZXLE9BQU8sR0FXT1gsRUFFZixDQWJDVyxPQUFPO0lBQ1BDLFNBQVMsR0FVS1osRUFFZixDQVpDWSxTQUFTO0lBQ1RDLGNBQWMsR0FTQWIsRUFFZixDQVhDYSxjQUFjO0lBQUFDLFFBQUEsR0FTQWQsRUFFZixDQVZDWCxLQUFLO0lBQUxBLEtBQUssR0FBQXlCLFFBQUEsY0FBRyxPQUFPLEdBQUFBLFFBQUE7SUFBQUMsT0FBQSxHQVFEZixFQUVmLENBVENOLElBQUk7SUFBSkEsSUFBSSxHQUFBcUIsT0FBQSxjQUFHLE9BQU8sR0FBQUEsT0FBQTtJQUFBQyxjQUFBLEdBT0FoQixFQUVmLENBUkNpQixXQUFXO0lBQVhBLFdBQVcsR0FBQUQsY0FBQSxjQUFHLGNBQWMsR0FBQUEsY0FBQTtJQUFBRSxhQUFBLEdBTWRsQixFQUVmLENBUENtQixVQUFVO0lBQVZBLFVBQVUsR0FBQUQsYUFBQSxjQUFHLElBQUksR0FBQUEsYUFBQTtJQUFBRSxxQkFBQSxHQUtIcEIsRUFFZixDQU5DcUIsb0JBQW9CO0lBQXBCQSxvQkFBb0IsR0FBQUQscUJBQUEsY0FBRyxJQUFJLEdBQUFBLHFCQUFBO0lBQUFFLFNBQUEsR0FJYnRCLEVBRWYsQ0FMQ3VCLE1BQU07SUFBTkEsTUFBTSxHQUFBRCxTQUFBLGNBQUcsSUFBSSxHQUFBQSxTQUFBO0lBQ2JFLFlBQVksR0FFRXhCLEVBRWYsQ0FKQ3dCLFlBQVk7SUFDWkMsY0FBYyxHQUNBekIsRUFFZixDQUhDeUIsY0FBYztJQUNkQyxjQUFjLEdBQUExQixFQUVmLENBRkMwQixjQUFjO0lBQ1hDLElBQUksR0FBQTVELE1BQUEsQ0FBQWlDLEVBQUEsRUFic0MsQ0FBQSxTQUFBLEVBQUEsV0FBQSxFQUFBLGdCQUFBLEVBQUEsT0FBQSxFQUFBLE1BQUEsRUFBQSxhQUFBLEVBQUEsWUFBQSxFQUFBLHNCQUFBLEVBQUEsUUFBQSxFQUFBLGNBQUEsRUFBQSxnQkFBQSxFQUFBLGdCQUFBLENBYzlDLENBRFE7RUFFUCxJQUFBNEIsU0FBQSxHQUE4QixJQUFBQyxlQUFRLEVBQUMsRUFBRSxDQUFDO0lBQUFDLFVBQUEsT0FBQUMsZUFBQSxhQUFBSCxTQUFBO0lBQW5DSSxPQUFPLEdBQUFGLFVBQUE7SUFBRUcsVUFBVSxHQUFBSCxVQUFBO0VBQzFCLElBQU1JLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBa0JBLENBQUkzQyxLQUFhLEVBQUk7SUFDM0MwQyxVQUFVLENBQUMxQyxLQUFLLENBQUM7SUFDakJrQyxjQUFjLEtBQUEsSUFBQSxJQUFkQSxjQUFjLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQWRBLGNBQWMsQ0FBR2xDLEtBQUssQ0FBQztFQUN6QixDQUFDO0VBRUQsSUFBTTRDLGNBQWMsR0FBRyxJQUFBQyxjQUFPLEVBQXFCLFlBQUs7SUFDdEQsSUFBTUMsTUFBTSxHQUF1QixFQUFFO0lBQ3JDLElBQU1DLElBQUksR0FBR25DLGNBQWMsQ0FBQ1EsT0FBTyxDQUFDMkIsSUFBSSxDQUFDO0lBQ3pDLElBQU1DLE1BQU0sR0FBR3BDLGNBQWMsQ0FBQ1EsT0FBTyxDQUFDNEIsTUFBTSxDQUFDO0lBQzdDLElBQUlELElBQUksQ0FBQzNELE1BQU0sR0FBRyxDQUFDLEVBQUUwRCxNQUFNLENBQUNHLElBQUksQ0FBQztNQUFFbkQsS0FBSyxFQUFFSixVQUFVO01BQUUwQixPQUFPLEVBQUUyQjtJQUFJLENBQUUsQ0FBQztJQUN0RSxJQUFJQyxNQUFNLENBQUM1RCxNQUFNLEdBQUcsQ0FBQyxFQUFFMEQsTUFBTSxDQUFDRyxJQUFJLENBQUM7TUFBRW5ELEtBQUssRUFBRUgsWUFBWTtNQUFFeUIsT0FBTyxFQUFFNEI7SUFBTSxDQUFFLENBQUM7SUFDNUUsT0FBT0YsTUFBTTtFQUNmLENBQUMsRUFBRSxDQUFDMUIsT0FBTyxDQUFDMkIsSUFBSSxFQUFFM0IsT0FBTyxDQUFDNEIsTUFBTSxDQUFDLENBQUM7RUFFbEMsT0FDRSxJQUFBRSxlQUFBLEVBQUNDLGNBQU0sRUFBQXRFLE1BQUEsQ0FBQXVFLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFDRGhCLElBQUksRUFBQTtJQUNSdEMsS0FBSyxFQUFFQSxLQUFLO0lBQ1pLLElBQUksRUFBRUEsSUFBSTtJQUNWdUIsV0FBVyxFQUFFQSxXQUFXO0lBQ3hCRSxVQUFVLEVBQUVBLFVBQVU7SUFDdEJFLG9CQUFvQixFQUFFQSxvQkFBb0I7SUFDMUNJLGNBQWMsRUFBRVMsa0JBQWtCO0lBQ2xDVixZQUFZLEVBQ1ZBLFlBQVksS0FBQSxJQUFBLElBQVpBLFlBQVksS0FBQSxLQUFBLENBQUEsR0FBWkEsWUFBWSxHQUNWLElBQUFpQixlQUFBLEVBQUNHLFlBQUssRUFBQTtNQUNKcEQsSUFBSSxFQUFDLE1BQU07TUFDWHFELFdBQVcsRUFBRWIsT0FBTyx1QkFBQWpELE1BQUEsQ0FBc0JpRCxPQUFPLFVBQU07SUFBWSxDQUFBLENBRXRFO0lBRUhwQixTQUFTLEVBQUUsSUFBQWtDLG1CQUFPLEVBQUNqRSxRQUFRLEVBQUUrQixTQUFTLENBQUM7SUFDdkNDLGNBQWMsRUFBRSxJQUFBaUMsbUJBQU8sS0FBQS9ELE1BQUEsQ0FBSUYsUUFBUSxhQUFTZ0MsY0FBYyxDQUFDO0lBQzNEYSxjQUFjLEVBQUUsSUFBQW9CLG1CQUFPLEtBQUEvRCxNQUFBLENBQUlGLFFBQVEsYUFBVTZDLGNBQWMsQ0FBQztJQUM1RGYsT0FBTyxFQUFFd0IsY0FBYztJQUN2QlksV0FBVyxFQUFFLFNBQWJBLFdBQVdBLENBQUdDLE1BQU0sRUFBQUMsSUFBQSxFQUFrQjtNQUFBLElBQWRDLFFBQVEsR0FBQUQsSUFBQSxDQUFSQyxRQUFRO01EcEMxQixJQUFJbEQsRUFBRTtNQ3FDVixJQUFJLENBQUNnRCxNQUFNLElBQUlHLEtBQUssQ0FBQ0MsT0FBTyxDQUFDSixNQUFNLENBQUMsRUFBRTtRQUNwQyxPQUFPL0IsV0FBVztNQUNwQjtNQUNBLElBQU1vQyxJQUFJLEdBQUdMLE1BQXFCO01BQ2xDLE9BQ0UsSUFBQU0sZ0JBQUEsRUFBQ0MsVUFBSSxFQUFBO1FBQUNDLEtBQUssRUFBQyxRQUFRO1FBQUNDLEdBQUcsRUFBRSxDQUFDO1FBQUFDLFFBQUEsRUFBQSxDQUN6QixJQUFBakIsZUFBQSxFQUFBLEtBQUEsRUFBQTtVQUNFa0IsR0FBRyxFQUFFTixJQUFJLENBQUM3RCxJQUFJO1VBQ2RvRSxHQUFHLEVBQUVDLE1BQU0sQ0FBQyxDQUFBN0QsRUFBQSxHQUFBcUQsSUFBSSxDQUFDOUQsS0FBSyxNQUFBLElBQUEsSUFBQVMsRUFBQSxLQUFBLEtBQUEsQ0FBQSxHQUFBQSxFQUFBLEdBQUksRUFBRSxDQUFDO1VBQzdCOEQsS0FBSyxFQUFFOUUsU0FBUztVQUNoQitFLE1BQU0sRUFBRS9FLFNBQVM7VUFDakI0QixTQUFTLEVBQUU5QjtRQUFRLENBQUEsQ0FDbkIsRUFDRixJQUFBMkQsZUFBQSxFQUFDdUIsMEJBQWMsRUFBQTtVQUFDQyxJQUFJLEVBQUVmLFFBQVE7VUFBRTNCLE1BQU0sRUFBRUEsTUFBTTtVQUFBbUMsUUFBQSxFQUMzQ0wsSUFBSSxDQUFDaEU7UUFBSyxDQUFBLENBQ0k7TUFBQSxDQUFBLENBQ1o7SUFFWCxDQUFDO0lBQ0Q2RSxtQkFBbUIsRUFBRSxTQUFyQkEsbUJBQW1CQSxDQUFHbEIsTUFBTSxFQUFJO01EakQxQixJQUFJaEQsRUFBRTtNQ2tEVixJQUFNcUQsSUFBSSxHQUFHTCxNQUFxQjtNQUNsQyxPQUNFLElBQUFNLGdCQUFBLEVBQUNDLFVBQUksRUFBQTtRQUFDQyxLQUFLLEVBQUMsUUFBUTtRQUFDQyxHQUFHLEVBQUUsQ0FBQztRQUFFVSxLQUFLLEVBQUU7VUFBRUwsS0FBSyxFQUFFO1FBQU0sQ0FBRTtRQUFBSixRQUFBLEVBQUEsQ0FDbkQsSUFBQWpCLGVBQUEsRUFBQSxLQUFBLEVBQUE7VUFDRWtCLEdBQUcsRUFBRU4sSUFBSSxDQUFDN0QsSUFBSTtVQUNkb0UsR0FBRyxFQUFFQyxNQUFNLENBQUMsQ0FBQTdELEVBQUEsR0FBQXFELElBQUksQ0FBQzlELEtBQUssTUFBQSxJQUFBLElBQUFTLEVBQUEsS0FBQSxLQUFBLENBQUEsR0FBQUEsRUFBQSxHQUFJLEVBQUUsQ0FBQztVQUM3QjhELEtBQUssRUFBRTlFLFNBQVM7VUFDaEIrRSxNQUFNLEVBQUUvRSxTQUFTO1VBQ2pCNEIsU0FBUyxFQUFFOUI7UUFBUSxDQUFBLENBQ25CLEVBQ0YsSUFBQXdFLGdCQUFBLEVBQUNDLFVBQUksRUFBQTtVQUFDYSxRQUFRLEVBQUEsSUFBQTtVQUFDWCxHQUFHLEVBQUUsQ0FBQztVQUFFRCxLQUFLLEVBQUMsT0FBTztVQUFDVyxLQUFLLEVBQUU7WUFBRUUsUUFBUSxFQUFFO1VBQUMsQ0FBRTtVQUFBWCxRQUFBLEVBQUEsQ0FDekQsSUFBQWpCLGVBQUEsRUFBQzZCLDJCQUFlLEVBQUE7WUFBQ0wsSUFBSSxFQUFDLElBQUk7WUFBQ00sS0FBSyxFQUFDLFNBQVM7WUFBQWIsUUFBQSxFQUN2Q0wsSUFBSSxDQUFDaEU7VUFBSyxDQUFBLENBQ0ssRUFDbEIsSUFBQW9ELGVBQUEsRUFBQ3VCLDBCQUFjLEVBQUE7WUFBQ0MsSUFBSSxFQUFDLElBQUk7WUFBQ00sS0FBSyxFQUFDLGtCQUFrQjtZQUFBYixRQUFBLEVBQy9DTCxJQUFJLENBQUMzRDtVQUFJLENBQUEsQ0FDSztRQUFBLENBQUEsQ0FDWjtNQUFBLENBQUEsQ0FDRjtJQUVYO0VBQUMsQ0FBQSxDQUFBLENBQ0Q7QUFFTixDQUFDO0FBRU0sSUFBTThFLFdBQVcsR0FBQUMsT0FBQSxDQUFBRCxXQUFBLGdCQUFHLElBQUFFLFdBQUksRUFBQ2hFLGVBQWUsQ0FBQyIsImZpbGUiOiJidXNpbmVzcy9TZWxlY3QvQXNzZXQvQXNzZXRTZWxlY3QuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgbWVtbywgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBFbXB0eSB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvRW1wdHknO1xuaW1wb3J0IHsgRmxleCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvRmxleCc7XG5pbXBvcnQgeyBTZWxlY3QgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL1NlbGVjdCc7XG5pbXBvcnQgeyBUeXBvZ3JhcGh5Qm9keSwgVHlwb2dyYXBoeUxhYmVsIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9UeXBvZ3JhcGh5JztcbmltcG9ydCB7IGpvaW5DbHMgfSBmcm9tICcuLi8uLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmNvbnN0IFdSQVBfQ0xTID0gJ29tLWFzc2V0LXNlbGVjdCc7XG5jb25zdCBJQ09OX0NMUyA9IGAke1dSQVBfQ0xTfS1pY29uYDtcbmNvbnN0IElDT05fU0laRSA9IDI0O1xuY29uc3QgR1JPVVBfRklBVCA9ICdDYXNoJztcbmNvbnN0IEdST1VQX0NSWVBUTyA9ICdTdGFibGVjb2lucyc7XG5jb25zdCB0b09wdGlvbiA9IChjdXJyZW5jeSkgPT4gKHtcbiAgICBsYWJlbDogY3VycmVuY3kuY3VycmVuY3lOYW1lLFxuICAgIHZhbHVlOiBjdXJyZW5jeS5jdXJyZW5jeU5hbWUsXG4gICAgaWNvbjogY3VycmVuY3kuY3VycmVuY3lJY29uVXJsLFxuICAgIG5hbWU6IGN1cnJlbmN5LmN1cnJlbmN5RGVzYyxcbiAgICAvLyBNYXRjaCB0aGUgc2VhcmNoIGFnYWluc3QgYm90aCB0aGUgc3ltYm9sIGFuZCB0aGUgaHVtYW4tcmVhZGFibGUgbmFtZS5cbiAgICBzZWFyY2hUZXh0OiBgJHtjdXJyZW5jeS5jdXJyZW5jeU5hbWV9ICR7Y3VycmVuY3kuY3VycmVuY3lEZXNjfWAsXG59KTtcbi8vIFNvcnQgd2l0aGluIGEgZ3JvdXAgYnkgdGhlIGJhY2tlbmQgYG9yZGVyYCAoYXNjZW5kaW5nKS4gQ29waWVzIHRoZSBhcnJheSBzb1xuLy8gdGhlIGNhbGxlcidzIGBvcHRpb25zYCBpcyBuZXZlciBtdXRhdGVkOyBtaXNzaW5nIGBvcmRlcmAgZmFsbHMgYmFjayB0byAwLlxuY29uc3QgYnlPcmRlciA9IChhLCBiKSA9PiB7IHZhciBfYSwgX2I7IHJldHVybiAoKF9hID0gYS5vcmRlcikgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogMCkgLSAoKF9iID0gYi5vcmRlcikgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogMCk7IH07XG5jb25zdCB0b0dyb3VwT3B0aW9ucyA9IChjdXJyZW5jaWVzID0gW10pID0+IFsuLi5jdXJyZW5jaWVzXS5zb3J0KGJ5T3JkZXIpLm1hcCh0b09wdGlvbik7XG5jb25zdCBBc3NldFNlbGVjdEJhc2UgPSAoX2EpID0+IHtcbiAgICB2YXIgeyBvcHRpb25zLCBjbGFzc05hbWUsIGxhYmVsQ2xhc3NOYW1lLCBsYWJlbCA9ICdBc3NldCcsIG5hbWUgPSAnYXNzZXQnLCBwbGFjZWhvbGRlciA9ICdTZWxlY3QgYXNzZXQnLCBzZWFyY2hhYmxlID0gdHJ1ZSwgZmlsdGVySW5wdXRBdXRvRm9jdXMgPSB0cnVlLCBzdHJvbmcgPSB0cnVlLCBlbXB0eUNvbnRlbnQsIG9uU2VhcmNoQ2hhbmdlLCBwYW5lbENsYXNzTmFtZSB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcIm9wdGlvbnNcIiwgXCJjbGFzc05hbWVcIiwgXCJsYWJlbENsYXNzTmFtZVwiLCBcImxhYmVsXCIsIFwibmFtZVwiLCBcInBsYWNlaG9sZGVyXCIsIFwic2VhcmNoYWJsZVwiLCBcImZpbHRlcklucHV0QXV0b0ZvY3VzXCIsIFwic3Ryb25nXCIsIFwiZW1wdHlDb250ZW50XCIsIFwib25TZWFyY2hDaGFuZ2VcIiwgXCJwYW5lbENsYXNzTmFtZVwiXSk7XG4gICAgY29uc3QgW2tleXdvcmQsIHNldEtleXdvcmRdID0gdXNlU3RhdGUoJycpO1xuICAgIGNvbnN0IGhhbmRsZVNlYXJjaENoYW5nZSA9ICh2YWx1ZSkgPT4ge1xuICAgICAgICBzZXRLZXl3b3JkKHZhbHVlKTtcbiAgICAgICAgb25TZWFyY2hDaGFuZ2UgPT09IG51bGwgfHwgb25TZWFyY2hDaGFuZ2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uU2VhcmNoQ2hhbmdlKHZhbHVlKTtcbiAgICB9O1xuICAgIGNvbnN0IGdyb3VwZWRPcHRpb25zID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICAgIGNvbnN0IGdyb3VwcyA9IFtdO1xuICAgICAgICBjb25zdCBmaWF0ID0gdG9Hcm91cE9wdGlvbnMob3B0aW9ucy5maWF0KTtcbiAgICAgICAgY29uc3QgY3J5cHRvID0gdG9Hcm91cE9wdGlvbnMob3B0aW9ucy5jcnlwdG8pO1xuICAgICAgICBpZiAoZmlhdC5sZW5ndGggPiAwKVxuICAgICAgICAgICAgZ3JvdXBzLnB1c2goeyBsYWJlbDogR1JPVVBfRklBVCwgb3B0aW9uczogZmlhdCB9KTtcbiAgICAgICAgaWYgKGNyeXB0by5sZW5ndGggPiAwKVxuICAgICAgICAgICAgZ3JvdXBzLnB1c2goeyBsYWJlbDogR1JPVVBfQ1JZUFRPLCBvcHRpb25zOiBjcnlwdG8gfSk7XG4gICAgICAgIHJldHVybiBncm91cHM7XG4gICAgfSwgW29wdGlvbnMuZmlhdCwgb3B0aW9ucy5jcnlwdG9dKTtcbiAgICByZXR1cm4gKF9qc3goU2VsZWN0LCBPYmplY3QuYXNzaWduKHt9LCByZXN0LCB7IGxhYmVsOiBsYWJlbCwgbmFtZTogbmFtZSwgcGxhY2Vob2xkZXI6IHBsYWNlaG9sZGVyLCBzZWFyY2hhYmxlOiBzZWFyY2hhYmxlLCBmaWx0ZXJJbnB1dEF1dG9Gb2N1czogZmlsdGVySW5wdXRBdXRvRm9jdXMsIG9uU2VhcmNoQ2hhbmdlOiBoYW5kbGVTZWFyY2hDaGFuZ2UsIGVtcHR5Q29udGVudDogZW1wdHlDb250ZW50ICE9PSBudWxsICYmIGVtcHR5Q29udGVudCAhPT0gdm9pZCAwID8gZW1wdHlDb250ZW50IDogKF9qc3goRW1wdHksIHsgaWNvbjogJ2NvaW4nLCBkZXNjcmlwdGlvbjoga2V5d29yZCA/IGBObyByZXN1bHRzIGZvciBcIiR7a2V5d29yZH1cImAgOiAnTm8gcmVzdWx0cycgfSkpLCBjbGFzc05hbWU6IGpvaW5DbHMoV1JBUF9DTFMsIGNsYXNzTmFtZSksIGxhYmVsQ2xhc3NOYW1lOiBqb2luQ2xzKGAke1dSQVBfQ0xTfS1sYWJlbGAsIGxhYmVsQ2xhc3NOYW1lKSwgcGFuZWxDbGFzc05hbWU6IGpvaW5DbHMoYCR7V1JBUF9DTFN9LXBhbmVsYCwgcGFuZWxDbGFzc05hbWUpLCBvcHRpb25zOiBncm91cGVkT3B0aW9ucywgcmVuZGVyVmFsdWU6IChvcHRpb24sIHsgZm9udFNpemUgfSkgPT4ge1xuICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgaWYgKCFvcHRpb24gfHwgQXJyYXkuaXNBcnJheShvcHRpb24pKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBsYWNlaG9sZGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgaXRlbSA9IG9wdGlvbjtcbiAgICAgICAgICAgIHJldHVybiAoX2pzeHMoRmxleCwgeyBhbGlnbjogJ2NlbnRlcicsIGdhcDogOCwgY2hpbGRyZW46IFtfanN4KFwiaW1nXCIsIHsgc3JjOiBpdGVtLmljb24sIGFsdDogU3RyaW5nKChfYSA9IGl0ZW0udmFsdWUpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6ICcnKSwgd2lkdGg6IElDT05fU0laRSwgaGVpZ2h0OiBJQ09OX1NJWkUsIGNsYXNzTmFtZTogSUNPTl9DTFMgfSksIF9qc3goVHlwb2dyYXBoeUJvZHksIHsgc2l6ZTogZm9udFNpemUsIHN0cm9uZzogc3Ryb25nLCBjaGlsZHJlbjogaXRlbS5sYWJlbCB9KV0gfSkpO1xuICAgICAgICB9LCByZW5kZXJPcHRpb25Db250ZW50OiAob3B0aW9uKSA9PiB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICBjb25zdCBpdGVtID0gb3B0aW9uO1xuICAgICAgICAgICAgcmV0dXJuIChfanN4cyhGbGV4LCB7IGFsaWduOiAnY2VudGVyJywgZ2FwOiA4LCBzdHlsZTogeyB3aWR0aDogJzEwMCUnIH0sIGNoaWxkcmVuOiBbX2pzeChcImltZ1wiLCB7IHNyYzogaXRlbS5pY29uLCBhbHQ6IFN0cmluZygoX2EgPSBpdGVtLnZhbHVlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAnJyksIHdpZHRoOiBJQ09OX1NJWkUsIGhlaWdodDogSUNPTl9TSVpFLCBjbGFzc05hbWU6IElDT05fQ0xTIH0pLCBfanN4cyhGbGV4LCB7IHZlcnRpY2FsOiB0cnVlLCBnYXA6IDAsIGFsaWduOiAnc3RhcnQnLCBzdHlsZTogeyBtaW5XaWR0aDogMCB9LCBjaGlsZHJlbjogW19qc3goVHlwb2dyYXBoeUxhYmVsLCB7IHNpemU6ICdtZCcsIGNvbG9yOiAnZGVmYXVsdCcsIGNoaWxkcmVuOiBpdGVtLmxhYmVsIH0pLCBfanN4KFR5cG9ncmFwaHlCb2R5LCB7IHNpemU6ICdzbScsIGNvbG9yOiAnZGVmYXVsdC10ZXJ0aWFyeScsIGNoaWxkcmVuOiBpdGVtLm5hbWUgfSldIH0pXSB9KSk7XG4gICAgICAgIH0gfSkpKTtcbn07XG5leHBvcnQgY29uc3QgQXNzZXRTZWxlY3QgPSBtZW1vKEFzc2V0U2VsZWN0QmFzZSk7IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
189
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL1NlbGVjdC9Bc3NldC9Bc3NldFNlbGVjdC5qcyIsImJ1c2luZXNzL1NlbGVjdC9zcmMvYnVzaW5lc3MvU2VsZWN0L0Fzc2V0L0Fzc2V0U2VsZWN0LnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfcmVhY3ROdW1iZXJGb3JtYXQiLCJfRW1wdHkiLCJfRmxleCIsIl9TZWxlY3QiLCJfVHlwb2dyYXBoeSIsIl9jbGFzc25hbWVzIiwiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJXUkFQX0NMUyIsIklDT05fQ0xTIiwiY29uY2F0IiwiQkFMQU5DRV9DTFMiLCJJQ09OX1NJWkUiLCJHUk9VUF9GSUFUIiwiR1JPVVBfQ1JZUFRPIiwidG9PcHRpb24iLCJjdXJyZW5jeSIsImxhYmVsIiwiY3VycmVuY3lOYW1lIiwidmFsdWUiLCJpY29uIiwiY3VycmVuY3lJY29uVXJsIiwibmFtZSIsImN1cnJlbmN5RGVzYyIsImJhbGFuY2UiLCJjdXJyZW5jeUJhbGFuY2UiLCJzZWFyY2hUZXh0IiwiYnlPcmRlciIsImEiLCJiIiwiX2EiLCJfYiIsIm9yZGVyIiwidG9Hcm91cE9wdGlvbnMiLCJjdXJyZW5jaWVzIiwiYXJndW1lbnRzIiwidW5kZWZpbmVkIiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsInNvcnQiLCJtYXAiLCJBc3NldFNlbGVjdEJhc2UiLCJvcHRpb25zIiwiY2xhc3NOYW1lIiwibGFiZWxDbGFzc05hbWUiLCJfYSRsYWJlbCIsIl9hJG5hbWUiLCJfYSRwbGFjZWhvbGRlciIsInBsYWNlaG9sZGVyIiwiX2Ekc2VhcmNoYWJsZSIsInNlYXJjaGFibGUiLCJfYSRmaWx0ZXJJbnB1dEF1dG9Gb2MiLCJmaWx0ZXJJbnB1dEF1dG9Gb2N1cyIsIl9hJHN0cm9uZyIsInN0cm9uZyIsIl9hJHNob3dCYWxhbmNlIiwic2hvd0JhbGFuY2UiLCJlbXB0eUNvbnRlbnQiLCJvblNlYXJjaENoYW5nZSIsInBhbmVsQ2xhc3NOYW1lIiwicmVzdCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsImtleXdvcmQiLCJzZXRLZXl3b3JkIiwiaGFuZGxlU2VhcmNoQ2hhbmdlIiwiZ3JvdXBlZE9wdGlvbnMiLCJ1c2VNZW1vIiwiZmlhdCIsImNyeXB0byIsIl9qc3giLCJTZWxlY3QiLCJhc3NpZ24iLCJFbXB0eSIsImRlc2NyaXB0aW9uIiwiam9pbkNscyIsInJlbmRlclZhbHVlIiwib3B0aW9uIiwiX3JlZiIsImZvbnRTaXplIiwiQXJyYXkiLCJpc0FycmF5IiwiaXRlbSIsIl9qc3hzIiwiRmxleCIsImFsaWduIiwiZ2FwIiwiY2hpbGRyZW4iLCJzcmMiLCJhbHQiLCJTdHJpbmciLCJ3aWR0aCIsImhlaWdodCIsIlR5cG9ncmFwaHlCb2R5Iiwic2l6ZSIsInJlbmRlck9wdGlvbkNvbnRlbnQiLCJqdXN0aWZ5Iiwic3R5bGUiLCJtaW5XaWR0aCIsInZlcnRpY2FsIiwiVHlwb2dyYXBoeUxhYmVsIiwiY29sb3IiLCJudW1lcmljRm9ybWF0dGVyIiwidGhvdXNhbmRTZXBhcmF0b3IiLCJBc3NldFNlbGVjdCIsImV4cG9ydHMiLCJtZW1vIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFXQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUNYQSxJQUFBQyxNQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxrQkFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsTUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksS0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssT0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sV0FBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sV0FBQSxHQUFBUCxPQUFBO0FETkEsSUFBSVEs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QUFTO1VBQUM1RCxTQUFTLEVBQUUvQixXQUFXO1VBQUE2RSxRQUFBLEVBQUEsQ0FDN0QsSUFBQWUsbUNBQWdCLEVBQUNwQixJQUFJLENBQUMzRCxPQUFPLEVBQUU7WUFBRWdGLGlCQUFpQixFQUFFO1VBQUksQ0FBRSxDQUFDLEVBQUEsR0FBQSxFQUFHYixNQUFNLENBQUMsQ0FBQTVELEVBQUEsR0FBQW9ELElBQUksQ0FBQ2hFLEtBQUssTUFBQSxJQUFBLElBQUFZLEVBQUEsS0FBQSxLQUFBLENBQUEsR0FBQUEsRUFBQSxHQUFJLEVBQUUsQ0FBQztRQUFBLENBQUEsQ0FFMUY7TUFBQSxDQUFBLENBQ0k7SUFFWDtFQUFDLENBQUEsQ0FBQSxDQUNEO0FBRU4sQ0FBQztBQUVNLElBQU0wRSxXQUFXLEdBQUFDLE9BQUEsQ0FBQUQsV0FBQSxnQkFBRyxJQUFBRSxXQUFJLEVBQUNuRSxlQUFlLENBQUMiLCJmaWxlIjoiYnVzaW5lc3MvU2VsZWN0L0Fzc2V0L0Fzc2V0U2VsZWN0LmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIF9fcmVzdCA9ICh0aGlzICYmIHRoaXMuX19yZXN0KSB8fCBmdW5jdGlvbiAocywgZSkge1xuICAgIHZhciB0ID0ge307XG4gICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApICYmIGUuaW5kZXhPZihwKSA8IDApXG4gICAgICAgIHRbcF0gPSBzW3BdO1xuICAgIGlmIChzICE9IG51bGwgJiYgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMgPT09IFwiZnVuY3Rpb25cIilcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIHAgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHMpOyBpIDwgcC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKGUuaW5kZXhPZihwW2ldKSA8IDAgJiYgT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHMsIHBbaV0pKVxuICAgICAgICAgICAgICAgIHRbcFtpXV0gPSBzW3BbaV1dO1xuICAgICAgICB9XG4gICAgcmV0dXJuIHQ7XG59O1xuaW1wb3J0IHsganN4IGFzIF9qc3gsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IG1lbW8sIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgbnVtZXJpY0Zvcm1hdHRlciB9IGZyb20gJ3JlYWN0LW51bWJlci1mb3JtYXQnO1xuaW1wb3J0IHsgRW1wdHkgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL0VtcHR5JztcbmltcG9ydCB7IEZsZXggfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL0ZsZXgnO1xuaW1wb3J0IHsgU2VsZWN0IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9TZWxlY3QnO1xuaW1wb3J0IHsgVHlwb2dyYXBoeUJvZHksIFR5cG9ncmFwaHlMYWJlbCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvVHlwb2dyYXBoeSc7XG5pbXBvcnQgeyBqb2luQ2xzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvY2xhc3NuYW1lcyc7XG5jb25zdCBXUkFQX0NMUyA9ICdvbS1hc3NldC1zZWxlY3QnO1xuY29uc3QgSUNPTl9DTFMgPSBgJHtXUkFQX0NMU30taWNvbmA7XG5jb25zdCBCQUxBTkNFX0NMUyA9IGAke1dSQVBfQ0xTfS1iYWxhbmNlYDtcbmNvbnN0IElDT05fU0laRSA9IDI0O1xuY29uc3QgR1JPVVBfRklBVCA9ICdDYXNoJztcbmNvbnN0IEdST1VQX0NSWVBUTyA9ICdTdGFibGVjb2lucyc7XG5jb25zdCB0b09wdGlvbiA9IChjdXJyZW5jeSkgPT4gKHtcbiAgICBsYWJlbDogY3VycmVuY3kuY3VycmVuY3lOYW1lLFxuICAgIHZhbHVlOiBjdXJyZW5jeS5jdXJyZW5jeU5hbWUsXG4gICAgaWNvbjogY3VycmVuY3kuY3VycmVuY3lJY29uVXJsLFxuICAgIG5hbWU6IGN1cnJlbmN5LmN1cnJlbmN5RGVzYyxcbiAgICBiYWxhbmNlOiBjdXJyZW5jeS5jdXJyZW5jeUJhbGFuY2UsXG4gICAgLy8gTWF0Y2ggdGhlIHNlYXJjaCBhZ2FpbnN0IGJvdGggdGhlIHN5bWJvbCBhbmQgdGhlIGh1bWFuLXJlYWRhYmxlIG5hbWUuXG4gICAgc2VhcmNoVGV4dDogYCR7Y3VycmVuY3kuY3VycmVuY3lOYW1lfSAke2N1cnJlbmN5LmN1cnJlbmN5RGVzY31gLFxufSk7XG4vLyBTb3J0IHdpdGhpbiBhIGdyb3VwIGJ5IHRoZSBiYWNrZW5kIGBvcmRlcmAgKGFzY2VuZGluZykuIENvcGllcyB0aGUgYXJyYXkgc29cbi8vIHRoZSBjYWxsZXIncyBgb3B0aW9uc2AgaXMgbmV2ZXIgbXV0YXRlZDsgbWlzc2luZyBgb3JkZXJgIGZhbGxzIGJhY2sgdG8gMC5cbmNvbnN0IGJ5T3JkZXIgPSAoYSwgYikgPT4geyB2YXIgX2EsIF9iOyByZXR1cm4gKChfYSA9IGEub3JkZXIpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IDApIC0gKChfYiA9IGIub3JkZXIpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IDApOyB9O1xuY29uc3QgdG9Hcm91cE9wdGlvbnMgPSAoY3VycmVuY2llcyA9IFtdKSA9PiBbLi4uY3VycmVuY2llc10uc29ydChieU9yZGVyKS5tYXAodG9PcHRpb24pO1xuY29uc3QgQXNzZXRTZWxlY3RCYXNlID0gKF9hKSA9PiB7XG4gICAgdmFyIHsgb3B0aW9ucywgY2xhc3NOYW1lLCBsYWJlbENsYXNzTmFtZSwgbGFiZWwgPSAnQXNzZXQnLCBuYW1lID0gJ2Fzc2V0JywgcGxhY2Vob2xkZXIgPSAnU2VsZWN0IGFzc2V0Jywgc2VhcmNoYWJsZSA9IHRydWUsIGZpbHRlcklucHV0QXV0b0ZvY3VzID0gdHJ1ZSwgc3Ryb25nID0gdHJ1ZSwgc2hvd0JhbGFuY2UgPSBmYWxzZSwgZW1wdHlDb250ZW50LCBvblNlYXJjaENoYW5nZSwgcGFuZWxDbGFzc05hbWUgfSA9IF9hLCByZXN0ID0gX19yZXN0KF9hLCBbXCJvcHRpb25zXCIsIFwiY2xhc3NOYW1lXCIsIFwibGFiZWxDbGFzc05hbWVcIiwgXCJsYWJlbFwiLCBcIm5hbWVcIiwgXCJwbGFjZWhvbGRlclwiLCBcInNlYXJjaGFibGVcIiwgXCJmaWx0ZXJJbnB1dEF1dG9Gb2N1c1wiLCBcInN0cm9uZ1wiLCBcInNob3dCYWxhbmNlXCIsIFwiZW1wdHlDb250ZW50XCIsIFwib25TZWFyY2hDaGFuZ2VcIiwgXCJwYW5lbENsYXNzTmFtZVwiXSk7XG4gICAgY29uc3QgW2tleXdvcmQsIHNldEtleXdvcmRdID0gdXNlU3RhdGUoJycpO1xuICAgIGNvbnN0IGhhbmRsZVNlYXJjaENoYW5nZSA9ICh2YWx1ZSkgPT4ge1xuICAgICAgICBzZXRLZXl3b3JkKHZhbHVlKTtcbiAgICAgICAgb25TZWFyY2hDaGFuZ2UgPT09IG51bGwgfHwgb25TZWFyY2hDaGFuZ2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uU2VhcmNoQ2hhbmdlKHZhbHVlKTtcbiAgICB9O1xuICAgIGNvbnN0IGdyb3VwZWRPcHRpb25zID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICAgIGNvbnN0IGZpYXQgPSB0b0dyb3VwT3B0aW9ucyhvcHRpb25zLmZpYXQpO1xuICAgICAgICBjb25zdCBjcnlwdG8gPSB0b0dyb3VwT3B0aW9ucyhvcHRpb25zLmNyeXB0byk7XG4gICAgICAgIC8vIFdpdGggb25seSBvbmUgcG9wdWxhdGVkIGdyb3VwLCBkcm9wIHRoZSBncm91cCBsYWJlbCBhbmQgcmVuZGVyIGEgZmxhdFxuICAgICAgICAvLyBsaXN0IOKAlCBhIGxvbmUgXCJDYXNoXCIvXCJTdGFibGVjb2luc1wiIGhlYWRpbmcgaXMganVzdCBub2lzZS4gYFNlbGVjdGAgb25seVxuICAgICAgICAvLyBzaG93cyBhIGhlYWRpbmcgZm9yIGdyb3VwcyB0aGF0IGNhcnJ5IGEgdHJ1dGh5IGBsYWJlbGAuXG4gICAgICAgIGlmIChmaWF0Lmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgIHJldHVybiBjcnlwdG87XG4gICAgICAgIGlmIChjcnlwdG8ubGVuZ3RoID09PSAwKVxuICAgICAgICAgICAgcmV0dXJuIGZpYXQ7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICB7IGxhYmVsOiBHUk9VUF9GSUFULCBvcHRpb25zOiBmaWF0IH0sXG4gICAgICAgICAgICB7IGxhYmVsOiBHUk9VUF9DUllQVE8sIG9wdGlvbnM6IGNyeXB0byB9LFxuICAgICAgICBdO1xuICAgIH0sIFtvcHRpb25zLmZpYXQsIG9wdGlvbnMuY3J5cHRvXSk7XG4gICAgcmV0dXJuIChfanN4KFNlbGVjdCwgT2JqZWN0LmFzc2lnbih7fSwgcmVzdCwgeyBsYWJlbDogbGFiZWwsIG5hbWU6IG5hbWUsIHBsYWNlaG9sZGVyOiBwbGFjZWhvbGRlciwgc2VhcmNoYWJsZTogc2VhcmNoYWJsZSwgZmlsdGVySW5wdXRBdXRvRm9jdXM6IGZpbHRlcklucHV0QXV0b0ZvY3VzLCBvblNlYXJjaENoYW5nZTogaGFuZGxlU2VhcmNoQ2hhbmdlLCBlbXB0eUNvbnRlbnQ6IGVtcHR5Q29udGVudCAhPT0gbnVsbCAmJiBlbXB0eUNvbnRlbnQgIT09IHZvaWQgMCA/IGVtcHR5Q29udGVudCA6IChfanN4KEVtcHR5LCB7IGljb246ICdjb2luJywgZGVzY3JpcHRpb246IGtleXdvcmQgPyBgTm8gcmVzdWx0cyBmb3IgXCIke2tleXdvcmR9XCJgIDogJ05vIHJlc3VsdHMnIH0pKSwgY2xhc3NOYW1lOiBqb2luQ2xzKFdSQVBfQ0xTLCBjbGFzc05hbWUpLCBsYWJlbENsYXNzTmFtZTogam9pbkNscyhgJHtXUkFQX0NMU30tbGFiZWxgLCBsYWJlbENsYXNzTmFtZSksIHBhbmVsQ2xhc3NOYW1lOiBqb2luQ2xzKGAke1dSQVBfQ0xTfS1wYW5lbGAsIHBhbmVsQ2xhc3NOYW1lKSwgb3B0aW9uczogZ3JvdXBlZE9wdGlvbnMsIHJlbmRlclZhbHVlOiAob3B0aW9uLCB7IGZvbnRTaXplIH0pID0+IHtcbiAgICAgICAgICAgIHZhciBfYTtcbiAgICAgICAgICAgIGlmICghb3B0aW9uIHx8IEFycmF5LmlzQXJyYXkob3B0aW9uKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBwbGFjZWhvbGRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGl0ZW0gPSBvcHRpb247XG4gICAgICAgICAgICByZXR1cm4gKF9qc3hzKEZsZXgsIHsgYWxpZ246ICdjZW50ZXInLCBnYXA6IDgsIGNoaWxkcmVuOiBbX2pzeChcImltZ1wiLCB7IHNyYzogaXRlbS5pY29uLCBhbHQ6IFN0cmluZygoX2EgPSBpdGVtLnZhbHVlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAnJyksIHdpZHRoOiBJQ09OX1NJWkUsIGhlaWdodDogSUNPTl9TSVpFLCBjbGFzc05hbWU6IElDT05fQ0xTIH0pLCBfanN4KFR5cG9ncmFwaHlCb2R5LCB7IHNpemU6IGZvbnRTaXplLCBzdHJvbmc6IHN0cm9uZywgY2hpbGRyZW46IGl0ZW0ubGFiZWwgfSldIH0pKTtcbiAgICAgICAgfSwgcmVuZGVyT3B0aW9uQ29udGVudDogKG9wdGlvbikgPT4ge1xuICAgICAgICAgICAgdmFyIF9hLCBfYjtcbiAgICAgICAgICAgIGNvbnN0IGl0ZW0gPSBvcHRpb247XG4gICAgICAgICAgICByZXR1cm4gKF9qc3hzKEZsZXgsIHsgYWxpZ246ICdjZW50ZXInLCBqdXN0aWZ5OiAnc3BhY2UtYmV0d2VlbicsIGdhcDogOCwgc3R5bGU6IHsgd2lkdGg6ICcxMDAlJyB9LCBjaGlsZHJlbjogW19qc3hzKEZsZXgsIHsgYWxpZ246ICdjZW50ZXInLCBnYXA6IDgsIHN0eWxlOiB7IG1pbldpZHRoOiAwIH0sIGNoaWxkcmVuOiBbX2pzeChcImltZ1wiLCB7IHNyYzogaXRlbS5pY29uLCBhbHQ6IFN0cmluZygoX2EgPSBpdGVtLnZhbHVlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAnJyksIHdpZHRoOiBJQ09OX1NJWkUsIGhlaWdodDogSUNPTl9TSVpFLCBjbGFzc05hbWU6IElDT05fQ0xTIH0pLCBfanN4cyhGbGV4LCB7IHZlcnRpY2FsOiB0cnVlLCBnYXA6IDAsIGFsaWduOiAnc3RhcnQnLCBzdHlsZTogeyBtaW5XaWR0aDogMCB9LCBjaGlsZHJlbjogW19qc3goVHlwb2dyYXBoeUxhYmVsLCB7IHNpemU6ICdtZCcsIGNvbG9yOiAnZGVmYXVsdCcsIGNoaWxkcmVuOiBpdGVtLmxhYmVsIH0pLCBfanN4KFR5cG9ncmFwaHlCb2R5LCB7IHNpemU6ICdzbScsIGNvbG9yOiAnZGVmYXVsdC10ZXJ0aWFyeScsIGNoaWxkcmVuOiBpdGVtLm5hbWUgfSldIH0pXSB9KSwgc2hvd0JhbGFuY2UgJiYgaXRlbS5iYWxhbmNlICE9IG51bGwgJiYgKF9qc3hzKFR5cG9ncmFwaHlCb2R5LCB7IHNpemU6ICdtZCcsIGNvbG9yOiAnZGVmYXVsdCcsIGNsYXNzTmFtZTogQkFMQU5DRV9DTFMsIGNoaWxkcmVuOiBbbnVtZXJpY0Zvcm1hdHRlcihpdGVtLmJhbGFuY2UsIHsgdGhvdXNhbmRTZXBhcmF0b3I6IHRydWUgfSksIFwiIFwiLCBTdHJpbmcoKF9iID0gaXRlbS52YWx1ZSkgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogJycpXSB9KSldIH0pKTtcbiAgICAgICAgfSB9KSkpO1xufTtcbmV4cG9ydCBjb25zdCBBc3NldFNlbGVjdCA9IG1lbW8oQXNzZXRTZWxlY3RCYXNlKTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
@@ -15,7 +15,11 @@ export interface AssetCurrency {
15
15
  currencyDesc: string;
16
16
  /** Display order within its group, e.g. `0`. */
17
17
  order?: number;
18
- /** Available balance, fiat list only, e.g. `"9519970.6845"`. */
18
+ /**
19
+ * Available balance for this currency, e.g. `"9519970.6845"`. Carried by
20
+ * both the fiat and crypto lists; rendered right-aligned in the dropdown
21
+ * option (see `AssetSelectProps.showBalance`). Rows without it stay blank.
22
+ */
19
23
  currencyBalance?: string;
20
24
  }
21
25
  /**
@@ -52,6 +56,7 @@ export interface AssetSelectProps extends Omit<SelectProps, 'options' | 'renderV
52
56
  * currencyName: 'USDC',
53
57
  * currencyIconUrl: 'https://static.1money.com/images/asset/usdc.png',
54
58
  * currencyDesc: 'Circle USD Coin',
59
+ * currencyBalance: '3216.08152971',
55
60
  * },
56
61
  * ],
57
62
  * };
@@ -65,4 +70,14 @@ export interface AssetSelectProps extends Omit<SelectProps, 'options' | 'renderV
65
70
  * @default true
66
71
  */
67
72
  strong?: boolean;
73
+ /**
74
+ * Show the available balance, right-aligned, in each dropdown option.
75
+ * Formatted with thousand separators and suffixed with the currency
76
+ * symbol, e.g. `1,732,731.44499492 USDT`. Options without a
77
+ * `currencyBalance` render nothing on the right. The trigger is unaffected.
78
+ *
79
+ * Hidden by default — opt in with `showBalance` where the balance is relevant.
80
+ * @default false
81
+ */
82
+ showBalance?: boolean;
68
83
  }
@@ -35,4 +35,9 @@
35
35
  -o-object-fit: cover;
36
36
  object-fit: cover;
37
37
  border-radius: var(--om-radius-full, 9999px);
38
+ }
39
+
40
+ .om-asset-select-balance {
41
+ flex: 0 0 auto;
42
+ white-space: nowrap;
38
43
  }