@ledgerhq/react-ui 0.9.2-next.0 → 0.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,56 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ __markAsModule(target);
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __reExport = (target, module2, desc) => {
14
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
15
+ for (let key of __getOwnPropNames(module2))
16
+ if (!__hasOwnProp.call(target, key) && key !== "default")
17
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
18
+ }
19
+ return target;
20
+ };
21
+ var __toModule = (module2) => {
22
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
23
+ };
24
+ __export(exports, {
25
+ default: () => FlagIcon_default,
26
+ iconNames: () => iconNames,
27
+ sizes: () => sizes
28
+ });
29
+ var flags = __toModule(require("@ledgerhq/icons-ui/react/_Flags"));
30
+ var import_react = __toModule(require("react"));
31
+ const sizes = {
32
+ XXS: 16,
33
+ XS: 24,
34
+ S: 32,
35
+ M: 40,
36
+ L: 48,
37
+ XL: 56
38
+ };
39
+ const iconNames = Array.from(Object.keys(flags).reduce((set, rawKey) => {
40
+ const key = rawKey.replace(/(.+)(Regular|Light|UltraLight|Thin|Medium)+$/g, "$1").replace(/(.+)(Ultra)+$/g, "$1");
41
+ if (!set.has(key))
42
+ set.add(key);
43
+ return set;
44
+ }, new Set()));
45
+ const FlagIcon = ({ name, size = "S" }) => {
46
+ const maybeIconName = `${name}`;
47
+ if (maybeIconName in flags) {
48
+ const Component = flags[maybeIconName];
49
+ return /* @__PURE__ */ import_react.default.createElement(Component, {
50
+ size: sizes[size]
51
+ });
52
+ }
53
+ return null;
54
+ };
55
+ var FlagIcon_default = FlagIcon;
56
+ //# sourceMappingURL=FlagIcon.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/asorted/Icon/FlagIcon.tsx"],
4
+ "sourcesContent": ["import * as flags from \"@ledgerhq/icons-ui/react/_Flags\";\nimport React from \"react\";\n\nexport const sizes = {\n XXS: 16,\n XS: 24,\n S: 32,\n M: 40,\n L: 48,\n XL: 56,\n};\n\nexport type FlagsSizes = keyof typeof sizes;\n\nexport type Props = {\n name: string;\n size?: FlagsSizes;\n};\n\nexport const iconNames = Array.from(\n Object.keys(flags).reduce((set, rawKey) => {\n const key = rawKey\n .replace(/(.+)(Regular|Light|UltraLight|Thin|Medium)+$/g, \"$1\")\n .replace(/(.+)(Ultra)+$/g, \"$1\");\n if (!set.has(key)) set.add(key);\n return set;\n }, new Set<string>()),\n);\n\nconst FlagIcon = ({ name, size = \"S\" }: Props): JSX.Element | null => {\n const maybeIconName = `${name}`;\n if (maybeIconName in flags) {\n // @ts-expect-error FIXME I don't know how to make you happy ts\n const Component = flags[maybeIconName];\n return <Component size={sizes[size]} />;\n }\n return null;\n};\n\nexport default FlagIcon;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YAAuB;AACvB,mBAAkB;AAEX,MAAM,QAAQ;AAAA,EACnB,KAAK;AAAA,EACL,IAAI;AAAA,EACJ,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,IAAI;AAAA;AAUC,MAAM,YAAY,MAAM,KAC7B,OAAO,KAAK,OAAO,OAAO,CAAC,KAAK,WAAW;AACzC,QAAM,MAAM,OACT,QAAQ,iDAAiD,MACzD,QAAQ,kBAAkB;AAC7B,MAAI,CAAC,IAAI,IAAI;AAAM,QAAI,IAAI;AAC3B,SAAO;AAAA,GACN,IAAI;AAGT,MAAM,WAAW,CAAC,EAAE,MAAM,OAAO,UAAqC;AACpE,QAAM,gBAAgB,GAAG;AACzB,MAAI,iBAAiB,OAAO;AAE1B,UAAM,YAAY,MAAM;AACxB,WAAO,mDAAC,WAAD;AAAA,MAAW,MAAM,MAAM;AAAA;AAAA;AAEhC,SAAO;AAAA;AAGT,IAAO,mBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,124 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ __markAsModule(target);
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __reExport = (target, module2, desc) => {
14
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
15
+ for (let key of __getOwnPropNames(module2))
16
+ if (!__hasOwnProp.call(target, key) && key !== "default")
17
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
18
+ }
19
+ return target;
20
+ };
21
+ var __toModule = (module2) => {
22
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
23
+ };
24
+ __export(exports, {
25
+ List: () => List,
26
+ SingleIcon: () => SingleIcon,
27
+ default: () => Flags_stories_default
28
+ });
29
+ var import_react = __toModule(require("react"));
30
+ var import_styled_components = __toModule(require("styled-components"));
31
+ var import_FlagIcon = __toModule(require("./FlagIcon"));
32
+ var import__ = __toModule(require("../../.."));
33
+ const ScrollArea = (0, import_styled_components.default)(import__.Grid)`
34
+ flex: 1;
35
+ height: auto;
36
+ ${(p) => p.theme.overflow.y};
37
+ `;
38
+ const Container = (0, import_styled_components.default)(import__.Flex).attrs({
39
+ flex: 1,
40
+ flexDirection: "column",
41
+ p: 4
42
+ })`
43
+ overflow: hidden;
44
+ height: calc(100vh - 4em);
45
+ `;
46
+ const IconContainer = (0, import_styled_components.default)(import__.Flex).attrs({
47
+ flexDirection: "column",
48
+ justifyContent: "flex-end",
49
+ alignItems: "center",
50
+ p: 4
51
+ })`
52
+ ${(p) => p.active ? `background-color: ${p.theme.colors.neutral.c20};` : ``}
53
+ border-radius: 4px;
54
+ height: 100px;
55
+ `;
56
+ const Bold = import_styled_components.default.b`
57
+ color: ${(p) => p.theme.colors.primary.c80};
58
+ `;
59
+ const Story = {
60
+ title: "Asorted/Icons/Flags",
61
+ argTypes: {
62
+ size: {
63
+ type: "enum",
64
+ description: "Icon size",
65
+ defaultValue: "L",
66
+ control: {
67
+ options: Object.keys(import_FlagIcon.sizes)
68
+ }
69
+ },
70
+ name: {
71
+ type: "enum",
72
+ defaultValue: "France",
73
+ description: "[Only for single icon], Icon name",
74
+ control: {
75
+ options: import_FlagIcon.iconNames,
76
+ control: {
77
+ type: "select"
78
+ }
79
+ }
80
+ }
81
+ }
82
+ };
83
+ var Flags_stories_default = Story;
84
+ const ListTemplate = (args) => {
85
+ const [search, setSearch] = (0, import_react.useState)("");
86
+ const s = search.toLowerCase();
87
+ const regexp = new RegExp(s, "i");
88
+ return /* @__PURE__ */ import_react.default.createElement(Container, null, /* @__PURE__ */ import_react.default.createElement(import__.SearchInput, {
89
+ value: search,
90
+ onChange: setSearch
91
+ }), /* @__PURE__ */ import_react.default.createElement(ScrollArea, {
92
+ gridTemplateColumns: "repeat(auto-fill, 100px);",
93
+ gridTemplateRows: "repeat(auto-fill, 100px);",
94
+ gridGap: 4,
95
+ mt: 4
96
+ }, import_FlagIcon.iconNames.sort((a, b) => {
97
+ return s ? b.toLowerCase().indexOf(s) - a.toLowerCase().indexOf(s) : a.localeCompare(b);
98
+ }).map((name) => {
99
+ const match = name.match(regexp);
100
+ const active = s && match;
101
+ const index = match?.index ?? 0;
102
+ return /* @__PURE__ */ import_react.default.createElement(IconContainer, {
103
+ active: !!active
104
+ }, /* @__PURE__ */ import_react.default.createElement(import__.Flex, {
105
+ flex: 1,
106
+ justifyContent: "center",
107
+ alignItems: "center"
108
+ }, /* @__PURE__ */ import_react.default.createElement(import_FlagIcon.default, {
109
+ key: name,
110
+ name,
111
+ size: args.size
112
+ })), /* @__PURE__ */ import_react.default.createElement(import__.Text, {
113
+ variant: "extraSmall"
114
+ }, active ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, name.substr(0, index), /* @__PURE__ */ import_react.default.createElement(Bold, null, name.substr(index, s.length)), name.substr(index + s.length)) : name));
115
+ })));
116
+ };
117
+ const FlagTemplate = (args) => {
118
+ return /* @__PURE__ */ import_react.default.createElement(import_FlagIcon.default, {
119
+ ...args
120
+ });
121
+ };
122
+ const List = ListTemplate.bind({});
123
+ const SingleIcon = FlagTemplate.bind({});
124
+ //# sourceMappingURL=Flags.stories.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/asorted/Icon/Flags.stories.tsx"],
4
+ "sourcesContent": ["import React, { useState } from \"react\";\nimport styled from \"styled-components\";\nimport FlagIcon, { iconNames, Props as FlagIconProps, sizes as flagSizes } from \"./FlagIcon\";\nimport { Text, SearchInput, Flex, Grid } from \"../../..\";\n\nconst ScrollArea = styled(Grid)`\n flex: 1;\n height: auto;\n ${(p) => p.theme.overflow.y};\n`;\n\nconst Container = styled(Flex).attrs({\n flex: 1,\n flexDirection: \"column\",\n p: 4,\n})`\n overflow: hidden;\n height: calc(100vh - 4em);\n`;\n\nconst IconContainer = styled(Flex).attrs<{ active?: boolean }>({\n flexDirection: \"column\",\n justifyContent: \"flex-end\",\n alignItems: \"center\",\n p: 4,\n})<{ active?: boolean }>`\n ${(p) => (p.active ? `background-color: ${p.theme.colors.neutral.c20};` : ``)}\n border-radius: 4px;\n height: 100px;\n`;\n\nconst Bold = styled.b`\n color: ${(p) => p.theme.colors.primary.c80};\n`;\n\nconst Story = {\n title: \"Asorted/Icons/Flags\",\n argTypes: {\n size: {\n type: \"enum\",\n description: \"Icon size\",\n defaultValue: \"L\",\n control: {\n options: Object.keys(flagSizes),\n },\n },\n name: {\n type: \"enum\",\n defaultValue: \"France\",\n description: \"[Only for single icon], Icon name\",\n control: {\n options: iconNames,\n control: {\n type: \"select\",\n },\n },\n },\n },\n};\nexport default Story;\n\nconst ListTemplate = (args: FlagIconProps) => {\n const [search, setSearch] = useState(\"\");\n const s = search.toLowerCase();\n const regexp = new RegExp(s, \"i\");\n\n return (\n <Container>\n <SearchInput value={search} onChange={setSearch} />\n <ScrollArea\n gridTemplateColumns=\"repeat(auto-fill, 100px);\"\n gridTemplateRows=\"repeat(auto-fill, 100px);\"\n gridGap={4}\n mt={4}\n >\n {iconNames\n .sort((a: string, b: string) => {\n return s ? b.toLowerCase().indexOf(s) - a.toLowerCase().indexOf(s) : a.localeCompare(b);\n })\n .map((name) => {\n const match = name.match(regexp);\n const active = s && match;\n const index = match?.index ?? 0;\n return (\n <IconContainer active={!!active}>\n <Flex flex={1} justifyContent=\"center\" alignItems=\"center\">\n <FlagIcon key={name} name={name} size={args.size} />\n </Flex>\n <Text variant=\"extraSmall\">\n {active ? (\n <>\n {name.substr(0, index)}\n <Bold>{name.substr(index, s.length)}</Bold>\n {name.substr(index + s.length)}\n </>\n ) : (\n name\n )}\n </Text>\n </IconContainer>\n );\n })}\n </ScrollArea>\n </Container>\n );\n};\nconst FlagTemplate = (args: FlagIconProps) => {\n return <FlagIcon {...args} />;\n};\n\nexport const List = ListTemplate.bind({});\nexport const SingleIcon = FlagTemplate.bind({});\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAgC;AAChC,+BAAmB;AACnB,sBAAgF;AAChF,eAA8C;AAE9C,MAAM,aAAa,sCAAO;AAAA;AAAA;AAAA,IAGtB,CAAC,MAAM,EAAE,MAAM,SAAS;AAAA;AAG5B,MAAM,YAAY,sCAAO,eAAM,MAAM;AAAA,EACnC,MAAM;AAAA,EACN,eAAe;AAAA,EACf,GAAG;AAAA;AAAA;AAAA;AAAA;AAML,MAAM,gBAAgB,sCAAO,eAAM,MAA4B;AAAA,EAC7D,eAAe;AAAA,EACf,gBAAgB;AAAA,EAChB,YAAY;AAAA,EACZ,GAAG;AAAA;AAAA,IAED,CAAC,MAAO,EAAE,SAAS,qBAAqB,EAAE,MAAM,OAAO,QAAQ,SAAS;AAAA;AAAA;AAAA;AAK5E,MAAM,OAAO,iCAAO;AAAA,WACT,CAAC,MAAM,EAAE,MAAM,OAAO,QAAQ;AAAA;AAGzC,MAAM,QAAQ;AAAA,EACZ,OAAO;AAAA,EACP,UAAU;AAAA,IACR,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,aAAa;AAAA,MACb,cAAc;AAAA,MACd,SAAS;AAAA,QACP,SAAS,OAAO,KAAK;AAAA;AAAA;AAAA,IAGzB,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,cAAc;AAAA,MACd,aAAa;AAAA,MACb,SAAS;AAAA,QACP,SAAS;AAAA,QACT,SAAS;AAAA,UACP,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAMhB,IAAO,wBAAQ;AAEf,MAAM,eAAe,CAAC,SAAwB;AAC5C,QAAM,CAAC,QAAQ,aAAa,2BAAS;AACrC,QAAM,IAAI,OAAO;AACjB,QAAM,SAAS,IAAI,OAAO,GAAG;AAE7B,SACE,mDAAC,WAAD,MACE,mDAAC,sBAAD;AAAA,IAAa,OAAO;AAAA,IAAQ,UAAU;AAAA,MACtC,mDAAC,YAAD;AAAA,IACE,qBAAoB;AAAA,IACpB,kBAAiB;AAAA,IACjB,SAAS;AAAA,IACT,IAAI;AAAA,KAEH,0BACE,KAAK,CAAC,GAAW,MAAc;AAC9B,WAAO,IAAI,EAAE,cAAc,QAAQ,KAAK,EAAE,cAAc,QAAQ,KAAK,EAAE,cAAc;AAAA,KAEtF,IAAI,CAAC,SAAS;AACb,UAAM,QAAQ,KAAK,MAAM;AACzB,UAAM,SAAS,KAAK;AACpB,UAAM,QAAQ,OAAO,SAAS;AAC9B,WACE,mDAAC,eAAD;AAAA,MAAe,QAAQ,CAAC,CAAC;AAAA,OACvB,mDAAC,eAAD;AAAA,MAAM,MAAM;AAAA,MAAG,gBAAe;AAAA,MAAS,YAAW;AAAA,OAChD,mDAAC,yBAAD;AAAA,MAAU,KAAK;AAAA,MAAM;AAAA,MAAY,MAAM,KAAK;AAAA,SAE9C,mDAAC,eAAD;AAAA,MAAM,SAAQ;AAAA,OACX,SACC,wFACG,KAAK,OAAO,GAAG,QAChB,mDAAC,MAAD,MAAO,KAAK,OAAO,OAAO,EAAE,UAC3B,KAAK,OAAO,QAAQ,EAAE,WAGzB;AAAA;AAAA;AAUpB,MAAM,eAAe,CAAC,SAAwB;AAC5C,SAAO,mDAAC,yBAAD;AAAA,OAAc;AAAA;AAAA;AAGhB,MAAM,OAAO,aAAa,KAAK;AAC/B,MAAM,aAAa,aAAa,KAAK;",
6
+ "names": []
7
+ }
@@ -0,0 +1,56 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ __markAsModule(target);
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __reExport = (target, module2, desc) => {
14
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
15
+ for (let key of __getOwnPropNames(module2))
16
+ if (!__hasOwnProp.call(target, key) && key !== "default")
17
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
18
+ }
19
+ return target;
20
+ };
21
+ var __toModule = (module2) => {
22
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
23
+ };
24
+ __export(exports, {
25
+ default: () => PaymentIcon_default,
26
+ iconNames: () => iconNames,
27
+ sizes: () => sizes
28
+ });
29
+ var paymentProviders = __toModule(require("@ledgerhq/icons-ui/react/_Payment"));
30
+ var import_react = __toModule(require("react"));
31
+ const sizes = {
32
+ XXS: 16,
33
+ XS: 24,
34
+ S: 32,
35
+ M: 40,
36
+ L: 48,
37
+ XL: 56
38
+ };
39
+ const iconNames = Array.from(Object.keys(paymentProviders).reduce((set, rawKey) => {
40
+ const key = rawKey.replace(/(.+)(Regular|Light|UltraLight|Thin|Medium)+$/g, "$1").replace(/(.+)(Ultra)+$/g, "$1");
41
+ if (!set.has(key))
42
+ set.add(key);
43
+ return set;
44
+ }, new Set()));
45
+ const PaymentIcon = ({ name, size = "S" }) => {
46
+ const maybeIconName = `${name}`;
47
+ if (maybeIconName in paymentProviders) {
48
+ const Component = paymentProviders[maybeIconName];
49
+ return /* @__PURE__ */ import_react.default.createElement(Component, {
50
+ size: sizes[size]
51
+ });
52
+ }
53
+ return null;
54
+ };
55
+ var PaymentIcon_default = PaymentIcon;
56
+ //# sourceMappingURL=PaymentIcon.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/asorted/Icon/PaymentIcon.tsx"],
4
+ "sourcesContent": ["import * as paymentProviders from \"@ledgerhq/icons-ui/react/_Payment\";\nimport React from \"react\";\n\nexport const sizes = {\n XXS: 16,\n XS: 24,\n S: 32,\n M: 40,\n L: 48,\n XL: 56,\n};\n\nexport type PaymentIconSizes = keyof typeof sizes;\n\nexport type Props = {\n name: string;\n size?: PaymentIconSizes;\n};\n\nexport const iconNames = Array.from(\n Object.keys(paymentProviders).reduce((set, rawKey) => {\n const key = rawKey\n .replace(/(.+)(Regular|Light|UltraLight|Thin|Medium)+$/g, \"$1\")\n .replace(/(.+)(Ultra)+$/g, \"$1\");\n if (!set.has(key)) set.add(key);\n return set;\n }, new Set<string>()),\n);\n\nconst PaymentIcon = ({ name, size = \"S\" }: Props): JSX.Element | null => {\n const maybeIconName = `${name}`;\n if (maybeIconName in paymentProviders) {\n // @ts-expect-error FIXME I don't know how to make you happy ts\n const Component = paymentProviders[maybeIconName];\n return <Component size={sizes[size]} />;\n }\n return null;\n};\n\nexport default PaymentIcon;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAkC;AAClC,mBAAkB;AAEX,MAAM,QAAQ;AAAA,EACnB,KAAK;AAAA,EACL,IAAI;AAAA,EACJ,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,IAAI;AAAA;AAUC,MAAM,YAAY,MAAM,KAC7B,OAAO,KAAK,kBAAkB,OAAO,CAAC,KAAK,WAAW;AACpD,QAAM,MAAM,OACT,QAAQ,iDAAiD,MACzD,QAAQ,kBAAkB;AAC7B,MAAI,CAAC,IAAI,IAAI;AAAM,QAAI,IAAI;AAC3B,SAAO;AAAA,GACN,IAAI;AAGT,MAAM,cAAc,CAAC,EAAE,MAAM,OAAO,UAAqC;AACvE,QAAM,gBAAgB,GAAG;AACzB,MAAI,iBAAiB,kBAAkB;AAErC,UAAM,YAAY,iBAAiB;AACnC,WAAO,mDAAC,WAAD;AAAA,MAAW,MAAM,MAAM;AAAA;AAAA;AAEhC,SAAO;AAAA;AAGT,IAAO,sBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,124 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ __markAsModule(target);
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __reExport = (target, module2, desc) => {
14
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
15
+ for (let key of __getOwnPropNames(module2))
16
+ if (!__hasOwnProp.call(target, key) && key !== "default")
17
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
18
+ }
19
+ return target;
20
+ };
21
+ var __toModule = (module2) => {
22
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
23
+ };
24
+ __export(exports, {
25
+ List: () => List,
26
+ SingleIcon: () => SingleIcon,
27
+ default: () => PaymentIcon_stories_default
28
+ });
29
+ var import_react = __toModule(require("react"));
30
+ var import_styled_components = __toModule(require("styled-components"));
31
+ var import_PaymentIcon = __toModule(require("./PaymentIcon"));
32
+ var import__ = __toModule(require("../../.."));
33
+ const ScrollArea = (0, import_styled_components.default)(import__.Grid)`
34
+ flex: 1;
35
+ height: auto;
36
+ ${(p) => p.theme.overflow.y};
37
+ `;
38
+ const Container = (0, import_styled_components.default)(import__.Flex).attrs({
39
+ flex: 1,
40
+ flexDirection: "column",
41
+ p: 4
42
+ })`
43
+ overflow: hidden;
44
+ height: calc(100vh - 4em);
45
+ `;
46
+ const IconContainer = (0, import_styled_components.default)(import__.Flex).attrs({
47
+ flexDirection: "column",
48
+ justifyContent: "flex-end",
49
+ alignItems: "center",
50
+ p: 4
51
+ })`
52
+ ${(p) => p.active ? `background-color: ${p.theme.colors.neutral.c20};` : ``}
53
+ border-radius: 4px;
54
+ height: 100px;
55
+ `;
56
+ const Bold = import_styled_components.default.b`
57
+ color: ${(p) => p.theme.colors.primary.c80};
58
+ `;
59
+ const Story = {
60
+ title: "Asorted/Icons/Payment",
61
+ argTypes: {
62
+ size: {
63
+ type: "enum",
64
+ description: "Icon size",
65
+ defaultValue: "L",
66
+ control: {
67
+ options: Object.keys(import_PaymentIcon.sizes)
68
+ }
69
+ },
70
+ name: {
71
+ type: "enum",
72
+ defaultValue: "France",
73
+ description: "[Only for single icon], Icon name",
74
+ control: {
75
+ options: import_PaymentIcon.iconNames,
76
+ control: {
77
+ type: "select"
78
+ }
79
+ }
80
+ }
81
+ }
82
+ };
83
+ var PaymentIcon_stories_default = Story;
84
+ const ListTemplate = (args) => {
85
+ const [search, setSearch] = (0, import_react.useState)("");
86
+ const s = search.toLowerCase();
87
+ const regexp = new RegExp(s, "i");
88
+ return /* @__PURE__ */ import_react.default.createElement(Container, null, /* @__PURE__ */ import_react.default.createElement(import__.SearchInput, {
89
+ value: search,
90
+ onChange: setSearch
91
+ }), /* @__PURE__ */ import_react.default.createElement(ScrollArea, {
92
+ gridTemplateColumns: "repeat(auto-fill, 100px);",
93
+ gridTemplateRows: "repeat(auto-fill, 100px);",
94
+ gridGap: 4,
95
+ mt: 4
96
+ }, import_PaymentIcon.iconNames.sort((a, b) => {
97
+ return s ? b.toLowerCase().indexOf(s) - a.toLowerCase().indexOf(s) : a.localeCompare(b);
98
+ }).map((name) => {
99
+ const match = name.match(regexp);
100
+ const active = s && match;
101
+ const index = match?.index ?? 0;
102
+ return /* @__PURE__ */ import_react.default.createElement(IconContainer, {
103
+ active: !!active
104
+ }, /* @__PURE__ */ import_react.default.createElement(import__.Flex, {
105
+ flex: 1,
106
+ justifyContent: "center",
107
+ alignItems: "center"
108
+ }, /* @__PURE__ */ import_react.default.createElement(import_PaymentIcon.default, {
109
+ key: name,
110
+ name,
111
+ size: args.size
112
+ })), /* @__PURE__ */ import_react.default.createElement(import__.Text, {
113
+ variant: "extraSmall"
114
+ }, active ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, name.substr(0, index), /* @__PURE__ */ import_react.default.createElement(Bold, null, name.substr(index, s.length)), name.substr(index + s.length)) : name));
115
+ })));
116
+ };
117
+ const FlagTemplate = (args) => {
118
+ return /* @__PURE__ */ import_react.default.createElement(import_PaymentIcon.default, {
119
+ ...args
120
+ });
121
+ };
122
+ const List = ListTemplate.bind({});
123
+ const SingleIcon = FlagTemplate.bind({});
124
+ //# sourceMappingURL=PaymentIcon.stories.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/asorted/Icon/PaymentIcon.stories.tsx"],
4
+ "sourcesContent": ["import React, { useState } from \"react\";\nimport styled from \"styled-components\";\nimport PaymentIcon, {\n iconNames,\n Props as PaymentIconProps,\n sizes as flagSizes,\n} from \"./PaymentIcon\";\nimport { Text, SearchInput, Flex, Grid } from \"../../..\";\n\nconst ScrollArea = styled(Grid)`\n flex: 1;\n height: auto;\n ${(p) => p.theme.overflow.y};\n`;\n\nconst Container = styled(Flex).attrs({\n flex: 1,\n flexDirection: \"column\",\n p: 4,\n})`\n overflow: hidden;\n height: calc(100vh - 4em);\n`;\n\nconst IconContainer = styled(Flex).attrs<{ active?: boolean }>({\n flexDirection: \"column\",\n justifyContent: \"flex-end\",\n alignItems: \"center\",\n p: 4,\n})<{ active?: boolean }>`\n ${(p) => (p.active ? `background-color: ${p.theme.colors.neutral.c20};` : ``)}\n border-radius: 4px;\n height: 100px;\n`;\n\nconst Bold = styled.b`\n color: ${(p) => p.theme.colors.primary.c80};\n`;\n\nconst Story = {\n title: \"Asorted/Icons/Payment\",\n argTypes: {\n size: {\n type: \"enum\",\n description: \"Icon size\",\n defaultValue: \"L\",\n control: {\n options: Object.keys(flagSizes),\n },\n },\n name: {\n type: \"enum\",\n defaultValue: \"France\",\n description: \"[Only for single icon], Icon name\",\n control: {\n options: iconNames,\n control: {\n type: \"select\",\n },\n },\n },\n },\n};\nexport default Story;\n\nconst ListTemplate = (args: PaymentIconProps) => {\n const [search, setSearch] = useState(\"\");\n const s = search.toLowerCase();\n const regexp = new RegExp(s, \"i\");\n\n return (\n <Container>\n <SearchInput value={search} onChange={setSearch} />\n <ScrollArea\n gridTemplateColumns=\"repeat(auto-fill, 100px);\"\n gridTemplateRows=\"repeat(auto-fill, 100px);\"\n gridGap={4}\n mt={4}\n >\n {iconNames\n .sort((a: string, b: string) => {\n return s ? b.toLowerCase().indexOf(s) - a.toLowerCase().indexOf(s) : a.localeCompare(b);\n })\n .map((name) => {\n const match = name.match(regexp);\n const active = s && match;\n const index = match?.index ?? 0;\n return (\n <IconContainer active={!!active}>\n <Flex flex={1} justifyContent=\"center\" alignItems=\"center\">\n <PaymentIcon key={name} name={name} size={args.size} />\n </Flex>\n <Text variant=\"extraSmall\">\n {active ? (\n <>\n {name.substr(0, index)}\n <Bold>{name.substr(index, s.length)}</Bold>\n {name.substr(index + s.length)}\n </>\n ) : (\n name\n )}\n </Text>\n </IconContainer>\n );\n })}\n </ScrollArea>\n </Container>\n );\n};\nconst FlagTemplate = (args: PaymentIconProps) => {\n return <PaymentIcon {...args} />;\n};\n\nexport const List = ListTemplate.bind({});\nexport const SingleIcon = FlagTemplate.bind({});\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAgC;AAChC,+BAAmB;AACnB,yBAIO;AACP,eAA8C;AAE9C,MAAM,aAAa,sCAAO;AAAA;AAAA;AAAA,IAGtB,CAAC,MAAM,EAAE,MAAM,SAAS;AAAA;AAG5B,MAAM,YAAY,sCAAO,eAAM,MAAM;AAAA,EACnC,MAAM;AAAA,EACN,eAAe;AAAA,EACf,GAAG;AAAA;AAAA;AAAA;AAAA;AAML,MAAM,gBAAgB,sCAAO,eAAM,MAA4B;AAAA,EAC7D,eAAe;AAAA,EACf,gBAAgB;AAAA,EAChB,YAAY;AAAA,EACZ,GAAG;AAAA;AAAA,IAED,CAAC,MAAO,EAAE,SAAS,qBAAqB,EAAE,MAAM,OAAO,QAAQ,SAAS;AAAA;AAAA;AAAA;AAK5E,MAAM,OAAO,iCAAO;AAAA,WACT,CAAC,MAAM,EAAE,MAAM,OAAO,QAAQ;AAAA;AAGzC,MAAM,QAAQ;AAAA,EACZ,OAAO;AAAA,EACP,UAAU;AAAA,IACR,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,aAAa;AAAA,MACb,cAAc;AAAA,MACd,SAAS;AAAA,QACP,SAAS,OAAO,KAAK;AAAA;AAAA;AAAA,IAGzB,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,cAAc;AAAA,MACd,aAAa;AAAA,MACb,SAAS;AAAA,QACP,SAAS;AAAA,QACT,SAAS;AAAA,UACP,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAMhB,IAAO,8BAAQ;AAEf,MAAM,eAAe,CAAC,SAA2B;AAC/C,QAAM,CAAC,QAAQ,aAAa,2BAAS;AACrC,QAAM,IAAI,OAAO;AACjB,QAAM,SAAS,IAAI,OAAO,GAAG;AAE7B,SACE,mDAAC,WAAD,MACE,mDAAC,sBAAD;AAAA,IAAa,OAAO;AAAA,IAAQ,UAAU;AAAA,MACtC,mDAAC,YAAD;AAAA,IACE,qBAAoB;AAAA,IACpB,kBAAiB;AAAA,IACjB,SAAS;AAAA,IACT,IAAI;AAAA,KAEH,6BACE,KAAK,CAAC,GAAW,MAAc;AAC9B,WAAO,IAAI,EAAE,cAAc,QAAQ,KAAK,EAAE,cAAc,QAAQ,KAAK,EAAE,cAAc;AAAA,KAEtF,IAAI,CAAC,SAAS;AACb,UAAM,QAAQ,KAAK,MAAM;AACzB,UAAM,SAAS,KAAK;AACpB,UAAM,QAAQ,OAAO,SAAS;AAC9B,WACE,mDAAC,eAAD;AAAA,MAAe,QAAQ,CAAC,CAAC;AAAA,OACvB,mDAAC,eAAD;AAAA,MAAM,MAAM;AAAA,MAAG,gBAAe;AAAA,MAAS,YAAW;AAAA,OAChD,mDAAC,4BAAD;AAAA,MAAa,KAAK;AAAA,MAAM;AAAA,MAAY,MAAM,KAAK;AAAA,SAEjD,mDAAC,eAAD;AAAA,MAAM,SAAQ;AAAA,OACX,SACC,wFACG,KAAK,OAAO,GAAG,QAChB,mDAAC,MAAD,MAAO,KAAK,OAAO,OAAO,EAAE,UAC3B,KAAK,OAAO,QAAQ,EAAE,WAGzB;AAAA;AAAA;AAUpB,MAAM,eAAe,CAAC,SAA2B;AAC/C,SAAO,mDAAC,4BAAD;AAAA,OAAiB;AAAA;AAAA;AAGnB,MAAM,OAAO,aAAa,KAAK;AAC/B,MAAM,aAAa,aAAa,KAAK;",
6
+ "names": []
7
+ }
@@ -0,0 +1,56 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ __markAsModule(target);
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __reExport = (target, module2, desc) => {
14
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
15
+ for (let key of __getOwnPropNames(module2))
16
+ if (!__hasOwnProp.call(target, key) && key !== "default")
17
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
18
+ }
19
+ return target;
20
+ };
21
+ var __toModule = (module2) => {
22
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
23
+ };
24
+ __export(exports, {
25
+ default: () => ProviderIcon_default,
26
+ iconNames: () => iconNames,
27
+ sizes: () => sizes
28
+ });
29
+ var providers = __toModule(require("@ledgerhq/icons-ui/react/_ProvidersLogos"));
30
+ var import_react = __toModule(require("react"));
31
+ const sizes = {
32
+ XXS: 16,
33
+ XS: 24,
34
+ S: 32,
35
+ M: 40,
36
+ L: 48,
37
+ XL: 56
38
+ };
39
+ const iconNames = Array.from(Object.keys(providers).reduce((set, rawKey) => {
40
+ const key = rawKey.replace(/(.+)(Regular|Light|UltraLight|Thin|Medium)+$/g, "$1").replace(/(.+)(Ultra)+$/g, "$1");
41
+ if (!set.has(key))
42
+ set.add(key);
43
+ return set;
44
+ }, new Set()));
45
+ const ProviderIcon = ({ name, size = "S" }) => {
46
+ const maybeIconName = `${name}`;
47
+ if (maybeIconName in providers) {
48
+ const Component = providers[maybeIconName];
49
+ return /* @__PURE__ */ import_react.default.createElement(Component, {
50
+ size: sizes[size]
51
+ });
52
+ }
53
+ return null;
54
+ };
55
+ var ProviderIcon_default = ProviderIcon;
56
+ //# sourceMappingURL=ProviderIcon.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/asorted/Icon/ProviderIcon.tsx"],
4
+ "sourcesContent": ["import * as providers from \"@ledgerhq/icons-ui/react/_ProvidersLogos\";\nimport React from \"react\";\n\nexport const sizes = {\n XXS: 16,\n XS: 24,\n S: 32,\n M: 40,\n L: 48,\n XL: 56,\n};\n\nexport type ProviderSizes = keyof typeof sizes;\n\nexport type Props = {\n name: string;\n size?: ProviderSizes;\n};\n\nexport const iconNames = Array.from(\n Object.keys(providers).reduce((set, rawKey) => {\n const key = rawKey\n .replace(/(.+)(Regular|Light|UltraLight|Thin|Medium)+$/g, \"$1\")\n .replace(/(.+)(Ultra)+$/g, \"$1\");\n if (!set.has(key)) set.add(key);\n return set;\n }, new Set<string>()),\n);\n\nconst ProviderIcon = ({ name, size = \"S\" }: Props): JSX.Element | null => {\n const maybeIconName = `${name}`;\n if (maybeIconName in providers) {\n // @ts-expect-error FIXME I don't know how to make you happy ts\n const Component = providers[maybeIconName];\n return <Component size={sizes[size]} />;\n }\n return null;\n};\n\nexport default ProviderIcon;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAA2B;AAC3B,mBAAkB;AAEX,MAAM,QAAQ;AAAA,EACnB,KAAK;AAAA,EACL,IAAI;AAAA,EACJ,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,IAAI;AAAA;AAUC,MAAM,YAAY,MAAM,KAC7B,OAAO,KAAK,WAAW,OAAO,CAAC,KAAK,WAAW;AAC7C,QAAM,MAAM,OACT,QAAQ,iDAAiD,MACzD,QAAQ,kBAAkB;AAC7B,MAAI,CAAC,IAAI,IAAI;AAAM,QAAI,IAAI;AAC3B,SAAO;AAAA,GACN,IAAI;AAGT,MAAM,eAAe,CAAC,EAAE,MAAM,OAAO,UAAqC;AACxE,QAAM,gBAAgB,GAAG;AACzB,MAAI,iBAAiB,WAAW;AAE9B,UAAM,YAAY,UAAU;AAC5B,WAAO,mDAAC,WAAD;AAAA,MAAW,MAAM,MAAM;AAAA;AAAA;AAEhC,SAAO;AAAA;AAGT,IAAO,uBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,124 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
+ var __export = (target, all) => {
9
+ __markAsModule(target);
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __reExport = (target, module2, desc) => {
14
+ if (module2 && typeof module2 === "object" || typeof module2 === "function") {
15
+ for (let key of __getOwnPropNames(module2))
16
+ if (!__hasOwnProp.call(target, key) && key !== "default")
17
+ __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
18
+ }
19
+ return target;
20
+ };
21
+ var __toModule = (module2) => {
22
+ return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
23
+ };
24
+ __export(exports, {
25
+ List: () => List,
26
+ SingleIcon: () => SingleIcon,
27
+ default: () => Providers_stories_default
28
+ });
29
+ var import_react = __toModule(require("react"));
30
+ var import_styled_components = __toModule(require("styled-components"));
31
+ var import_ProviderIcon = __toModule(require("./ProviderIcon"));
32
+ var import__ = __toModule(require("../../.."));
33
+ const ScrollArea = (0, import_styled_components.default)(import__.Grid)`
34
+ flex: 1;
35
+ height: auto;
36
+ ${(p) => p.theme.overflow.y};
37
+ `;
38
+ const Container = (0, import_styled_components.default)(import__.Flex).attrs({
39
+ flex: 1,
40
+ flexDirection: "column",
41
+ p: 4
42
+ })`
43
+ overflow: hidden;
44
+ height: calc(100vh - 4em);
45
+ `;
46
+ const IconContainer = (0, import_styled_components.default)(import__.Flex).attrs({
47
+ flexDirection: "column",
48
+ justifyContent: "flex-end",
49
+ alignItems: "center",
50
+ p: 4
51
+ })`
52
+ ${(p) => p.active ? `background-color: ${p.theme.colors.neutral.c20};` : ``}
53
+ border-radius: 4px;
54
+ height: 100px;
55
+ `;
56
+ const Bold = import_styled_components.default.b`
57
+ color: ${(p) => p.theme.colors.primary.c80};
58
+ `;
59
+ const Story = {
60
+ title: "Asorted/Icons/ProviderIcons",
61
+ argTypes: {
62
+ size: {
63
+ type: "enum",
64
+ description: "Icon size",
65
+ defaultValue: "L",
66
+ control: {
67
+ options: Object.keys(import_ProviderIcon.sizes)
68
+ }
69
+ },
70
+ name: {
71
+ type: "enum",
72
+ defaultValue: "France",
73
+ description: "[Only for single icon], Icon name",
74
+ control: {
75
+ options: import_ProviderIcon.iconNames,
76
+ control: {
77
+ type: "select"
78
+ }
79
+ }
80
+ }
81
+ }
82
+ };
83
+ var Providers_stories_default = Story;
84
+ const ListTemplate = (args) => {
85
+ const [search, setSearch] = (0, import_react.useState)("");
86
+ const s = search.toLowerCase();
87
+ const regexp = new RegExp(s, "i");
88
+ return /* @__PURE__ */ import_react.default.createElement(Container, null, /* @__PURE__ */ import_react.default.createElement(import__.SearchInput, {
89
+ value: search,
90
+ onChange: setSearch
91
+ }), /* @__PURE__ */ import_react.default.createElement(ScrollArea, {
92
+ gridTemplateColumns: "repeat(auto-fill, 100px);",
93
+ gridTemplateRows: "repeat(auto-fill, 100px);",
94
+ gridGap: 4,
95
+ mt: 4
96
+ }, import_ProviderIcon.iconNames.sort((a, b) => {
97
+ return s ? b.toLowerCase().indexOf(s) - a.toLowerCase().indexOf(s) : a.localeCompare(b);
98
+ }).map((name) => {
99
+ const match = name.match(regexp);
100
+ const active = s && match;
101
+ const index = match?.index ?? 0;
102
+ return /* @__PURE__ */ import_react.default.createElement(IconContainer, {
103
+ active: !!active
104
+ }, /* @__PURE__ */ import_react.default.createElement(import__.Flex, {
105
+ flex: 1,
106
+ justifyContent: "center",
107
+ alignItems: "center"
108
+ }, /* @__PURE__ */ import_react.default.createElement(import_ProviderIcon.default, {
109
+ key: name,
110
+ name,
111
+ size: args.size
112
+ })), /* @__PURE__ */ import_react.default.createElement(import__.Text, {
113
+ variant: "extraSmall"
114
+ }, active ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, name.substr(0, index), /* @__PURE__ */ import_react.default.createElement(Bold, null, name.substr(index, s.length)), name.substr(index + s.length)) : name));
115
+ })));
116
+ };
117
+ const FlagTemplate = (args) => {
118
+ return /* @__PURE__ */ import_react.default.createElement(import_ProviderIcon.default, {
119
+ ...args
120
+ });
121
+ };
122
+ const List = ListTemplate.bind({});
123
+ const SingleIcon = FlagTemplate.bind({});
124
+ //# sourceMappingURL=Providers.stories.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/asorted/Icon/Providers.stories.tsx"],
4
+ "sourcesContent": ["import React, { useState } from \"react\";\nimport styled from \"styled-components\";\nimport ProviderIcon, {\n iconNames,\n Props as ProviderIconProps,\n sizes as providerSizes,\n} from \"./ProviderIcon\";\nimport { Text, SearchInput, Flex, Grid } from \"../../..\";\n\nconst ScrollArea = styled(Grid)`\n flex: 1;\n height: auto;\n ${(p) => p.theme.overflow.y};\n`;\n\nconst Container = styled(Flex).attrs({\n flex: 1,\n flexDirection: \"column\",\n p: 4,\n})`\n overflow: hidden;\n height: calc(100vh - 4em);\n`;\n\nconst IconContainer = styled(Flex).attrs<{ active?: boolean }>({\n flexDirection: \"column\",\n justifyContent: \"flex-end\",\n alignItems: \"center\",\n p: 4,\n})<{ active?: boolean }>`\n ${(p) => (p.active ? `background-color: ${p.theme.colors.neutral.c20};` : ``)}\n border-radius: 4px;\n height: 100px;\n`;\n\nconst Bold = styled.b`\n color: ${(p) => p.theme.colors.primary.c80};\n`;\n\nconst Story = {\n title: \"Asorted/Icons/ProviderIcons\",\n argTypes: {\n size: {\n type: \"enum\",\n description: \"Icon size\",\n defaultValue: \"L\",\n control: {\n options: Object.keys(providerSizes),\n },\n },\n name: {\n type: \"enum\",\n defaultValue: \"France\",\n description: \"[Only for single icon], Icon name\",\n control: {\n options: iconNames,\n control: {\n type: \"select\",\n },\n },\n },\n },\n};\nexport default Story;\n\nconst ListTemplate = (args: ProviderIconProps) => {\n const [search, setSearch] = useState(\"\");\n const s = search.toLowerCase();\n const regexp = new RegExp(s, \"i\");\n\n return (\n <Container>\n <SearchInput value={search} onChange={setSearch} />\n <ScrollArea\n gridTemplateColumns=\"repeat(auto-fill, 100px);\"\n gridTemplateRows=\"repeat(auto-fill, 100px);\"\n gridGap={4}\n mt={4}\n >\n {iconNames\n .sort((a: string, b: string) => {\n return s ? b.toLowerCase().indexOf(s) - a.toLowerCase().indexOf(s) : a.localeCompare(b);\n })\n .map((name) => {\n const match = name.match(regexp);\n const active = s && match;\n const index = match?.index ?? 0;\n return (\n <IconContainer active={!!active}>\n <Flex flex={1} justifyContent=\"center\" alignItems=\"center\">\n <ProviderIcon key={name} name={name} size={args.size} />\n </Flex>\n <Text variant=\"extraSmall\">\n {active ? (\n <>\n {name.substr(0, index)}\n <Bold>{name.substr(index, s.length)}</Bold>\n {name.substr(index + s.length)}\n </>\n ) : (\n name\n )}\n </Text>\n </IconContainer>\n );\n })}\n </ScrollArea>\n </Container>\n );\n};\nconst FlagTemplate = (args: ProviderIconProps) => {\n return <ProviderIcon {...args} />;\n};\n\nexport const List = ListTemplate.bind({});\nexport const SingleIcon = FlagTemplate.bind({});\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAgC;AAChC,+BAAmB;AACnB,0BAIO;AACP,eAA8C;AAE9C,MAAM,aAAa,sCAAO;AAAA;AAAA;AAAA,IAGtB,CAAC,MAAM,EAAE,MAAM,SAAS;AAAA;AAG5B,MAAM,YAAY,sCAAO,eAAM,MAAM;AAAA,EACnC,MAAM;AAAA,EACN,eAAe;AAAA,EACf,GAAG;AAAA;AAAA;AAAA;AAAA;AAML,MAAM,gBAAgB,sCAAO,eAAM,MAA4B;AAAA,EAC7D,eAAe;AAAA,EACf,gBAAgB;AAAA,EAChB,YAAY;AAAA,EACZ,GAAG;AAAA;AAAA,IAED,CAAC,MAAO,EAAE,SAAS,qBAAqB,EAAE,MAAM,OAAO,QAAQ,SAAS;AAAA;AAAA;AAAA;AAK5E,MAAM,OAAO,iCAAO;AAAA,WACT,CAAC,MAAM,EAAE,MAAM,OAAO,QAAQ;AAAA;AAGzC,MAAM,QAAQ;AAAA,EACZ,OAAO;AAAA,EACP,UAAU;AAAA,IACR,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,aAAa;AAAA,MACb,cAAc;AAAA,MACd,SAAS;AAAA,QACP,SAAS,OAAO,KAAK;AAAA;AAAA;AAAA,IAGzB,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,cAAc;AAAA,MACd,aAAa;AAAA,MACb,SAAS;AAAA,QACP,SAAS;AAAA,QACT,SAAS;AAAA,UACP,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAMhB,IAAO,4BAAQ;AAEf,MAAM,eAAe,CAAC,SAA4B;AAChD,QAAM,CAAC,QAAQ,aAAa,2BAAS;AACrC,QAAM,IAAI,OAAO;AACjB,QAAM,SAAS,IAAI,OAAO,GAAG;AAE7B,SACE,mDAAC,WAAD,MACE,mDAAC,sBAAD;AAAA,IAAa,OAAO;AAAA,IAAQ,UAAU;AAAA,MACtC,mDAAC,YAAD;AAAA,IACE,qBAAoB;AAAA,IACpB,kBAAiB;AAAA,IACjB,SAAS;AAAA,IACT,IAAI;AAAA,KAEH,8BACE,KAAK,CAAC,GAAW,MAAc;AAC9B,WAAO,IAAI,EAAE,cAAc,QAAQ,KAAK,EAAE,cAAc,QAAQ,KAAK,EAAE,cAAc;AAAA,KAEtF,IAAI,CAAC,SAAS;AACb,UAAM,QAAQ,KAAK,MAAM;AACzB,UAAM,SAAS,KAAK;AACpB,UAAM,QAAQ,OAAO,SAAS;AAC9B,WACE,mDAAC,eAAD;AAAA,MAAe,QAAQ,CAAC,CAAC;AAAA,OACvB,mDAAC,eAAD;AAAA,MAAM,MAAM;AAAA,MAAG,gBAAe;AAAA,MAAS,YAAW;AAAA,OAChD,mDAAC,6BAAD;AAAA,MAAc,KAAK;AAAA,MAAM;AAAA,MAAY,MAAM,KAAK;AAAA,SAElD,mDAAC,eAAD;AAAA,MAAM,SAAQ;AAAA,OACX,SACC,wFACG,KAAK,OAAO,GAAG,QAChB,mDAAC,MAAD,MAAO,KAAK,OAAO,OAAO,EAAE,UAC3B,KAAK,OAAO,QAAQ,EAAE,WAGzB;AAAA;AAAA;AAUpB,MAAM,eAAe,CAAC,SAA4B;AAChD,SAAO,mDAAC,6BAAD;AAAA,OAAkB;AAAA;AAAA;AAGpB,MAAM,OAAO,aAAa,KAAK;AAC/B,MAAM,aAAa,aAAa,KAAK;",
6
+ "names": []
7
+ }
@@ -0,0 +1,17 @@
1
+ /// <reference types="react" />
2
+ export declare const sizes: {
3
+ XXS: number;
4
+ XS: number;
5
+ S: number;
6
+ M: number;
7
+ L: number;
8
+ XL: number;
9
+ };
10
+ export declare type FlagsSizes = keyof typeof sizes;
11
+ export declare type Props = {
12
+ name: string;
13
+ size?: FlagsSizes;
14
+ };
15
+ export declare const iconNames: string[];
16
+ declare const FlagIcon: ({ name, size }: Props) => JSX.Element | null;
17
+ export default FlagIcon;
@@ -0,0 +1,28 @@
1
+ import * as flags from "@ledgerhq/icons-ui/react/_Flags";
2
+ import React from "react";
3
+ export const sizes = {
4
+ XXS: 16,
5
+ XS: 24,
6
+ S: 32,
7
+ M: 40,
8
+ L: 48,
9
+ XL: 56,
10
+ };
11
+ export const iconNames = Array.from(Object.keys(flags).reduce((set, rawKey) => {
12
+ const key = rawKey
13
+ .replace(/(.+)(Regular|Light|UltraLight|Thin|Medium)+$/g, "$1")
14
+ .replace(/(.+)(Ultra)+$/g, "$1");
15
+ if (!set.has(key))
16
+ set.add(key);
17
+ return set;
18
+ }, new Set()));
19
+ const FlagIcon = ({ name, size = "S" }) => {
20
+ const maybeIconName = `${name}`;
21
+ if (maybeIconName in flags) {
22
+ // @ts-expect-error FIXME I don't know how to make you happy ts
23
+ const Component = flags[maybeIconName];
24
+ return React.createElement(Component, { size: sizes[size] });
25
+ }
26
+ return null;
27
+ };
28
+ export default FlagIcon;
@@ -0,0 +1,17 @@
1
+ /// <reference types="react" />
2
+ export declare const sizes: {
3
+ XXS: number;
4
+ XS: number;
5
+ S: number;
6
+ M: number;
7
+ L: number;
8
+ XL: number;
9
+ };
10
+ export declare type PaymentIconSizes = keyof typeof sizes;
11
+ export declare type Props = {
12
+ name: string;
13
+ size?: PaymentIconSizes;
14
+ };
15
+ export declare const iconNames: string[];
16
+ declare const PaymentIcon: ({ name, size }: Props) => JSX.Element | null;
17
+ export default PaymentIcon;
@@ -0,0 +1,28 @@
1
+ import * as paymentProviders from "@ledgerhq/icons-ui/react/_Payment";
2
+ import React from "react";
3
+ export const sizes = {
4
+ XXS: 16,
5
+ XS: 24,
6
+ S: 32,
7
+ M: 40,
8
+ L: 48,
9
+ XL: 56,
10
+ };
11
+ export const iconNames = Array.from(Object.keys(paymentProviders).reduce((set, rawKey) => {
12
+ const key = rawKey
13
+ .replace(/(.+)(Regular|Light|UltraLight|Thin|Medium)+$/g, "$1")
14
+ .replace(/(.+)(Ultra)+$/g, "$1");
15
+ if (!set.has(key))
16
+ set.add(key);
17
+ return set;
18
+ }, new Set()));
19
+ const PaymentIcon = ({ name, size = "S" }) => {
20
+ const maybeIconName = `${name}`;
21
+ if (maybeIconName in paymentProviders) {
22
+ // @ts-expect-error FIXME I don't know how to make you happy ts
23
+ const Component = paymentProviders[maybeIconName];
24
+ return React.createElement(Component, { size: sizes[size] });
25
+ }
26
+ return null;
27
+ };
28
+ export default PaymentIcon;
@@ -0,0 +1,17 @@
1
+ /// <reference types="react" />
2
+ export declare const sizes: {
3
+ XXS: number;
4
+ XS: number;
5
+ S: number;
6
+ M: number;
7
+ L: number;
8
+ XL: number;
9
+ };
10
+ export declare type ProviderSizes = keyof typeof sizes;
11
+ export declare type Props = {
12
+ name: string;
13
+ size?: ProviderSizes;
14
+ };
15
+ export declare const iconNames: string[];
16
+ declare const ProviderIcon: ({ name, size }: Props) => JSX.Element | null;
17
+ export default ProviderIcon;
@@ -0,0 +1,28 @@
1
+ import * as providers from "@ledgerhq/icons-ui/react/_ProvidersLogos";
2
+ import React from "react";
3
+ export const sizes = {
4
+ XXS: 16,
5
+ XS: 24,
6
+ S: 32,
7
+ M: 40,
8
+ L: 48,
9
+ XL: 56,
10
+ };
11
+ export const iconNames = Array.from(Object.keys(providers).reduce((set, rawKey) => {
12
+ const key = rawKey
13
+ .replace(/(.+)(Regular|Light|UltraLight|Thin|Medium)+$/g, "$1")
14
+ .replace(/(.+)(Ultra)+$/g, "$1");
15
+ if (!set.has(key))
16
+ set.add(key);
17
+ return set;
18
+ }, new Set()));
19
+ const ProviderIcon = ({ name, size = "S" }) => {
20
+ const maybeIconName = `${name}`;
21
+ if (maybeIconName in providers) {
22
+ // @ts-expect-error FIXME I don't know how to make you happy ts
23
+ const Component = providers[maybeIconName];
24
+ return React.createElement(Component, { size: sizes[size] });
25
+ }
26
+ return null;
27
+ };
28
+ export default ProviderIcon;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/react-ui",
3
- "version": "0.9.2-next.0",
3
+ "version": "0.9.2",
4
4
  "description": "Ledger Live - Desktop UI",
5
5
  "author": "Ledger Live Team <team-live@ledger.fr>",
6
6
  "repository": {