@1money/component-ui 0.0.64-alpha.0 → 0.0.64-alpha.10

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 (48) hide show
  1. package/es/business/Select/Asset/AssetSelect.js +37 -6
  2. package/es/business/Select/Asset/style/AssetSelect.css +5 -4
  3. package/es/business/Select/Currency/CurrencySelect.d.ts +2 -0
  4. package/es/business/Select/Currency/CurrencySelect.js +117 -0
  5. package/es/business/Select/Currency/index.d.ts +2 -0
  6. package/es/business/Select/Currency/index.js +3 -0
  7. package/es/business/Select/Currency/interface.d.ts +50 -0
  8. package/es/business/Select/Currency/interface.js +2 -0
  9. package/es/business/Select/Currency/style/CurrencySelect.css +34 -0
  10. package/es/business/Select/Currency/style/css.js +2 -0
  11. package/es/business/Select/Currency/style/index.d.ts +1 -0
  12. package/es/business/Select/Currency/style/index.js +2 -0
  13. package/es/business/Select/Network/NetworkSelect.js +89 -108
  14. package/es/business/Select/Network/interface.d.ts +22 -10
  15. package/es/business/Select/Network/style/NetworkSelect.css +0 -26
  16. package/es/business/Select/PaymentMethod/style/PaymentMethodSelect.css +0 -6
  17. package/es/business/Select/index.d.ts +1 -0
  18. package/es/business/Select/index.js +2 -1
  19. package/es/components/Empty/style/Empty.css +1 -0
  20. package/es/components/Select/Select.js +10 -5
  21. package/es/components/Select/interface.d.ts +7 -0
  22. package/es/components/Select/style/Select.css +11 -0
  23. package/es/index.css +1 -1
  24. package/lib/business/Select/Asset/AssetSelect.js +37 -5
  25. package/lib/business/Select/Asset/style/AssetSelect.css +5 -4
  26. package/lib/business/Select/Currency/CurrencySelect.d.ts +2 -0
  27. package/lib/business/Select/Currency/CurrencySelect.js +124 -0
  28. package/lib/business/Select/Currency/index.d.ts +2 -0
  29. package/lib/business/Select/Currency/index.js +28 -0
  30. package/lib/business/Select/Currency/interface.d.ts +50 -0
  31. package/lib/business/Select/Currency/interface.js +6 -0
  32. package/lib/business/Select/Currency/style/CurrencySelect.css +34 -0
  33. package/lib/business/Select/Currency/style/css.js +4 -0
  34. package/lib/business/Select/Currency/style/index.d.ts +1 -0
  35. package/lib/business/Select/Currency/style/index.js +4 -0
  36. package/lib/business/Select/Network/NetworkSelect.js +87 -107
  37. package/lib/business/Select/Network/interface.d.ts +22 -10
  38. package/lib/business/Select/Network/style/NetworkSelect.css +0 -26
  39. package/lib/business/Select/PaymentMethod/style/PaymentMethodSelect.css +0 -6
  40. package/lib/business/Select/index.d.ts +1 -0
  41. package/lib/business/Select/index.js +12 -1
  42. package/lib/components/Empty/style/Empty.css +1 -0
  43. package/lib/components/Select/Select.js +10 -5
  44. package/lib/components/Select/interface.d.ts +7 -0
  45. package/lib/components/Select/style/Select.css +11 -0
  46. package/lib/index.css +1 -1
  47. package/package.json +6 -1
  48. package/scripts/mcp-server/index.generated.json +8 -0
@@ -1,11 +1,15 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports.AssetSelect = void 0;
8
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
7
10
  var _jsxRuntime = require("react/jsx-runtime");
8
11
  var _react = require("react");
12
+ var _Empty = require("../../../components/Empty");
9
13
  var _Flex = require("../../../components/Flex");
10
14
  var _Select = require("../../../components/Select");
11
15
  var _Typography = require("../../../components/Typography");
@@ -33,9 +37,20 @@ var toOption = function toOption(currency) {
33
37
  searchText: "".concat(currency.currencyName, " ").concat(currency.currencyDesc)
34
38
  };
35
39
  };
40
+ // Sort within a group by the backend `order` (ascending). Copies the array so
41
+ // the caller's `options` is never mutated; missing `order` falls back to 0.
42
+ var byOrder = function byOrder(a, b) {
43
+ var _a, _b;
44
+ return ((_a = a.order) !== null && _a !== void 0 ? _a : 0) - ((_b = b.order) !== null && _b !== void 0 ? _b : 0);
45
+ };
46
+ var toGroupOptions = function toGroupOptions() {
47
+ var currencies = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
48
+ return (0, _toConsumableArray2["default"])(currencies).sort(byOrder).map(toOption);
49
+ };
36
50
  var AssetSelectBase = function AssetSelectBase(_a) {
37
51
  var options = _a.options,
38
52
  className = _a.className,
53
+ labelClassName = _a.labelClassName,
39
54
  _a$label = _a.label,
40
55
  label = _a$label === void 0 ? 'Asset' : _a$label,
41
56
  _a$name = _a.name,
@@ -48,12 +63,22 @@ var AssetSelectBase = function AssetSelectBase(_a) {
48
63
  filterInputAutoFocus = _a$filterInputAutoFoc === void 0 ? true : _a$filterInputAutoFoc,
49
64
  _a$strong = _a.strong,
50
65
  strong = _a$strong === void 0 ? true : _a$strong,
51
- rest = __rest(_a, ["options", "className", "label", "name", "placeholder", "searchable", "filterInputAutoFocus", "strong"]);
66
+ emptyContent = _a.emptyContent,
67
+ onSearchChange = _a.onSearchChange,
68
+ panelClassName = _a.panelClassName,
69
+ rest = __rest(_a, ["options", "className", "labelClassName", "label", "name", "placeholder", "searchable", "filterInputAutoFocus", "strong", "emptyContent", "onSearchChange", "panelClassName"]);
70
+ var _useState = (0, _react.useState)(''),
71
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
72
+ keyword = _useState2[0],
73
+ setKeyword = _useState2[1];
74
+ var handleSearchChange = function handleSearchChange(value) {
75
+ setKeyword(value);
76
+ onSearchChange === null || onSearchChange === void 0 ? void 0 : onSearchChange(value);
77
+ };
52
78
  var groupedOptions = (0, _react.useMemo)(function () {
53
- var _a, _b;
54
79
  var groups = [];
55
- var fiat = ((_a = options.fiat) !== null && _a !== void 0 ? _a : []).map(toOption);
56
- var crypto = ((_b = options.crypto) !== null && _b !== void 0 ? _b : []).map(toOption);
80
+ var fiat = toGroupOptions(options.fiat);
81
+ var crypto = toGroupOptions(options.crypto);
57
82
  if (fiat.length > 0) groups.push({
58
83
  label: GROUP_FIAT,
59
84
  options: fiat
@@ -70,7 +95,14 @@ var AssetSelectBase = function AssetSelectBase(_a) {
70
95
  placeholder: placeholder,
71
96
  searchable: searchable,
72
97
  filterInputAutoFocus: filterInputAutoFocus,
98
+ onSearchChange: handleSearchChange,
99
+ emptyContent: emptyContent !== null && emptyContent !== void 0 ? emptyContent : (0, _jsxRuntime.jsx)(_Empty.Empty, {
100
+ icon: 'coin',
101
+ description: keyword ? "No results for \"".concat(keyword, "\"") : 'No results'
102
+ }),
73
103
  className: (0, _classnames.joinCls)(WRAP_CLS, className),
104
+ labelClassName: (0, _classnames.joinCls)("".concat(WRAP_CLS, "-label"), labelClassName),
105
+ panelClassName: (0, _classnames.joinCls)("".concat(WRAP_CLS, "-panel"), panelClassName),
74
106
  options: groupedOptions,
75
107
  renderValue: function renderValue(option, _ref) {
76
108
  var fontSize = _ref.fontSize;
@@ -132,4 +164,4 @@ var AssetSelectBase = function AssetSelectBase(_a) {
132
164
  }));
133
165
  };
134
166
  var AssetSelect = exports.AssetSelect = /*#__PURE__*/(0, _react.memo)(AssetSelectBase);
135
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL1NlbGVjdC9Bc3NldC9Bc3NldFNlbGVjdC5qcyIsImJ1c2luZXNzL1NlbGVjdC9zcmMvYnVzaW5lc3MvU2VsZWN0L0Fzc2V0L0Fzc2V0U2VsZWN0LnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfRmxleCIsIl9TZWxlY3QiLCJfVHlwb2dyYXBoeSIsIl9jbGFzc25hbWVzIiwiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJXUkFQX0NMUyIsIklDT05fQ0xTIiwiY29uY2F0IiwiSUNPTl9TSVpFIiwiR1JPVVBfRklBVCIsIkdST1VQX0NSWVBUTyIsInRvT3B0aW9uIiwiY3VycmVuY3kiLCJsYWJlbCIsImN1cnJlbmN5TmFtZSIsInZhbHVlIiwiaWNvbiIsImN1cnJlbmN5SWNvblVybCIsIm5hbWUiLCJjdXJyZW5jeURlc2MiLCJzZWFyY2hUZXh0IiwiQXNzZXRTZWxlY3RCYXNlIiwiX2EiLCJvcHRpb25zIiwiY2xhc3NOYW1lIiwiX2EkbGFiZWwiLCJfYSRuYW1lIiwiX2EkcGxhY2Vob2xkZXIiLCJwbGFjZWhvbGRlciIsIl9hJHNlYXJjaGFibGUiLCJzZWFyY2hhYmxlIiwiX2EkZmlsdGVySW5wdXRBdXRvRm9jIiwiZmlsdGVySW5wdXRBdXRvRm9jdXMiLCJfYSRzdHJvbmciLCJzdHJvbmciLCJyZXN0IiwiZ3JvdXBlZE9wdGlvbnMiLCJ1c2VNZW1vIiwiX2IiLCJncm91cHMiLCJmaWF0IiwibWFwIiwiY3J5cHRvIiwicHVzaCIsIl9qc3giLCJTZWxlY3QiLCJhc3NpZ24iLCJqb2luQ2xzIiwicmVuZGVyVmFsdWUiLCJvcHRpb24iLCJfcmVmIiwiZm9udFNpemUiLCJBcnJheSIsImlzQXJyYXkiLCJpdGVtIiwiX2pzeHMiLCJGbGV4IiwiYWxpZ24iLCJnYXAiLCJjaGlsZHJlbiIsInNyYyIsImFsdCIsIlN0cmluZyIsIndpZHRoIiwiaGVpZ2h0IiwiVHlwb2dyYXBoeUJvZHkiLCJzaXplIiwicmVuZGVyT3B0aW9uQ29udGVudCIsInN0eWxlIiwidmVydGljYWwiLCJtaW5XaWR0aCIsIlR5cG9ncmFwaHlMYWJlbCIsImNvbG9yIiwiQXNzZXRTZWxlY3QiLCJleHBvcnRzIiwibWVtbyJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBV0EsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDWEEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsS0FBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsT0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksV0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBTCxPQUFBO0FESkEsSUFBSU0sTUFBTSxHQUFJLFVBQVEsU0FBS0EsTUFBTSxJQUFLLFVBQVVDLENBQUMsRUFBRUMsQ0FBQyxFQUFFO0VBQ2xELElBQUlDLENBQUMsR0FBRyxDQUFDLENBQUM7RUFDVixLQUFLLElBQUlDLENBQUMsSUFBSUgsQ0FBQyxFQUFFLElBQUlJLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDQyxjQUFjLENBQUNDLElBQUksQ0FBQ1AsQ0FBQyxFQUFFRyxDQUFDLENBQUMsSUFBSUYsQ0FBQyxDQUFDTyxPQUFPLENBQUNMLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFDL0VELENBQUMsQ0FBQ0MsQ0FBQyxDQUFDLEdBQUdILENBQUMsQ0FBQ0csQ0FBQyxDQUFDO0VBQ2YsSUFBSUgsQ0FBQyxJQUFJLElBQUksSUFBSSxPQUFPSSxNQUFNLENBQUNLLHFCQUFxQixLQUFLLFVBQVUsRUFDL0QsS0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBQyxFQUFFUCxDQUFDLEdBQUdDLE1BQU0sQ0FBQ0sscUJBQXFCLENBQUNULENBQUMsQ0FBQyxFQUFFVSxDQUFDLEdBQUdQLENBQUMsQ0FBQ1EsTUFBTSxFQUFFRCxD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Q0FBQ3ZDLEtBQUssTUFBQSxJQUFBLElBQUFPLEVBQUEsS0FBQSxLQUFBLENBQUEsR0FBQUEsRUFBQSxHQUFJLEVBQUUsQ0FBQztVQUM3QnlDLEtBQUssRUFBRXZELFNBQVM7VUFDaEJ3RCxNQUFNLEVBQUV4RCxTQUFTO1VBQ2pCZ0IsU0FBUyxFQUFFbEI7UUFBUSxDQUFBLENBQ25CLEVBQ0YsSUFBQWlELGdCQUFBLEVBQUNDLFVBQUksRUFBQTtVQUFDYSxRQUFRLEVBQUEsSUFBQTtVQUFDWCxHQUFHLEVBQUUsQ0FBQztVQUFFRCxLQUFLLEVBQUMsT0FBTztVQUFDVyxLQUFLLEVBQUU7WUFBRUUsUUFBUSxFQUFFO1VBQUMsQ0FBRTtVQUFBWCxRQUFBLEVBQUEsQ0FDekQsSUFBQWYsZUFBQSxFQUFDMkIsMkJBQWUsRUFBQTtZQUFDTCxJQUFJLEVBQUMsSUFBSTtZQUFDTSxLQUFLLEVBQUMsU0FBUztZQUFBYixRQUFBLEVBQ3ZDTCxJQUFJLENBQUN6QztVQUFLLENBQUEsQ0FDSyxFQUNsQixJQUFBK0IsZUFBQSxFQUFDcUIsMEJBQWMsRUFBQTtZQUFDQyxJQUFJLEVBQUMsSUFBSTtZQUFDTSxLQUFLLEVBQUMsa0JBQWtCO1lBQUFiLFFBQUEsRUFDL0NMLElBQUksQ0FBQ3BDO1VBQUksQ0FBQSxDQUNLO1FBQUEsQ0FBQSxDQUNaO01BQUEsQ0FBQSxDQUNGO0lBRVg7RUFBQyxDQUFBLENBQUEsQ0FDRDtBQUVOLENBQUM7QUFFTSxJQUFNdUQsV0FBVyxHQUFBQyxPQUFBLENBQUFELFdBQUEsZ0JBQUcsSUFBQUUsV0FBSSxFQUFDdEQsZUFBZSxDQUFDIiwiZmlsZSI6ImJ1c2luZXNzL1NlbGVjdC9Bc3NldC9Bc3NldFNlbGVjdC5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX3Jlc3QgPSAodGhpcyAmJiB0aGlzLl9fcmVzdCkgfHwgZnVuY3Rpb24gKHMsIGUpIHtcbiAgICB2YXIgdCA9IHt9O1xuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxuICAgICAgICB0W3BdID0gc1twXTtcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSlcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcbiAgICAgICAgfVxuICAgIHJldHVybiB0O1xufTtcbmltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgRmxleCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvRmxleCc7XG5pbXBvcnQgeyBTZWxlY3QgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL1NlbGVjdCc7XG5pbXBvcnQgeyBUeXBvZ3JhcGh5Qm9keSwgVHlwb2dyYXBoeUxhYmVsIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9UeXBvZ3JhcGh5JztcbmltcG9ydCB7IGpvaW5DbHMgfSBmcm9tICcuLi8uLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmNvbnN0IFdSQVBfQ0xTID0gJ29tLWFzc2V0LXNlbGVjdCc7XG5jb25zdCBJQ09OX0NMUyA9IGAke1dSQVBfQ0xTfS1pY29uYDtcbmNvbnN0IElDT05fU0laRSA9IDI0O1xuY29uc3QgR1JPVVBfRklBVCA9ICdDYXNoJztcbmNvbnN0IEdST1VQX0NSWVBUTyA9ICdTdGFibGVjb2lucyc7XG5jb25zdCB0b09wdGlvbiA9IChjdXJyZW5jeSkgPT4gKHtcbiAgICBsYWJlbDogY3VycmVuY3kuY3VycmVuY3lOYW1lLFxuICAgIHZhbHVlOiBjdXJyZW5jeS5jdXJyZW5jeU5hbWUsXG4gICAgaWNvbjogY3VycmVuY3kuY3VycmVuY3lJY29uVXJsLFxuICAgIG5hbWU6IGN1cnJlbmN5LmN1cnJlbmN5RGVzYyxcbiAgICAvLyBNYXRjaCB0aGUgc2VhcmNoIGFnYWluc3QgYm90aCB0aGUgc3ltYm9sIGFuZCB0aGUgaHVtYW4tcmVhZGFibGUgbmFtZS5cbiAgICBzZWFyY2hUZXh0OiBgJHtjdXJyZW5jeS5jdXJyZW5jeU5hbWV9ICR7Y3VycmVuY3kuY3VycmVuY3lEZXNjfWAsXG59KTtcbmNvbnN0IEFzc2V0U2VsZWN0QmFzZSA9IChfYSkgPT4ge1xuICAgIHZhciB7IG9wdGlvbnMsIGNsYXNzTmFtZSwgbGFiZWwgPSAnQXNzZXQnLCBuYW1lID0gJ2Fzc2V0JywgcGxhY2Vob2xkZXIgPSAnU2VsZWN0IGFzc2V0Jywgc2VhcmNoYWJsZSA9IHRydWUsIGZpbHRlcklucHV0QXV0b0ZvY3VzID0gdHJ1ZSwgc3Ryb25nID0gdHJ1ZSB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcIm9wdGlvbnNcIiwgXCJjbGFzc05hbWVcIiwgXCJsYWJlbFwiLCBcIm5hbWVcIiwgXCJwbGFjZWhvbGRlclwiLCBcInNlYXJjaGFibGVcIiwgXCJmaWx0ZXJJbnB1dEF1dG9Gb2N1c1wiLCBcInN0cm9uZ1wiXSk7XG4gICAgY29uc3QgZ3JvdXBlZE9wdGlvbnMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgICAgdmFyIF9hLCBfYjtcbiAgICAgICAgY29uc3QgZ3JvdXBzID0gW107XG4gICAgICAgIGNvbnN0IGZpYXQgPSAoKF9hID0gb3B0aW9ucy5maWF0KSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBbXSkubWFwKHRvT3B0aW9uKTtcbiAgICAgICAgY29uc3QgY3J5cHRvID0gKChfYiA9IG9wdGlvbnMuY3J5cHRvKSAhPT0gbnVsbCAmJiBfYiAhPT0gdm9pZCAwID8gX2IgOiBbXSkubWFwKHRvT3B0aW9uKTtcbiAgICAgICAgaWYgKGZpYXQubGVuZ3RoID4gMClcbiAgICAgICAgICAgIGdyb3Vwcy5wdXNoKHsgbGFiZWw6IEdST1VQX0ZJQVQsIG9wdGlvbnM6IGZpYXQgfSk7XG4gICAgICAgIGlmIChjcnlwdG8ubGVuZ3RoID4gMClcbiAgICAgICAgICAgIGdyb3Vwcy5wdXNoKHsgbGFiZWw6IEdST1VQX0NSWVBUTywgb3B0aW9uczogY3J5cHRvIH0pO1xuICAgICAgICByZXR1cm4gZ3JvdXBzO1xuICAgIH0sIFtvcHRpb25zLmZpYXQsIG9wdGlvbnMuY3J5cHRvXSk7XG4gICAgcmV0dXJuIChfanN4KFNlbGVjdCwgT2JqZWN0LmFzc2lnbih7fSwgcmVzdCwgeyBsYWJlbDogbGFiZWwsIG5hbWU6IG5hbWUsIHBsYWNlaG9sZGVyOiBwbGFjZWhvbGRlciwgc2VhcmNoYWJsZTogc2VhcmNoYWJsZSwgZmlsdGVySW5wdXRBdXRvRm9jdXM6IGZpbHRlcklucHV0QXV0b0ZvY3VzLCBjbGFzc05hbWU6IGpvaW5DbHMoV1JBUF9DTFMsIGNsYXNzTmFtZSksIG9wdGlvbnM6IGdyb3VwZWRPcHRpb25zLCByZW5kZXJWYWx1ZTogKG9wdGlvbiwgeyBmb250U2l6ZSB9KSA9PiB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICBpZiAoIW9wdGlvbiB8fCBBcnJheS5pc0FycmF5KG9wdGlvbikpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcGxhY2Vob2xkZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBpdGVtID0gb3B0aW9uO1xuICAgICAgICAgICAgcmV0dXJuIChfanN4cyhGbGV4LCB7IGFsaWduOiAnY2VudGVyJywgZ2FwOiA4LCBjaGlsZHJlbjogW19qc3goXCJpbWdcIiwgeyBzcmM6IGl0ZW0uaWNvbiwgYWx0OiBTdHJpbmcoKF9hID0gaXRlbS52YWx1ZSkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogJycpLCB3aWR0aDogSUNPTl9TSVpFLCBoZWlnaHQ6IElDT05fU0laRSwgY2xhc3NOYW1lOiBJQ09OX0NMUyB9KSwgX2pzeChUeXBvZ3JhcGh5Qm9keSwgeyBzaXplOiBmb250U2l6ZSwgc3Ryb25nOiBzdHJvbmcsIGNoaWxkcmVuOiBpdGVtLmxhYmVsIH0pXSB9KSk7XG4gICAgICAgIH0sIHJlbmRlck9wdGlvbkNvbnRlbnQ6IChvcHRpb24pID0+IHtcbiAgICAgICAgICAgIHZhciBfYTtcbiAgICAgICAgICAgIGNvbnN0IGl0ZW0gPSBvcHRpb247XG4gICAgICAgICAgICByZXR1cm4gKF9qc3hzKEZsZXgsIHsgYWxpZ246ICdjZW50ZXInLCBnYXA6IDgsIHN0eWxlOiB7IHdpZHRoOiAnMTAwJScgfSwgY2hpbGRyZW46IFtfanN4KFwiaW1nXCIsIHsgc3JjOiBpdGVtLmljb24sIGFsdDogU3RyaW5nKChfYSA9IGl0ZW0udmFsdWUpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6ICcnKSwgd2lkdGg6IElDT05fU0laRSwgaGVpZ2h0OiBJQ09OX1NJWkUsIGNsYXNzTmFtZTogSUNPTl9DTFMgfSksIF9qc3hzKEZsZXgsIHsgdmVydGljYWw6IHRydWUsIGdhcDogMCwgYWxpZ246ICdzdGFydCcsIHN0eWxlOiB7IG1pbldpZHRoOiAwIH0sIGNoaWxkcmVuOiBbX2pzeChUeXBvZ3JhcGh5TGFiZWwsIHsgc2l6ZTogJ21kJywgY29sb3I6ICdkZWZhdWx0JywgY2hpbGRyZW46IGl0ZW0ubGFiZWwgfSksIF9qc3goVHlwb2dyYXBoeUJvZHksIHsgc2l6ZTogJ3NtJywgY29sb3I6ICdkZWZhdWx0LXRlcnRpYXJ5JywgY2hpbGRyZW46IGl0ZW0ubmFtZSB9KV0gfSldIH0pKTtcbiAgICAgICAgfSB9KSkpO1xufTtcbmV4cG9ydCBjb25zdCBBc3NldFNlbGVjdCA9IG1lbW8oQXNzZXRTZWxlY3RCYXNlKTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
167
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL1NlbGVjdC9Bc3NldC9Bc3NldFNlbGVjdC5qcyIsImJ1c2luZXNzL1NlbGVjdC9zcmMvYnVzaW5lc3MvU2VsZWN0L0Fzc2V0L0Fzc2V0U2VsZWN0LnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfRW1wdHkiLCJfRmxleCIsIl9TZWxlY3QiLCJfVHlwb2dyYXBoeSIsIl9jbGFzc25hbWVzIiwiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJXUkFQX0NMUyIsIklDT05fQ0xTIiwiY29uY2F0IiwiSUNPTl9TSVpFIiwiR1JPVVBfRklBVCIsIkdST1VQX0NSWVBUTyIsInRvT3B0aW9uIiwiY3VycmVuY3kiLCJsYWJlbCIsImN1cnJlbmN5TmFtZSIsInZhbHVlIiwiaWNvbiIsImN1cnJlbmN5SWNvblVybCIsIm5hbWUiLCJjdXJyZW5jeURlc2MiLCJzZWFyY2hUZXh0IiwiYnlPcmRlciIsImEiLCJiIiwiX2EiLCJfYiIsIm9yZGVyIiwidG9Hcm91cE9wdGlvbnMiLCJjdXJyZW5jaWVzIiwiYXJndW1lbnRzIiwidW5kZWZpbmVkIiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsInNvcnQiLCJtYXAiLCJBc3NldFNlbGVjdEJhc2UiLCJvcHRpb25zIiwiY2xhc3NOYW1lIiwibGFiZWxDbGFzc05hbWUiLCJfYSRsYWJlbCIsIl9hJG5hbWUiLCJfYSRwbGFjZWhvbGRlciIsInBsYWNlaG9sZGVyIiwiX2Ekc2VhcmNoYWJsZSIsInNlYXJjaGFibGUiLCJfYSRmaWx0ZXJJbnB1dEF1dG9Gb2MiLCJmaWx0ZXJJbnB1dEF1dG9Gb2N1cyIsIl9hJHN0cm9uZyIsInN0cm9uZyIsImVtcHR5Q29udGVudCIsIm9uU2VhcmNoQ2hhbmdlIiwicGFuZWxDbGFzc05hbWUiLCJyZXN0IiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwia2V5d29yZCIsInNldEtleXdvcmQiLCJoYW5kbGVTZWFyY2hDaGFuZ2UiLCJncm91cGVkT3B0aW9ucyIsInVzZU1lbW8iLCJncm91cHMiLCJmaWF0IiwiY3J5cHRvIiwicHVzaCIsIl9qc3giLCJTZWxlY3QiLCJhc3NpZ24iLCJFbXB0eSIsImRlc2NyaXB0aW9uIiwiam9pbkNscyIsInJlbmRlclZhbHVlIiwib3B0aW9uIiwiX3JlZiIsImZvbnRTaXplIiwiQXJyYXkiLCJpc0FycmF5IiwiaXRlbSIsIl9qc3hzIiwiRmxleCIsImFsaWduIiwiZ2FwIiwiY2hpbGRyZW4iLCJzcmMiLCJhbHQiLCJTdHJpbmciLCJ3aWR0aCIsImhlaWdodCIsIlR5cG9ncmFwaHlCb2R5Iiwic2l6ZSIsInJlbmRlck9wdGlvbkNvbnRlbnQiLCJzdHlsZSIsInZlcnRpY2FsIiwibWluV2lkdGgiLCJUeXBvZ3JhcGh5TGFiZWwiLCJjb2xvciIsIkFzc2V0U2VsZWN0IiwiZXhwb3J0cyIsIm1lbW8iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQVdBLElBQUFBLFdBQUEsR0FBQUMsT0FBQTtBQ1hBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE1BQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLEtBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLE9BQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFdBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFdBQUEsR0FBQU4sT0FBQTtBRExBLElBQUlPLE1BQU0sR0FBSSxVQUFRLFNBQUtBLE1BQU0sSUFBSyxVQUFVQyxDQUFDLEVBQUVDLENBQUMsRUFBRTtFQUNsRCxJQUFJQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VBQ1YsS0FBSyxJQUFJQyxDQUFDLElBQUlILENBQUMsRUFBRSxJQUFJSSxNQUFNLENBQUNDLFNBQVMsQ0FBQ0Ms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LEVBQUU7WUFBRUUsUUFBUSxFQUFFO1VBQUMsQ0FBRTtVQUFBWCxRQUFBLEVBQUEsQ0FDekQsSUFBQWpCLGVBQUEsRUFBQzZCLDJCQUFlLEVBQUE7WUFBQ0wsSUFBSSxFQUFDLElBQUk7WUFBQ00sS0FBSyxFQUFDLFNBQVM7WUFBQWIsUUFBQSxFQUN2Q0wsSUFBSSxDQUFDaEU7VUFBSyxDQUFBLENBQ0ssRUFDbEIsSUFBQW9ELGVBQUEsRUFBQ3VCLDBCQUFjLEVBQUE7WUFBQ0MsSUFBSSxFQUFDLElBQUk7WUFBQ00sS0FBSyxFQUFDLGtCQUFrQjtZQUFBYixRQUFBLEVBQy9DTCxJQUFJLENBQUMzRDtVQUFJLENBQUEsQ0FDSztRQUFBLENBQUEsQ0FDWjtNQUFBLENBQUEsQ0FDRjtJQUVYO0VBQUMsQ0FBQSxDQUFBLENBQ0Q7QUFFTixDQUFDO0FBRU0sSUFBTThFLFdBQVcsR0FBQUMsT0FBQSxDQUFBRCxXQUFBLGdCQUFHLElBQUFFLFdBQUksRUFBQ2hFLGVBQWUsQ0FBQyIsImZpbGUiOiJidXNpbmVzcy9TZWxlY3QvQXNzZXQvQXNzZXRTZWxlY3QuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgbWVtbywgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBFbXB0eSB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvRW1wdHknO1xuaW1wb3J0IHsgRmxleCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvRmxleCc7XG5pbXBvcnQgeyBTZWxlY3QgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL1NlbGVjdCc7XG5pbXBvcnQgeyBUeXBvZ3JhcGh5Qm9keSwgVHlwb2dyYXBoeUxhYmVsIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9UeXBvZ3JhcGh5JztcbmltcG9ydCB7IGpvaW5DbHMgfSBmcm9tICcuLi8uLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmNvbnN0IFdSQVBfQ0xTID0gJ29tLWFzc2V0LXNlbGVjdCc7XG5jb25zdCBJQ09OX0NMUyA9IGAke1dSQVBfQ0xTfS1pY29uYDtcbmNvbnN0IElDT05fU0laRSA9IDI0O1xuY29uc3QgR1JPVVBfRklBVCA9ICdDYXNoJztcbmNvbnN0IEdST1VQX0NSWVBUTyA9ICdTdGFibGVjb2lucyc7XG5jb25zdCB0b09wdGlvbiA9IChjdXJyZW5jeSkgPT4gKHtcbiAgICBsYWJlbDogY3VycmVuY3kuY3VycmVuY3lOYW1lLFxuICAgIHZhbHVlOiBjdXJyZW5jeS5jdXJyZW5jeU5hbWUsXG4gICAgaWNvbjogY3VycmVuY3kuY3VycmVuY3lJY29uVXJsLFxuICAgIG5hbWU6IGN1cnJlbmN5LmN1cnJlbmN5RGVzYyxcbiAgICAvLyBNYXRjaCB0aGUgc2VhcmNoIGFnYWluc3QgYm90aCB0aGUgc3ltYm9sIGFuZCB0aGUgaHVtYW4tcmVhZGFibGUgbmFtZS5cbiAgICBzZWFyY2hUZXh0OiBgJHtjdXJyZW5jeS5jdXJyZW5jeU5hbWV9ICR7Y3VycmVuY3kuY3VycmVuY3lEZXNjfWAsXG59KTtcbi8vIFNvcnQgd2l0aGluIGEgZ3JvdXAgYnkgdGhlIGJhY2tlbmQgYG9yZGVyYCAoYXNjZW5kaW5nKS4gQ29waWVzIHRoZSBhcnJheSBzb1xuLy8gdGhlIGNhbGxlcidzIGBvcHRpb25zYCBpcyBuZXZlciBtdXRhdGVkOyBtaXNzaW5nIGBvcmRlcmAgZmFsbHMgYmFjayB0byAwLlxuY29uc3QgYnlPcmRlciA9IChhLCBiKSA9PiB7IHZhciBfYSwgX2I7IHJldHVybiAoKF9hID0gYS5vcmRlcikgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogMCkgLSAoKF9iID0gYi5vcmRlcikgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogMCk7IH07XG5jb25zdCB0b0dyb3VwT3B0aW9ucyA9IChjdXJyZW5jaWVzID0gW10pID0+IFsuLi5jdXJyZW5jaWVzXS5zb3J0KGJ5T3JkZXIpLm1hcCh0b09wdGlvbik7XG5jb25zdCBBc3NldFNlbGVjdEJhc2UgPSAoX2EpID0+IHtcbiAgICB2YXIgeyBvcHRpb25zLCBjbGFzc05hbWUsIGxhYmVsQ2xhc3NOYW1lLCBsYWJlbCA9ICdBc3NldCcsIG5hbWUgPSAnYXNzZXQnLCBwbGFjZWhvbGRlciA9ICdTZWxlY3QgYXNzZXQnLCBzZWFyY2hhYmxlID0gdHJ1ZSwgZmlsdGVySW5wdXRBdXRvRm9jdXMgPSB0cnVlLCBzdHJvbmcgPSB0cnVlLCBlbXB0eUNvbnRlbnQsIG9uU2VhcmNoQ2hhbmdlLCBwYW5lbENsYXNzTmFtZSB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcIm9wdGlvbnNcIiwgXCJjbGFzc05hbWVcIiwgXCJsYWJlbENsYXNzTmFtZVwiLCBcImxhYmVsXCIsIFwibmFtZVwiLCBcInBsYWNlaG9sZGVyXCIsIFwic2VhcmNoYWJsZVwiLCBcImZpbHRlcklucHV0QXV0b0ZvY3VzXCIsIFwic3Ryb25nXCIsIFwiZW1wdHlDb250ZW50XCIsIFwib25TZWFyY2hDaGFuZ2VcIiwgXCJwYW5lbENsYXNzTmFtZVwiXSk7XG4gICAgY29uc3QgW2tleXdvcmQsIHNldEtleXdvcmRdID0gdXNlU3RhdGUoJycpO1xuICAgIGNvbnN0IGhhbmRsZVNlYXJjaENoYW5nZSA9ICh2YWx1ZSkgPT4ge1xuICAgICAgICBzZXRLZXl3b3JkKHZhbHVlKTtcbiAgICAgICAgb25TZWFyY2hDaGFuZ2UgPT09IG51bGwgfHwgb25TZWFyY2hDaGFuZ2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uU2VhcmNoQ2hhbmdlKHZhbHVlKTtcbiAgICB9O1xuICAgIGNvbnN0IGdyb3VwZWRPcHRpb25zID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICAgIGNvbnN0IGdyb3VwcyA9IFtdO1xuICAgICAgICBjb25zdCBmaWF0ID0gdG9Hcm91cE9wdGlvbnMob3B0aW9ucy5maWF0KTtcbiAgICAgICAgY29uc3QgY3J5cHRvID0gdG9Hcm91cE9wdGlvbnMob3B0aW9ucy5jcnlwdG8pO1xuICAgICAgICBpZiAoZmlhdC5sZW5ndGggPiAwKVxuICAgICAgICAgICAgZ3JvdXBzLnB1c2goeyBsYWJlbDogR1JPVVBfRklBVCwgb3B0aW9uczogZmlhdCB9KTtcbiAgICAgICAgaWYgKGNyeXB0by5sZW5ndGggPiAwKVxuICAgICAgICAgICAgZ3JvdXBzLnB1c2goeyBsYWJlbDogR1JPVVBfQ1JZUFRPLCBvcHRpb25zOiBjcnlwdG8gfSk7XG4gICAgICAgIHJldHVybiBncm91cHM7XG4gICAgfSwgW29wdGlvbnMuZmlhdCwgb3B0aW9ucy5jcnlwdG9dKTtcbiAgICByZXR1cm4gKF9qc3goU2VsZWN0LCBPYmplY3QuYXNzaWduKHt9LCByZXN0LCB7IGxhYmVsOiBsYWJlbCwgbmFtZTogbmFtZSwgcGxhY2Vob2xkZXI6IHBsYWNlaG9sZGVyLCBzZWFyY2hhYmxlOiBzZWFyY2hhYmxlLCBmaWx0ZXJJbnB1dEF1dG9Gb2N1czogZmlsdGVySW5wdXRBdXRvRm9jdXMsIG9uU2VhcmNoQ2hhbmdlOiBoYW5kbGVTZWFyY2hDaGFuZ2UsIGVtcHR5Q29udGVudDogZW1wdHlDb250ZW50ICE9PSBudWxsICYmIGVtcHR5Q29udGVudCAhPT0gdm9pZCAwID8gZW1wdHlDb250ZW50IDogKF9qc3goRW1wdHksIHsgaWNvbjogJ2NvaW4nLCBkZXNjcmlwdGlvbjoga2V5d29yZCA/IGBObyByZXN1bHRzIGZvciBcIiR7a2V5d29yZH1cImAgOiAnTm8gcmVzdWx0cycgfSkpLCBjbGFzc05hbWU6IGpvaW5DbHMoV1JBUF9DTFMsIGNsYXNzTmFtZSksIGxhYmVsQ2xhc3NOYW1lOiBqb2luQ2xzKGAke1dSQVBfQ0xTfS1sYWJlbGAsIGxhYmVsQ2xhc3NOYW1lKSwgcGFuZWxDbGFzc05hbWU6IGpvaW5DbHMoYCR7V1JBUF9DTFN9LXBhbmVsYCwgcGFuZWxDbGFzc05hbWUpLCBvcHRpb25zOiBncm91cGVkT3B0aW9ucywgcmVuZGVyVmFsdWU6IChvcHRpb24sIHsgZm9udFNpemUgfSkgPT4ge1xuICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgaWYgKCFvcHRpb24gfHwgQXJyYXkuaXNBcnJheShvcHRpb24pKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBsYWNlaG9sZGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgaXRlbSA9IG9wdGlvbjtcbiAgICAgICAgICAgIHJldHVybiAoX2pzeHMoRmxleCwgeyBhbGlnbjogJ2NlbnRlcicsIGdhcDogOCwgY2hpbGRyZW46IFtfanN4KFwiaW1nXCIsIHsgc3JjOiBpdGVtLmljb24sIGFsdDogU3RyaW5nKChfYSA9IGl0ZW0udmFsdWUpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6ICcnKSwgd2lkdGg6IElDT05fU0laRSwgaGVpZ2h0OiBJQ09OX1NJWkUsIGNsYXNzTmFtZTogSUNPTl9DTFMgfSksIF9qc3goVHlwb2dyYXBoeUJvZHksIHsgc2l6ZTogZm9udFNpemUsIHN0cm9uZzogc3Ryb25nLCBjaGlsZHJlbjogaXRlbS5sYWJlbCB9KV0gfSkpO1xuICAgICAgICB9LCByZW5kZXJPcHRpb25Db250ZW50OiAob3B0aW9uKSA9PiB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICBjb25zdCBpdGVtID0gb3B0aW9uO1xuICAgICAgICAgICAgcmV0dXJuIChfanN4cyhGbGV4LCB7IGFsaWduOiAnY2VudGVyJywgZ2FwOiA4LCBzdHlsZTogeyB3aWR0aDogJzEwMCUnIH0sIGNoaWxkcmVuOiBbX2pzeChcImltZ1wiLCB7IHNyYzogaXRlbS5pY29uLCBhbHQ6IFN0cmluZygoX2EgPSBpdGVtLnZhbHVlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAnJyksIHdpZHRoOiBJQ09OX1NJWkUsIGhlaWdodDogSUNPTl9TSVpFLCBjbGFzc05hbWU6IElDT05fQ0xTIH0pLCBfanN4cyhGbGV4LCB7IHZlcnRpY2FsOiB0cnVlLCBnYXA6IDAsIGFsaWduOiAnc3RhcnQnLCBzdHlsZTogeyBtaW5XaWR0aDogMCB9LCBjaGlsZHJlbjogW19qc3goVHlwb2dyYXBoeUxhYmVsLCB7IHNpemU6ICdtZCcsIGNvbG9yOiAnZGVmYXVsdCcsIGNoaWxkcmVuOiBpdGVtLmxhYmVsIH0pLCBfanN4KFR5cG9ncmFwaHlCb2R5LCB7IHNpemU6ICdzbScsIGNvbG9yOiAnZGVmYXVsdC10ZXJ0aWFyeScsIGNoaWxkcmVuOiBpdGVtLm5hbWUgfSldIH0pXSB9KSk7XG4gICAgICAgIH0gfSkpKTtcbn07XG5leHBvcnQgY29uc3QgQXNzZXRTZWxlY3QgPSBtZW1vKEFzc2V0U2VsZWN0QmFzZSk7IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
@@ -20,11 +20,12 @@
20
20
  * gap: om-spacing-value(2); // Returns 8px if $om-sys-spacing-unit is 4px
21
21
  * }
22
22
  */
23
- .om-asset-select .om-component-ui-select-trigger-large {
24
- height: 56px;
23
+ .om-asset-select-label {
24
+ width: 100%;
25
25
  }
26
- .om-asset-select .om-component-ui-select-trigger-small {
27
- height: 44px;
26
+
27
+ .om-asset-select-panel .om-component-ui-select-empty {
28
+ padding: 0;
28
29
  }
29
30
 
30
31
  .om-asset-select-icon {
@@ -0,0 +1,2 @@
1
+ import type { CurrencySelectProps } from './interface';
2
+ export declare const CurrencySelect: import("react").NamedExoticComponent<CurrencySelectProps>;
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.CurrencySelect = void 0;
8
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ var _react = require("react");
11
+ var _Flex = require("../../../components/Flex");
12
+ var _Select = require("../../../components/Select");
13
+ var _Typography = require("../../../components/Typography");
14
+ var _classnames = require("../../../utils/classnames");
15
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
16
+ var t = {};
17
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
18
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
23
+ var WRAP_CLS = 'om-currency-select';
24
+ var ICON_CLS = "".concat(WRAP_CLS, "-icon");
25
+ var ICON_SIZE = 24;
26
+ var toOption = function toOption(currency) {
27
+ return {
28
+ label: currency.name,
29
+ value: currency.name,
30
+ icon: currency.iconUrl,
31
+ name: currency.desc
32
+ };
33
+ };
34
+ // Sort by the backend `sortOrder` (ascending). Copies the array so the
35
+ // caller's `options` is never mutated; a missing `sortOrder` falls back to 0.
36
+ var bySortOrder = function bySortOrder(a, b) {
37
+ var _a, _b;
38
+ return ((_a = a.sortOrder) !== null && _a !== void 0 ? _a : 0) - ((_b = b.sortOrder) !== null && _b !== void 0 ? _b : 0);
39
+ };
40
+ var CurrencySelectBase = function CurrencySelectBase(_a) {
41
+ var options = _a.options,
42
+ className = _a.className,
43
+ labelClassName = _a.labelClassName,
44
+ _a$label = _a.label,
45
+ label = _a$label === void 0 ? 'Currency' : _a$label,
46
+ _a$name = _a.name,
47
+ name = _a$name === void 0 ? 'currency' : _a$name,
48
+ _a$placeholder = _a.placeholder,
49
+ placeholder = _a$placeholder === void 0 ? 'Please select currency' : _a$placeholder,
50
+ _a$strong = _a.strong,
51
+ strong = _a$strong === void 0 ? true : _a$strong,
52
+ rest = __rest(_a, ["options", "className", "labelClassName", "label", "name", "placeholder", "strong"]);
53
+ var mappedOptions = (0, _react.useMemo)(function () {
54
+ return (0, _toConsumableArray2["default"])(options).sort(bySortOrder).map(toOption);
55
+ }, [options]);
56
+ return (0, _jsxRuntime.jsx)(_Select.Select, Object.assign({}, rest, {
57
+ label: label,
58
+ name: name,
59
+ placeholder: placeholder,
60
+ className: (0, _classnames.joinCls)(WRAP_CLS, className),
61
+ labelClassName: (0, _classnames.joinCls)("".concat(WRAP_CLS, "-label"), labelClassName),
62
+ options: mappedOptions,
63
+ renderValue: function renderValue(option, _ref) {
64
+ var fontSize = _ref.fontSize;
65
+ var _a;
66
+ if (!option || Array.isArray(option)) {
67
+ return placeholder;
68
+ }
69
+ var item = option;
70
+ return (0, _jsxRuntime.jsxs)(_Flex.Flex, {
71
+ align: 'center',
72
+ gap: 8,
73
+ children: [(0, _jsxRuntime.jsx)("img", {
74
+ src: item.icon,
75
+ alt: String((_a = item.value) !== null && _a !== void 0 ? _a : ''),
76
+ width: ICON_SIZE,
77
+ height: ICON_SIZE,
78
+ className: ICON_CLS
79
+ }), (0, _jsxRuntime.jsx)(_Typography.TypographyBody, {
80
+ size: fontSize,
81
+ strong: strong,
82
+ children: item.label
83
+ })]
84
+ });
85
+ },
86
+ renderOptionContent: function renderOptionContent(option) {
87
+ var _a;
88
+ var item = option;
89
+ return (0, _jsxRuntime.jsxs)(_Flex.Flex, {
90
+ align: 'center',
91
+ gap: 8,
92
+ style: {
93
+ width: '100%'
94
+ },
95
+ children: [(0, _jsxRuntime.jsx)("img", {
96
+ src: item.icon,
97
+ alt: String((_a = item.value) !== null && _a !== void 0 ? _a : ''),
98
+ width: ICON_SIZE,
99
+ height: ICON_SIZE,
100
+ className: ICON_CLS
101
+ }), (0, _jsxRuntime.jsxs)(_Flex.Flex, {
102
+ vertical: true,
103
+ gap: 0,
104
+ align: 'start',
105
+ style: {
106
+ minWidth: 0
107
+ },
108
+ children: [(0, _jsxRuntime.jsx)(_Typography.TypographyBody, {
109
+ size: 'md',
110
+ strong: true,
111
+ color: 'default',
112
+ children: item.label
113
+ }), (0, _jsxRuntime.jsx)(_Typography.TypographyBody, {
114
+ size: 'sm',
115
+ color: 'default-secondary',
116
+ children: item.name
117
+ })]
118
+ })]
119
+ });
120
+ }
121
+ }));
122
+ };
123
+ var CurrencySelect = exports.CurrencySelect = /*#__PURE__*/(0, _react.memo)(CurrencySelectBase);
124
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL1NlbGVjdC9DdXJyZW5jeS9DdXJyZW5jeVNlbGVjdC5qcyIsImJ1c2luZXNzL1NlbGVjdC9zcmMvYnVzaW5lc3MvU2VsZWN0L0N1cnJlbmN5L0N1cnJlbmN5U2VsZWN0LnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfRmxleCIsIl9TZWxlY3QiLCJfVHlwb2dyYXBoeSIsIl9jbGFzc25hbWVzIiwiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJXUkFQX0NMUyIsIklDT05fQ0xTIiwiY29uY2F0IiwiSUNPTl9TSVpFIiwidG9PcHRpb24iLCJjdXJyZW5jeSIsImxhYmVsIiwibmFtZSIsInZhbHVlIiwiaWNvbiIsImljb25VcmwiLCJkZXNjIiwiYnlTb3J0T3JkZXIiLCJhIiwiYiIsIl9hIiwiX2IiLCJzb3J0T3JkZXIiLCJDdXJyZW5jeVNlbGVjdEJhc2UiLCJvcHRpb25zIiwiY2xhc3NOYW1lIiwibGFiZWxDbGFzc05hbWUiLCJfYSRsYWJlbCIsIl9hJG5hbWUiLCJfYSRwbGFjZWhvbGRlciIsInBsYWNlaG9sZGVyIiwiX2Ekc3Ryb25nIiwic3Ryb25nIiwicmVzdCIsIm1hcHBlZE9wdGlvbnMiLCJ1c2VNZW1vIiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsInNvcnQiLCJtYXAiLCJfanN4IiwiU2VsZWN0IiwiYXNzaWduIiwiam9pbkNscyIsInJlbmRlclZhbHVlIiwib3B0aW9uIiwiX3JlZiIsImZvbnRTaXplIiwiQXJyYXkiLCJpc0FycmF5IiwiaXRlbSIsIl9qc3hzIiwiRmxleCIsImFsaWduIiwiZ2FwIiwiY2hpbGRyZW4iLCJzcmMiLCJhbHQiLCJTdHJpbmciLCJ3aWR0aCIsImhlaWdodCIsIlR5cG9ncmFwaHlCb2R5Iiwic2l6ZSIsInJlbmRlck9wdGlvbkNvbnRlbnQiLCJzdHlsZSIsInZlcnRpY2FsIiwibWluV2lkdGgiLCJjb2xvciIsIkN1cnJlbmN5U2VsZWN0IiwiZXhwb3J0cyIsIm1lbW8iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBV0EsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDWEEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsS0FBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsT0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksV0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBTCxPQUFBO0FESkEsSUFBSU0sTUFBTSxHQUFJLFVBQVEsU0FBS0EsTUFBTSxJQUFLLFVBQVVDLENBQUMsRUFBRUMsQ0FBQyxFQUFFO0VBQ2xELElBQUlDLENBQUMsR0FBRyxDQUFDLENBQUM7RUFDVixLQUFLLElBQUlDLENBQUMsSUFBSUgsQ0FBQyxFQUFFLElBQUlJLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDQyxjQUFjLENBQUNDLElBQUksQ0FBQ1AsQ0FBQyxFQUFFRyxDQUFDLENBQUMsSUFBSUYsQ0FBQyxDQUFDTyxPQUFPLENBQUNMLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFDL0VELENBQUMsQ0FBQ0MsQ0FBQyxDQUFDLEdBQUdILENBQUMsQ0FBQ0csQ0FBQyxDQUFDO0VBQ2YsSUFBSUgsQ0FBQyxJQUFJLElBQUksSUFBSSxPQUFPSSxNQUFNLENBQUNLLHFCQUFxQixLQUFLLFVBQVUsRUFDL0QsS0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBQyxFQUFFUCxDQUFDLEdBQUdDLE1BQU0sQ0FBQ0sscUJBQXFCLENBQUNULENBQUMsQ0FBQyxFQUFFVSxDQUFDLEdBQUdQLENBQUMsQ0FBQ1EsTUFBTSxFQUFFRCxDQUFDLEVBQUUsRUFBRTtJQUNwRSxJQUFJVCxDQUFDLENBQUNPLE9BQU8sQ0FBQ0wsQ0FBQyxDQUFDTyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSU4sTUFBTSxDQUFD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Q0FDRjtJQUVYO0VBQUMsQ0FBQSxDQUFBLENBQ0Q7QUFFTixDQUFDO0FBRU0sSUFBTXVELGNBQWMsR0FBQUMsT0FBQSxDQUFBRCxjQUFBLGdCQUFHLElBQUFFLFdBQUksRUFBQzlDLGtCQUFrQixDQUFDIiwiZmlsZSI6ImJ1c2luZXNzL1NlbGVjdC9DdXJyZW5jeS9DdXJyZW5jeVNlbGVjdC5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX3Jlc3QgPSAodGhpcyAmJiB0aGlzLl9fcmVzdCkgfHwgZnVuY3Rpb24gKHMsIGUpIHtcbiAgICB2YXIgdCA9IHt9O1xuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxuICAgICAgICB0W3BdID0gc1twXTtcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSlcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcbiAgICAgICAgfVxuICAgIHJldHVybiB0O1xufTtcbmltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgRmxleCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvRmxleCc7XG5pbXBvcnQgeyBTZWxlY3QgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL1NlbGVjdCc7XG5pbXBvcnQgeyBUeXBvZ3JhcGh5Qm9keSB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvVHlwb2dyYXBoeSc7XG5pbXBvcnQgeyBqb2luQ2xzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvY2xhc3NuYW1lcyc7XG5jb25zdCBXUkFQX0NMUyA9ICdvbS1jdXJyZW5jeS1zZWxlY3QnO1xuY29uc3QgSUNPTl9DTFMgPSBgJHtXUkFQX0NMU30taWNvbmA7XG5jb25zdCBJQ09OX1NJWkUgPSAyNDtcbmNvbnN0IHRvT3B0aW9uID0gKGN1cnJlbmN5KSA9PiAoe1xuICAgIGxhYmVsOiBjdXJyZW5jeS5uYW1lLFxuICAgIHZhbHVlOiBjdXJyZW5jeS5uYW1lLFxuICAgIGljb246IGN1cnJlbmN5Lmljb25VcmwsXG4gICAgbmFtZTogY3VycmVuY3kuZGVzYyxcbn0pO1xuLy8gU29ydCBieSB0aGUgYmFja2VuZCBgc29ydE9yZGVyYCAoYXNjZW5kaW5nKS4gQ29waWVzIHRoZSBhcnJheSBzbyB0aGVcbi8vIGNhbGxlcidzIGBvcHRpb25zYCBpcyBuZXZlciBtdXRhdGVkOyBhIG1pc3NpbmcgYHNvcnRPcmRlcmAgZmFsbHMgYmFjayB0byAwLlxuY29uc3QgYnlTb3J0T3JkZXIgPSAoYSwgYikgPT4geyB2YXIgX2EsIF9iOyByZXR1cm4gKChfYSA9IGEuc29ydE9yZGVyKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAwKSAtICgoX2IgPSBiLnNvcnRPcmRlcikgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogMCk7IH07XG5jb25zdCBDdXJyZW5jeVNlbGVjdEJhc2UgPSAoX2EpID0+IHtcbiAgICB2YXIgeyBvcHRpb25zLCBjbGFzc05hbWUsIGxhYmVsQ2xhc3NOYW1lLCBsYWJlbCA9ICdDdXJyZW5jeScsIG5hbWUgPSAnY3VycmVuY3knLCBwbGFjZWhvbGRlciA9ICdQbGVhc2Ugc2VsZWN0IGN1cnJlbmN5Jywgc3Ryb25nID0gdHJ1ZSB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcIm9wdGlvbnNcIiwgXCJjbGFzc05hbWVcIiwgXCJsYWJlbENsYXNzTmFtZVwiLCBcImxhYmVsXCIsIFwibmFtZVwiLCBcInBsYWNlaG9sZGVyXCIsIFwic3Ryb25nXCJdKTtcbiAgICBjb25zdCBtYXBwZWRPcHRpb25zID0gdXNlTWVtbygoKSA9PiBbLi4ub3B0aW9uc10uc29ydChieVNvcnRPcmRlcikubWFwKHRvT3B0aW9uKSwgW29wdGlvbnNdKTtcbiAgICByZXR1cm4gKF9qc3goU2VsZWN0LCBPYmplY3QuYXNzaWduKHt9LCByZXN0LCB7IGxhYmVsOiBsYWJlbCwgbmFtZTogbmFtZSwgcGxhY2Vob2xkZXI6IHBsYWNlaG9sZGVyLCBjbGFzc05hbWU6IGpvaW5DbHMoV1JBUF9DTFMsIGNsYXNzTmFtZSksIGxhYmVsQ2xhc3NOYW1lOiBqb2luQ2xzKGAke1dSQVBfQ0xTfS1sYWJlbGAsIGxhYmVsQ2xhc3NOYW1lKSwgb3B0aW9uczogbWFwcGVkT3B0aW9ucywgcmVuZGVyVmFsdWU6IChvcHRpb24sIHsgZm9udFNpemUgfSkgPT4ge1xuICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgaWYgKCFvcHRpb24gfHwgQXJyYXkuaXNBcnJheShvcHRpb24pKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHBsYWNlaG9sZGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgaXRlbSA9IG9wdGlvbjtcbiAgICAgICAgICAgIHJldHVybiAoX2pzeHMoRmxleCwgeyBhbGlnbjogJ2NlbnRlcicsIGdhcDogOCwgY2hpbGRyZW46IFtfanN4KFwiaW1nXCIsIHsgc3JjOiBpdGVtLmljb24sIGFsdDogU3RyaW5nKChfYSA9IGl0ZW0udmFsdWUpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6ICcnKSwgd2lkdGg6IElDT05fU0laRSwgaGVpZ2h0OiBJQ09OX1NJWkUsIGNsYXNzTmFtZTogSUNPTl9DTFMgfSksIF9qc3goVHlwb2dyYXBoeUJvZHksIHsgc2l6ZTogZm9udFNpemUsIHN0cm9uZzogc3Ryb25nLCBjaGlsZHJlbjogaXRlbS5sYWJlbCB9KV0gfSkpO1xuICAgICAgICB9LCByZW5kZXJPcHRpb25Db250ZW50OiAob3B0aW9uKSA9PiB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICBjb25zdCBpdGVtID0gb3B0aW9uO1xuICAgICAgICAgICAgcmV0dXJuIChfanN4cyhGbGV4LCB7IGFsaWduOiAnY2VudGVyJywgZ2FwOiA4LCBzdHlsZTogeyB3aWR0aDogJzEwMCUnIH0sIGNoaWxkcmVuOiBbX2pzeChcImltZ1wiLCB7IHNyYzogaXRlbS5pY29uLCBhbHQ6IFN0cmluZygoX2EgPSBpdGVtLnZhbHVlKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAnJyksIHdpZHRoOiBJQ09OX1NJWkUsIGhlaWdodDogSUNPTl9TSVpFLCBjbGFzc05hbWU6IElDT05fQ0xTIH0pLCBfanN4cyhGbGV4LCB7IHZlcnRpY2FsOiB0cnVlLCBnYXA6IDAsIGFsaWduOiAnc3RhcnQnLCBzdHlsZTogeyBtaW5XaWR0aDogMCB9LCBjaGlsZHJlbjogW19qc3goVHlwb2dyYXBoeUJvZHksIHsgc2l6ZTogJ21kJywgc3Ryb25nOiB0cnVlLCBjb2xvcjogJ2RlZmF1bHQnLCBjaGlsZHJlbjogaXRlbS5sYWJlbCB9KSwgX2pzeChUeXBvZ3JhcGh5Qm9keSwgeyBzaXplOiAnc20nLCBjb2xvcjogJ2RlZmF1bHQtc2Vjb25kYXJ5JywgY2hpbGRyZW46IGl0ZW0ubmFtZSB9KV0gfSldIH0pKTtcbiAgICAgICAgfSB9KSkpO1xufTtcbmV4cG9ydCBjb25zdCBDdXJyZW5jeVNlbGVjdCA9IG1lbW8oQ3VycmVuY3lTZWxlY3RCYXNlKTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
@@ -0,0 +1,2 @@
1
+ export { CurrencySelect } from './CurrencySelect';
2
+ export * from './interface';
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _exportNames = {
7
+ CurrencySelect: true
8
+ };
9
+ Object.defineProperty(exports, "CurrencySelect", {
10
+ enumerable: true,
11
+ get: function get() {
12
+ return _CurrencySelect.CurrencySelect;
13
+ }
14
+ });
15
+ var _CurrencySelect = require("./CurrencySelect");
16
+ var _interface = require("./interface");
17
+ Object.keys(_interface).forEach(function (key) {
18
+ if (key === "default" || key === "__esModule") return;
19
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
20
+ if (key in exports && exports[key] === _interface[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function get() {
24
+ return _interface[key];
25
+ }
26
+ });
27
+ });
28
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL1NlbGVjdC9zcmMvYnVzaW5lc3MvU2VsZWN0L0N1cnJlbmN5L2luZGV4LnRzIl0sIm5hbWVzIjpbIl9DdXJyZW5jeVNlbGVjdCIsInJlcXVpcmUiLCJfaW50ZXJmYWNlIiwiT2JqZWN0Iiwia2V5cyIsImZvckVhY2giLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJfZXhwb3J0TmFtZXMiLCJleHBvcnRzIiwiZGVmaW5lUHJvcGVydHkiLCJlbnVtZXJhYmxlIiwiZ2V0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUFBLElBQUFBLGVBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLFVBQUEsR0FBQUQsT0FBQTtBQUFBRSxNQUFBLENBQUFDLElBQUEsQ0FBQUYsVUFBQSxFQUFBRyxPQUFBLFdBQUFDLEdBQUE7RUFBQSxJQUFBQSxHQUFBLGtCQUFBQSxHQUFBO0VBQUEsSUFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBQyxZQUFBLEVBQUFKLEdBQUE7RUFBQSxJQUFBQSxHQUFBLElBQUFLLE9BQUEsSUFBQUEsT0FBQSxDQUFBTCxHQUFBLE1BQUFKLFVBQUEsQ0FBQUksR0FBQTtFQUFBSCxNQUFBLENBQUFTLGNBQUEsQ0FBQUQsT0FBQSxFQUFBTCxHQUFBO0lBQUFPLFVBQUE7SUFBQUMsR0FBQSxXQUFBQSxJQUFBO01BQUEsT0FBQVosVUFBQSxDQUFBSSxHQUFBO0lBQUE7RUFBQTtBQUFBIiwiZmlsZSI6ImJ1c2luZXNzL1NlbGVjdC9DdXJyZW5jeS9pbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -0,0 +1,50 @@
1
+ import type { SelectProps } from "../../../components/Select";
2
+ /**
3
+ * A single selectable currency as carried by the 1money recipients
4
+ * dictionary — an entry of a bank country's `subItems`
5
+ * (`dicts.bankCountryCode[i].subItems[j]`). The component reads the icon,
6
+ * code (`name`), and description; the entry's own nested `subItems`
7
+ * (payment methods) are ignored.
8
+ */
9
+ export interface CurrencyItem {
10
+ /** Display order within the list (ascending), e.g. `0`. */
11
+ sortOrder?: number;
12
+ /** Currency code — bound to the select value, e.g. `"USD"`. */
13
+ name: string;
14
+ /** Human-readable currency name shown on the secondary line, e.g. `"United States Dollar"`. */
15
+ desc: string;
16
+ /** Backend code; unused by the component and often `null`. */
17
+ code?: string | null;
18
+ /** Public URL of the currency / flag icon. */
19
+ iconUrl: string;
20
+ }
21
+ export interface CurrencySelectProps extends Omit<SelectProps, 'options' | 'renderValue' | 'renderOption' | 'renderOptionContent'> {
22
+ /**
23
+ * The currency list for the selected bank country — the `subItems` array
24
+ * from the 1money recipients dictionary
25
+ * (`dicts.bankCountryCode[i].subItems`). Pass it through as-is; the
26
+ * component renders the flag icon, the bold code, and the currency name,
27
+ * and derives the trigger from the selected entry.
28
+ *
29
+ * @example
30
+ * ```ts
31
+ * const options: CurrencyItem[] = [
32
+ * {
33
+ * sortOrder: 0,
34
+ * name: 'USD',
35
+ * desc: 'United States Dollar',
36
+ * code: null,
37
+ * iconUrl: 'https://static.1money.com/images/currencies/Icon-USD.svg',
38
+ * },
39
+ * ];
40
+ *
41
+ * <CurrencySelect options={options} defaultValue='USD' />
42
+ * ```
43
+ */
44
+ options: CurrencyItem[];
45
+ /**
46
+ * Bold the currency code in the trigger.
47
+ * @default true
48
+ */
49
+ strong?: boolean;
50
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVzaW5lc3MvU2VsZWN0L0N1cnJlbmN5L2ludGVyZmFjZS5qcyIsIm5hbWVzIjpbXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyIsInNvdXJjZXMiOlsiYnVzaW5lc3MvU2VsZWN0L0N1cnJlbmN5L2ludGVyZmFjZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge307Il0sIm1hcHBpbmdzIjoiIiwiaWdub3JlTGlzdCI6W119
@@ -0,0 +1,34 @@
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-currency-select-label {
24
+ width: 100%;
25
+ }
26
+
27
+ .om-currency-select-icon {
28
+ flex: 0 0 auto;
29
+ width: 24px;
30
+ height: 24px;
31
+ -o-object-fit: cover;
32
+ object-fit: cover;
33
+ border-radius: var(--om-radius-full, 9999px);
34
+ }
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ require("./CurrencySelect.css");
4
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL1NlbGVjdC9DdXJyZW5jeS9zcmMvYnVzaW5lc3MvU2VsZWN0L0N1cnJlbmN5L3N0eWxlL2luZGV4LnRzIl0sIm5hbWVzIjpbInJlcXVpcmUiXSwibWFwcGluZ3MiOiI7O0FBQUFBLE9BQUEiLCJmaWxlIjoiYnVzaW5lc3MvU2VsZWN0L0N1cnJlbmN5L3N0eWxlL2Nzcy5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -0,0 +1 @@
1
+ import './CurrencySelect.css';
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ require("./CurrencySelect.css");
4
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL1NlbGVjdC9DdXJyZW5jeS9zcmMvYnVzaW5lc3MvU2VsZWN0L0N1cnJlbmN5L3N0eWxlL2luZGV4LnRzIl0sIm5hbWVzIjpbInJlcXVpcmUiXSwibWFwcGluZ3MiOiI7O0FBQUFBLE9BQUEiLCJmaWxlIjoiYnVzaW5lc3MvU2VsZWN0L0N1cnJlbmN5L3N0eWxlL2luZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9