@drivy/cobalt 2.16.3 → 2.18.0

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.
@@ -95,6 +95,7 @@ const icons = {
95
95
  creditCardAdd: "credit-card-add.svg",
96
96
  creditCardError: "credit-card-error.svg",
97
97
  creditCard: "credit-card.svg",
98
+ crosshover: "crosshover.svg",
98
99
  cruiseControl: "cruise-control.svg",
99
100
  dashcam: "dashcam.svg",
100
101
  directions: "directions.svg",
@@ -132,6 +133,7 @@ const icons = {
132
133
  gift: "gift.svg",
133
134
  gps: "gps.svg",
134
135
  graphUp: "graph-up.svg",
136
+ handDollar: "hand-dollar.svg",
135
137
  healing: "healing.svg",
136
138
  heart: "heart.svg",
137
139
  height: "height.svg",
@@ -204,6 +206,7 @@ const icons = {
204
206
  optionWheelchairAccessible: "option-wheelchair-accessible.svg",
205
207
  paperclip: "paperclip.svg",
206
208
  parking: "parking.svg",
209
+ party: "party.svg",
207
210
  passport: "passport.svg",
208
211
  payments: "payments.svg",
209
212
  pencil: "pencil.svg",
@@ -1 +1 @@
1
- {"version":3,"file":"icons.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"icons.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,19 @@
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import cx from 'classnames';
3
+ import 'lodash.throttle';
4
+ import camelize from '../../utils/camelize.js';
5
+
6
+ const iconSource = "crosshover";
7
+ const CrosshoverIcon = ({ color, size = 24, contained = false, className, }) => {
8
+ const computedClassName = cx(className, `cobalt-Icon cobalt-Icon--${iconSource}`, {
9
+ [`c-fill-${camelize(color || "")}`]: color,
10
+ "cobalt-Icon--size16": size === 16,
11
+ "cobalt-Icon--size20": size === 20,
12
+ "cobalt-Icon--size32": size === 32,
13
+ "cobalt-Icon--contained": contained,
14
+ });
15
+ return (jsx("span", { className: computedClassName, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", children: [jsx("title", { children: iconSource }), jsx("path", { d: "m14.45 15.75-5.912 5.913-1.326-1.326 3.65-3.65H2.25v-1.875h8.612l-3.65-3.65 1.326-1.325zM16.788 3.663l-3.65 3.65h8.612v1.875h-8.612l3.65 3.65-1.326 1.325L9.55 8.25l5.913-5.913z" })] }) }));
16
+ };
17
+
18
+ export { CrosshoverIcon as default };
19
+ //# sourceMappingURL=CrosshoverIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CrosshoverIcon.js","sources":["../../../../src/components/Icon/__generated__/CrosshoverIcon.tsx"],"sourcesContent":["import cx from \"classnames\"\nimport { camelize } from \"../../utils\"\nimport type { IconColorsType } from \"../\"\nexport type IconProps = {\n color?: IconColorsType\n size?: 16 | 20 | 24 | 32\n contained?: boolean\n className?: string\n}\nconst iconSource = \"crosshover\"\nconst CrosshoverIcon = ({\n color,\n size = 24,\n contained = false,\n className,\n}: IconProps) => {\n const computedClassName = cx(\n className,\n `cobalt-Icon cobalt-Icon--${iconSource}`,\n {\n [`c-fill-${camelize(color || \"\")}`]: color,\n \"cobalt-Icon--size16\": size === 16,\n \"cobalt-Icon--size20\": size === 20,\n \"cobalt-Icon--size32\": size === 32,\n \"cobalt-Icon--contained\": contained,\n },\n )\n return (\n <span className={computedClassName}>\n {\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <title>{iconSource}</title>\n <path d=\"m14.45 15.75-5.912 5.913-1.326-1.326 3.65-3.65H2.25v-1.875h8.612l-3.65-3.65 1.326-1.325zM16.788 3.663l-3.65 3.65h8.612v1.875h-8.612l3.65 3.65-1.326 1.325L9.55 8.25l5.913-5.913z\" />\n </svg>\n }\n </span>\n )\n}\nexport default CrosshoverIcon\n"],"names":["_jsx","_jsxs"],"mappings":";;;;;AASA,MAAM,UAAU,GAAG,YAAY,CAAA;AAC/B,MAAM,cAAc,GAAG,CAAC,EACtB,KAAK,EACL,IAAI,GAAG,EAAE,EACT,SAAS,GAAG,KAAK,EACjB,SAAS,GACC,KAAI;IACd,MAAM,iBAAiB,GAAG,EAAE,CAC1B,SAAS,EACT,CAAA,yBAAA,EAA4B,UAAU,CAAA,CAAE,EACxC;QACE,CAAC,CAAA,OAAA,EAAU,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA,CAAE,GAAG,KAAK;QAC1C,qBAAqB,EAAE,IAAI,KAAK,EAAE;QAClC,qBAAqB,EAAE,IAAI,KAAK,EAAE;QAClC,qBAAqB,EAAE,IAAI,KAAK,EAAE;AAClC,QAAA,wBAAwB,EAAE,SAAS;AACpC,KAAA,CACF,CAAA;IACD,QACEA,GAAM,CAAA,MAAA,EAAA,EAAA,SAAS,EAAE,iBAAiB,EAE9B,QAAA,EAAAC,IAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,4BAA4B,EAAC,OAAO,EAAC,WAAW,EAAA,QAAA,EAAA,CACzDD,GAAQ,CAAA,OAAA,EAAA,EAAA,QAAA,EAAA,UAAU,EAAS,CAAA,EAC3BA,GAAM,CAAA,MAAA,EAAA,EAAA,CAAC,EAAC,kLAAkL,EAAG,CAAA,CAAA,EAAA,CACzL,EAEH,CAAA,EACR;AACH;;;;"}
@@ -0,0 +1,19 @@
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import cx from 'classnames';
3
+ import 'lodash.throttle';
4
+ import camelize from '../../utils/camelize.js';
5
+
6
+ const iconSource = "handDollar";
7
+ const HandDollarIcon = ({ color, size = 24, contained = false, className, }) => {
8
+ const computedClassName = cx(className, `cobalt-Icon cobalt-Icon--${iconSource}`, {
9
+ [`c-fill-${camelize(color || "")}`]: color,
10
+ "cobalt-Icon--size16": size === 16,
11
+ "cobalt-Icon--size20": size === 20,
12
+ "cobalt-Icon--size32": size === 32,
13
+ "cobalt-Icon--contained": contained,
14
+ });
15
+ return (jsx("span", { className: computedClassName, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", children: [jsx("title", { children: iconSource }), jsx("path", { d: "M5.683 14.489c.493 0 .894.4.894.894v5.723c0 .493-.4.894-.894.894H3.894A.894.894 0 0 1 3 21.106v-5.723c0-.494.4-.894.894-.894zM11.763 14.488c1.172 0 2.165.752 2.53 1.799l-.11.07a5 5 0 0 1-2.436.636h-.341a.537.537 0 0 0 0 1.073h.341a6.06 6.06 0 0 0 2.97-.779l.011-.005.01-.007 3.46-2.155a2 2 0 0 1 1.636-.221c.233.128.444.306.602.544.323.484.285 1.033.13 1.473-.154.438-.444.84-.758 1.13l-2.523 2.343A6.03 6.03 0 0 1 13.183 22h-.88a8.3 8.3 0 0 1-2.615-.425l-2.038-.679V15.41l1.123-.561c.472-.236.992-.36 1.52-.36z" }), jsx("path", { fillRule: "evenodd", d: "M12.12 2a5.544 5.544 0 1 1 0 11.088A5.544 5.544 0 0 1 12.12 2m-.338 3.077c-.701.137-1.318.564-1.318 1.348 0 1.66 2.542 1.294 2.543 2.154 0 .305-.285.564-.81.564-.57 0-1.04-.22-1.41-.525l-.592.654c.439.427 1.048.67 1.587.754v.792h.924v-.807c.809-.168 1.34-.746 1.34-1.446 0-1.69-2.54-1.463-2.541-2.132 0-.275.292-.488.793-.488.455 0 .848.153 1.14.35l.493-.723a2.8 2.8 0 0 0-1.225-.502v-.8h-.924z", clipRule: "evenodd" })] }) }));
16
+ };
17
+
18
+ export { HandDollarIcon as default };
19
+ //# sourceMappingURL=HandDollarIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HandDollarIcon.js","sources":["../../../../src/components/Icon/__generated__/HandDollarIcon.tsx"],"sourcesContent":["import cx from \"classnames\"\nimport { camelize } from \"../../utils\"\nimport type { IconColorsType } from \"../\"\nexport type IconProps = {\n color?: IconColorsType\n size?: 16 | 20 | 24 | 32\n contained?: boolean\n className?: string\n}\nconst iconSource = \"handDollar\"\nconst HandDollarIcon = ({\n color,\n size = 24,\n contained = false,\n className,\n}: IconProps) => {\n const computedClassName = cx(\n className,\n `cobalt-Icon cobalt-Icon--${iconSource}`,\n {\n [`c-fill-${camelize(color || \"\")}`]: color,\n \"cobalt-Icon--size16\": size === 16,\n \"cobalt-Icon--size20\": size === 20,\n \"cobalt-Icon--size32\": size === 32,\n \"cobalt-Icon--contained\": contained,\n },\n )\n return (\n <span className={computedClassName}>\n {\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <title>{iconSource}</title>\n <path d=\"M5.683 14.489c.493 0 .894.4.894.894v5.723c0 .493-.4.894-.894.894H3.894A.894.894 0 0 1 3 21.106v-5.723c0-.494.4-.894.894-.894zM11.763 14.488c1.172 0 2.165.752 2.53 1.799l-.11.07a5 5 0 0 1-2.436.636h-.341a.537.537 0 0 0 0 1.073h.341a6.06 6.06 0 0 0 2.97-.779l.011-.005.01-.007 3.46-2.155a2 2 0 0 1 1.636-.221c.233.128.444.306.602.544.323.484.285 1.033.13 1.473-.154.438-.444.84-.758 1.13l-2.523 2.343A6.03 6.03 0 0 1 13.183 22h-.88a8.3 8.3 0 0 1-2.615-.425l-2.038-.679V15.41l1.123-.561c.472-.236.992-.36 1.52-.36z\" />\n <path\n fillRule=\"evenodd\"\n d=\"M12.12 2a5.544 5.544 0 1 1 0 11.088A5.544 5.544 0 0 1 12.12 2m-.338 3.077c-.701.137-1.318.564-1.318 1.348 0 1.66 2.542 1.294 2.543 2.154 0 .305-.285.564-.81.564-.57 0-1.04-.22-1.41-.525l-.592.654c.439.427 1.048.67 1.587.754v.792h.924v-.807c.809-.168 1.34-.746 1.34-1.446 0-1.69-2.54-1.463-2.541-2.132 0-.275.292-.488.793-.488.455 0 .848.153 1.14.35l.493-.723a2.8 2.8 0 0 0-1.225-.502v-.8h-.924z\"\n clipRule=\"evenodd\"\n />\n </svg>\n }\n </span>\n )\n}\nexport default HandDollarIcon\n"],"names":["_jsx","_jsxs"],"mappings":";;;;;AASA,MAAM,UAAU,GAAG,YAAY,CAAA;AAC/B,MAAM,cAAc,GAAG,CAAC,EACtB,KAAK,EACL,IAAI,GAAG,EAAE,EACT,SAAS,GAAG,KAAK,EACjB,SAAS,GACC,KAAI;IACd,MAAM,iBAAiB,GAAG,EAAE,CAC1B,SAAS,EACT,CAAA,yBAAA,EAA4B,UAAU,CAAA,CAAE,EACxC;QACE,CAAC,CAAA,OAAA,EAAU,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA,CAAE,GAAG,KAAK;QAC1C,qBAAqB,EAAE,IAAI,KAAK,EAAE;QAClC,qBAAqB,EAAE,IAAI,KAAK,EAAE;QAClC,qBAAqB,EAAE,IAAI,KAAK,EAAE;AAClC,QAAA,wBAAwB,EAAE,SAAS;AACpC,KAAA,CACF,CAAA;AACD,IAAA,QACEA,GAAM,CAAA,MAAA,EAAA,EAAA,SAAS,EAAE,iBAAiB,EAAA,QAAA,EAE9BC,cAAK,KAAK,EAAC,4BAA4B,EAAC,OAAO,EAAC,WAAW,aACzDD,GAAQ,CAAA,OAAA,EAAA,EAAA,QAAA,EAAA,UAAU,GAAS,EAC3BA,GAAA,CAAA,MAAA,EAAA,EAAM,CAAC,EAAC,igBAAigB,EAAG,CAAA,EAC5gBA,cACE,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,4YAA4Y,EAC9Y,QAAQ,EAAC,SAAS,GAClB,CACE,EAAA,CAAA,EAAA,CAEH,EACR;AACH;;;;"}
@@ -0,0 +1,19 @@
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import cx from 'classnames';
3
+ import 'lodash.throttle';
4
+ import camelize from '../../utils/camelize.js';
5
+
6
+ const iconSource = "party";
7
+ const PartyIcon = ({ color, size = 24, contained = false, className, }) => {
8
+ const computedClassName = cx(className, `cobalt-Icon cobalt-Icon--${iconSource}`, {
9
+ [`c-fill-${camelize(color || "")}`]: color,
10
+ "cobalt-Icon--size16": size === 16,
11
+ "cobalt-Icon--size20": size === 20,
12
+ "cobalt-Icon--size32": size === 32,
13
+ "cobalt-Icon--contained": contained,
14
+ });
15
+ return (jsx("span", { className: computedClassName, children: jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", children: [jsx("title", { children: iconSource }), jsx("path", { d: "M7.102 20.272 2.92 22.064a.75.75 0 0 1-.987-.978l1.76-4.223zM11.565 18.36l-3.35 1.434L4.16 15.74l1.407-3.377zM9.334 6.787c.491.036 1.024.205 1.554.45q.205.096.417.21c-.186.39-.293.78-.357 1.118a6 6 0 0 0-.056.372 7 7 0 0 0-.636-.34c-.436-.201-.784-.296-1.03-.314a.7.7 0 0 0-.237.015.2.2 0 0 0-.036.014q-.005.001-.005.002l-.005.007a.2.2 0 0 0-.014.036.7.7 0 0 0-.014.237c.018.246.112.595.315 1.03.402.868 1.16 1.933 2.193 2.966s2.099 1.79 2.966 2.193c.436.203.785.298 1.03.315a.7.7 0 0 0 .237-.014q.03-.009.036-.014.003 0 .005-.003l.002-.002.003-.004.013-.036a.7.7 0 0 0 .015-.238c-.017-.246-.113-.594-.315-1.03a8.3 8.3 0 0 0-.75-1.264c.707.619 1.502 1.106 2.374 1.323l.008.001c.095.295.16.585.18.862.034.49-.06 1.04-.469 1.448-.307.307-.693.436-1.074.467l-3.006 1.288-6.643-6.642 1.523-3.654.042-.084a.75.75 0 0 1 .363-.32c.4-.347.912-.428 1.37-.395M22.606 15.549l-.961 1.152-2.25-1.875.96-1.152z" }), jsx("path", { fillRule: "evenodd", d: "M17.79 2.598c1.263 0 2.404.751 3.152 1.377a10 10 0 0 1 1.196 1.19l.072.087q.013.016.02.026l.007.007.001.002v.002l-.589.463-.59.463-.002-.003-.012-.014-.054-.066a8.617 8.617 0 0 0-1.012-1.007c-.689-.576-1.479-1.027-2.19-1.027-.782 0-1.256.264-1.595.625-.367.39-.617.934-.84 1.565q.17-.015.341-.02c1.005-.016 2.082.303 2.859 1.08.68.68 1.197 1.53 1.428 2.34.218.763.244 1.767-.503 2.395-.598.503-1.348.65-2.124.458-.745-.184-1.491-.673-2.21-1.392a5.04 5.04 0 0 1-1.337-2.408q-.057.145-.095.343c-.062.329-.067.711-.038 1.093a8 8 0 0 0 .21 1.291l.02.079.005.018.001.003-.721.205-.722.204v-.001l-.001-.003-.003-.009-.007-.03q-.011-.037-.027-.102a9.477 9.477 0 0 1-.25-1.542 5.8 5.8 0 0 1 .059-1.483c.094-.498.293-1.041.711-1.46a3.4 3.4 0 0 1 .754-.563c.045-.347.123-.678.23-.981.238-.674.573-1.477 1.168-2.109.625-.664 1.495-1.096 2.687-1.096m-2.069 5.17a3 3 0 0 0-.546.06c.071.79.386 1.615 1.03 2.26.611.61 1.127.902 1.511.997.353.088.6.016.798-.15.05-.043.192-.253.025-.835-.152-.535-.522-1.167-1.046-1.691-.427-.428-1.078-.653-1.772-.64", clipRule: "evenodd" }), jsx("path", { d: "m23.261 8.518-1.875 1.125-.772-1.286 1.875-1.125zM11.994 5.157l-1.488.186-.375-3 1.488-.186z" })] }) }));
16
+ };
17
+
18
+ export { PartyIcon as default };
19
+ //# sourceMappingURL=PartyIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PartyIcon.js","sources":["../../../../src/components/Icon/__generated__/PartyIcon.tsx"],"sourcesContent":["import cx from \"classnames\"\nimport { camelize } from \"../../utils\"\nimport type { IconColorsType } from \"../\"\nexport type IconProps = {\n color?: IconColorsType\n size?: 16 | 20 | 24 | 32\n contained?: boolean\n className?: string\n}\nconst iconSource = \"party\"\nconst PartyIcon = ({\n color,\n size = 24,\n contained = false,\n className,\n}: IconProps) => {\n const computedClassName = cx(\n className,\n `cobalt-Icon cobalt-Icon--${iconSource}`,\n {\n [`c-fill-${camelize(color || \"\")}`]: color,\n \"cobalt-Icon--size16\": size === 16,\n \"cobalt-Icon--size20\": size === 20,\n \"cobalt-Icon--size32\": size === 32,\n \"cobalt-Icon--contained\": contained,\n },\n )\n return (\n <span className={computedClassName}>\n {\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <title>{iconSource}</title>\n <path d=\"M7.102 20.272 2.92 22.064a.75.75 0 0 1-.987-.978l1.76-4.223zM11.565 18.36l-3.35 1.434L4.16 15.74l1.407-3.377zM9.334 6.787c.491.036 1.024.205 1.554.45q.205.096.417.21c-.186.39-.293.78-.357 1.118a6 6 0 0 0-.056.372 7 7 0 0 0-.636-.34c-.436-.201-.784-.296-1.03-.314a.7.7 0 0 0-.237.015.2.2 0 0 0-.036.014q-.005.001-.005.002l-.005.007a.2.2 0 0 0-.014.036.7.7 0 0 0-.014.237c.018.246.112.595.315 1.03.402.868 1.16 1.933 2.193 2.966s2.099 1.79 2.966 2.193c.436.203.785.298 1.03.315a.7.7 0 0 0 .237-.014q.03-.009.036-.014.003 0 .005-.003l.002-.002.003-.004.013-.036a.7.7 0 0 0 .015-.238c-.017-.246-.113-.594-.315-1.03a8.3 8.3 0 0 0-.75-1.264c.707.619 1.502 1.106 2.374 1.323l.008.001c.095.295.16.585.18.862.034.49-.06 1.04-.469 1.448-.307.307-.693.436-1.074.467l-3.006 1.288-6.643-6.642 1.523-3.654.042-.084a.75.75 0 0 1 .363-.32c.4-.347.912-.428 1.37-.395M22.606 15.549l-.961 1.152-2.25-1.875.96-1.152z\" />\n <path\n fillRule=\"evenodd\"\n d=\"M17.79 2.598c1.263 0 2.404.751 3.152 1.377a10 10 0 0 1 1.196 1.19l.072.087q.013.016.02.026l.007.007.001.002v.002l-.589.463-.59.463-.002-.003-.012-.014-.054-.066a8.617 8.617 0 0 0-1.012-1.007c-.689-.576-1.479-1.027-2.19-1.027-.782 0-1.256.264-1.595.625-.367.39-.617.934-.84 1.565q.17-.015.341-.02c1.005-.016 2.082.303 2.859 1.08.68.68 1.197 1.53 1.428 2.34.218.763.244 1.767-.503 2.395-.598.503-1.348.65-2.124.458-.745-.184-1.491-.673-2.21-1.392a5.04 5.04 0 0 1-1.337-2.408q-.057.145-.095.343c-.062.329-.067.711-.038 1.093a8 8 0 0 0 .21 1.291l.02.079.005.018.001.003-.721.205-.722.204v-.001l-.001-.003-.003-.009-.007-.03q-.011-.037-.027-.102a9.477 9.477 0 0 1-.25-1.542 5.8 5.8 0 0 1 .059-1.483c.094-.498.293-1.041.711-1.46a3.4 3.4 0 0 1 .754-.563c.045-.347.123-.678.23-.981.238-.674.573-1.477 1.168-2.109.625-.664 1.495-1.096 2.687-1.096m-2.069 5.17a3 3 0 0 0-.546.06c.071.79.386 1.615 1.03 2.26.611.61 1.127.902 1.511.997.353.088.6.016.798-.15.05-.043.192-.253.025-.835-.152-.535-.522-1.167-1.046-1.691-.427-.428-1.078-.653-1.772-.64\"\n clipRule=\"evenodd\"\n />\n <path d=\"m23.261 8.518-1.875 1.125-.772-1.286 1.875-1.125zM11.994 5.157l-1.488.186-.375-3 1.488-.186z\" />\n </svg>\n }\n </span>\n )\n}\nexport default PartyIcon\n"],"names":["_jsx","_jsxs"],"mappings":";;;;;AASA,MAAM,UAAU,GAAG,OAAO,CAAA;AAC1B,MAAM,SAAS,GAAG,CAAC,EACjB,KAAK,EACL,IAAI,GAAG,EAAE,EACT,SAAS,GAAG,KAAK,EACjB,SAAS,GACC,KAAI;IACd,MAAM,iBAAiB,GAAG,EAAE,CAC1B,SAAS,EACT,CAAA,yBAAA,EAA4B,UAAU,CAAA,CAAE,EACxC;QACE,CAAC,CAAA,OAAA,EAAU,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA,CAAE,GAAG,KAAK;QAC1C,qBAAqB,EAAE,IAAI,KAAK,EAAE;QAClC,qBAAqB,EAAE,IAAI,KAAK,EAAE;QAClC,qBAAqB,EAAE,IAAI,KAAK,EAAE;AAClC,QAAA,wBAAwB,EAAE,SAAS;AACpC,KAAA,CACF,CAAA;IACD,QACEA,cAAM,SAAS,EAAE,iBAAiB,EAE9B,QAAA,EAAAC,IAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,4BAA4B,EAAC,OAAO,EAAC,WAAW,EACzD,QAAA,EAAA,CAAAD,GAAA,CAAA,OAAA,EAAA,EAAA,QAAA,EAAQ,UAAU,EAAS,CAAA,EAC3BA,GAAM,CAAA,MAAA,EAAA,EAAA,CAAC,EAAC,k4BAAk4B,GAAG,EAC74BA,GAAA,CAAA,MAAA,EAAA,EACE,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,4gCAA4gC,EAC9gC,QAAQ,EAAC,SAAS,EAClB,CAAA,EACFA,cAAM,CAAC,EAAC,8FAA8F,EAAG,CAAA,CAAA,EAAA,CACrG,EAEH,CAAA,EACR;AACH;;;;"}
@@ -52,9 +52,9 @@ const PhotoDropzone = ({ className, description, deleteContent, errorContent, on
52
52
  };
53
53
  const onDropzoneClick = (event) => {
54
54
  var _a;
55
+ event && preventEventDefaults(event);
55
56
  if (isMobile && showDeletePopover)
56
57
  return;
57
- event && preventEventDefaults(event);
58
58
  if (isLoading)
59
59
  return;
60
60
  if (isErrored)
@@ -152,9 +152,7 @@ const PhotoDropzone = ({ className, description, deleteContent, errorContent, on
152
152
  "cobalt-photo-dropzone--loading": isLoading,
153
153
  "cobalt-photo-dropzone--errored": isErrored,
154
154
  "cobalt-photo-dropzone--imageVisible": isImageLoaded,
155
- }), onMouseEnter: onDropzoneMouseEnter, onMouseLeave: onDropzoneMouseLeave, onDragEnter: onDragEnter, onDragLeave: onDragLeave,
156
- // Not on click because we also use mouseEnter listener
157
- onMouseUp: onDropzoneClick, onTouchEnd: onDropzoneClick, onKeyUp: onDropzoneKey, onDrop: onDrop,
155
+ }), onMouseEnter: onDropzoneMouseEnter, onMouseLeave: onDropzoneMouseLeave, onDragEnter: onDragEnter, onDragLeave: onDragLeave, onClick: onDropzoneClick, onKeyUp: onDropzoneKey, onDrop: onDrop,
158
156
  // Need to reset those listeners to avoid default browser behaviour
159
157
  onDragStart: preventEventDefaults, onDragEnd: preventEventDefaults, onDragOver: preventEventDefaults, children: [isErrored && (jsxs("div", { className: "cobalt-photo-dropzone__description", children: [jsx(ContextualWarningCircleFilledIcon, { color: "error" }), errorContent(ACCEPTED_TYPES_LOCALE_STRING, ACCEPTED_MAX_SIZE_MB)] })), isLoading && (jsx("div", { className: "cobalt-photo-dropzone__description", children: jsx(LoadingIcon, {}) })), !isLoading &&
160
158
  !isErrored &&
@@ -162,10 +160,10 @@ const PhotoDropzone = ({ className, description, deleteContent, errorContent, on
162
160
  setIsImageLoaded(true);
163
161
  } }), jsxs("div", { children: [jsx("button", { type: "button", className: cx("cobalt-photo-dropzone__delete-button", {
164
162
  "cobalt-photo-dropzone__delete-button--triggered": displayDeletion,
165
- }), ref: deleteButtonRef,
166
- // Must follow the click listeners on the dropzone,
167
- // in order to have the correct events bubbling
168
- onTouchEnd: onDeleteButtonClick, onMouseUp: onDeleteButtonClick, onKeyUp: onDeleteKey, children: jsx(BinIcon, { color: "onSurface" }) }), deleteContentMode === "modal" && (jsx(Modal, { isOpen: showDeletePopover, "aria-label": "delete", bodySpacing: false, children: deleteContent(onDelete, closeDeletePopover) })), deleteContentMode === "popover" && (jsx(Popover, { targetRef: deleteButtonRef, isOpen: showDeletePopover, close: closeDeletePopover, placement: "left-start", distance: 12, bodySpacing: false, arrow: true, children: deleteContent(onDelete, closeDeletePopover) }))] })] })) : (jsxs("div", { className: "cobalt-photo-dropzone__description cobalt-photo-dropzone__description--strong", children: [description && jsx("div", { children: description }), jsx(PlusIcon, {})] }))), jsx("input", { ref: fileInputRef, className: "cobalt-photo-dropzone__hidden-input", type: "file", onChange: onFileInputChanged, accept: ACCEPTED_PHOTOS_TYPES.map((ext) => `.${ext}`).join(","), multiple: false })] }));
163
+ }), ref: deleteButtonRef, onClick: onDeleteButtonClick, onKeyUp: onDeleteKey, children: jsx(BinIcon, { color: "onSurface" }) }), deleteContentMode === "modal" && (jsx(Modal, { isOpen: showDeletePopover, "aria-label": "delete", bodySpacing: false, children: deleteContent(onDelete, closeDeletePopover) })), deleteContentMode === "popover" && (jsx(Popover, { targetRef: deleteButtonRef, isOpen: showDeletePopover, close: closeDeletePopover, placement: "left-start", distance: 12, bodySpacing: false, arrow: true, children: deleteContent(onDelete, closeDeletePopover) }))] })] })) : (jsxs("div", { className: "cobalt-photo-dropzone__description cobalt-photo-dropzone__description--strong", children: [description && jsx("div", { children: description }), jsx(PlusIcon, {})] }))), jsx("input", { ref: fileInputRef, className: "cobalt-photo-dropzone__hidden-input", type: "file", onChange: onFileInputChanged,
164
+ // Prevent the bubbled click from re-entering the label's onClick,
165
+ // which would cancel the file dialog via preventDefault.
166
+ onClick: (event) => event.stopPropagation(), accept: ACCEPTED_PHOTOS_TYPES.map((ext) => `.${ext}`).join(","), multiple: false })] }));
169
167
  };
170
168
 
171
169
  export { PhotoDropzone as default };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/PhotoDropzone/index.tsx"],"sourcesContent":["import cx from \"classnames\"\nimport {\n type ChangeEvent as ReactChangeEvent,\n type DragEvent as ReactDragEvent,\n type KeyboardEvent as ReactKeyboardEvent,\n type MouseEvent as ReactMouseEvent,\n type ReactNode,\n type TouchEvent as ReactTouchEvent,\n useEffect,\n useRef,\n useState,\n} from \"react\"\nimport useBreakpoint from \"../../hooks/useBreakpoint\"\nimport {\n BinIcon,\n ContextualWarningCircleFilledIcon,\n LoadingIcon,\n PlusIcon,\n} from \"../Icon\"\nimport Modal from \"../Modal\"\nimport Popover from \"../Popover\"\nimport { validateFile } from \"../utils/validateFile\"\n\nconst ACCEPTED_MAX_SIZE_MB = 10\nconst ACCEPTED_PHOTOS_TYPES = [\"jpg\", \"jpeg\", \"png\", \"gif\"]\nconst ERROR_DISPLAY_TIME = 6000\nconst ACCEPTED_TYPES_LOCALE_STRING = ACCEPTED_PHOTOS_TYPES.join(\", \")\n\nexport type PhotoDropzonePropsType = {\n className?: string\n description?: string\n deleteContent: (onDelete: () => void, close: () => void) => ReactNode\n deleteContentMode?: \"popover\" | \"modal\"\n errorContent: (acceptedTypes: string, maxFileSize: number) => ReactNode\n onDropped: (file: File) => Promise<void> | void\n onPhotoDelete?: () => void\n initialImageUrl?: string\n}\n\nconst preventEventDefaults = (\n e: ReactDragEvent | ReactMouseEvent | ReactKeyboardEvent | ReactTouchEvent,\n) => {\n e.preventDefault?.()\n e.stopPropagation?.()\n}\n\nconst isEnterOrSpaceKey = (event: ReactKeyboardEvent) =>\n event.key === \"Enter\" || event.key === \" \"\n\nconst PhotoDropzone = ({\n className,\n description,\n deleteContent,\n errorContent,\n onDropped,\n onPhotoDelete,\n deleteContentMode = \"popover\",\n initialImageUrl = \"\",\n}: PhotoDropzonePropsType) => {\n const { isMobile } = useBreakpoint()\n const fileInputRef = useRef<HTMLInputElement>(null)\n const deleteButtonRef = useRef<HTMLButtonElement>(null)\n const [isDragging, setIsDragging] = useState(false)\n const [isLoading, setIsLoading] = useState(false)\n const [isErrored, setIsErrored] = useState(false)\n const [imagePreviewUrl, setImagePreviewUrl] = useState(initialImageUrl)\n const [displayDeletion, setDisplayDeletion] = useState(false)\n const [showDeletePopover, setShowDeletePopover] = useState(false)\n const [isImageLoaded, setIsImageLoaded] = useState(false)\n\n const openDeletePopover = (\n event?: ReactMouseEvent | ReactKeyboardEvent | ReactTouchEvent,\n ) => {\n event && preventEventDefaults(event)\n setShowDeletePopover(true)\n }\n const closeDeletePopover = (event?: ReactMouseEvent | ReactTouchEvent) => {\n event && preventEventDefaults(event)\n setShowDeletePopover(false)\n }\n\n const onDropzoneMouseEnter = (event?: ReactMouseEvent) => {\n event && preventEventDefaults(event)\n if (imagePreviewUrl) setDisplayDeletion(true)\n }\n\n const onDropzoneMouseLeave = (event?: ReactMouseEvent) => {\n event && preventEventDefaults(event)\n if (displayDeletion && !showDeletePopover) setDisplayDeletion(false)\n }\n\n const onDropzoneClick = (event?: ReactMouseEvent | ReactTouchEvent) => {\n if (isMobile && showDeletePopover) return\n event && preventEventDefaults(event)\n if (isLoading) return\n if (isErrored) setIsErrored(false)\n if (imagePreviewUrl) {\n if (showDeletePopover) closeDeletePopover()\n return setDisplayDeletion(!displayDeletion)\n }\n fileInputRef.current?.click()\n }\n\n const onDropzoneKey = (event: ReactKeyboardEvent) => {\n if (showDeletePopover) return\n if (isEnterOrSpaceKey(event)) {\n onDropzoneClick()\n }\n }\n\n const onDeleteKey = (event: ReactKeyboardEvent) => {\n if (isEnterOrSpaceKey(event)) {\n openDeletePopover(event)\n }\n }\n\n const onDelete = () => {\n if (fileInputRef.current) fileInputRef.current.value = \"\"\n closeDeletePopover()\n setImagePreviewUrl(\"\")\n onPhotoDelete?.()\n }\n\n const onDragEnter = (event: ReactDragEvent) => {\n preventEventDefaults(event)\n if (isErrored) setIsErrored(false)\n !imagePreviewUrl && setIsDragging(true)\n }\n\n const onDragLeave = (event: ReactDragEvent) => {\n preventEventDefaults(event)\n setIsDragging(false)\n }\n\n const processFile = async (fileToProcess: File) => {\n setIsDragging(false)\n setIsErrored(false)\n setIsLoading(true)\n\n const isValidFile = await validateFile(\n fileToProcess,\n (fileToValidate, extension) => {\n const maxFileSize = ACCEPTED_MAX_SIZE_MB * 1000 * 1000\n const acceptedFileTypes = ACCEPTED_PHOTOS_TYPES\n\n if (fileToValidate.size > maxFileSize) {\n return false\n } else if (!extension || !acceptedFileTypes.includes(extension)) {\n return false\n } else {\n return true\n }\n },\n )\n\n if (isValidFile) {\n const imageSrc = URL.createObjectURL(fileToProcess)\n setImagePreviewUrl(imageSrc)\n await onDropped(fileToProcess)\n setIsLoading(false)\n } else {\n setIsLoading(false)\n setIsErrored(true)\n setTimeout(() => {\n setIsErrored(false)\n }, ERROR_DISPLAY_TIME)\n }\n }\n\n const onFileInputChanged = (event: ReactChangeEvent<HTMLInputElement>) => {\n if (event.target.files?.length) {\n processFile(event.target.files[0])\n }\n }\n\n const onDrop = (event: ReactDragEvent<HTMLLabelElement>) => {\n preventEventDefaults(event)\n if (event.dataTransfer?.files?.length && !imagePreviewUrl) {\n processFile(event.dataTransfer.files[0])\n }\n }\n\n useEffect(() => {\n if (imagePreviewUrl) setIsImageLoaded(false)\n }, [imagePreviewUrl])\n\n const onDeleteButtonClick = showDeletePopover\n ? closeDeletePopover\n : openDeletePopover\n\n return (\n <label\n className={cx(\"cobalt-photo-dropzone\", className, {\n \"cobalt-photo-dropzone--filled\": imagePreviewUrl,\n \"cobalt-photo-dropzone--dragging\": isDragging,\n \"cobalt-photo-dropzone--loading\": isLoading,\n \"cobalt-photo-dropzone--errored\": isErrored,\n \"cobalt-photo-dropzone--imageVisible\": isImageLoaded,\n })}\n onMouseEnter={onDropzoneMouseEnter}\n onMouseLeave={onDropzoneMouseLeave}\n onDragEnter={onDragEnter}\n onDragLeave={onDragLeave}\n // Not on click because we also use mouseEnter listener\n onMouseUp={onDropzoneClick}\n onTouchEnd={onDropzoneClick}\n onKeyUp={onDropzoneKey}\n onDrop={onDrop}\n // Need to reset those listeners to avoid default browser behaviour\n onDragStart={preventEventDefaults}\n onDragEnd={preventEventDefaults}\n onDragOver={preventEventDefaults}\n >\n {isErrored && (\n <div className=\"cobalt-photo-dropzone__description\">\n <ContextualWarningCircleFilledIcon color=\"error\" />\n {errorContent(ACCEPTED_TYPES_LOCALE_STRING, ACCEPTED_MAX_SIZE_MB)}\n </div>\n )}\n {isLoading && (\n <div className=\"cobalt-photo-dropzone__description\">\n <LoadingIcon />\n </div>\n )}\n {!isLoading &&\n !isErrored &&\n (imagePreviewUrl ? (\n <>\n <img\n className=\"cobalt-photo-dropzone__preview\"\n src={imagePreviewUrl}\n alt=\"Uploaded preview\"\n onLoad={() => {\n setIsImageLoaded(true)\n }}\n />\n <div>\n <button\n type=\"button\"\n className={cx(\"cobalt-photo-dropzone__delete-button\", {\n \"cobalt-photo-dropzone__delete-button--triggered\":\n displayDeletion,\n })}\n ref={deleteButtonRef}\n // Must follow the click listeners on the dropzone,\n // in order to have the correct events bubbling\n onTouchEnd={onDeleteButtonClick}\n onMouseUp={onDeleteButtonClick}\n onKeyUp={onDeleteKey}\n >\n <BinIcon color=\"onSurface\" />\n </button>\n {deleteContentMode === \"modal\" && (\n <Modal\n isOpen={showDeletePopover}\n aria-label=\"delete\"\n bodySpacing={false}\n >\n {deleteContent(onDelete, closeDeletePopover)}\n </Modal>\n )}\n\n {deleteContentMode === \"popover\" && (\n <Popover\n targetRef={deleteButtonRef}\n isOpen={showDeletePopover}\n close={closeDeletePopover}\n placement=\"left-start\"\n distance={12}\n bodySpacing={false}\n arrow\n >\n {deleteContent(onDelete, closeDeletePopover)}\n </Popover>\n )}\n </div>\n </>\n ) : (\n <div className=\"cobalt-photo-dropzone__description cobalt-photo-dropzone__description--strong\">\n {description && <div>{description}</div>}\n <PlusIcon />\n </div>\n ))}\n <input\n ref={fileInputRef}\n className=\"cobalt-photo-dropzone__hidden-input\"\n type=\"file\"\n onChange={onFileInputChanged}\n accept={ACCEPTED_PHOTOS_TYPES.map((ext) => `.${ext}`).join(\",\")}\n multiple={false}\n />\n </label>\n )\n}\n\nexport default PhotoDropzone\n"],"names":["_jsxs","_jsx","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/PhotoDropzone/index.tsx"],"sourcesContent":["import cx from \"classnames\"\nimport {\n type ChangeEvent as ReactChangeEvent,\n type DragEvent as ReactDragEvent,\n type KeyboardEvent as ReactKeyboardEvent,\n type MouseEvent as ReactMouseEvent,\n type ReactNode,\n type TouchEvent as ReactTouchEvent,\n useEffect,\n useRef,\n useState,\n} from \"react\"\nimport useBreakpoint from \"../../hooks/useBreakpoint\"\nimport {\n BinIcon,\n ContextualWarningCircleFilledIcon,\n LoadingIcon,\n PlusIcon,\n} from \"../Icon\"\nimport Modal from \"../Modal\"\nimport Popover from \"../Popover\"\nimport { validateFile } from \"../utils/validateFile\"\n\nconst ACCEPTED_MAX_SIZE_MB = 10\nconst ACCEPTED_PHOTOS_TYPES = [\"jpg\", \"jpeg\", \"png\", \"gif\"]\nconst ERROR_DISPLAY_TIME = 6000\nconst ACCEPTED_TYPES_LOCALE_STRING = ACCEPTED_PHOTOS_TYPES.join(\", \")\n\nexport type PhotoDropzonePropsType = {\n className?: string\n description?: string\n deleteContent: (onDelete: () => void, close: () => void) => ReactNode\n deleteContentMode?: \"popover\" | \"modal\"\n errorContent: (acceptedTypes: string, maxFileSize: number) => ReactNode\n onDropped: (file: File) => Promise<void> | void\n onPhotoDelete?: () => void\n initialImageUrl?: string\n}\n\nconst preventEventDefaults = (\n e: ReactDragEvent | ReactMouseEvent | ReactKeyboardEvent | ReactTouchEvent,\n) => {\n e.preventDefault?.()\n e.stopPropagation?.()\n}\n\nconst isEnterOrSpaceKey = (event: ReactKeyboardEvent) =>\n event.key === \"Enter\" || event.key === \" \"\n\nconst PhotoDropzone = ({\n className,\n description,\n deleteContent,\n errorContent,\n onDropped,\n onPhotoDelete,\n deleteContentMode = \"popover\",\n initialImageUrl = \"\",\n}: PhotoDropzonePropsType) => {\n const { isMobile } = useBreakpoint()\n const fileInputRef = useRef<HTMLInputElement>(null)\n const deleteButtonRef = useRef<HTMLButtonElement>(null)\n const [isDragging, setIsDragging] = useState(false)\n const [isLoading, setIsLoading] = useState(false)\n const [isErrored, setIsErrored] = useState(false)\n const [imagePreviewUrl, setImagePreviewUrl] = useState(initialImageUrl)\n const [displayDeletion, setDisplayDeletion] = useState(false)\n const [showDeletePopover, setShowDeletePopover] = useState(false)\n const [isImageLoaded, setIsImageLoaded] = useState(false)\n\n const openDeletePopover = (\n event?: ReactMouseEvent | ReactKeyboardEvent | ReactTouchEvent,\n ) => {\n event && preventEventDefaults(event)\n setShowDeletePopover(true)\n }\n const closeDeletePopover = (event?: ReactMouseEvent | ReactTouchEvent) => {\n event && preventEventDefaults(event)\n setShowDeletePopover(false)\n }\n\n const onDropzoneMouseEnter = (event?: ReactMouseEvent) => {\n event && preventEventDefaults(event)\n if (imagePreviewUrl) setDisplayDeletion(true)\n }\n\n const onDropzoneMouseLeave = (event?: ReactMouseEvent) => {\n event && preventEventDefaults(event)\n if (displayDeletion && !showDeletePopover) setDisplayDeletion(false)\n }\n\n const onDropzoneClick = (event?: ReactMouseEvent | ReactTouchEvent) => {\n event && preventEventDefaults(event)\n if (isMobile && showDeletePopover) return\n if (isLoading) return\n if (isErrored) setIsErrored(false)\n if (imagePreviewUrl) {\n if (showDeletePopover) closeDeletePopover()\n return setDisplayDeletion(!displayDeletion)\n }\n fileInputRef.current?.click()\n }\n\n const onDropzoneKey = (event: ReactKeyboardEvent) => {\n if (showDeletePopover) return\n if (isEnterOrSpaceKey(event)) {\n onDropzoneClick()\n }\n }\n\n const onDeleteKey = (event: ReactKeyboardEvent) => {\n if (isEnterOrSpaceKey(event)) {\n openDeletePopover(event)\n }\n }\n\n const onDelete = () => {\n if (fileInputRef.current) fileInputRef.current.value = \"\"\n closeDeletePopover()\n setImagePreviewUrl(\"\")\n onPhotoDelete?.()\n }\n\n const onDragEnter = (event: ReactDragEvent) => {\n preventEventDefaults(event)\n if (isErrored) setIsErrored(false)\n !imagePreviewUrl && setIsDragging(true)\n }\n\n const onDragLeave = (event: ReactDragEvent) => {\n preventEventDefaults(event)\n setIsDragging(false)\n }\n\n const processFile = async (fileToProcess: File) => {\n setIsDragging(false)\n setIsErrored(false)\n setIsLoading(true)\n\n const isValidFile = await validateFile(\n fileToProcess,\n (fileToValidate, extension) => {\n const maxFileSize = ACCEPTED_MAX_SIZE_MB * 1000 * 1000\n const acceptedFileTypes = ACCEPTED_PHOTOS_TYPES\n\n if (fileToValidate.size > maxFileSize) {\n return false\n } else if (!extension || !acceptedFileTypes.includes(extension)) {\n return false\n } else {\n return true\n }\n },\n )\n\n if (isValidFile) {\n const imageSrc = URL.createObjectURL(fileToProcess)\n setImagePreviewUrl(imageSrc)\n await onDropped(fileToProcess)\n setIsLoading(false)\n } else {\n setIsLoading(false)\n setIsErrored(true)\n setTimeout(() => {\n setIsErrored(false)\n }, ERROR_DISPLAY_TIME)\n }\n }\n\n const onFileInputChanged = (event: ReactChangeEvent<HTMLInputElement>) => {\n if (event.target.files?.length) {\n processFile(event.target.files[0])\n }\n }\n\n const onDrop = (event: ReactDragEvent<HTMLLabelElement>) => {\n preventEventDefaults(event)\n if (event.dataTransfer?.files?.length && !imagePreviewUrl) {\n processFile(event.dataTransfer.files[0])\n }\n }\n\n useEffect(() => {\n if (imagePreviewUrl) setIsImageLoaded(false)\n }, [imagePreviewUrl])\n\n const onDeleteButtonClick = showDeletePopover\n ? closeDeletePopover\n : openDeletePopover\n\n return (\n <label\n className={cx(\"cobalt-photo-dropzone\", className, {\n \"cobalt-photo-dropzone--filled\": imagePreviewUrl,\n \"cobalt-photo-dropzone--dragging\": isDragging,\n \"cobalt-photo-dropzone--loading\": isLoading,\n \"cobalt-photo-dropzone--errored\": isErrored,\n \"cobalt-photo-dropzone--imageVisible\": isImageLoaded,\n })}\n onMouseEnter={onDropzoneMouseEnter}\n onMouseLeave={onDropzoneMouseLeave}\n onDragEnter={onDragEnter}\n onDragLeave={onDragLeave}\n onClick={onDropzoneClick}\n onKeyUp={onDropzoneKey}\n onDrop={onDrop}\n // Need to reset those listeners to avoid default browser behaviour\n onDragStart={preventEventDefaults}\n onDragEnd={preventEventDefaults}\n onDragOver={preventEventDefaults}\n >\n {isErrored && (\n <div className=\"cobalt-photo-dropzone__description\">\n <ContextualWarningCircleFilledIcon color=\"error\" />\n {errorContent(ACCEPTED_TYPES_LOCALE_STRING, ACCEPTED_MAX_SIZE_MB)}\n </div>\n )}\n {isLoading && (\n <div className=\"cobalt-photo-dropzone__description\">\n <LoadingIcon />\n </div>\n )}\n {!isLoading &&\n !isErrored &&\n (imagePreviewUrl ? (\n <>\n <img\n className=\"cobalt-photo-dropzone__preview\"\n src={imagePreviewUrl}\n alt=\"Uploaded preview\"\n onLoad={() => {\n setIsImageLoaded(true)\n }}\n />\n <div>\n <button\n type=\"button\"\n className={cx(\"cobalt-photo-dropzone__delete-button\", {\n \"cobalt-photo-dropzone__delete-button--triggered\":\n displayDeletion,\n })}\n ref={deleteButtonRef}\n onClick={onDeleteButtonClick}\n onKeyUp={onDeleteKey}\n >\n <BinIcon color=\"onSurface\" />\n </button>\n {deleteContentMode === \"modal\" && (\n <Modal\n isOpen={showDeletePopover}\n aria-label=\"delete\"\n bodySpacing={false}\n >\n {deleteContent(onDelete, closeDeletePopover)}\n </Modal>\n )}\n\n {deleteContentMode === \"popover\" && (\n <Popover\n targetRef={deleteButtonRef}\n isOpen={showDeletePopover}\n close={closeDeletePopover}\n placement=\"left-start\"\n distance={12}\n bodySpacing={false}\n arrow\n >\n {deleteContent(onDelete, closeDeletePopover)}\n </Popover>\n )}\n </div>\n </>\n ) : (\n <div className=\"cobalt-photo-dropzone__description cobalt-photo-dropzone__description--strong\">\n {description && <div>{description}</div>}\n <PlusIcon />\n </div>\n ))}\n <input\n ref={fileInputRef}\n className=\"cobalt-photo-dropzone__hidden-input\"\n type=\"file\"\n onChange={onFileInputChanged}\n // Prevent the bubbled click from re-entering the label's onClick,\n // which would cancel the file dialog via preventDefault.\n onClick={(event) => event.stopPropagation()}\n accept={ACCEPTED_PHOTOS_TYPES.map((ext) => `.${ext}`).join(\",\")}\n multiple={false}\n />\n </label>\n )\n}\n\nexport default PhotoDropzone\n"],"names":["_jsxs","_jsx","_Fragment"],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ var crosshover = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"m14.45 15.75-5.912 5.913-1.326-1.326 3.65-3.65H2.25v-1.875h8.612l-3.65-3.65 1.326-1.325zm2.338-12.087-3.65 3.65h8.612v1.875h-8.612l3.65 3.65-1.326 1.325L9.55 8.25l5.913-5.913z\"/></svg>";
2
+
3
+ export { crosshover as default };
4
+ //# sourceMappingURL=crosshover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crosshover.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m14.45 15.75-5.912 5.913-1.326-1.326 3.65-3.65H2.25v-1.875h8.612l-3.65-3.65 1.326-1.325zM16.788 3.663l-3.65 3.65h8.612v1.875h-8.612l3.65 3.65-1.326 1.325L9.55 8.25l5.913-5.913z"/></svg>
@@ -0,0 +1,4 @@
1
+ var handDollar = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M5.683 14.489c.493 0 .894.4.894.894v5.723c0 .493-.4.894-.894.894H3.894A.894.894 0 0 1 3 21.106v-5.723c0-.494.4-.894.894-.894zm6.08-.001a2.68 2.68 0 0 1 2.53 1.799l-.11.07a5 5 0 0 1-2.436.636h-.341a.537.537 0 0 0 0 1.073h.341a6.06 6.06 0 0 0 2.97-.779l.011-.005.01-.007 3.46-2.155a2 2 0 0 1 1.636-.221c.233.128.444.306.602.544.323.484.285 1.033.13 1.473-.154.438-.444.84-.758 1.13l-2.523 2.343A6.03 6.03 0 0 1 13.183 22h-.88a8.3 8.3 0 0 1-2.615-.425l-2.038-.679V15.41l1.123-.561c.472-.236.992-.36 1.52-.36z\"/><path fill-rule=\"evenodd\" d=\"M12.12 2a5.544 5.544 0 1 1 0 11.088A5.544 5.544 0 0 1 12.12 2m-.338 3.077c-.701.137-1.318.564-1.318 1.348 0 1.66 2.542 1.294 2.543 2.154 0 .305-.285.564-.81.564-.57 0-1.04-.22-1.41-.525l-.592.654c.439.427 1.048.67 1.587.754v.792h.924v-.807c.809-.168 1.34-.746 1.34-1.446 0-1.69-2.54-1.463-2.541-2.132 0-.275.292-.488.793-.488.455 0 .848.153 1.14.35l.493-.723a2.8 2.8 0 0 0-1.225-.502v-.8h-.924z\" clip-rule=\"evenodd\"/></svg>";
2
+
3
+ export { handDollar as default };
4
+ //# sourceMappingURL=hand-dollar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hand-dollar.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M5.683 14.489c.493 0 .894.4.894.894v5.723c0 .493-.4.894-.894.894H3.894A.894.894 0 0 1 3 21.106v-5.723c0-.494.4-.894.894-.894zM11.763 14.488c1.172 0 2.165.752 2.53 1.799l-.11.07a5 5 0 0 1-2.436.636h-.341a.537.537 0 0 0 0 1.073h.341a6.06 6.06 0 0 0 2.97-.779l.011-.005.01-.007 3.46-2.155a2 2 0 0 1 1.636-.221c.233.128.444.306.602.544.323.484.285 1.033.13 1.473-.154.438-.444.84-.758 1.13l-2.523 2.343A6.03 6.03 0 0 1 13.183 22h-.88a8.3 8.3 0 0 1-2.615-.425l-2.038-.679V15.41l1.123-.561c.472-.236.992-.36 1.52-.36z"/><path fill-rule="evenodd" d="M12.12 2a5.544 5.544 0 1 1 0 11.088A5.544 5.544 0 0 1 12.12 2m-.338 3.077c-.701.137-1.318.564-1.318 1.348 0 1.66 2.542 1.294 2.543 2.154 0 .305-.285.564-.81.564-.57 0-1.04-.22-1.41-.525l-.592.654c.439.427 1.048.67 1.587.754v.792h.924v-.807c.809-.168 1.34-.746 1.34-1.446 0-1.69-2.54-1.463-2.541-2.132 0-.275.292-.488.793-.488.455 0 .848.153 1.14.35l.493-.723a2.8 2.8 0 0 0-1.225-.502v-.8h-.924z" clip-rule="evenodd"/></svg>
package/icons/index.js CHANGED
@@ -90,6 +90,7 @@ export { default as coupe } from './coupe.js';
90
90
  export { default as creditCard } from './credit-card.js';
91
91
  export { default as creditCardAdd } from './credit-card-add.js';
92
92
  export { default as creditCardError } from './credit-card-error.js';
93
+ export { default as crosshover } from './crosshover.js';
93
94
  export { default as cruiseControl } from './cruise-control.js';
94
95
  export { default as dashcam } from './dashcam.js';
95
96
  export { default as directions } from './directions.js';
@@ -127,6 +128,7 @@ export { default as geolocation } from './geolocation.js';
127
128
  export { default as gift } from './gift.js';
128
129
  export { default as gps } from './gps.js';
129
130
  export { default as graphUp } from './graph-up.js';
131
+ export { default as handDollar } from './hand-dollar.js';
130
132
  export { default as healing } from './healing.js';
131
133
  export { default as heart } from './heart.js';
132
134
  export { default as height } from './height.js';
@@ -199,6 +201,7 @@ export { default as optionSnowTire } from './option-snow-tire.js';
199
201
  export { default as optionWheelchairAccessible } from './option-wheelchair-accessible.js';
200
202
  export { default as paperclip } from './paperclip.js';
201
203
  export { default as parking } from './parking.js';
204
+ export { default as party } from './party.js';
202
205
  export { default as passport } from './passport.js';
203
206
  export { default as payments } from './payments.js';
204
207
  export { default as pencil } from './pencil.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/icons/party.js ADDED
@@ -0,0 +1,4 @@
1
+ var party = "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M7.102 20.272 2.92 22.064a.75.75 0 0 1-.987-.978l1.76-4.223zm4.463-1.912-3.35 1.434L4.16 15.74l1.407-3.377zM9.334 6.787c.491.036 1.024.205 1.554.45q.205.096.417.21c-.186.39-.293.78-.357 1.118a6 6 0 0 0-.056.372 7 7 0 0 0-.636-.34c-.436-.201-.784-.296-1.03-.314a.7.7 0 0 0-.237.015.2.2 0 0 0-.036.014l-.005.002-.005.007a.2.2 0 0 0-.014.036.7.7 0 0 0-.014.237c.018.246.112.595.315 1.03.402.868 1.16 1.933 2.193 2.966s2.099 1.79 2.966 2.193c.436.203.785.298 1.03.315a.7.7 0 0 0 .237-.014q.03-.009.036-.014.003 0 .005-.003l.002-.002.003-.004.013-.036a.7.7 0 0 0 .015-.238c-.017-.246-.113-.594-.315-1.03a8.3 8.3 0 0 0-.75-1.264c.707.619 1.502 1.106 2.374 1.323l.008.001c.095.295.16.585.18.862.034.49-.06 1.04-.469 1.448-.307.307-.693.436-1.074.467l-3.006 1.288-6.643-6.642 1.523-3.654.042-.084a.75.75 0 0 1 .363-.32c.4-.347.912-.428 1.37-.395m13.273 8.762-.961 1.152-2.25-1.875.96-1.152z\"/><path fill-rule=\"evenodd\" d=\"M17.79 2.598c1.263 0 2.404.751 3.152 1.377a10 10 0 0 1 1.196 1.19l.072.087.02.026.007.007.001.002v.002l-.589.463-.59.463-.002-.003-.012-.014-.054-.066a8.617 8.617 0 0 0-1.012-1.007c-.689-.576-1.479-1.027-2.19-1.027-.782 0-1.256.264-1.595.625-.367.39-.617.934-.84 1.565q.17-.015.341-.02c1.005-.016 2.082.303 2.859 1.08.68.68 1.197 1.53 1.428 2.34.218.763.244 1.767-.503 2.395-.598.503-1.348.65-2.124.458-.745-.184-1.491-.673-2.21-1.392a5.04 5.04 0 0 1-1.337-2.408q-.057.145-.095.343a4.31 4.31 0 0 0-.038 1.093 8 8 0 0 0 .21 1.291l.02.079.005.018.001.003-.721.205-.722.204v-.001l-.001-.003-.003-.009-.007-.03q-.011-.037-.027-.102a9.477 9.477 0 0 1-.25-1.542 5.8 5.8 0 0 1 .059-1.483c.094-.498.293-1.041.711-1.46a3.4 3.4 0 0 1 .754-.563c.045-.347.123-.678.23-.981.238-.674.573-1.477 1.168-2.109.625-.664 1.495-1.096 2.687-1.096m-2.069 5.17a3 3 0 0 0-.546.06c.071.79.386 1.615 1.03 2.26.611.61 1.127.902 1.511.997.353.088.6.016.798-.15.05-.043.192-.253.025-.835-.152-.535-.522-1.167-1.046-1.691-.427-.428-1.078-.653-1.772-.64\" clip-rule=\"evenodd\"/><path d=\"m23.261 8.518-1.875 1.125-.772-1.286 1.875-1.125zM11.994 5.157l-1.488.186-.375-3 1.488-.186z\"/></svg>";
2
+
3
+ export { party as default };
4
+ //# sourceMappingURL=party.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"party.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7.102 20.272 2.92 22.064a.75.75 0 0 1-.987-.978l1.76-4.223zM11.565 18.36l-3.35 1.434L4.16 15.74l1.407-3.377zM9.334 6.787c.491.036 1.024.205 1.554.45q.205.096.417.21c-.186.39-.293.78-.357 1.118a6 6 0 0 0-.056.372 7 7 0 0 0-.636-.34c-.436-.201-.784-.296-1.03-.314a.7.7 0 0 0-.237.015.2.2 0 0 0-.036.014q-.005.001-.005.002l-.005.007a.2.2 0 0 0-.014.036.7.7 0 0 0-.014.237c.018.246.112.595.315 1.03.402.868 1.16 1.933 2.193 2.966s2.099 1.79 2.966 2.193c.436.203.785.298 1.03.315a.7.7 0 0 0 .237-.014q.03-.009.036-.014.003 0 .005-.003l.002-.002.003-.004.013-.036a.7.7 0 0 0 .015-.238c-.017-.246-.113-.594-.315-1.03a8.3 8.3 0 0 0-.75-1.264c.707.619 1.502 1.106 2.374 1.323l.008.001c.095.295.16.585.18.862.034.49-.06 1.04-.469 1.448-.307.307-.693.436-1.074.467l-3.006 1.288-6.643-6.642 1.523-3.654.042-.084a.75.75 0 0 1 .363-.32c.4-.347.912-.428 1.37-.395M22.606 15.549l-.961 1.152-2.25-1.875.96-1.152z"/><path fill-rule="evenodd" d="M17.79 2.598c1.263 0 2.404.751 3.152 1.377a10 10 0 0 1 1.196 1.19l.072.087q.013.016.02.026l.007.007.001.002v.002l-.589.463-.59.463-.002-.003-.012-.014-.054-.066a8.617 8.617 0 0 0-1.012-1.007c-.689-.576-1.479-1.027-2.19-1.027-.782 0-1.256.264-1.595.625-.367.39-.617.934-.84 1.565q.17-.015.341-.02c1.005-.016 2.082.303 2.859 1.08.68.68 1.197 1.53 1.428 2.34.218.763.244 1.767-.503 2.395-.598.503-1.348.65-2.124.458-.745-.184-1.491-.673-2.21-1.392a5.04 5.04 0 0 1-1.337-2.408q-.057.145-.095.343c-.062.329-.067.711-.038 1.093a8 8 0 0 0 .21 1.291l.02.079.005.018.001.003-.721.205-.722.204v-.001l-.001-.003-.003-.009-.007-.03q-.011-.037-.027-.102a9.477 9.477 0 0 1-.25-1.542 5.8 5.8 0 0 1 .059-1.483c.094-.498.293-1.041.711-1.46a3.4 3.4 0 0 1 .754-.563c.045-.347.123-.678.23-.981.238-.674.573-1.477 1.168-2.109.625-.664 1.495-1.096 2.687-1.096m-2.069 5.17a3 3 0 0 0-.546.06c.071.79.386 1.615 1.03 2.26.611.61 1.127.902 1.511.997.353.088.6.016.798-.15.05-.043.192-.253.025-.835-.152-.535-.522-1.167-1.046-1.691-.427-.428-1.078-.653-1.772-.64" clip-rule="evenodd"/><path d="m23.261 8.518-1.875 1.125-.772-1.286 1.875-1.125zM11.994 5.157l-1.488.186-.375-3 1.488-.186z"/></svg>
package/index.js CHANGED
@@ -150,6 +150,7 @@ export { default as CoupeIcon } from './components/Icon/__generated__/CoupeIcon.
150
150
  export { default as CreditCardAddIcon } from './components/Icon/__generated__/CreditCardAddIcon.js';
151
151
  export { default as CreditCardErrorIcon } from './components/Icon/__generated__/CreditCardErrorIcon.js';
152
152
  export { default as CreditCardIcon } from './components/Icon/__generated__/CreditCardIcon.js';
153
+ export { default as CrosshoverIcon } from './components/Icon/__generated__/CrosshoverIcon.js';
153
154
  export { default as CruiseControlIcon } from './components/Icon/__generated__/CruiseControlIcon.js';
154
155
  export { default as DashcamIcon } from './components/Icon/__generated__/DashcamIcon.js';
155
156
  export { default as DirectionsIcon } from './components/Icon/__generated__/DirectionsIcon.js';
@@ -187,6 +188,7 @@ export { default as GeolocationIcon } from './components/Icon/__generated__/Geol
187
188
  export { default as GiftIcon } from './components/Icon/__generated__/GiftIcon.js';
188
189
  export { default as GpsIcon } from './components/Icon/__generated__/GpsIcon.js';
189
190
  export { default as GraphUpIcon } from './components/Icon/__generated__/GraphUpIcon.js';
191
+ export { default as HandDollarIcon } from './components/Icon/__generated__/HandDollarIcon.js';
190
192
  export { default as HealingIcon } from './components/Icon/__generated__/HealingIcon.js';
191
193
  export { default as HeartIcon } from './components/Icon/__generated__/HeartIcon.js';
192
194
  export { default as HeightIcon } from './components/Icon/__generated__/HeightIcon.js';
@@ -258,6 +260,7 @@ export { default as OptionSnowTireIcon } from './components/Icon/__generated__/O
258
260
  export { default as OptionWheelchairAccessibleIcon } from './components/Icon/__generated__/OptionWheelchairAccessibleIcon.js';
259
261
  export { default as PaperclipIcon } from './components/Icon/__generated__/PaperclipIcon.js';
260
262
  export { default as ParkingIcon } from './components/Icon/__generated__/ParkingIcon.js';
263
+ export { default as PartyIcon } from './components/Icon/__generated__/PartyIcon.js';
261
264
  export { default as PassportIcon } from './components/Icon/__generated__/PassportIcon.js';
262
265
  export { default as PaymentsIcon } from './components/Icon/__generated__/PaymentsIcon.js';
263
266
  export { default as PencilIcon } from './components/Icon/__generated__/PencilIcon.js';
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@drivy/cobalt",
3
- "version": "2.16.3",
3
+ "version": "2.18.0",
4
4
  "description": "Opinionated design system for Drivy's projects.",
5
5
  "main": "src/index.js",
6
6
  "types": "types/src/index.d.ts",
@@ -27,8 +27,8 @@
27
27
  "date-fns": "2.30.0",
28
28
  "lodash.throttle": "4.1.1",
29
29
  "media-typer": "1.1.0",
30
- "nanoid": "5.1.7",
31
- "postcss": "8.5.8",
30
+ "nanoid": "5.1.11",
31
+ "postcss": "8.5.14",
32
32
  "tailwindcss": "3.4.19",
33
33
  "tippy.js": "6.3.7"
34
34
  },
@@ -38,21 +38,18 @@
38
38
  },
39
39
  "devDependencies": {
40
40
  "@biomejs/biome": "2.4.4",
41
- "@getaround-eu/babel-preset-app": "1.4.6",
41
+ "@getaround-eu/babel-preset-app": "2.0.0",
42
42
  "@getaround-eu/biome-config": "1.0.0",
43
43
  "@getaround-eu/stylelint-config": "4.0.1",
44
44
  "@getaround-eu/ts-config": "2.2.1",
45
45
  "@rollup/plugin-commonjs": "28.0.9",
46
46
  "@rollup/plugin-json": "6.1.0",
47
- "@storybook/addon-essentials": "7.6.24",
48
- "@storybook/addons": "7.6.17",
49
- "@storybook/blocks": "7.6.24",
50
- "@storybook/react": "7.6.21",
51
- "@storybook/react-webpack5": "7.6.21",
47
+ "@storybook/addon-docs": "10.3.6",
48
+ "@storybook/addon-webpack5-compiler-babel": "^4.0.1",
49
+ "@storybook/react-webpack5": "10.3.5",
52
50
  "@svgr/cli": "7.0.0",
53
51
  "@testing-library/jest-dom": "6.9.1",
54
52
  "@testing-library/react": "16.3.2",
55
- "@testing-library/react-hooks": "8.0.1",
56
53
  "@types/fs-extra": "11.0.4",
57
54
  "@types/jest": "29.5.14",
58
55
  "@types/lodash.throttle": "4.1.9",
@@ -60,10 +57,9 @@
60
57
  "@types/node": "24.12.2",
61
58
  "@types/react": "18.3.28",
62
59
  "@types/react-dom": "18.3.7",
63
- "autoprefixer": "10.4.27",
64
- "core-js": "3.49.0",
60
+ "@types/react-syntax-highlighter": "^15.5.13",
61
+ "autoprefixer": "10.5.0",
65
62
  "css-loader": "7.1.4",
66
- "file-loader": "6.2.0",
67
63
  "fs-extra": "11.3.4",
68
64
  "html-entities": "2.6.0",
69
65
  "jest": "29.7.0",
@@ -72,27 +68,25 @@
72
68
  "np": "10.3.0",
73
69
  "postcss-flexbugs-fixes": "5.0.2",
74
70
  "postcss-loader": "8.2.1",
75
- "raw-loader": "4.0.2",
76
71
  "react": "18.3.1",
77
72
  "react-dom": "18.3.1",
78
73
  "react-syntax-highlighter": "15.6.6",
79
74
  "react-test-renderer": "18.3.1",
80
75
  "react-textarea-autosize": "8.5.9",
81
- "regenerator-runtime": "0.14.1",
82
- "remark-gfm": "^3.0.1",
76
+ "remark-gfm": "^4.0.1",
83
77
  "rollup": "2.80.0",
84
78
  "rollup-plugin-copy": "3.5.0",
85
79
  "rollup-plugin-svgo": "2.0.0",
86
- "rollup-plugin-typescript2": "0.36.0",
87
- "sass": "1.98.0",
80
+ "rollup-plugin-typescript2": "0.37.0",
81
+ "sass": "1.99.0",
88
82
  "sass-loader": "13.3.3",
89
83
  "sharp-cli": "5.2.0",
90
- "storybook": "7.6.24",
84
+ "storybook": "10.3.6",
91
85
  "style-loader": "4.0.0",
92
86
  "stylelint": "17.5.0",
93
87
  "svg2vectordrawable": "2.9.1",
94
88
  "svgo": "3.3.3",
95
- "ts-jest": "29.4.6",
89
+ "ts-jest": "29.4.9",
96
90
  "typescript": "5.9.3"
97
91
  },
98
92
  "keywords": [
package/tokens/icons.js CHANGED
@@ -91,6 +91,7 @@ const icons = {
91
91
  creditCardAdd: "credit-card-add.svg",
92
92
  creditCardError: "credit-card-error.svg",
93
93
  creditCard: "credit-card.svg",
94
+ crosshover: "crosshover.svg",
94
95
  cruiseControl: "cruise-control.svg",
95
96
  dashcam: "dashcam.svg",
96
97
  directions: "directions.svg",
@@ -128,6 +129,7 @@ const icons = {
128
129
  gift: "gift.svg",
129
130
  gps: "gps.svg",
130
131
  graphUp: "graph-up.svg",
132
+ handDollar: "hand-dollar.svg",
131
133
  healing: "healing.svg",
132
134
  heart: "heart.svg",
133
135
  height: "height.svg",
@@ -200,6 +202,7 @@ const icons = {
200
202
  optionWheelchairAccessible: "option-wheelchair-accessible.svg",
201
203
  paperclip: "paperclip.svg",
202
204
  parking: "parking.svg",
205
+ party: "party.svg",
203
206
  passport: "passport.svg",
204
207
  payments: "payments.svg",
205
208
  pencil: "pencil.svg",
@@ -1 +1 @@
1
- {"version":3,"file":"icons.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"icons.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,9 @@
1
+ import type { IconColorsType } from "../";
2
+ export type IconProps = {
3
+ color?: IconColorsType;
4
+ size?: 16 | 20 | 24 | 32;
5
+ contained?: boolean;
6
+ className?: string;
7
+ };
8
+ declare const CrosshoverIcon: ({ color, size, contained, className, }: IconProps) => import("react/jsx-runtime").JSX.Element;
9
+ export default CrosshoverIcon;
@@ -0,0 +1,9 @@
1
+ import type { IconColorsType } from "../";
2
+ export type IconProps = {
3
+ color?: IconColorsType;
4
+ size?: 16 | 20 | 24 | 32;
5
+ contained?: boolean;
6
+ className?: string;
7
+ };
8
+ declare const HandDollarIcon: ({ color, size, contained, className, }: IconProps) => import("react/jsx-runtime").JSX.Element;
9
+ export default HandDollarIcon;
@@ -0,0 +1,9 @@
1
+ import type { IconColorsType } from "../";
2
+ export type IconProps = {
3
+ color?: IconColorsType;
4
+ size?: 16 | 20 | 24 | 32;
5
+ contained?: boolean;
6
+ className?: string;
7
+ };
8
+ declare const PartyIcon: ({ color, size, contained, className, }: IconProps) => import("react/jsx-runtime").JSX.Element;
9
+ export default PartyIcon;
@@ -90,6 +90,7 @@ export { default as CoupeIcon } from "./CoupeIcon";
90
90
  export { default as CreditCardAddIcon } from "./CreditCardAddIcon";
91
91
  export { default as CreditCardErrorIcon } from "./CreditCardErrorIcon";
92
92
  export { default as CreditCardIcon } from "./CreditCardIcon";
93
+ export { default as CrosshoverIcon } from "./CrosshoverIcon";
93
94
  export { default as CruiseControlIcon } from "./CruiseControlIcon";
94
95
  export { default as DashcamIcon } from "./DashcamIcon";
95
96
  export { default as DirectionsIcon } from "./DirectionsIcon";
@@ -127,6 +128,7 @@ export { default as GeolocationIcon } from "./GeolocationIcon";
127
128
  export { default as GiftIcon } from "./GiftIcon";
128
129
  export { default as GpsIcon } from "./GpsIcon";
129
130
  export { default as GraphUpIcon } from "./GraphUpIcon";
131
+ export { default as HandDollarIcon } from "./HandDollarIcon";
130
132
  export { default as HealingIcon } from "./HealingIcon";
131
133
  export { default as HeartIcon } from "./HeartIcon";
132
134
  export { default as HeightIcon } from "./HeightIcon";
@@ -199,6 +201,7 @@ export { default as OptionSnowTireIcon } from "./OptionSnowTireIcon";
199
201
  export { default as OptionWheelchairAccessibleIcon } from "./OptionWheelchairAccessibleIcon";
200
202
  export { default as PaperclipIcon } from "./PaperclipIcon";
201
203
  export { default as ParkingIcon } from "./ParkingIcon";
204
+ export { default as PartyIcon } from "./PartyIcon";
202
205
  export { default as PassportIcon } from "./PassportIcon";
203
206
  export { default as PaymentsIcon } from "./PaymentsIcon";
204
207
  export { default as PencilIcon } from "./PencilIcon";
@@ -90,6 +90,7 @@ export { default as coupe } from "./coupe.svg";
90
90
  export { default as creditCard } from "./credit-card.svg";
91
91
  export { default as creditCardAdd } from "./credit-card-add.svg";
92
92
  export { default as creditCardError } from "./credit-card-error.svg";
93
+ export { default as crosshover } from "./crosshover.svg";
93
94
  export { default as cruiseControl } from "./cruise-control.svg";
94
95
  export { default as dashcam } from "./dashcam.svg";
95
96
  export { default as directions } from "./directions.svg";
@@ -127,6 +128,7 @@ export { default as geolocation } from "./geolocation.svg";
127
128
  export { default as gift } from "./gift.svg";
128
129
  export { default as gps } from "./gps.svg";
129
130
  export { default as graphUp } from "./graph-up.svg";
131
+ export { default as handDollar } from "./hand-dollar.svg";
130
132
  export { default as healing } from "./healing.svg";
131
133
  export { default as heart } from "./heart.svg";
132
134
  export { default as height } from "./height.svg";
@@ -199,6 +201,7 @@ export { default as optionSnowTire } from "./option-snow-tire.svg";
199
201
  export { default as optionWheelchairAccessible } from "./option-wheelchair-accessible.svg";
200
202
  export { default as paperclip } from "./paperclip.svg";
201
203
  export { default as parking } from "./parking.svg";
204
+ export { default as party } from "./party.svg";
202
205
  export { default as passport } from "./passport.svg";
203
206
  export { default as payments } from "./payments.svg";
204
207
  export { default as pencil } from "./pencil.svg";
@@ -112,6 +112,7 @@ export declare const icons: {
112
112
  creditCardAdd: string;
113
113
  creditCardError: string;
114
114
  creditCard: string;
115
+ crosshover: string;
115
116
  cruiseControl: string;
116
117
  dashcam: string;
117
118
  directions: string;
@@ -149,6 +150,7 @@ export declare const icons: {
149
150
  gift: string;
150
151
  gps: string;
151
152
  graphUp: string;
153
+ handDollar: string;
152
154
  healing: string;
153
155
  heart: string;
154
156
  height: string;
@@ -221,6 +223,7 @@ export declare const icons: {
221
223
  optionWheelchairAccessible: string;
222
224
  paperclip: string;
223
225
  parking: string;
226
+ party: string;
224
227
  passport: string;
225
228
  payments: string;
226
229
  pencil: string;