@1money/component-ui 0.0.87-alpha.2 → 0.0.87-alpha.4

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.
@@ -12,6 +12,7 @@ var _Filter = require("../../../components/Filter");
12
12
  var _Flex = require("../../../components/Flex");
13
13
  var _Icons = require("../../../components/Icons");
14
14
  var _Typography = require("../../../components/Typography");
15
+ var _interface = require("./interface");
15
16
  var __rest = void 0 && (void 0).__rest || function (s, e) {
16
17
  var t = {};
17
18
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
@@ -25,8 +26,12 @@ var PANEL_CLS = "".concat(WRAP_CLS, "-panel");
25
26
  var GROUP_LABEL_CLS = "".concat(WRAP_CLS, "__group-label");
26
27
  var ICON_CLS = "".concat(WRAP_CLS, "-icon");
27
28
  var ICON_SIZE = 24;
28
- var FIAT_GROUP = 'Cash';
29
- var CRYPTO_GROUP = 'Stablecoins';
29
+ // Panel heading per group, rendered in `AssetFilterGroups` order.
30
+ var GROUP_LABELS = {
31
+ fiat: 'Cash',
32
+ stablecoin: 'Stablecoins',
33
+ digitalAsset: 'Digital Assets'
34
+ };
30
35
  var DEFAULT_ALL_LABEL = 'All assets';
31
36
  var DEFAULT_PLACEHOLDER = 'Asset';
32
37
  var DEFAULT_EMPTY = (0, _jsxRuntime.jsx)(_Empty.Empty, {
@@ -59,27 +64,29 @@ var toOption = function toOption(item) {
59
64
  searchText: [item.assetName, item.assetDesc].filter(Boolean).join(' ')
60
65
  };
61
66
  };
62
- // Fiat "Cash", rest "Stablecoins". Empty groups dropped so a single-kind
63
- // list shows one heading.
67
+ // Explicit `group` wins; otherwise the legacy `isFiat` flag maps to fiat /
68
+ // stablecoin (so callers that never set `group` keep the old two-bucket split).
69
+ var resolveGroup = function resolveGroup(item) {
70
+ var _a;
71
+ return (_a = item.group) !== null && _a !== void 0 ? _a : item.isFiat ? 'fiat' : 'stablecoin';
72
+ };
73
+ // Bucket rows into "Cash" / "Stablecoins" / "Digital Assets", always in
74
+ // `AssetFilterGroups` order. Empty groups are dropped so a single-kind list
75
+ // shows one heading.
64
76
  var toGroupedData = function toGroupedData(items) {
65
- var fiat = items.filter(function (item) {
66
- return item.isFiat;
67
- }).map(toOption);
68
- var crypto = items.filter(function (item) {
69
- return !item.isFiat;
70
- }).map(toOption);
71
- var data = [];
72
- if (fiat.length) data.push({
73
- key: FIAT_GROUP,
74
- label: FIAT_GROUP,
75
- options: fiat
76
- });
77
- if (crypto.length) data.push({
78
- key: CRYPTO_GROUP,
79
- label: CRYPTO_GROUP,
80
- options: crypto
81
- });
82
- return data;
77
+ return _interface.AssetFilterGroups.reduce(function (data, group) {
78
+ var options = items.filter(function (item) {
79
+ return resolveGroup(item) === group;
80
+ }).map(toOption);
81
+ if (options.length) {
82
+ data.push({
83
+ key: GROUP_LABELS[group],
84
+ label: GROUP_LABELS[group],
85
+ options: options
86
+ });
87
+ }
88
+ return data;
89
+ }, []);
83
90
  };
84
91
  var renderRow = function renderRow(option, checked) {
85
92
  var text = typeof option.label === 'string' ? option.label : '';
@@ -166,4 +173,4 @@ var AssetFilterBase = function AssetFilterBase(_a) {
166
173
  }));
167
174
  };
168
175
  var AssetFilter = exports.AssetFilter = /*#__PURE__*/(0, _react.memo)(AssetFilterBase);
169
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL0ZpbHRlci9Bc3NldC9Bc3NldC5qcyIsImJ1c2luZXNzL0ZpbHRlci9zcmMvYnVzaW5lc3MvRmlsdGVyL0Fzc2V0L0Fzc2V0LnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfQ2hlY2tib3giLCJfRW1wdHkiLCJfRmlsdGVyIiwiX0ZsZXgiLCJfSWNvbnMiLCJfVHlwb2dyYXBoeSIsIl9fcmVzdCIsInMiLCJlIiwidCIsInAiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpbmRleE9mIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwiaSIsImxlbmd0aCIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwiV1JBUF9DTFMiLCJQQU5FTF9DTFMiLCJjb25jYXQiLCJHUk9VUF9MQUJFTF9DTFMiLCJJQ09OX0NMUyIsIklDT05fU0laRSIsIkZJQVRfR1JPVVAiLCJDUllQVE9fR1JPVVAiLCJERUZBVUxUX0FMTF9MQUJFTCIsIkRFRkFVTFRfUExBQ0VIT0xERVIiLCJERUZBVUxUX0VNUFRZIiwiX2pzeCIsIkVtcHR5IiwidmFyaWFudCIsImljb24iLCJJY29ucyIsIm5hbWUiLCJzaXplIiwiY29sb3IiLCJ0aXRsZSIsIlR5cG9ncmFwaHlCb2R5Iiwic3Ryb25nIiwiY2hpbGRyZW4iLCJkZXNjcmlwdGlvbiIsInN0eWxlIiwicGFkZGluZyIsInRvT3B0aW9uIiwiaXRlbSIsImxhYmVsIiwiYXNzZXROYW1lIiwidmFsdWUiLCJpY29uVXJsIiwiYXNzZXRJY29uVXJsIiwic2VhcmNoVGV4dCIsImFzc2V0RGVzYyIsImZpbHRlciIsIkJvb2xlYW4iLCJqb2luIiwidG9Hcm91cGVkRGF0YSIsIml0ZW1zIiwiZmlhdCIsImlzRmlhdCIsIm1hcCIsImNyeXB0byIsImRhdGEiLCJwdXNoIiwia2V5Iiwib3B0aW9ucyIsInJlbmRlclJvdyIsIm9wdGlvbiIsImNoZWNrZWQiLCJ0ZXh0IiwiX2pzeHMiLCJGbGV4IiwiYWxpZ24iLCJqdXN0aWZ5IiwiZ2FwIiwiY2xhc3NOYW1lIiwic3JjIiwiYWx0Iiwid2lkdGgiLCJoZWlnaHQiLCJDaGVja2JveCIsInJlYWRPbmx5IiwiQXNzZXRGaWx0ZXJCYXNlIiwiX2EiLCJyZWYiLCJfYSRzaXplIiwiX2EkcGxhY2Vob2xkZXIiLCJwbGFjZWhvbGRlciIsIl9hJGFsbExhYmVsIiwiYWxsTGFiZWwiLCJfYSRzZWFyY2giLCJzZWFyY2giLCJzZWFyY2hQbGFjZWhvbGRlciIsIl9hJHNlYXJjaEVtcHR5Iiwic2VhcmNoRW1wdHkiLCJvbkFwcGx5Iiwib25SZXNldCIsInJlc3QiLCJmaWx0ZXJSZWYiLCJ1c2VSZWYiLCJncm91cGVkRGF0YSIsInVzZU1lbW8iLCJ1c2VJbXBlcmF0aXZlSGFuZGxlIiwiY2xlYXIiLCJjdXJyZW50IiwicmVzZXQiLCJGaWx0ZXIiLCJhc3NpZ24iLCJwYW5lbENsYXNzTmFtZSIsImdyb3VwTGFiZWxDbGFzc05hbWUiLCJlbXB0eUNvbnRlbnQiLCJBc3NldEZpbHRlciIsImV4cG9ydHMiLCJtZW1vIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFXQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUNYQSxJQUFBQyxNQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxTQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxNQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxPQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxLQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxNQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxXQUFBLEdBQUFQLE9BQUE7QUROQSxJQUFJUSxNQUFNLEdBQUksVUFBUSxTQUFLQSxNQUFNLElBQUssVUFBVUMsQ0FBQyxFQUFFQyxDQUFDLEVBQUU7RUFDbEQsSUFBSUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztFQUNWLEtBQUssSUFBSUMsQ0FBQyxJQUFJSCxDQUFDLEVBQUUsSUFBSUksTUFBTSxDQUFDQyxTQUFTLENBQUNDLGNBQWMsQ0FB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ZXNDb250ZW50IjpbInZhciBfX3Jlc3QgPSAodGhpcyAmJiB0aGlzLl9fcmVzdCkgfHwgZnVuY3Rpb24gKHMsIGUpIHtcbiAgICB2YXIgdCA9IHt9O1xuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxuICAgICAgICB0W3BdID0gc1twXTtcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSlcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcbiAgICAgICAgfVxuICAgIHJldHVybiB0O1xufTtcbmltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VJbXBlcmF0aXZlSGFuZGxlLCB1c2VNZW1vLCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBDaGVja2JveCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvQ2hlY2tib3gnO1xuaW1wb3J0IHsgRW1wdHkgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL0VtcHR5JztcbmltcG9ydCB7IEZpbHRlciB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvRmlsdGVyJztcbmltcG9ydCB7IEZsZXggfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL0ZsZXgnO1xuaW1wb3J0IHsgSWNvbnMgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL0ljb25zJztcbmltcG9ydCB7IFR5cG9ncmFwaHlCb2R5IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9UeXBvZ3JhcGh5JztcbmNvbnN0IFdSQVBfQ0xTID0gJ29tLWFzc2V0LWZpbHRlcic7XG5jb25zdCBQQU5FTF9DTFMgPSBgJHtXUkFQX0NMU30tcGFuZWxgO1xuY29uc3QgR1JPVVBfTEFCRUxfQ0xTID0gYCR7V1JBUF9DTFN9X19ncm91cC1sYWJlbGA7XG5jb25zdCBJQ09OX0NMUyA9IGAke1dSQVBfQ0xTfS1pY29uYDtcbmNvbnN0IElDT05fU0laRSA9IDI0O1xuY29uc3QgRklBVF9HUk9VUCA9ICdDYXNoJztcbmNvbnN0IENSWVBUT19HUk9VUCA9ICdTdGFibGVjb2lucyc7XG5jb25zdCBERUZBVUxUX0FMTF9MQUJFTCA9ICdBbGwgYXNzZXRzJztcbmNvbnN0IERFRkFVTFRfUExBQ0VIT0xERVIgPSAnQXNzZXQnO1xuY29uc3QgREVGQVVMVF9FTVBUWSA9IChfanN4KEVtcHR5LCB7IHZhcmlhbnQ6ICdmaWxsJywgaWNvbjogX2pzeChJY29ucywgeyBuYW1lOiAnc2VhcmNoJywgc2l6ZTogMTYsIGNvbG9yOiAnY3VycmVudENvbG9yJyB9KSwgdGl0bGU6IF9qc3goVHlwb2dyYXBoeUJvZHksIHsgc2l6ZTogJ3NtJywgc3Ryb25nOiB0cnVlLCBjb2xvcjogJ25ldXRyYWwtc2Vjb25kYXJ5JywgY2hpbGRyZW46IFwiTm8gcmVzdWx0c1wiIH0pLCBkZXNjcmlwdGlvbjogX2pzeChUeXBvZ3JhcGh5Qm9keSwgeyBzaXplOiAnc20nLCBjb2xvcjogJ25ldXRyYWwtc2Vjb25kYXJ5JywgY2hpbGRyZW46IFwiVHJ5IGEgZGlmZmVyZW50IG5hbWUgb3IgYWRqdXN0IHlvdXIgc2VhcmNoIGZpbHRlcnMuXCIgfSksIHN0eWxlOiB7IHBhZGRpbmc6IDAgfSB9KSk7XG5jb25zdCB0b09wdGlvbiA9IChpdGVtKSA9PiAoe1xuICAgIGxhYmVsOiBpdGVtLmFzc2V0TmFtZSxcbiAgICB2YWx1ZTogaXRlbS5hc3NldE5hbWUsXG4gICAgaWNvblVybDogaXRlbS5hc3NldEljb25VcmwsXG4gICAgc2VhcmNoVGV4dDogW2l0ZW0uYXNzZXROYW1lLCBpdGVtLmFzc2V0RGVzY10uZmlsdGVyKEJvb2xlYW4pLmpvaW4oJyAnKSxcbn0pO1xuLy8gRmlhdCDihpIgXCJDYXNoXCIsIHJlc3Qg4oaSIFwiU3RhYmxlY29pbnNcIi4gRW1wdHkgZ3JvdXBzIGRyb3BwZWQgc28gYSBzaW5nbGUta2luZFxuLy8gbGlzdCBzaG93cyBvbmUgaGVhZGluZy5cbmNvbnN0IHRvR3JvdXBlZERhdGEgPSAoaXRlbXMpID0+IHtcbiAgICBjb25zdCBmaWF0ID0gaXRlbXMuZmlsdGVyKChpdGVtKSA9PiBpdGVtLmlzRmlhdCkubWFwKHRvT3B0aW9uKTtcbiAgICBjb25zdCBjcnlwdG8gPSBpdGVtcy5maWx0ZXIoKGl0ZW0pID0+ICFpdGVtLmlzRmlhdCkubWFwKHRvT3B0aW9uKTtcbiAgICBjb25zdCBkYXRhID0gW107XG4gICAgaWYgKGZpYXQubGVuZ3RoKVxuICAgICAgICBkYXRhLnB1c2goeyBrZXk6IEZJQVRfR1JPVVAsIGxhYmVsOiBGSUFUX0dST1VQLCBvcHRpb25zOiBmaWF0IH0pO1xuICAgIGlmIChjcnlwdG8ubGVuZ3RoKVxuICAgICAgICBkYXRhLnB1c2goeyBrZXk6IENSWVBUT19HUk9VUCwgbGFiZWw6IENSWVBUT19HUk9VUCwgb3B0aW9uczogY3J5cHRvIH0pO1xuICAgIHJldHVybiBkYXRhO1xufTtcbmNvbnN0IHJlbmRlclJvdyA9IChvcHRpb24sIGNoZWNrZWQpID0+IHtcbiAgICBjb25zdCB0ZXh0ID0gdHlwZW9mIG9wdGlvbi5sYWJlbCA9PT0gJ3N0cmluZycgPyBvcHRpb24ubGFiZWwgOiAnJztcbiAgICBjb25zdCBpY29uVXJsID0gb3B0aW9uLmljb25Vcmw7XG4gICAgcmV0dXJuIChfanN4cyhGbGV4LCB7IGFsaWduOiAnY2VudGVyJywganVzdGlmeTogJ3NwYWNlLWJldHdlZW4nLCBnYXA6IDEyLCBjbGFzc05hbWU6IGAke1dSQVBfQ0xTfV9fcm93YCwgY2hpbGRyZW46IFtfanN4cyhGbGV4LCB7IGFsaWduOiAnY2VudGVyJywgZ2FwOiA4LCBjbGFzc05hbWU6IGAke1dSQVBfQ0xTfV9fcm93LW1haW5gLCBjaGlsZHJlbjogW2ljb25VcmwgJiYgKF9qc3goXCJpbWdcIiwgeyBzcmM6IGljb25VcmwsIGFsdDogdGV4dCwgd2lkdGg6IElDT05fU0laRSwgaGVpZ2h0OiBJQ09OX1NJWkUsIGNsYXNzTmFtZTogSUNPTl9DTFMgfSkpLCBfanN4KFR5cG9ncmFwaHlCb2R5LCB7IHNpemU6ICdzbScsIHN0cm9uZzogdHJ1ZSwgY2xhc3NOYW1lOiBgJHtXUkFQX0NMU31fX3Jvdy1uYW1lYCwgY2hpbGRyZW46IG9wdGlvbi5sYWJlbCB9KV0gfSksIF9qc3goQ2hlY2tib3gsIHsgY2hlY2tlZDogY2hlY2tlZCwgcmVhZE9ubHk6IHRydWUsIGNsYXNzTmFtZTogJ29tLWZpbHRlcl9fcm93LWNoZWNrJyB9KV0gfSkpO1xufTtcbmNvbnN0IEFzc2V0RmlsdGVyQmFzZSA9IChfYSkgPT4ge1xuICAgIHZhciB7IHJlZiwgY2xhc3NOYW1lLCBzaXplID0gJ2V4dHJhLXNtYWxsJywgbGFiZWwsIHBsYWNlaG9sZGVyID0gREVGQVVMVF9QTEFDRUhPTERFUiwgZGF0YSwgYWxsTGFiZWwgPSBERUZBVUxUX0FMTF9MQUJFTCwgc2VhcmNoID0gdHJ1ZSwgc2VhcmNoUGxhY2Vob2xkZXIsIHNlYXJjaEVtcHR5ID0gREVGQVVMVF9FTVBUWSwgb25BcHBseSwgb25SZXNldCB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcInJlZlwiLCBcImNsYXNzTmFtZVwiLCBcInNpemVcIiwgXCJsYWJlbFwiLCBcInBsYWNlaG9sZGVyXCIsIFwiZGF0YVwiLCBcImFsbExhYmVsXCIsIFwic2VhcmNoXCIsIFwic2VhcmNoUGxhY2Vob2xkZXJcIiwgXCJzZWFyY2hFbXB0eVwiLCBcIm9uQXBwbHlcIiwgXCJvblJlc2V0XCJdKTtcbiAgICBjb25zdCBmaWx0ZXJSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgZ3JvdXBlZERhdGEgPSB1c2VNZW1vKCgpID0+IHRvR3JvdXBlZERhdGEoZGF0YSksIFtkYXRhXSk7XG4gICAgdXNlSW1wZXJhdGl2ZUhhbmRsZShyZWYsICgpID0+ICh7XG4gICAgICAgIGNsZWFyOiAoKSA9PiB7IHZhciBfYTsgcmV0dXJuIChfYSA9IGZpbHRlclJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuY2xlYXIoKTsgfSxcbiAgICAgICAgcmVzZXQ6ICgpID0+IHsgdmFyIF9hOyByZXR1cm4gKF9hID0gZmlsdGVyUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5yZXNldCgpOyB9LFxuICAgIH0pKTtcbiAgICByZXR1cm4gKF9qc3goRmlsdGVyLCBPYmplY3QuYXNzaWduKHt9LCByZXN0LCB7IHJlZjogZmlsdGVyUmVmLCBjbGFzc05hbWU6IGNsYXNzTmFtZSwgcGFuZWxDbGFzc05hbWU6IFBBTkVMX0NMUywgZ3JvdXBMYWJlbENsYXNzTmFtZTogR1JPVVBfTEFCRUxfQ0xTLCBzaXplOiBzaXplLCBsYWJlbDogbGFiZWwsIHBsYWNlaG9sZGVyOiBwbGFjZWhvbGRlciwgb3B0aW9uczogZ3JvdXBlZERhdGEsIGFsbExhYmVsOiBhbGxMYWJlbCwgc2VhcmNoOiBzZWFyY2gsIHNlYXJjaFBsYWNlaG9sZGVyOiBzZWFyY2hQbGFjZWhvbGRlciwgZW1wdHlDb250ZW50OiBzZWFyY2hFbXB0eSwgcmVuZGVyUm93OiByZW5kZXJSb3csIG9uQXBwbHk6IG9uQXBwbHksIG9uUmVzZXQ6IG9uUmVzZXQgfSkpKTtcbn07XG5leHBvcnQgY29uc3QgQXNzZXRGaWx0ZXIgPSBtZW1vKEFzc2V0RmlsdGVyQmFzZSk7IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
176
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL0ZpbHRlci9Bc3NldC9Bc3NldC5qcyIsImJ1c2luZXNzL0ZpbHRlci9zcmMvYnVzaW5lc3MvRmlsdGVyL0Fzc2V0L0Fzc2V0LnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfcmVhY3QiLCJfQ2hlY2tib3giLCJfRW1wdHkiLCJfRmlsdGVyIiwiX0ZsZXgiLCJfSWNvbnMiLCJfVHlwb2dyYXBoeSIsIl9pbnRlcmZhY2UiLCJfX3Jlc3QiLCJzIiwiZSIsInQiLCJwIiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaW5kZXhPZiIsImdldE93blByb3BlcnR5U3ltYm9scyIsImkiLCJsZW5ndGgiLCJwcm9wZXJ0eUlzRW51bWVyYWJsZSIsIldSQVBfQ0xTIiwiUEFORUxfQ0xTIiwiY29uY2F0IiwiR1JPVVBfTEFCRUxfQ0xTIiwiSUNPTl9DTFMiLCJJQ09OX1NJWkUiLCJHUk9VUF9MQUJFTFMiLCJmaWF0Iiwic3RhYmxlY29pbiIsImRpZ2l0YWxBc3NldCIsIkRFRkFVTFRfQUxMX0xBQkVMIiwiREVGQVVMVF9QTEFDRUhPTERFUiIsIkRFRkFVTFRfRU1QVFkiLCJfanN4IiwiRW1wdHkiLCJ2YXJpYW50IiwiaWNvbiIsIkljb25zIiwibmFtZSIsInNpemUiLCJjb2xvciIsInRpdGxlIiwiVHlwb2dyYXBoeUJvZHkiLCJzdHJvbmciLCJjaGlsZHJlbiIsImRlc2NyaXB0aW9uIiwic3R5bGUiLCJwYWRkaW5nIiwidG9PcHRpb24iLCJpdGVtIiwibGFiZWwiLCJhc3NldE5hbWUiLCJ2YWx1ZSIsImljb25VcmwiLCJhc3NldEljb25VcmwiLCJzZWFyY2hUZXh0IiwiYXNzZXREZXNjIiwiZmlsdGVyIiwiQm9vbGVhbiIsImpvaW4iLCJyZXNvbHZlR3JvdXAiLCJfYSIsImdyb3VwIiwiaXNGaWF0IiwidG9Hcm91cGVkRGF0YSIsIml0ZW1zIiwiQXNzZXRGaWx0ZXJHcm91cHMiLCJyZWR1Y2UiLCJkYXRhIiwib3B0aW9ucyIsIm1hcCIsInB1c2giLCJrZXkiLCJyZW5kZXJSb3ciLCJvcHRpb24iLCJjaGVja2VkIiwidGV4dCIsIl9qc3hzIiwiRmxleCIsImFsaWduIiwianVzdGlmeSIsImdhcCIsImNsYXNzTmFtZSIsInNyYyIsImFsdCIsIndpZHRoIiwiaGVpZ2h0IiwiQ2hlY2tib3giLCJyZWFkT25seSIsIkFzc2V0RmlsdGVyQmFzZSIsInJlZiIsIl9hJHNpemUiLCJfYSRwbGFjZWhvbGRlciIsInBsYWNlaG9sZGVyIiwiX2EkYWxsTGFiZWwiLCJhbGxMYWJlbCIsIl9hJHNlYXJjaCIsInNlYXJjaCIsInNlYXJjaFBsYWNlaG9sZGVyIiwiX2Ekc2VhcmNoRW1wdHkiLCJzZWFyY2hFbXB0eSIsIm9uQXBwbHkiLCJvblJlc2V0IiwicmVzdCIsImZpbHRlclJlZiIsInVzZVJlZiIsImdyb3VwZWREYXRhIiwidXNlTWVtbyIsInVzZUltcGVyYXRpdmVIYW5kbGUiLCJjbGVhciIsImN1cnJlbnQiLCJyZXNldCIsIkZpbHRlciIsImFzc2lnbiIsInBhbmVsQ2xhc3NOYW1lIiwiZ3JvdXBMYWJlbENsYXNzTmFtZSIsImVtcHR5Q29udGVudCIsIkFzc2V0RmlsdGVyIiwiZXhwb3J0cyIsIm1lbW8iXSwibWFwcGluZ3MiOiI7Ozs7OztBQVdBLElBQUFBLFdBQUEsR0FBQUMsT0FBQTtBQ1hBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLFNBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLE9BQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLEtBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLE1BQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLFdBQUEsR0FBQVAsT0FBQTtBQUVBLElBQUFRLFVBQUEsR0FBQVIsT0FBQTtBRFJBLElBQUlTLE1BQU0sR0FBSSxVQUFRLFNBQUtBLE1BQU0sSUFBSyxVQUFVQyxDQUFDLEVBQUVDLENBQUMsRUFBRTtFQUNsRCxJ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LFlBQVksRUFBRWhCLFdBQVc7SUFDekIzQixTQUFTLEVBQUVBLFNBQVM7SUFDcEI0QixPQUFPLEVBQUVBLE9BQU87SUFDaEJDLE9BQU8sRUFBRUE7RUFBTyxDQUFBLENBQUEsQ0FDaEI7QUFFTixDQUFDO0FBRU0sSUFBTWUsV0FBVyxHQUFBQyxPQUFBLENBQUFELFdBQUEsZ0JBQUcsSUFBQUUsV0FBSSxFQUFDOUIsZUFBZSxDQUFDIiwiZmlsZSI6ImJ1c2luZXNzL0ZpbHRlci9Bc3NldC9Bc3NldC5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX3Jlc3QgPSAodGhpcyAmJiB0aGlzLl9fcmVzdCkgfHwgZnVuY3Rpb24gKHMsIGUpIHtcbiAgICB2YXIgdCA9IHt9O1xuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxuICAgICAgICB0W3BdID0gc1twXTtcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSlcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcbiAgICAgICAgfVxuICAgIHJldHVybiB0O1xufTtcbmltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBtZW1vLCB1c2VJbXBlcmF0aXZlSGFuZGxlLCB1c2VNZW1vLCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBDaGVja2JveCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvQ2hlY2tib3gnO1xuaW1wb3J0IHsgRW1wdHkgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL0VtcHR5JztcbmltcG9ydCB7IEZpbHRlciB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMvRmlsdGVyJztcbmltcG9ydCB7IEZsZXggfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL0ZsZXgnO1xuaW1wb3J0IHsgSWNvbnMgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL0ljb25zJztcbmltcG9ydCB7IFR5cG9ncmFwaHlCb2R5IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9UeXBvZ3JhcGh5JztcbmltcG9ydCB7IEFzc2V0RmlsdGVyR3JvdXBzIH0gZnJvbSAnLi9pbnRlcmZhY2UnO1xuY29uc3QgV1JBUF9DTFMgPSAnb20tYXNzZXQtZmlsdGVyJztcbmNvbnN0IFBBTkVMX0NMUyA9IGAke1dSQVBfQ0xTfS1wYW5lbGA7XG5jb25zdCBHUk9VUF9MQUJFTF9DTFMgPSBgJHtXUkFQX0NMU31fX2dyb3VwLWxhYmVsYDtcbmNvbnN0IElDT05fQ0xTID0gYCR7V1JBUF9DTFN9LWljb25gO1xuY29uc3QgSUNPTl9TSVpFID0gMjQ7XG4vLyBQYW5lbCBoZWFkaW5nIHBlciBncm91cCwgcmVuZGVyZWQgaW4gYEFzc2V0RmlsdGVyR3JvdXBzYCBvcmRlci5cbmNvbnN0IEdST1VQX0xBQkVMUyA9IHtcbiAgICBmaWF0OiAnQ2FzaCcsXG4gICAgc3RhYmxlY29pbjogJ1N0YWJsZWNvaW5zJyxcbiAgICBkaWdpdGFsQXNzZXQ6ICdEaWdpdGFsIEFzc2V0cycsXG59O1xuY29uc3QgREVGQVVMVF9BTExfTEFCRUwgPSAnQWxsIGFzc2V0cyc7XG5jb25zdCBERUZBVUxUX1BMQUNFSE9MREVSID0gJ0Fzc2V0JztcbmNvbnN0IERFRkFVTFRfRU1QVFkgPSAoX2pzeChFbXB0eSwgeyB2YXJpYW50OiAnZmlsbCcsIGljb246IF9qc3goSWNvbnMsIHsgbmFtZTogJ3NlYXJjaCcsIHNpemU6IDE2LCBjb2xvcjogJ2N1cnJlbnRDb2xvcicgfSksIHRpdGxlOiBfanN4KFR5cG9ncmFwaHlCb2R5LCB7IHNpemU6ICdzbScsIHN0cm9uZzogdHJ1ZSwgY29sb3I6ICduZXV0cmFsLXNlY29uZGFyeScsIGNoaWxkcmVuOiBcIk5vIHJlc3VsdHNcIiB9KSwgZGVzY3JpcHRpb246IF9qc3goVHlwb2dyYXBoeUJvZHksIHsgc2l6ZTogJ3NtJywgY29sb3I6ICduZXV0cmFsLXNlY29uZGFyeScsIGNoaWxkcmVuOiBcIlRyeSBhIGRpZmZlcmVudCBuYW1lIG9yIGFkanVzdCB5b3VyIHNlYXJjaCBmaWx0ZXJzLlwiIH0pLCBzdHlsZTogeyBwYWRkaW5nOiAwIH0gfSkpO1xuY29uc3QgdG9PcHRpb24gPSAoaXRlbSkgPT4gKHtcbiAgICBsYWJlbDogaXRlbS5hc3NldE5hbWUsXG4gICAgdmFsdWU6IGl0ZW0uYXNzZXROYW1lLFxuICAgIGljb25Vcmw6IGl0ZW0uYXNzZXRJY29uVXJsLFxuICAgIHNlYXJjaFRleHQ6IFtpdGVtLmFzc2V0TmFtZSwgaXRlbS5hc3NldERlc2NdLmZpbHRlcihCb29sZWFuKS5qb2luKCcgJyksXG59KTtcbi8vIEV4cGxpY2l0IGBncm91cGAgd2luczsgb3RoZXJ3aXNlIHRoZSBsZWdhY3kgYGlzRmlhdGAgZmxhZyBtYXBzIHRvIGZpYXQgL1xuLy8gc3RhYmxlY29pbiAoc28gY2FsbGVycyB0aGF0IG5ldmVyIHNldCBgZ3JvdXBgIGtlZXAgdGhlIG9sZCB0d28tYnVja2V0IHNwbGl0KS5cbmNvbnN0IHJlc29sdmVHcm91cCA9IChpdGVtKSA9PiB7IHZhciBfYTsgcmV0dXJuIChfYSA9IGl0ZW0uZ3JvdXApICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IChpdGVtLmlzRmlhdCA/ICdmaWF0JyA6ICdzdGFibGVjb2luJyk7IH07XG4vLyBCdWNrZXQgcm93cyBpbnRvIFwiQ2FzaFwiIC8gXCJTdGFibGVjb2luc1wiIC8gXCJEaWdpdGFsIEFzc2V0c1wiLCBhbHdheXMgaW5cbi8vIGBBc3NldEZpbHRlckdyb3Vwc2Agb3JkZXIuIEVtcHR5IGdyb3VwcyBhcmUgZHJvcHBlZCBzbyBhIHNpbmdsZS1raW5kIGxpc3Rcbi8vIHNob3dzIG9uZSBoZWFkaW5nLlxuY29uc3QgdG9Hcm91cGVkRGF0YSA9IChpdGVtcykgPT4gQXNzZXRGaWx0ZXJHcm91cHMucmVkdWNlKChkYXRhLCBncm91cCkgPT4ge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBpdGVtcy5maWx0ZXIoKGl0ZW0pID0+IHJlc29sdmVHcm91cChpdGVtKSA9PT0gZ3JvdXApLm1hcCh0b09wdGlvbik7XG4gICAgaWYgKG9wdGlvbnMubGVuZ3RoKSB7XG4gICAgICAgIGRhdGEucHVzaCh7IGtleTogR1JPVVBfTEFCRUxTW2dyb3VwXSwgbGFiZWw6IEdST1VQX0xBQkVMU1tncm91cF0sIG9wdGlvbnMgfSk7XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xufSwgW10pO1xuY29uc3QgcmVuZGVyUm93ID0gKG9wdGlvbiwgY2hlY2tlZCkgPT4ge1xuICAgIGNvbnN0IHRleHQgPSB0eXBlb2Ygb3B0aW9uLmxhYmVsID09PSAnc3RyaW5nJyA/IG9wdGlvbi5sYWJlbCA6ICcnO1xuICAgIGNvbnN0IGljb25VcmwgPSBvcHRpb24uaWNvblVybDtcbiAgICByZXR1cm4gKF9qc3hzKEZsZXgsIHsgYWxpZ246ICdjZW50ZXInLCBqdXN0aWZ5OiAnc3BhY2UtYmV0d2VlbicsIGdhcDogMTIsIGNsYXNzTmFtZTogYCR7V1JBUF9DTFN9X19yb3dgLCBjaGlsZHJlbjogW19qc3hzKEZsZXgsIHsgYWxpZ246ICdjZW50ZXInLCBnYXA6IDgsIGNsYXNzTmFtZTogYCR7V1JBUF9DTFN9X19yb3ctbWFpbmAsIGNoaWxkcmVuOiBbaWNvblVybCAmJiAoX2pzeChcImltZ1wiLCB7IHNyYzogaWNvblVybCwgYWx0OiB0ZXh0LCB3aWR0aDogSUNPTl9TSVpFLCBoZWlnaHQ6IElDT05fU0laRSwgY2xhc3NOYW1lOiBJQ09OX0NMUyB9KSksIF9qc3goVHlwb2dyYXBoeUJvZHksIHsgc2l6ZTogJ3NtJywgc3Ryb25nOiB0cnVlLCBjbGFzc05hbWU6IGAke1dSQVBfQ0xTfV9fcm93LW5hbWVgLCBjaGlsZHJlbjogb3B0aW9uLmxhYmVsIH0pXSB9KSwgX2pzeChDaGVja2JveCwgeyBjaGVja2VkOiBjaGVja2VkLCByZWFkT25seTogdHJ1ZSwgY2xhc3NOYW1lOiAnb20tZmlsdGVyX19yb3ctY2hlY2snIH0pXSB9KSk7XG59O1xuY29uc3QgQXNzZXRGaWx0ZXJCYXNlID0gKF9hKSA9PiB7XG4gICAgdmFyIHsgcmVmLCBjbGFzc05hbWUsIHNpemUgPSAnZXh0cmEtc21hbGwnLCBsYWJlbCwgcGxhY2Vob2xkZXIgPSBERUZBVUxUX1BMQUNFSE9MREVSLCBkYXRhLCBhbGxMYWJlbCA9IERFRkFVTFRfQUxMX0xBQkVMLCBzZWFyY2ggPSB0cnVlLCBzZWFyY2hQbGFjZWhvbGRlciwgc2VhcmNoRW1wdHkgPSBERUZBVUxUX0VNUFRZLCBvbkFwcGx5LCBvblJlc2V0IH0gPSBfYSwgcmVzdCA9IF9fcmVzdChfYSwgW1wicmVmXCIsIFwiY2xhc3NOYW1lXCIsIFwic2l6ZVwiLCBcImxhYmVsXCIsIFwicGxhY2Vob2xkZXJcIiwgXCJkYXRhXCIsIFwiYWxsTGFiZWxcIiwgXCJzZWFyY2hcIiwgXCJzZWFyY2hQbGFjZWhvbGRlclwiLCBcInNlYXJjaEVtcHR5XCIsIFwib25BcHBseVwiLCBcIm9uUmVzZXRcIl0pO1xuICAgIGNvbnN0IGZpbHRlclJlZiA9IHVzZVJlZihudWxsKTtcbiAgICBjb25zdCBncm91cGVkRGF0YSA9IHVzZU1lbW8oKCkgPT4gdG9Hcm91cGVkRGF0YShkYXRhKSwgW2RhdGFdKTtcbiAgICB1c2VJbXBlcmF0aXZlSGFuZGxlKHJlZiwgKCkgPT4gKHtcbiAgICAgICAgY2xlYXI6ICgpID0+IHsgdmFyIF9hOyByZXR1cm4gKF9hID0gZmlsdGVyUmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5jbGVhcigpOyB9LFxuICAgICAgICByZXNldDogKCkgPT4geyB2YXIgX2E7IHJldHVybiAoX2EgPSBmaWx0ZXJSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnJlc2V0KCk7IH0sXG4gICAgfSkpO1xuICAgIHJldHVybiAoX2pzeChGaWx0ZXIsIE9iamVjdC5hc3NpZ24oe30sIHJlc3QsIHsgcmVmOiBmaWx0ZXJSZWYsIGNsYXNzTmFtZTogY2xhc3NOYW1lLCBwYW5lbENsYXNzTmFtZTogUEFORUxfQ0xTLCBncm91cExhYmVsQ2xhc3NOYW1lOiBHUk9VUF9MQUJFTF9DTFMsIHNpemU6IHNpemUsIGxhYmVsOiBsYWJlbCwgcGxhY2Vob2xkZXI6IHBsYWNlaG9sZGVyLCBvcHRpb25zOiBncm91cGVkRGF0YSwgYWxsTGFiZWw6IGFsbExhYmVsLCBzZWFyY2g6IHNlYXJjaCwgc2VhcmNoUGxhY2Vob2xkZXI6IHNlYXJjaFBsYWNlaG9sZGVyLCBlbXB0eUNvbnRlbnQ6IHNlYXJjaEVtcHR5LCByZW5kZXJSb3c6IHJlbmRlclJvdywgb25BcHBseTogb25BcHBseSwgb25SZXNldDogb25SZXNldCB9KSkpO1xufTtcbmV4cG9ydCBjb25zdCBBc3NldEZpbHRlciA9IG1lbW8oQXNzZXRGaWx0ZXJCYXNlKTsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
@@ -1,5 +1,12 @@
1
1
  import type { ReactNode, RefObject } from 'react';
2
2
  import type { SelectProps, SelectSize } from "../../../components/Select";
3
+ /**
4
+ * Group bucket an asset row falls under — drives the panel heading:
5
+ * `'fiat'` → "Cash", `'stablecoin'` → "Stablecoins",
6
+ * `'digitalAsset'` → "Digital Assets".
7
+ */
8
+ export declare const AssetFilterGroups: readonly ["fiat", "stablecoin", "digitalAsset"];
9
+ export type AssetFilterGroup = (typeof AssetFilterGroups)[number];
3
10
  /**
4
11
  * A single asset as returned by 1money's asset list endpoint
5
12
  * (`/assets` → `data[i]`). The filter reads only the display fields below;
@@ -16,8 +23,14 @@ export interface AssetFilterItem {
16
23
  /** Public URL of the round asset icon (rendered with `<img>`). */
17
24
  assetIconUrl?: string;
18
25
  /**
19
- * Whether the asset is a fiat currency. Drives the group heading: fiat rows
20
- * bucket under "Cash", the rest under "Stablecoins".
26
+ * Explicit group bucket `'fiat'` "Cash", `'stablecoin'` "Stablecoins",
27
+ * `'digitalAsset'` "Digital Assets". Preferred over `isFiat`; this is the
28
+ * only way to surface the "Digital Assets" heading.
29
+ */
30
+ group?: AssetFilterGroup;
31
+ /**
32
+ * Legacy fiat flag, used only when `group` is omitted: `true` buckets the row
33
+ * under "Cash", otherwise under "Stablecoins". Prefer `group` for new code.
21
34
  */
22
35
  isFiat?: boolean;
23
36
  }
@@ -3,4 +3,11 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVzaW5lc3MvRmlsdGVyL0Fzc2V0L2ludGVyZmFjZS5qcyIsIm5hbWVzIjpbXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyIsInNvdXJjZXMiOlsiYnVzaW5lc3MvRmlsdGVyL0Fzc2V0L2ludGVyZmFjZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge307Il0sIm1hcHBpbmdzIjoiIiwiaWdub3JlTGlzdCI6W119
6
+ exports.AssetFilterGroups = void 0;
7
+ /**
8
+ * Group bucket an asset row falls under — drives the panel heading:
9
+ * `'fiat'` → "Cash", `'stablecoin'` → "Stablecoins",
10
+ * `'digitalAsset'` → "Digital Assets".
11
+ */
12
+ var AssetFilterGroups = exports.AssetFilterGroups = ['fiat', 'stablecoin', 'digitalAsset'];
13
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJ1c2luZXNzL0ZpbHRlci9zcmMvYnVzaW5lc3MvRmlsdGVyL0Fzc2V0L2ludGVyZmFjZS50cyIsImJ1c2luZXNzL0ZpbHRlci9Bc3NldC9pbnRlcmZhY2UuanMiXSwibmFtZXMiOlsiQXNzZXRGaWx0ZXJHcm91cHMiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFHQTtBQ0ZBO0FBQ0E7QUFDQTtBQUNBO0FESU8sSUFBTUEsaUJBQWlCLEdBQUFDLE9BQUEsQ0FBQUQsaUJBQUEsR0FBRyxDQUFDLE1BQU0sRUFBRSxZQUFZLEVBQUUsY0FBYyxDQUFVIiwiZmlsZSI6ImJ1c2luZXNzL0ZpbHRlci9Bc3NldC9pbnRlcmZhY2UuanMiLCJzb3VyY2VzQ29udGVudCI6W251bGwsIi8qKlxuICogR3JvdXAgYnVja2V0IGFuIGFzc2V0IHJvdyBmYWxscyB1bmRlciDigJQgZHJpdmVzIHRoZSBwYW5lbCBoZWFkaW5nOlxuICogYCdmaWF0J2Ag4oaSIFwiQ2FzaFwiLCBgJ3N0YWJsZWNvaW4nYCDihpIgXCJTdGFibGVjb2luc1wiLFxuICogYCdkaWdpdGFsQXNzZXQnYCDihpIgXCJEaWdpdGFsIEFzc2V0c1wiLlxuICovXG5leHBvcnQgY29uc3QgQXNzZXRGaWx0ZXJHcm91cHMgPSBbJ2ZpYXQnLCAnc3RhYmxlY29pbicsICdkaWdpdGFsQXNzZXQnXTsiXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9