@purpurds/listbox 7.6.0 → 7.7.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.
- package/dist/LICENSE.txt +2 -2
- package/dist/listbox-item.d.ts +3 -3
- package/dist/listbox-item.d.ts.map +1 -1
- package/dist/listbox.cjs.js +4 -4
- package/dist/listbox.cjs.js.map +1 -1
- package/dist/listbox.d.ts +5 -5
- package/dist/listbox.d.ts.map +1 -1
- package/dist/listbox.es.js +115 -129
- package/dist/listbox.es.js.map +1 -1
- package/package.json +5 -4
- package/src/listbox-item.tsx +39 -40
- package/src/listbox.tsx +11 -12
package/dist/LICENSE.txt
CHANGED
|
@@ -33,13 +33,13 @@ SOFTWARE.
|
|
|
33
33
|
---
|
|
34
34
|
|
|
35
35
|
Name: @purpurds/icon
|
|
36
|
-
Version: 7.
|
|
36
|
+
Version: 7.6.1
|
|
37
37
|
License: AGPL-3.0-only
|
|
38
38
|
Private: false
|
|
39
39
|
|
|
40
40
|
---
|
|
41
41
|
|
|
42
42
|
Name: @purpurds/paragraph
|
|
43
|
-
Version: 7.
|
|
43
|
+
Version: 7.6.1
|
|
44
44
|
License: AGPL-3.0-only
|
|
45
45
|
Private: false
|
package/dist/listbox-item.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { default as React, ReactElement, ReactNode } from 'react';
|
|
2
|
+
import { BaseProps } from '@purpurds/common-types';
|
|
2
3
|
|
|
3
|
-
export type ListboxItemProps = Omit<
|
|
4
|
-
"data-testid"?: string;
|
|
4
|
+
export type ListboxItemProps = Omit<BaseProps<"li">, "role"> & {
|
|
5
5
|
highlighted?: boolean;
|
|
6
6
|
hovered?: boolean;
|
|
7
7
|
key?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listbox-item.d.ts","sourceRoot":"","sources":["../src/listbox-item.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"listbox-item.d.ts","sourceRoot":"","sources":["../src/listbox-item.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAA8B,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC7F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAWxD,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,GAAG;IAC7D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,WAAW,qGAiCtB,CAAC;AAEH,eAAO,MAAM,aAAa,WAAY,SAAS,KAAG,KAAK,IAAI,YAAY,CAAC,gBAAgB,CAChB,CAAC"}
|
package/dist/listbox.cjs.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),c=require("react");function q(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var h={exports:{}};/*!
|
|
2
2
|
Copyright (c) 2018 Jed Watson.
|
|
3
3
|
Licensed under the MIT License (MIT), see
|
|
4
4
|
http://jedwatson.github.io/classnames
|
|
5
|
-
*/var
|
|
5
|
+
*/var g;function L(){return g||(g=1,function(e){(function(){var i={}.hasOwnProperty;function a(){for(var r="",t=0;t<arguments.length;t++){var p=arguments[t];p&&(r=n(r,u.call(this,p)))}return r}function u(r){if(typeof r=="string"||typeof r=="number")return this&&this[r]||r;if(typeof r!="object")return"";if(Array.isArray(r))return a.apply(this,r);if(r.toString!==Object.prototype.toString&&!r.toString.toString().includes("[native code]"))return r.toString();var t="";for(var p in r)i.call(r,p)&&r[p]&&(t=n(t,this&&this[p]||p));return t}function n(r,t){return t?r?r+" "+t:r+t:r}e.exports?(a.default=a,e.exports=a):window.classNames=a})()}(h)),h.exports}var R=L();const $=q(R),w={"purpur-listbox":"_purpur-listbox_6c8yl_1","purpur-listbox-item":"_purpur-listbox-item_6c8yl_15","purpur-listbox-item--hovered":"_purpur-listbox-item--hovered_6c8yl_29","purpur-listbox-item--highlighted":"_purpur-listbox-item--highlighted_6c8yl_37","purpur-listbox-item--noninteractive":"_purpur-listbox-item--noninteractive_6c8yl_41","purpur-listbox-item--disabled":"_purpur-listbox-item--disabled_6c8yl_44","purpur-listbox-item__icon":"_purpur-listbox-item__icon_6c8yl_51"};function I(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var m={exports:{}};/*!
|
|
6
6
|
Copyright (c) 2018 Jed Watson.
|
|
7
7
|
Licensed under the MIT License (MIT), see
|
|
8
8
|
http://jedwatson.github.io/classnames
|
|
9
|
-
*/var
|
|
9
|
+
*/var f;function B(){return f||(f=1,function(e){(function(){var i={}.hasOwnProperty;function a(){for(var r="",t=0;t<arguments.length;t++){var p=arguments[t];p&&(r=n(r,u.call(this,p)))}return r}function u(r){if(typeof r=="string"||typeof r=="number")return this&&this[r]||r;if(typeof r!="object")return"";if(Array.isArray(r))return a.apply(this,r);if(r.toString!==Object.prototype.toString&&!r.toString.toString().includes("[native code]"))return r.toString();var t="";for(var p in r)i.call(r,p)&&r[p]&&(t=n(t,this&&this[p]||p));return t}function n(r,t){return t?r?r+" "+t:r+t:r}e.exports?(a.default=a,e.exports=a):window.classNames=a})()}(m)),m.exports}var C=B();const M=I(C),k={"purpur-icon":"_purpur-icon_8u1lq_1","purpur-icon--xxs":"_purpur-icon--xxs_8u1lq_4","purpur-icon--xs":"_purpur-icon--xs_8u1lq_8","purpur-icon--sm":"_purpur-icon--sm_8u1lq_12","purpur-icon--md":"_purpur-icon--md_8u1lq_16","purpur-icon--lg":"_purpur-icon--lg_8u1lq_20","purpur-icon--xl":"_purpur-icon--xl_8u1lq_24"},H=M.bind(k),v="purpur-icon",E="md",T=e=>e.filter(i=>Object.keys(i).length>=1).map(i=>`${i.name}="${i.value}"`).join(" "),z=({content:e="",title:i}={})=>{const a=[{name:"xmlns",value:"http://www.w3.org/2000/svg"},{name:"fill",value:"currentColor"},{name:"viewBox",value:"0 0 24 24"},i?{name:"role",value:"img"}:{name:"aria-hidden",value:"true"}],u=i?`<title>${i}</title>`:"";return`<svg ${T(a)}>${u}${e}</svg>`},G=e=>e.replace(/<(\/?)svg([^>]*)>/g,"").trim(),j=({svg:e,allyTitle:i,className:a,size:u=E,...n})=>{const r=z({content:G(e.svg),title:i}),t=H(a,v,`${v}--${u}`);return s.jsx("span",{className:t,dangerouslySetInnerHTML:{__html:r},...n})};j.displayName="Icon";const V={name:"checkmark",svg:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path fill-rule="evenodd" d="M21.06 3.795a.9.9 0 0 1 .145 1.264l-11.5 14.5a.9.9 0 0 1-1.341.077l-6-6a.9.9 0 0 1 1.272-1.272l5.286 5.286L19.795 3.94a.9.9 0 0 1 1.264-.145Z" clip-rule="evenodd"/></svg>',keywords:["checkmark"],category:"utility"},N=e=>s.jsx(j,{...e,svg:V});N.displayName="IconCheckmark";function D(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var b={exports:{}};/*!
|
|
10
10
|
Copyright (c) 2018 Jed Watson.
|
|
11
11
|
Licensed under the MIT License (MIT), see
|
|
12
12
|
http://jedwatson.github.io/classnames
|
|
13
|
-
*/var
|
|
13
|
+
*/var x;function F(){return x||(x=1,function(e){(function(){var i={}.hasOwnProperty;function a(){for(var r="",t=0;t<arguments.length;t++){var p=arguments[t];p&&(r=n(r,u.call(this,p)))}return r}function u(r){if(typeof r=="string"||typeof r=="number")return this&&this[r]||r;if(typeof r!="object")return"";if(Array.isArray(r))return a.apply(this,r);if(r.toString!==Object.prototype.toString&&!r.toString.toString().includes("[native code]"))return r.toString();var t="";for(var p in r)i.call(r,p)&&r[p]&&(t=n(t,this&&this[p]||p));return t}function n(r,t){return t?r?r+" "+t:r+t:r}e.exports?(a.default=a,e.exports=a):window.classNames=a})()}(b)),b.exports}var Z=F();const J=D(Z),K={"purpur-paragraph":"_purpur-paragraph_1rh57_1","purpur-paragraph--disabled":"_purpur-paragraph--disabled_1rh57_7","purpur-paragraph--hyphens":"_purpur-paragraph--hyphens_1rh57_10","purpur-paragraph--negative":"_purpur-paragraph--negative_1rh57_13","purpur-paragraph--paragraph-100":"_purpur-paragraph--paragraph-100_1rh57_16","purpur-paragraph--paragraph-100-medium":"_purpur-paragraph--paragraph-100-medium_1rh57_22","purpur-paragraph--paragraph-100-bold":"_purpur-paragraph--paragraph-100-bold_1rh57_29","purpur-paragraph--paragraph-200":"_purpur-paragraph--paragraph-200_1rh57_36","purpur-paragraph--preamble-100":"_purpur-paragraph--preamble-100_1rh57_42","purpur-paragraph--preamble-200":"_purpur-paragraph--preamble-200_1rh57_48","purpur-paragraph--additional-100":"_purpur-paragraph--additional-100_1rh57_54","purpur-paragraph--additional-100-medium":"_purpur-paragraph--additional-100-medium_1rh57_60","purpur-paragraph--overline-100":"_purpur-paragraph--overline-100_1rh57_67","purpur-paragraph--overline-200":"_purpur-paragraph--overline-200_1rh57_75"},Q=J.bind(K),U={PARAGRAPH100:"paragraph-100"},l="purpur-paragraph",S=({children:e,className:i,disabled:a,enableHyphenation:u=!1,negative:n=!1,variant:r=U.PARAGRAPH100,...t})=>{const p=Q(i,l,`${l}--${r}`,{[`${l}--hyphens`]:u,[`${l}--disabled`]:a,[`${l}--negative`]:n});return s.jsx("p",{...t,className:p,children:e})};S.displayName="Paragraph";const y=$.bind(w),o="purpur-listbox",_=c.forwardRef((e,i)=>{const{disabled:a,highlighted:u,hovered:n,selected:r,children:t,className:p,noninteractive:O,...A}=e,P=y(`${o}-item`,p,{[`${o}-item--highlighted`]:u,[`${o}-item--selected`]:r,[`${o}-item--hovered`]:n,[`${o}-item--disabled`]:a,[`${o}-item--noninteractive`]:O});return s.jsxs("li",{...A,ref:i,className:P,"aria-selected":!!r,role:"option","aria-disabled":!!a,children:[typeof t=="string"?s.jsx(S,{children:t}):t,r&&s.jsx(N,{size:"xs",className:y(`${o}-item__icon`)})]})}),W=e=>c.isValidElement(e)&&(e==null?void 0:e.type)===_;_.displayName="ListBoxItem";const X=$.bind(w),Y="purpur-listbox",d=c.forwardRef(({children:e,...i},a)=>s.jsx("ul",{...i,ref:a,className:X(Y,i.className),role:"listbox",children:c.Children.toArray(e).filter(W)}));d.Item=_;d.displayName="ListBox";exports.Listbox=d;
|
|
14
14
|
//# sourceMappingURL=listbox.cjs.js.map
|
package/dist/listbox.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listbox.cjs.js","sources":["../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../../icon/dist/icon-BqK8slmm.mjs","../../icon/dist/components/checkmark.es.js","../../paragraph/dist/paragraph.es.js","../src/listbox-item.tsx","../src/listbox.tsx"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import { jsx as a } from \"react/jsx-runtime\";\nfunction f(r) {\n return r && r.__esModule && Object.prototype.hasOwnProperty.call(r, \"default\") ? r.default : r;\n}\nvar c = { exports: {} };\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\nvar p;\nfunction m() {\n return p || (p = 1, function(r) {\n (function() {\n var e = {}.hasOwnProperty;\n function o() {\n for (var t = \"\", n = 0; n < arguments.length; n++) {\n var s = arguments[n];\n s && (t = i(t, u.call(this, s)));\n }\n return t;\n }\n function u(t) {\n if (typeof t == \"string\" || typeof t == \"number\")\n return this && this[t] || t;\n if (typeof t != \"object\")\n return \"\";\n if (Array.isArray(t))\n return o.apply(this, t);\n if (t.toString !== Object.prototype.toString && !t.toString.toString().includes(\"[native code]\"))\n return t.toString();\n var n = \"\";\n for (var s in t)\n e.call(t, s) && t[s] && (n = i(n, this && this[s] || s));\n return n;\n }\n function i(t, n) {\n return n ? t ? t + \" \" + n : t + n : t;\n }\n r.exports ? (o.default = o, r.exports = o) : window.classNames = o;\n })();\n }(c)), c.exports;\n}\nvar _ = m();\nconst d = /* @__PURE__ */ f(_), v = {\n \"purpur-icon\": \"_purpur-icon_8u1lq_1\",\n \"purpur-icon--xxs\": \"_purpur-icon--xxs_8u1lq_4\",\n \"purpur-icon--xs\": \"_purpur-icon--xs_8u1lq_8\",\n \"purpur-icon--sm\": \"_purpur-icon--sm_8u1lq_12\",\n \"purpur-icon--md\": \"_purpur-icon--md_8u1lq_16\",\n \"purpur-icon--lg\": \"_purpur-icon--lg_8u1lq_20\",\n \"purpur-icon--xl\": \"_purpur-icon--xl_8u1lq_24\"\n}, g = d.bind(v), l = \"purpur-icon\", x = \"md\", h = (r) => r.filter((e) => Object.keys(e).length >= 1).map((e) => `${e.name}=\"${e.value}\"`).join(\" \"), y = ({ content: r = \"\", title: e } = {}) => {\n const o = [\n { name: \"xmlns\", value: \"http://www.w3.org/2000/svg\" },\n { name: \"fill\", value: \"currentColor\" },\n { name: \"viewBox\", value: \"0 0 24 24\" },\n e ? { name: \"role\", value: \"img\" } : { name: \"aria-hidden\", value: \"true\" }\n ], u = e ? `<title>${e}</title>` : \"\";\n return `<svg ${h(o)}>${u}${r}</svg>`;\n}, S = (r) => r.replace(/<(\\/?)svg([^>]*)>/g, \"\").trim(), b = ({\n [\"data-testid\"]: r,\n svg: e,\n allyTitle: o,\n className: u,\n size: i = x,\n ...t\n}) => {\n const n = y({\n content: S(e.svg),\n title: o\n }), s = g(u, l, `${l}--${i}`);\n return /* @__PURE__ */ a(\n \"span\",\n {\n className: s,\n \"data-testid\": r,\n dangerouslySetInnerHTML: { __html: n },\n ...t\n }\n );\n};\nb.displayName = \"Icon\";\nexport {\n b as I\n};\n//# sourceMappingURL=icon-BqK8slmm.mjs.map\n","import { jsx as o } from \"react/jsx-runtime\";\nimport { I as r } from \"../icon-BqK8slmm.mjs\";\nconst c = {\n name: \"checkmark\",\n svg: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M21.06 3.795a.9.9 0 0 1 .145 1.264l-11.5 14.5a.9.9 0 0 1-1.341.077l-6-6a.9.9 0 0 1 1.272-1.272l5.286 5.286L19.795 3.94a.9.9 0 0 1 1.264-.145Z\" clip-rule=\"evenodd\"/></svg>',\n keywords: [\"checkmark\"],\n category: \"utility\"\n}, a = (e) => /* @__PURE__ */ o(r, { ...e, svg: c });\na.displayName = \"IconCheckmark\";\nexport {\n a as IconCheckmark\n};\n//# sourceMappingURL=checkmark.es.js.map\n","import { jsx as _ } from \"react/jsx-runtime\";\nfunction d(p) {\n return p && p.__esModule && Object.prototype.hasOwnProperty.call(p, \"default\") ? p.default : p;\n}\nvar o = { exports: {} };\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\nvar l;\nfunction m() {\n return l || (l = 1, function(p) {\n (function() {\n var s = {}.hasOwnProperty;\n function u() {\n for (var r = \"\", a = 0; a < arguments.length; a++) {\n var e = arguments[a];\n e && (r = h(r, i(e)));\n }\n return r;\n }\n function i(r) {\n if (typeof r == \"string\" || typeof r == \"number\")\n return r;\n if (typeof r != \"object\")\n return \"\";\n if (Array.isArray(r))\n return u.apply(null, r);\n if (r.toString !== Object.prototype.toString && !r.toString.toString().includes(\"[native code]\"))\n return r.toString();\n var a = \"\";\n for (var e in r)\n s.call(r, e) && r[e] && (a = h(a, e));\n return a;\n }\n function h(r, a) {\n return a ? r ? r + \" \" + a : r + a : r;\n }\n p.exports ? (u.default = u, p.exports = u) : window.classNames = u;\n })();\n }(o)), o.exports;\n}\nvar c = m();\nconst f = /* @__PURE__ */ d(c), t = {\n \"purpur-paragraph\": \"_purpur-paragraph_1rh57_1\",\n \"purpur-paragraph--disabled\": \"_purpur-paragraph--disabled_1rh57_7\",\n \"purpur-paragraph--hyphens\": \"_purpur-paragraph--hyphens_1rh57_10\",\n \"purpur-paragraph--negative\": \"_purpur-paragraph--negative_1rh57_13\",\n \"purpur-paragraph--paragraph-100\": \"_purpur-paragraph--paragraph-100_1rh57_16\",\n \"purpur-paragraph--paragraph-100-medium\": \"_purpur-paragraph--paragraph-100-medium_1rh57_22\",\n \"purpur-paragraph--paragraph-100-bold\": \"_purpur-paragraph--paragraph-100-bold_1rh57_29\",\n \"purpur-paragraph--paragraph-200\": \"_purpur-paragraph--paragraph-200_1rh57_36\",\n \"purpur-paragraph--preamble-100\": \"_purpur-paragraph--preamble-100_1rh57_42\",\n \"purpur-paragraph--preamble-200\": \"_purpur-paragraph--preamble-200_1rh57_48\",\n \"purpur-paragraph--additional-100\": \"_purpur-paragraph--additional-100_1rh57_54\",\n \"purpur-paragraph--additional-100-medium\": \"_purpur-paragraph--additional-100-medium_1rh57_60\",\n \"purpur-paragraph--overline-100\": \"_purpur-paragraph--overline-100_1rh57_67\",\n \"purpur-paragraph--overline-200\": \"_purpur-paragraph--overline-200_1rh57_75\"\n}, A = {\n PARAGRAPH100: \"paragraph-100\",\n PARAGRAPH100MEDIUM: \"paragraph-100-medium\",\n PARAGRAPH100BOLD: \"paragraph-100-bold\",\n PARAGRAPH200: \"paragraph-200\",\n PREAMBLE100: \"preamble-100\",\n PREAMBLE200: \"preamble-200\",\n ADDITIONAL100: \"additional-100\",\n ADDITIONAL100MEDIUM: \"additional-100-medium\",\n OVERLINE100: \"overline-100\",\n OVERLINE200: \"overline-200\"\n}, n = \"purpur-paragraph\", P = ({\n [\"data-testid\"]: p,\n children: s,\n className: u,\n disabled: i,\n enableHyphenation: h = !1,\n negative: r = !1,\n variant: a = A.PARAGRAPH100,\n ...e\n}) => {\n const g = f([\n u,\n t[n],\n t[`${n}--${a}`],\n {\n [t[`${n}--hyphens`]]: h,\n [t[`${n}--disabled`]]: i,\n [t[`${n}--negative`]]: r\n }\n ]);\n return /* @__PURE__ */ _(\"p\", { ...e, className: g, \"data-testid\": p, children: s });\n};\nP.displayName = \"Paragraph\";\nexport {\n P as Paragraph,\n A as ParagraphVariant\n};\n//# sourceMappingURL=paragraph.es.js.map\n","import type {\n ComponentPropsWithRef,\n ForwardedRef,\n ReactElement,\n ReactNode,\n} from \"react\";\nimport React, { forwardRef, isValidElement } from \"react\";\nimport { IconCheckmark } from \"@purpurds/icon/checkmark\";\nimport { Paragraph } from \"@purpurds/paragraph\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./listbox.module.scss\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-listbox\";\n\nexport type ListboxItemProps = Omit<ComponentPropsWithRef<\"li\">, \"role\"> & {\n \"data-testid\"?: string;\n highlighted?: boolean;\n hovered?: boolean;\n key?: string;\n selected?: boolean;\n disabled?: boolean;\n noninteractive?: boolean;\n};\n\nexport const ListboxItem = forwardRef(\n (props: ListboxItemProps, ref: ForwardedRef<HTMLLIElement>) => {\n const { disabled, highlighted, hovered, selected, children, noninteractive, ...liProps } =\n props;\n const className = cx(`${rootClassName}-item`, liProps.className, {\n [`${rootClassName}-item--highlighted`]: highlighted,\n [`${rootClassName}-item--selected`]: selected,\n [`${rootClassName}-item--hovered`]: hovered,\n [`${rootClassName}-item--disabled`]: disabled,\n [`${rootClassName}-item--noninteractive`]: noninteractive,\n });\n\n return (\n <li\n {...liProps}\n ref={ref}\n className={className}\n aria-selected={!!selected}\n role=\"option\"\n aria-disabled={!!disabled}\n >\n {typeof children === \"string\" ? <Paragraph>{children}</Paragraph> : children}\n {selected && <IconCheckmark size=\"xs\" className={cx(`${rootClassName}-item__icon`)} />}\n </li>\n );\n }\n);\n\nexport const isListboxItem = (\n child?: ReactNode\n): child is ReactElement<ListboxItemProps> =>\n isValidElement<ListboxItemProps>(child) && child?.type === ListboxItem;\n\nListboxItem.displayName = \"ListBoxItem\";\n","import type {\n ComponentPropsWithRef,\n ForwardedRef,\n ForwardRefExoticComponent,\n PropsWithoutRef,\n} from \"react\";\nimport React, { Children, forwardRef } from \"react\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./listbox.module.scss\";\nimport { isListboxItem, ListboxItem } from \"./listbox-item\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-listbox\";\n\nexport type ListboxProps = Omit<ComponentPropsWithRef<\"ul\">, \"role\"> & {\n \"data-testid\"?: string;\n \"aria-label\": NonNullable<ComponentPropsWithRef<\"ul\">[\"aria-label\"]>;\n \"aria-expanded\": NonNullable<ComponentPropsWithRef<\"ul\">[\"aria-expanded\"]>;\n};\n\ntype ListboxStatic = {\n Item: typeof ListboxItem;\n};\n\ntype ListboxComponent = ForwardRefExoticComponent<PropsWithoutRef<ListboxProps>> & ListboxStatic;\n\nexport const Listbox = forwardRef(\n ({ children, ...listboxProps }: ListboxProps, ref: ForwardedRef<HTMLUListElement>) => (\n <ul\n {...listboxProps}\n ref={ref}\n className={cx(rootClassName, listboxProps.className)}\n role=\"listbox\"\n >\n {Children.toArray(children).filter(isListboxItem)}\n </ul>\n )\n) as ListboxComponent;\n\nexport type { ListboxItemProps } from \"./listbox-item\";\nListbox.Item = ListboxItem;\nListbox.displayName = \"ListBox\";\n"],"names":["hasOwn","classNames","classes","i","arg","appendClass","parseValue","key","value","newClass","module","f","r","c","p","m","e","o","t","n","s","_","d","v","g","l","x","h","y","S","b","a","u","A","P","cx","styles","rootClassName","ListboxItem","forwardRef","props","ref","disabled","highlighted","hovered","selected","children","noninteractive","liProps","className","jsxs","jsx","Paragraph","IconCheckmark","isListboxItem","child","isValidElement","Listbox","listboxProps","Children"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"listbox.cjs.js","sources":["../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../../icon/dist/icon-CAVUByiV.mjs","../../icon/dist/components/checkmark.es.js","../../paragraph/dist/paragraph.es.js","../src/listbox-item.tsx","../src/listbox.tsx"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import { jsx as a } from \"react/jsx-runtime\";\nfunction f(r) {\n return r && r.__esModule && Object.prototype.hasOwnProperty.call(r, \"default\") ? r.default : r;\n}\nvar c = { exports: {} };\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\nvar p;\nfunction m() {\n return p || (p = 1, function(r) {\n (function() {\n var e = {}.hasOwnProperty;\n function o() {\n for (var t = \"\", n = 0; n < arguments.length; n++) {\n var s = arguments[n];\n s && (t = i(t, u.call(this, s)));\n }\n return t;\n }\n function u(t) {\n if (typeof t == \"string\" || typeof t == \"number\")\n return this && this[t] || t;\n if (typeof t != \"object\")\n return \"\";\n if (Array.isArray(t))\n return o.apply(this, t);\n if (t.toString !== Object.prototype.toString && !t.toString.toString().includes(\"[native code]\"))\n return t.toString();\n var n = \"\";\n for (var s in t)\n e.call(t, s) && t[s] && (n = i(n, this && this[s] || s));\n return n;\n }\n function i(t, n) {\n return n ? t ? t + \" \" + n : t + n : t;\n }\n r.exports ? (o.default = o, r.exports = o) : window.classNames = o;\n })();\n }(c)), c.exports;\n}\nvar _ = m();\nconst v = /* @__PURE__ */ f(_), d = {\n \"purpur-icon\": \"_purpur-icon_8u1lq_1\",\n \"purpur-icon--xxs\": \"_purpur-icon--xxs_8u1lq_4\",\n \"purpur-icon--xs\": \"_purpur-icon--xs_8u1lq_8\",\n \"purpur-icon--sm\": \"_purpur-icon--sm_8u1lq_12\",\n \"purpur-icon--md\": \"_purpur-icon--md_8u1lq_16\",\n \"purpur-icon--lg\": \"_purpur-icon--lg_8u1lq_20\",\n \"purpur-icon--xl\": \"_purpur-icon--xl_8u1lq_24\"\n}, g = v.bind(d), l = \"purpur-icon\", x = \"md\", h = (r) => r.filter((e) => Object.keys(e).length >= 1).map((e) => `${e.name}=\"${e.value}\"`).join(\" \"), y = ({ content: r = \"\", title: e } = {}) => {\n const o = [\n { name: \"xmlns\", value: \"http://www.w3.org/2000/svg\" },\n { name: \"fill\", value: \"currentColor\" },\n { name: \"viewBox\", value: \"0 0 24 24\" },\n e ? { name: \"role\", value: \"img\" } : { name: \"aria-hidden\", value: \"true\" }\n ], u = e ? `<title>${e}</title>` : \"\";\n return `<svg ${h(o)}>${u}${r}</svg>`;\n}, S = (r) => r.replace(/<(\\/?)svg([^>]*)>/g, \"\").trim(), b = ({ svg: r, allyTitle: e, className: o, size: u = x, ...i }) => {\n const t = y({\n content: S(r.svg),\n title: e\n }), n = g(o, l, `${l}--${u}`);\n return /* @__PURE__ */ a(\"span\", { className: n, dangerouslySetInnerHTML: { __html: t }, ...i });\n};\nb.displayName = \"Icon\";\nexport {\n b as I\n};\n//# sourceMappingURL=icon-CAVUByiV.mjs.map\n","import { jsx as o } from \"react/jsx-runtime\";\nimport { I as r } from \"../icon-CAVUByiV.mjs\";\nconst c = {\n name: \"checkmark\",\n svg: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M21.06 3.795a.9.9 0 0 1 .145 1.264l-11.5 14.5a.9.9 0 0 1-1.341.077l-6-6a.9.9 0 0 1 1.272-1.272l5.286 5.286L19.795 3.94a.9.9 0 0 1 1.264-.145Z\" clip-rule=\"evenodd\"/></svg>',\n keywords: [\"checkmark\"],\n category: \"utility\"\n}, a = (e) => /* @__PURE__ */ o(r, { ...e, svg: c });\na.displayName = \"IconCheckmark\";\nexport {\n a as IconCheckmark\n};\n//# sourceMappingURL=checkmark.es.js.map\n","import { jsx as l } from \"react/jsx-runtime\";\nfunction g(p) {\n return p && p.__esModule && Object.prototype.hasOwnProperty.call(p, \"default\") ? p.default : p;\n}\nvar o = { exports: {} };\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\nvar s;\nfunction _() {\n return s || (s = 1, function(p) {\n (function() {\n var n = {}.hasOwnProperty;\n function u() {\n for (var r = \"\", a = 0; a < arguments.length; a++) {\n var e = arguments[a];\n e && (r = h(r, i.call(this, e)));\n }\n return r;\n }\n function i(r) {\n if (typeof r == \"string\" || typeof r == \"number\")\n return this && this[r] || r;\n if (typeof r != \"object\")\n return \"\";\n if (Array.isArray(r))\n return u.apply(this, r);\n if (r.toString !== Object.prototype.toString && !r.toString.toString().includes(\"[native code]\"))\n return r.toString();\n var a = \"\";\n for (var e in r)\n n.call(r, e) && r[e] && (a = h(a, this && this[e] || e));\n return a;\n }\n function h(r, a) {\n return a ? r ? r + \" \" + a : r + a : r;\n }\n p.exports ? (u.default = u, p.exports = u) : window.classNames = u;\n })();\n }(o)), o.exports;\n}\nvar d = _();\nconst c = /* @__PURE__ */ g(d), f = {\n \"purpur-paragraph\": \"_purpur-paragraph_1rh57_1\",\n \"purpur-paragraph--disabled\": \"_purpur-paragraph--disabled_1rh57_7\",\n \"purpur-paragraph--hyphens\": \"_purpur-paragraph--hyphens_1rh57_10\",\n \"purpur-paragraph--negative\": \"_purpur-paragraph--negative_1rh57_13\",\n \"purpur-paragraph--paragraph-100\": \"_purpur-paragraph--paragraph-100_1rh57_16\",\n \"purpur-paragraph--paragraph-100-medium\": \"_purpur-paragraph--paragraph-100-medium_1rh57_22\",\n \"purpur-paragraph--paragraph-100-bold\": \"_purpur-paragraph--paragraph-100-bold_1rh57_29\",\n \"purpur-paragraph--paragraph-200\": \"_purpur-paragraph--paragraph-200_1rh57_36\",\n \"purpur-paragraph--preamble-100\": \"_purpur-paragraph--preamble-100_1rh57_42\",\n \"purpur-paragraph--preamble-200\": \"_purpur-paragraph--preamble-200_1rh57_48\",\n \"purpur-paragraph--additional-100\": \"_purpur-paragraph--additional-100_1rh57_54\",\n \"purpur-paragraph--additional-100-medium\": \"_purpur-paragraph--additional-100-medium_1rh57_60\",\n \"purpur-paragraph--overline-100\": \"_purpur-paragraph--overline-100_1rh57_67\",\n \"purpur-paragraph--overline-200\": \"_purpur-paragraph--overline-200_1rh57_75\"\n}, m = c.bind(f), A = {\n PARAGRAPH100: \"paragraph-100\",\n PARAGRAPH100MEDIUM: \"paragraph-100-medium\",\n PARAGRAPH100BOLD: \"paragraph-100-bold\",\n PARAGRAPH200: \"paragraph-200\",\n PREAMBLE100: \"preamble-100\",\n PREAMBLE200: \"preamble-200\",\n ADDITIONAL100: \"additional-100\",\n ADDITIONAL100MEDIUM: \"additional-100-medium\",\n OVERLINE100: \"overline-100\",\n OVERLINE200: \"overline-200\"\n}, t = \"purpur-paragraph\", b = ({\n children: p,\n className: n,\n disabled: u,\n enableHyphenation: i = !1,\n negative: h = !1,\n variant: r = A.PARAGRAPH100,\n ...a\n}) => {\n const e = m(n, t, `${t}--${r}`, {\n [`${t}--hyphens`]: i,\n [`${t}--disabled`]: u,\n [`${t}--negative`]: h\n });\n return /* @__PURE__ */ l(\"p\", { ...a, className: e, children: p });\n};\nb.displayName = \"Paragraph\";\nexport {\n b as Paragraph,\n A as ParagraphVariant\n};\n//# sourceMappingURL=paragraph.es.js.map\n","import React, { forwardRef, isValidElement, type ReactElement, type ReactNode } from \"react\";\nimport type { BaseProps } from \"@purpurds/common-types\";\nimport { IconCheckmark } from \"@purpurds/icon/checkmark\";\nimport { Paragraph } from \"@purpurds/paragraph\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./listbox.module.scss\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-listbox\";\n\nexport type ListboxItemProps = Omit<BaseProps<\"li\">, \"role\"> & {\n highlighted?: boolean;\n hovered?: boolean;\n key?: string;\n selected?: boolean;\n disabled?: boolean;\n noninteractive?: boolean;\n};\n\nexport const ListboxItem = forwardRef<HTMLLIElement, ListboxItemProps>((props, ref) => {\n const {\n disabled,\n highlighted,\n hovered,\n selected,\n children,\n className,\n noninteractive,\n ...liProps\n } = props;\n\n const classes = cx(`${rootClassName}-item`, className, {\n [`${rootClassName}-item--highlighted`]: highlighted,\n [`${rootClassName}-item--selected`]: selected,\n [`${rootClassName}-item--hovered`]: hovered,\n [`${rootClassName}-item--disabled`]: disabled,\n [`${rootClassName}-item--noninteractive`]: noninteractive,\n });\n\n return (\n <li\n {...liProps}\n ref={ref}\n className={classes}\n aria-selected={!!selected}\n role=\"option\"\n aria-disabled={!!disabled}\n >\n {typeof children === \"string\" ? <Paragraph>{children}</Paragraph> : children}\n {selected && <IconCheckmark size=\"xs\" className={cx(`${rootClassName}-item__icon`)} />}\n </li>\n );\n});\n\nexport const isListboxItem = (child?: ReactNode): child is ReactElement<ListboxItemProps> =>\n isValidElement<ListboxItemProps>(child) && child?.type === ListboxItem;\n\nListboxItem.displayName = \"ListBoxItem\";\n","import React, {\n Children,\n forwardRef,\n type ForwardRefExoticComponent,\n type PropsWithoutRef,\n} from \"react\";\nimport type { BaseProps } from \"@purpurds/common-types\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./listbox.module.scss\";\nimport { isListboxItem, ListboxItem } from \"./listbox-item\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-listbox\";\n\nexport type ListboxProps = Omit<BaseProps<\"ul\">, \"role\"> & {\n \"aria-label\": NonNullable<BaseProps<\"ul\">[\"aria-label\"]>;\n \"aria-expanded\": NonNullable<BaseProps<\"ul\">[\"aria-expanded\"]>;\n};\n\ntype ListboxStatic = {\n Item: typeof ListboxItem;\n};\n\ntype ListboxComponent = ForwardRefExoticComponent<PropsWithoutRef<ListboxProps>> & ListboxStatic;\n\nexport const Listbox = forwardRef<HTMLUListElement, ListboxProps>(\n ({ children, ...listboxProps }, ref) => (\n <ul\n {...listboxProps}\n ref={ref}\n className={cx(rootClassName, listboxProps.className)}\n role=\"listbox\"\n >\n {Children.toArray(children).filter(isListboxItem)}\n </ul>\n )\n) as ListboxComponent;\n\nexport type { ListboxItemProps } from \"./listbox-item\";\nListbox.Item = ListboxItem;\nListbox.displayName = \"ListBox\";\n"],"names":["hasOwn","classNames","classes","i","arg","appendClass","parseValue","key","value","newClass","module","f","r","c","p","m","e","o","t","n","s","_","v","d","g","l","x","h","y","S","b","a","u","A","cx","styles","rootClassName","ListboxItem","forwardRef","props","ref","disabled","highlighted","hovered","selected","children","className","noninteractive","liProps","jsxs","jsx","Paragraph","IconCheckmark","isListboxItem","child","isValidElement","Listbox","listboxProps","Children"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/listbox.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ForwardRefExoticComponent, PropsWithoutRef } from 'react';
|
|
2
|
+
import { BaseProps } from '@purpurds/common-types';
|
|
2
3
|
import { ListboxItem } from './listbox-item';
|
|
3
4
|
|
|
4
|
-
export type ListboxProps = Omit<
|
|
5
|
-
"
|
|
6
|
-
"aria-
|
|
7
|
-
"aria-expanded": NonNullable<ComponentPropsWithRef<"ul">["aria-expanded"]>;
|
|
5
|
+
export type ListboxProps = Omit<BaseProps<"ul">, "role"> & {
|
|
6
|
+
"aria-label": NonNullable<BaseProps<"ul">["aria-label"]>;
|
|
7
|
+
"aria-expanded": NonNullable<BaseProps<"ul">["aria-expanded"]>;
|
|
8
8
|
};
|
|
9
9
|
type ListboxStatic = {
|
|
10
10
|
Item: typeof ListboxItem;
|
package/dist/listbox.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listbox.d.ts","sourceRoot":"","sources":["../src/listbox.tsx"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"listbox.d.ts","sourceRoot":"","sources":["../src/listbox.tsx"],"names":[],"mappings":"AAAA,OAAc,EAGZ,KAAK,yBAAyB,EAC9B,KAAK,eAAe,EACrB,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAIxD,OAAO,EAAiB,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAM5D,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,GAAG;IACzD,YAAY,EAAE,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;IACzD,eAAe,EAAE,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;CAChE,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,IAAI,EAAE,OAAO,WAAW,CAAC;CAC1B,CAAC;AAEF,KAAK,gBAAgB,GAAG,yBAAyB,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,GAAG,aAAa,CAAC;AAEjG,eAAO,MAAM,OAAO,EAWf,gBAAgB,CAAC;AAEtB,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC"}
|
package/dist/listbox.es.js
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import { jsx as s, jsxs as q } from "react/jsx-runtime";
|
|
2
|
-
import { forwardRef as
|
|
3
|
-
function B(
|
|
4
|
-
return
|
|
2
|
+
import { forwardRef as y, isValidElement as I, Children as L } from "react";
|
|
3
|
+
function B(e) {
|
|
4
|
+
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
|
5
5
|
}
|
|
6
|
-
var
|
|
6
|
+
var c = { exports: {} };
|
|
7
7
|
/*!
|
|
8
8
|
Copyright (c) 2018 Jed Watson.
|
|
9
9
|
Licensed under the MIT License (MIT), see
|
|
10
10
|
http://jedwatson.github.io/classnames
|
|
11
11
|
*/
|
|
12
|
-
var
|
|
12
|
+
var _;
|
|
13
13
|
function C() {
|
|
14
|
-
return
|
|
14
|
+
return _ || (_ = 1, function(e) {
|
|
15
15
|
(function() {
|
|
16
16
|
var i = {}.hasOwnProperty;
|
|
17
17
|
function a() {
|
|
18
|
-
for (var r = "",
|
|
19
|
-
var p = arguments[
|
|
18
|
+
for (var r = "", t = 0; t < arguments.length; t++) {
|
|
19
|
+
var p = arguments[t];
|
|
20
20
|
p && (r = n(r, u.call(this, p)));
|
|
21
21
|
}
|
|
22
22
|
return r;
|
|
@@ -30,20 +30,20 @@ function C() {
|
|
|
30
30
|
return a.apply(this, r);
|
|
31
31
|
if (r.toString !== Object.prototype.toString && !r.toString.toString().includes("[native code]"))
|
|
32
32
|
return r.toString();
|
|
33
|
-
var
|
|
33
|
+
var t = "";
|
|
34
34
|
for (var p in r)
|
|
35
|
-
i.call(r, p) && r[p] && (
|
|
36
|
-
return
|
|
35
|
+
i.call(r, p) && r[p] && (t = n(t, this && this[p] || p));
|
|
36
|
+
return t;
|
|
37
37
|
}
|
|
38
|
-
function n(r,
|
|
39
|
-
return
|
|
38
|
+
function n(r, t) {
|
|
39
|
+
return t ? r ? r + " " + t : r + t : r;
|
|
40
40
|
}
|
|
41
|
-
|
|
41
|
+
e.exports ? (a.default = a, e.exports = a) : window.classNames = a;
|
|
42
42
|
})();
|
|
43
|
-
}(
|
|
43
|
+
}(c)), c.exports;
|
|
44
44
|
}
|
|
45
45
|
var R = C();
|
|
46
|
-
const
|
|
46
|
+
const x = /* @__PURE__ */ B(R), $ = {
|
|
47
47
|
"purpur-listbox": "_purpur-listbox_6c8yl_1",
|
|
48
48
|
"purpur-listbox-item": "_purpur-listbox-item_6c8yl_15",
|
|
49
49
|
"purpur-listbox-item--hovered": "_purpur-listbox-item--hovered_6c8yl_29",
|
|
@@ -52,23 +52,23 @@ const w = /* @__PURE__ */ B(R), N = {
|
|
|
52
52
|
"purpur-listbox-item--disabled": "_purpur-listbox-item--disabled_6c8yl_44",
|
|
53
53
|
"purpur-listbox-item__icon": "_purpur-listbox-item__icon_6c8yl_51"
|
|
54
54
|
};
|
|
55
|
-
function k(
|
|
56
|
-
return
|
|
55
|
+
function k(e) {
|
|
56
|
+
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
|
57
57
|
}
|
|
58
|
-
var
|
|
58
|
+
var d = { exports: {} };
|
|
59
59
|
/*!
|
|
60
60
|
Copyright (c) 2018 Jed Watson.
|
|
61
61
|
Licensed under the MIT License (MIT), see
|
|
62
62
|
http://jedwatson.github.io/classnames
|
|
63
63
|
*/
|
|
64
|
-
var
|
|
64
|
+
var m;
|
|
65
65
|
function M() {
|
|
66
|
-
return
|
|
66
|
+
return m || (m = 1, function(e) {
|
|
67
67
|
(function() {
|
|
68
68
|
var i = {}.hasOwnProperty;
|
|
69
69
|
function a() {
|
|
70
|
-
for (var r = "",
|
|
71
|
-
var p = arguments[
|
|
70
|
+
for (var r = "", t = 0; t < arguments.length; t++) {
|
|
71
|
+
var p = arguments[t];
|
|
72
72
|
p && (r = n(r, u.call(this, p)));
|
|
73
73
|
}
|
|
74
74
|
return r;
|
|
@@ -82,17 +82,17 @@ function M() {
|
|
|
82
82
|
return a.apply(this, r);
|
|
83
83
|
if (r.toString !== Object.prototype.toString && !r.toString.toString().includes("[native code]"))
|
|
84
84
|
return r.toString();
|
|
85
|
-
var
|
|
85
|
+
var t = "";
|
|
86
86
|
for (var p in r)
|
|
87
|
-
i.call(r, p) && r[p] && (
|
|
88
|
-
return
|
|
87
|
+
i.call(r, p) && r[p] && (t = n(t, this && this[p] || p));
|
|
88
|
+
return t;
|
|
89
89
|
}
|
|
90
|
-
function n(r,
|
|
91
|
-
return
|
|
90
|
+
function n(r, t) {
|
|
91
|
+
return t ? r ? r + " " + t : r + t : r;
|
|
92
92
|
}
|
|
93
|
-
|
|
93
|
+
e.exports ? (a.default = a, e.exports = a) : window.classNames = a;
|
|
94
94
|
})();
|
|
95
|
-
}(
|
|
95
|
+
}(d)), d.exports;
|
|
96
96
|
}
|
|
97
97
|
var H = M();
|
|
98
98
|
const E = /* @__PURE__ */ k(H), z = {
|
|
@@ -103,88 +103,73 @@ const E = /* @__PURE__ */ k(H), z = {
|
|
|
103
103
|
"purpur-icon--md": "_purpur-icon--md_8u1lq_16",
|
|
104
104
|
"purpur-icon--lg": "_purpur-icon--lg_8u1lq_20",
|
|
105
105
|
"purpur-icon--xl": "_purpur-icon--xl_8u1lq_24"
|
|
106
|
-
}, G = E.bind(z),
|
|
106
|
+
}, G = E.bind(z), g = "purpur-icon", T = "md", V = (e) => e.filter((i) => Object.keys(i).length >= 1).map((i) => `${i.name}="${i.value}"`).join(" "), D = ({ content: e = "", title: i } = {}) => {
|
|
107
107
|
const a = [
|
|
108
108
|
{ name: "xmlns", value: "http://www.w3.org/2000/svg" },
|
|
109
109
|
{ name: "fill", value: "currentColor" },
|
|
110
110
|
{ name: "viewBox", value: "0 0 24 24" },
|
|
111
111
|
i ? { name: "role", value: "img" } : { name: "aria-hidden", value: "true" }
|
|
112
112
|
], u = i ? `<title>${i}</title>` : "";
|
|
113
|
-
return `<svg ${V(a)}>${u}${
|
|
114
|
-
}, F = (
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
...r
|
|
121
|
-
}) => {
|
|
122
|
-
const e = D({
|
|
123
|
-
content: F(i.svg),
|
|
124
|
-
title: a
|
|
125
|
-
}), p = G(u, v, `${v}--${n}`);
|
|
126
|
-
return /* @__PURE__ */ s(
|
|
127
|
-
"span",
|
|
128
|
-
{
|
|
129
|
-
className: p,
|
|
130
|
-
"data-testid": t,
|
|
131
|
-
dangerouslySetInnerHTML: { __html: e },
|
|
132
|
-
...r
|
|
133
|
-
}
|
|
134
|
-
);
|
|
113
|
+
return `<svg ${V(a)}>${u}${e}</svg>`;
|
|
114
|
+
}, F = (e) => e.replace(/<(\/?)svg([^>]*)>/g, "").trim(), w = ({ svg: e, allyTitle: i, className: a, size: u = T, ...n }) => {
|
|
115
|
+
const r = D({
|
|
116
|
+
content: F(e.svg),
|
|
117
|
+
title: i
|
|
118
|
+
}), t = G(a, g, `${g}--${u}`);
|
|
119
|
+
return /* @__PURE__ */ s("span", { className: t, dangerouslySetInnerHTML: { __html: r }, ...n });
|
|
135
120
|
};
|
|
136
|
-
|
|
121
|
+
w.displayName = "Icon";
|
|
137
122
|
const Z = {
|
|
138
123
|
name: "checkmark",
|
|
139
124
|
svg: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path fill-rule="evenodd" d="M21.06 3.795a.9.9 0 0 1 .145 1.264l-11.5 14.5a.9.9 0 0 1-1.341.077l-6-6a.9.9 0 0 1 1.272-1.272l5.286 5.286L19.795 3.94a.9.9 0 0 1 1.264-.145Z" clip-rule="evenodd"/></svg>',
|
|
140
125
|
keywords: ["checkmark"],
|
|
141
126
|
category: "utility"
|
|
142
|
-
},
|
|
143
|
-
|
|
144
|
-
function J(
|
|
145
|
-
return
|
|
127
|
+
}, N = (e) => /* @__PURE__ */ s(w, { ...e, svg: Z });
|
|
128
|
+
N.displayName = "IconCheckmark";
|
|
129
|
+
function J(e) {
|
|
130
|
+
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
|
146
131
|
}
|
|
147
|
-
var
|
|
132
|
+
var f = { exports: {} };
|
|
148
133
|
/*!
|
|
149
134
|
Copyright (c) 2018 Jed Watson.
|
|
150
135
|
Licensed under the MIT License (MIT), see
|
|
151
136
|
http://jedwatson.github.io/classnames
|
|
152
137
|
*/
|
|
153
|
-
var
|
|
138
|
+
var v;
|
|
154
139
|
function K() {
|
|
155
|
-
return
|
|
140
|
+
return v || (v = 1, function(e) {
|
|
156
141
|
(function() {
|
|
157
142
|
var i = {}.hasOwnProperty;
|
|
158
143
|
function a() {
|
|
159
|
-
for (var r = "",
|
|
160
|
-
var p = arguments[
|
|
161
|
-
p && (r = n(r, u(p)));
|
|
144
|
+
for (var r = "", t = 0; t < arguments.length; t++) {
|
|
145
|
+
var p = arguments[t];
|
|
146
|
+
p && (r = n(r, u.call(this, p)));
|
|
162
147
|
}
|
|
163
148
|
return r;
|
|
164
149
|
}
|
|
165
150
|
function u(r) {
|
|
166
151
|
if (typeof r == "string" || typeof r == "number")
|
|
167
|
-
return r;
|
|
152
|
+
return this && this[r] || r;
|
|
168
153
|
if (typeof r != "object")
|
|
169
154
|
return "";
|
|
170
155
|
if (Array.isArray(r))
|
|
171
|
-
return a.apply(
|
|
156
|
+
return a.apply(this, r);
|
|
172
157
|
if (r.toString !== Object.prototype.toString && !r.toString.toString().includes("[native code]"))
|
|
173
158
|
return r.toString();
|
|
174
|
-
var
|
|
159
|
+
var t = "";
|
|
175
160
|
for (var p in r)
|
|
176
|
-
i.call(r, p) && r[p] && (
|
|
177
|
-
return
|
|
161
|
+
i.call(r, p) && r[p] && (t = n(t, this && this[p] || p));
|
|
162
|
+
return t;
|
|
178
163
|
}
|
|
179
|
-
function n(r,
|
|
180
|
-
return
|
|
164
|
+
function n(r, t) {
|
|
165
|
+
return t ? r ? r + " " + t : r + t : r;
|
|
181
166
|
}
|
|
182
|
-
|
|
167
|
+
e.exports ? (a.default = a, e.exports = a) : window.classNames = a;
|
|
183
168
|
})();
|
|
184
|
-
}(
|
|
169
|
+
}(f)), f.exports;
|
|
185
170
|
}
|
|
186
171
|
var Q = K();
|
|
187
|
-
const U = /* @__PURE__ */ J(Q),
|
|
172
|
+
const U = /* @__PURE__ */ J(Q), W = {
|
|
188
173
|
"purpur-paragraph": "_purpur-paragraph_1rh57_1",
|
|
189
174
|
"purpur-paragraph--disabled": "_purpur-paragraph--disabled_1rh57_7",
|
|
190
175
|
"purpur-paragraph--hyphens": "_purpur-paragraph--hyphens_1rh57_10",
|
|
@@ -199,73 +184,74 @@ const U = /* @__PURE__ */ J(Q), l = {
|
|
|
199
184
|
"purpur-paragraph--additional-100-medium": "_purpur-paragraph--additional-100-medium_1rh57_60",
|
|
200
185
|
"purpur-paragraph--overline-100": "_purpur-paragraph--overline-100_1rh57_67",
|
|
201
186
|
"purpur-paragraph--overline-200": "_purpur-paragraph--overline-200_1rh57_75"
|
|
202
|
-
}, W = {
|
|
187
|
+
}, X = U.bind(W), Y = {
|
|
203
188
|
PARAGRAPH100: "paragraph-100"
|
|
204
|
-
},
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
...p
|
|
189
|
+
}, l = "purpur-paragraph", S = ({
|
|
190
|
+
children: e,
|
|
191
|
+
className: i,
|
|
192
|
+
disabled: a,
|
|
193
|
+
enableHyphenation: u = !1,
|
|
194
|
+
negative: n = !1,
|
|
195
|
+
variant: r = Y.PARAGRAPH100,
|
|
196
|
+
...t
|
|
213
197
|
}) => {
|
|
214
|
-
const
|
|
215
|
-
|
|
216
|
-
l
|
|
217
|
-
|
|
198
|
+
const p = X(i, l, `${l}--${r}`, {
|
|
199
|
+
[`${l}--hyphens`]: u,
|
|
200
|
+
[`${l}--disabled`]: a,
|
|
201
|
+
[`${l}--negative`]: n
|
|
202
|
+
});
|
|
203
|
+
return /* @__PURE__ */ s("p", { ...t, className: p, children: e });
|
|
204
|
+
};
|
|
205
|
+
S.displayName = "Paragraph";
|
|
206
|
+
const b = x.bind($), o = "purpur-listbox", h = y((e, i) => {
|
|
207
|
+
const {
|
|
208
|
+
disabled: a,
|
|
209
|
+
highlighted: u,
|
|
210
|
+
hovered: n,
|
|
211
|
+
selected: r,
|
|
212
|
+
children: t,
|
|
213
|
+
className: p,
|
|
214
|
+
noninteractive: A,
|
|
215
|
+
...O
|
|
216
|
+
} = e, P = b(`${o}-item`, p, {
|
|
217
|
+
[`${o}-item--highlighted`]: u,
|
|
218
|
+
[`${o}-item--selected`]: r,
|
|
219
|
+
[`${o}-item--hovered`]: n,
|
|
220
|
+
[`${o}-item--disabled`]: a,
|
|
221
|
+
[`${o}-item--noninteractive`]: A
|
|
222
|
+
});
|
|
223
|
+
return /* @__PURE__ */ q(
|
|
224
|
+
"li",
|
|
218
225
|
{
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
226
|
+
...O,
|
|
227
|
+
ref: i,
|
|
228
|
+
className: P,
|
|
229
|
+
"aria-selected": !!r,
|
|
230
|
+
role: "option",
|
|
231
|
+
"aria-disabled": !!a,
|
|
232
|
+
children: [
|
|
233
|
+
typeof t == "string" ? /* @__PURE__ */ s(S, { children: t }) : t,
|
|
234
|
+
r && /* @__PURE__ */ s(N, { size: "xs", className: b(`${o}-item__icon`) })
|
|
235
|
+
]
|
|
222
236
|
}
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
(t, i) => {
|
|
229
|
-
const { disabled: a, highlighted: u, hovered: n, selected: r, children: e, noninteractive: p, ...h } = t, P = x(`${o}-item`, h.className, {
|
|
230
|
-
[`${o}-item--highlighted`]: u,
|
|
231
|
-
[`${o}-item--selected`]: r,
|
|
232
|
-
[`${o}-item--hovered`]: n,
|
|
233
|
-
[`${o}-item--disabled`]: a,
|
|
234
|
-
[`${o}-item--noninteractive`]: p
|
|
235
|
-
});
|
|
236
|
-
return /* @__PURE__ */ q(
|
|
237
|
-
"li",
|
|
238
|
-
{
|
|
239
|
-
...h,
|
|
240
|
-
ref: i,
|
|
241
|
-
className: P,
|
|
242
|
-
"aria-selected": !!r,
|
|
243
|
-
role: "option",
|
|
244
|
-
"aria-disabled": !!a,
|
|
245
|
-
children: [
|
|
246
|
-
typeof e == "string" ? /* @__PURE__ */ s(A, { children: e }) : e,
|
|
247
|
-
r && /* @__PURE__ */ s(j, { size: "xs", className: x(`${o}-item__icon`) })
|
|
248
|
-
]
|
|
249
|
-
}
|
|
250
|
-
);
|
|
251
|
-
}
|
|
252
|
-
), X = (t) => I(t) && (t == null ? void 0 : t.type) === _;
|
|
253
|
-
_.displayName = "ListBoxItem";
|
|
254
|
-
const Y = w.bind(N), rr = "purpur-listbox", O = $(
|
|
255
|
-
({ children: t, ...i }, a) => /* @__PURE__ */ s(
|
|
237
|
+
);
|
|
238
|
+
}), rr = (e) => I(e) && (e == null ? void 0 : e.type) === h;
|
|
239
|
+
h.displayName = "ListBoxItem";
|
|
240
|
+
const er = x.bind($), tr = "purpur-listbox", j = y(
|
|
241
|
+
({ children: e, ...i }, a) => /* @__PURE__ */ s(
|
|
256
242
|
"ul",
|
|
257
243
|
{
|
|
258
244
|
...i,
|
|
259
245
|
ref: a,
|
|
260
|
-
className:
|
|
246
|
+
className: er(tr, i.className),
|
|
261
247
|
role: "listbox",
|
|
262
|
-
children: L.toArray(
|
|
248
|
+
children: L.toArray(e).filter(rr)
|
|
263
249
|
}
|
|
264
250
|
)
|
|
265
251
|
);
|
|
266
|
-
|
|
267
|
-
|
|
252
|
+
j.Item = h;
|
|
253
|
+
j.displayName = "ListBox";
|
|
268
254
|
export {
|
|
269
|
-
|
|
255
|
+
j as Listbox
|
|
270
256
|
};
|
|
271
257
|
//# sourceMappingURL=listbox.es.js.map
|
package/dist/listbox.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listbox.es.js","sources":["../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../../icon/dist/icon-BqK8slmm.mjs","../../icon/dist/components/checkmark.es.js","../../paragraph/dist/paragraph.es.js","../src/listbox-item.tsx","../src/listbox.tsx"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import { jsx as a } from \"react/jsx-runtime\";\nfunction f(r) {\n return r && r.__esModule && Object.prototype.hasOwnProperty.call(r, \"default\") ? r.default : r;\n}\nvar c = { exports: {} };\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\nvar p;\nfunction m() {\n return p || (p = 1, function(r) {\n (function() {\n var e = {}.hasOwnProperty;\n function o() {\n for (var t = \"\", n = 0; n < arguments.length; n++) {\n var s = arguments[n];\n s && (t = i(t, u.call(this, s)));\n }\n return t;\n }\n function u(t) {\n if (typeof t == \"string\" || typeof t == \"number\")\n return this && this[t] || t;\n if (typeof t != \"object\")\n return \"\";\n if (Array.isArray(t))\n return o.apply(this, t);\n if (t.toString !== Object.prototype.toString && !t.toString.toString().includes(\"[native code]\"))\n return t.toString();\n var n = \"\";\n for (var s in t)\n e.call(t, s) && t[s] && (n = i(n, this && this[s] || s));\n return n;\n }\n function i(t, n) {\n return n ? t ? t + \" \" + n : t + n : t;\n }\n r.exports ? (o.default = o, r.exports = o) : window.classNames = o;\n })();\n }(c)), c.exports;\n}\nvar _ = m();\nconst d = /* @__PURE__ */ f(_), v = {\n \"purpur-icon\": \"_purpur-icon_8u1lq_1\",\n \"purpur-icon--xxs\": \"_purpur-icon--xxs_8u1lq_4\",\n \"purpur-icon--xs\": \"_purpur-icon--xs_8u1lq_8\",\n \"purpur-icon--sm\": \"_purpur-icon--sm_8u1lq_12\",\n \"purpur-icon--md\": \"_purpur-icon--md_8u1lq_16\",\n \"purpur-icon--lg\": \"_purpur-icon--lg_8u1lq_20\",\n \"purpur-icon--xl\": \"_purpur-icon--xl_8u1lq_24\"\n}, g = d.bind(v), l = \"purpur-icon\", x = \"md\", h = (r) => r.filter((e) => Object.keys(e).length >= 1).map((e) => `${e.name}=\"${e.value}\"`).join(\" \"), y = ({ content: r = \"\", title: e } = {}) => {\n const o = [\n { name: \"xmlns\", value: \"http://www.w3.org/2000/svg\" },\n { name: \"fill\", value: \"currentColor\" },\n { name: \"viewBox\", value: \"0 0 24 24\" },\n e ? { name: \"role\", value: \"img\" } : { name: \"aria-hidden\", value: \"true\" }\n ], u = e ? `<title>${e}</title>` : \"\";\n return `<svg ${h(o)}>${u}${r}</svg>`;\n}, S = (r) => r.replace(/<(\\/?)svg([^>]*)>/g, \"\").trim(), b = ({\n [\"data-testid\"]: r,\n svg: e,\n allyTitle: o,\n className: u,\n size: i = x,\n ...t\n}) => {\n const n = y({\n content: S(e.svg),\n title: o\n }), s = g(u, l, `${l}--${i}`);\n return /* @__PURE__ */ a(\n \"span\",\n {\n className: s,\n \"data-testid\": r,\n dangerouslySetInnerHTML: { __html: n },\n ...t\n }\n );\n};\nb.displayName = \"Icon\";\nexport {\n b as I\n};\n//# sourceMappingURL=icon-BqK8slmm.mjs.map\n","import { jsx as o } from \"react/jsx-runtime\";\nimport { I as r } from \"../icon-BqK8slmm.mjs\";\nconst c = {\n name: \"checkmark\",\n svg: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M21.06 3.795a.9.9 0 0 1 .145 1.264l-11.5 14.5a.9.9 0 0 1-1.341.077l-6-6a.9.9 0 0 1 1.272-1.272l5.286 5.286L19.795 3.94a.9.9 0 0 1 1.264-.145Z\" clip-rule=\"evenodd\"/></svg>',\n keywords: [\"checkmark\"],\n category: \"utility\"\n}, a = (e) => /* @__PURE__ */ o(r, { ...e, svg: c });\na.displayName = \"IconCheckmark\";\nexport {\n a as IconCheckmark\n};\n//# sourceMappingURL=checkmark.es.js.map\n","import { jsx as _ } from \"react/jsx-runtime\";\nfunction d(p) {\n return p && p.__esModule && Object.prototype.hasOwnProperty.call(p, \"default\") ? p.default : p;\n}\nvar o = { exports: {} };\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\nvar l;\nfunction m() {\n return l || (l = 1, function(p) {\n (function() {\n var s = {}.hasOwnProperty;\n function u() {\n for (var r = \"\", a = 0; a < arguments.length; a++) {\n var e = arguments[a];\n e && (r = h(r, i(e)));\n }\n return r;\n }\n function i(r) {\n if (typeof r == \"string\" || typeof r == \"number\")\n return r;\n if (typeof r != \"object\")\n return \"\";\n if (Array.isArray(r))\n return u.apply(null, r);\n if (r.toString !== Object.prototype.toString && !r.toString.toString().includes(\"[native code]\"))\n return r.toString();\n var a = \"\";\n for (var e in r)\n s.call(r, e) && r[e] && (a = h(a, e));\n return a;\n }\n function h(r, a) {\n return a ? r ? r + \" \" + a : r + a : r;\n }\n p.exports ? (u.default = u, p.exports = u) : window.classNames = u;\n })();\n }(o)), o.exports;\n}\nvar c = m();\nconst f = /* @__PURE__ */ d(c), t = {\n \"purpur-paragraph\": \"_purpur-paragraph_1rh57_1\",\n \"purpur-paragraph--disabled\": \"_purpur-paragraph--disabled_1rh57_7\",\n \"purpur-paragraph--hyphens\": \"_purpur-paragraph--hyphens_1rh57_10\",\n \"purpur-paragraph--negative\": \"_purpur-paragraph--negative_1rh57_13\",\n \"purpur-paragraph--paragraph-100\": \"_purpur-paragraph--paragraph-100_1rh57_16\",\n \"purpur-paragraph--paragraph-100-medium\": \"_purpur-paragraph--paragraph-100-medium_1rh57_22\",\n \"purpur-paragraph--paragraph-100-bold\": \"_purpur-paragraph--paragraph-100-bold_1rh57_29\",\n \"purpur-paragraph--paragraph-200\": \"_purpur-paragraph--paragraph-200_1rh57_36\",\n \"purpur-paragraph--preamble-100\": \"_purpur-paragraph--preamble-100_1rh57_42\",\n \"purpur-paragraph--preamble-200\": \"_purpur-paragraph--preamble-200_1rh57_48\",\n \"purpur-paragraph--additional-100\": \"_purpur-paragraph--additional-100_1rh57_54\",\n \"purpur-paragraph--additional-100-medium\": \"_purpur-paragraph--additional-100-medium_1rh57_60\",\n \"purpur-paragraph--overline-100\": \"_purpur-paragraph--overline-100_1rh57_67\",\n \"purpur-paragraph--overline-200\": \"_purpur-paragraph--overline-200_1rh57_75\"\n}, A = {\n PARAGRAPH100: \"paragraph-100\",\n PARAGRAPH100MEDIUM: \"paragraph-100-medium\",\n PARAGRAPH100BOLD: \"paragraph-100-bold\",\n PARAGRAPH200: \"paragraph-200\",\n PREAMBLE100: \"preamble-100\",\n PREAMBLE200: \"preamble-200\",\n ADDITIONAL100: \"additional-100\",\n ADDITIONAL100MEDIUM: \"additional-100-medium\",\n OVERLINE100: \"overline-100\",\n OVERLINE200: \"overline-200\"\n}, n = \"purpur-paragraph\", P = ({\n [\"data-testid\"]: p,\n children: s,\n className: u,\n disabled: i,\n enableHyphenation: h = !1,\n negative: r = !1,\n variant: a = A.PARAGRAPH100,\n ...e\n}) => {\n const g = f([\n u,\n t[n],\n t[`${n}--${a}`],\n {\n [t[`${n}--hyphens`]]: h,\n [t[`${n}--disabled`]]: i,\n [t[`${n}--negative`]]: r\n }\n ]);\n return /* @__PURE__ */ _(\"p\", { ...e, className: g, \"data-testid\": p, children: s });\n};\nP.displayName = \"Paragraph\";\nexport {\n P as Paragraph,\n A as ParagraphVariant\n};\n//# sourceMappingURL=paragraph.es.js.map\n","import type {\n ComponentPropsWithRef,\n ForwardedRef,\n ReactElement,\n ReactNode,\n} from \"react\";\nimport React, { forwardRef, isValidElement } from \"react\";\nimport { IconCheckmark } from \"@purpurds/icon/checkmark\";\nimport { Paragraph } from \"@purpurds/paragraph\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./listbox.module.scss\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-listbox\";\n\nexport type ListboxItemProps = Omit<ComponentPropsWithRef<\"li\">, \"role\"> & {\n \"data-testid\"?: string;\n highlighted?: boolean;\n hovered?: boolean;\n key?: string;\n selected?: boolean;\n disabled?: boolean;\n noninteractive?: boolean;\n};\n\nexport const ListboxItem = forwardRef(\n (props: ListboxItemProps, ref: ForwardedRef<HTMLLIElement>) => {\n const { disabled, highlighted, hovered, selected, children, noninteractive, ...liProps } =\n props;\n const className = cx(`${rootClassName}-item`, liProps.className, {\n [`${rootClassName}-item--highlighted`]: highlighted,\n [`${rootClassName}-item--selected`]: selected,\n [`${rootClassName}-item--hovered`]: hovered,\n [`${rootClassName}-item--disabled`]: disabled,\n [`${rootClassName}-item--noninteractive`]: noninteractive,\n });\n\n return (\n <li\n {...liProps}\n ref={ref}\n className={className}\n aria-selected={!!selected}\n role=\"option\"\n aria-disabled={!!disabled}\n >\n {typeof children === \"string\" ? <Paragraph>{children}</Paragraph> : children}\n {selected && <IconCheckmark size=\"xs\" className={cx(`${rootClassName}-item__icon`)} />}\n </li>\n );\n }\n);\n\nexport const isListboxItem = (\n child?: ReactNode\n): child is ReactElement<ListboxItemProps> =>\n isValidElement<ListboxItemProps>(child) && child?.type === ListboxItem;\n\nListboxItem.displayName = \"ListBoxItem\";\n","import type {\n ComponentPropsWithRef,\n ForwardedRef,\n ForwardRefExoticComponent,\n PropsWithoutRef,\n} from \"react\";\nimport React, { Children, forwardRef } from \"react\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./listbox.module.scss\";\nimport { isListboxItem, ListboxItem } from \"./listbox-item\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-listbox\";\n\nexport type ListboxProps = Omit<ComponentPropsWithRef<\"ul\">, \"role\"> & {\n \"data-testid\"?: string;\n \"aria-label\": NonNullable<ComponentPropsWithRef<\"ul\">[\"aria-label\"]>;\n \"aria-expanded\": NonNullable<ComponentPropsWithRef<\"ul\">[\"aria-expanded\"]>;\n};\n\ntype ListboxStatic = {\n Item: typeof ListboxItem;\n};\n\ntype ListboxComponent = ForwardRefExoticComponent<PropsWithoutRef<ListboxProps>> & ListboxStatic;\n\nexport const Listbox = forwardRef(\n ({ children, ...listboxProps }: ListboxProps, ref: ForwardedRef<HTMLUListElement>) => (\n <ul\n {...listboxProps}\n ref={ref}\n className={cx(rootClassName, listboxProps.className)}\n role=\"listbox\"\n >\n {Children.toArray(children).filter(isListboxItem)}\n </ul>\n )\n) as ListboxComponent;\n\nexport type { ListboxItemProps } from \"./listbox-item\";\nListbox.Item = ListboxItem;\nListbox.displayName = \"ListBox\";\n"],"names":["hasOwn","classNames","classes","i","arg","appendClass","parseValue","key","value","newClass","module","f","r","c","p","m","e","o","t","n","s","_","d","v","g","l","x","h","y","S","b","a","u","A","P","cx","styles","rootClassName","ListboxItem","forwardRef","props","ref","disabled","highlighted","hovered","selected","children","noninteractive","liProps","className","jsxs","jsx","Paragraph","IconCheckmark","isListboxItem","child","isValidElement","Listbox","listboxProps","Children"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"listbox.es.js","sources":["../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../../icon/dist/icon-CAVUByiV.mjs","../../icon/dist/components/checkmark.es.js","../../paragraph/dist/paragraph.es.js","../src/listbox-item.tsx","../src/listbox.tsx"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import { jsx as a } from \"react/jsx-runtime\";\nfunction f(r) {\n return r && r.__esModule && Object.prototype.hasOwnProperty.call(r, \"default\") ? r.default : r;\n}\nvar c = { exports: {} };\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\nvar p;\nfunction m() {\n return p || (p = 1, function(r) {\n (function() {\n var e = {}.hasOwnProperty;\n function o() {\n for (var t = \"\", n = 0; n < arguments.length; n++) {\n var s = arguments[n];\n s && (t = i(t, u.call(this, s)));\n }\n return t;\n }\n function u(t) {\n if (typeof t == \"string\" || typeof t == \"number\")\n return this && this[t] || t;\n if (typeof t != \"object\")\n return \"\";\n if (Array.isArray(t))\n return o.apply(this, t);\n if (t.toString !== Object.prototype.toString && !t.toString.toString().includes(\"[native code]\"))\n return t.toString();\n var n = \"\";\n for (var s in t)\n e.call(t, s) && t[s] && (n = i(n, this && this[s] || s));\n return n;\n }\n function i(t, n) {\n return n ? t ? t + \" \" + n : t + n : t;\n }\n r.exports ? (o.default = o, r.exports = o) : window.classNames = o;\n })();\n }(c)), c.exports;\n}\nvar _ = m();\nconst v = /* @__PURE__ */ f(_), d = {\n \"purpur-icon\": \"_purpur-icon_8u1lq_1\",\n \"purpur-icon--xxs\": \"_purpur-icon--xxs_8u1lq_4\",\n \"purpur-icon--xs\": \"_purpur-icon--xs_8u1lq_8\",\n \"purpur-icon--sm\": \"_purpur-icon--sm_8u1lq_12\",\n \"purpur-icon--md\": \"_purpur-icon--md_8u1lq_16\",\n \"purpur-icon--lg\": \"_purpur-icon--lg_8u1lq_20\",\n \"purpur-icon--xl\": \"_purpur-icon--xl_8u1lq_24\"\n}, g = v.bind(d), l = \"purpur-icon\", x = \"md\", h = (r) => r.filter((e) => Object.keys(e).length >= 1).map((e) => `${e.name}=\"${e.value}\"`).join(\" \"), y = ({ content: r = \"\", title: e } = {}) => {\n const o = [\n { name: \"xmlns\", value: \"http://www.w3.org/2000/svg\" },\n { name: \"fill\", value: \"currentColor\" },\n { name: \"viewBox\", value: \"0 0 24 24\" },\n e ? { name: \"role\", value: \"img\" } : { name: \"aria-hidden\", value: \"true\" }\n ], u = e ? `<title>${e}</title>` : \"\";\n return `<svg ${h(o)}>${u}${r}</svg>`;\n}, S = (r) => r.replace(/<(\\/?)svg([^>]*)>/g, \"\").trim(), b = ({ svg: r, allyTitle: e, className: o, size: u = x, ...i }) => {\n const t = y({\n content: S(r.svg),\n title: e\n }), n = g(o, l, `${l}--${u}`);\n return /* @__PURE__ */ a(\"span\", { className: n, dangerouslySetInnerHTML: { __html: t }, ...i });\n};\nb.displayName = \"Icon\";\nexport {\n b as I\n};\n//# sourceMappingURL=icon-CAVUByiV.mjs.map\n","import { jsx as o } from \"react/jsx-runtime\";\nimport { I as r } from \"../icon-CAVUByiV.mjs\";\nconst c = {\n name: \"checkmark\",\n svg: '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M21.06 3.795a.9.9 0 0 1 .145 1.264l-11.5 14.5a.9.9 0 0 1-1.341.077l-6-6a.9.9 0 0 1 1.272-1.272l5.286 5.286L19.795 3.94a.9.9 0 0 1 1.264-.145Z\" clip-rule=\"evenodd\"/></svg>',\n keywords: [\"checkmark\"],\n category: \"utility\"\n}, a = (e) => /* @__PURE__ */ o(r, { ...e, svg: c });\na.displayName = \"IconCheckmark\";\nexport {\n a as IconCheckmark\n};\n//# sourceMappingURL=checkmark.es.js.map\n","import { jsx as l } from \"react/jsx-runtime\";\nfunction g(p) {\n return p && p.__esModule && Object.prototype.hasOwnProperty.call(p, \"default\") ? p.default : p;\n}\nvar o = { exports: {} };\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\nvar s;\nfunction _() {\n return s || (s = 1, function(p) {\n (function() {\n var n = {}.hasOwnProperty;\n function u() {\n for (var r = \"\", a = 0; a < arguments.length; a++) {\n var e = arguments[a];\n e && (r = h(r, i.call(this, e)));\n }\n return r;\n }\n function i(r) {\n if (typeof r == \"string\" || typeof r == \"number\")\n return this && this[r] || r;\n if (typeof r != \"object\")\n return \"\";\n if (Array.isArray(r))\n return u.apply(this, r);\n if (r.toString !== Object.prototype.toString && !r.toString.toString().includes(\"[native code]\"))\n return r.toString();\n var a = \"\";\n for (var e in r)\n n.call(r, e) && r[e] && (a = h(a, this && this[e] || e));\n return a;\n }\n function h(r, a) {\n return a ? r ? r + \" \" + a : r + a : r;\n }\n p.exports ? (u.default = u, p.exports = u) : window.classNames = u;\n })();\n }(o)), o.exports;\n}\nvar d = _();\nconst c = /* @__PURE__ */ g(d), f = {\n \"purpur-paragraph\": \"_purpur-paragraph_1rh57_1\",\n \"purpur-paragraph--disabled\": \"_purpur-paragraph--disabled_1rh57_7\",\n \"purpur-paragraph--hyphens\": \"_purpur-paragraph--hyphens_1rh57_10\",\n \"purpur-paragraph--negative\": \"_purpur-paragraph--negative_1rh57_13\",\n \"purpur-paragraph--paragraph-100\": \"_purpur-paragraph--paragraph-100_1rh57_16\",\n \"purpur-paragraph--paragraph-100-medium\": \"_purpur-paragraph--paragraph-100-medium_1rh57_22\",\n \"purpur-paragraph--paragraph-100-bold\": \"_purpur-paragraph--paragraph-100-bold_1rh57_29\",\n \"purpur-paragraph--paragraph-200\": \"_purpur-paragraph--paragraph-200_1rh57_36\",\n \"purpur-paragraph--preamble-100\": \"_purpur-paragraph--preamble-100_1rh57_42\",\n \"purpur-paragraph--preamble-200\": \"_purpur-paragraph--preamble-200_1rh57_48\",\n \"purpur-paragraph--additional-100\": \"_purpur-paragraph--additional-100_1rh57_54\",\n \"purpur-paragraph--additional-100-medium\": \"_purpur-paragraph--additional-100-medium_1rh57_60\",\n \"purpur-paragraph--overline-100\": \"_purpur-paragraph--overline-100_1rh57_67\",\n \"purpur-paragraph--overline-200\": \"_purpur-paragraph--overline-200_1rh57_75\"\n}, m = c.bind(f), A = {\n PARAGRAPH100: \"paragraph-100\",\n PARAGRAPH100MEDIUM: \"paragraph-100-medium\",\n PARAGRAPH100BOLD: \"paragraph-100-bold\",\n PARAGRAPH200: \"paragraph-200\",\n PREAMBLE100: \"preamble-100\",\n PREAMBLE200: \"preamble-200\",\n ADDITIONAL100: \"additional-100\",\n ADDITIONAL100MEDIUM: \"additional-100-medium\",\n OVERLINE100: \"overline-100\",\n OVERLINE200: \"overline-200\"\n}, t = \"purpur-paragraph\", b = ({\n children: p,\n className: n,\n disabled: u,\n enableHyphenation: i = !1,\n negative: h = !1,\n variant: r = A.PARAGRAPH100,\n ...a\n}) => {\n const e = m(n, t, `${t}--${r}`, {\n [`${t}--hyphens`]: i,\n [`${t}--disabled`]: u,\n [`${t}--negative`]: h\n });\n return /* @__PURE__ */ l(\"p\", { ...a, className: e, children: p });\n};\nb.displayName = \"Paragraph\";\nexport {\n b as Paragraph,\n A as ParagraphVariant\n};\n//# sourceMappingURL=paragraph.es.js.map\n","import React, { forwardRef, isValidElement, type ReactElement, type ReactNode } from \"react\";\nimport type { BaseProps } from \"@purpurds/common-types\";\nimport { IconCheckmark } from \"@purpurds/icon/checkmark\";\nimport { Paragraph } from \"@purpurds/paragraph\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./listbox.module.scss\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-listbox\";\n\nexport type ListboxItemProps = Omit<BaseProps<\"li\">, \"role\"> & {\n highlighted?: boolean;\n hovered?: boolean;\n key?: string;\n selected?: boolean;\n disabled?: boolean;\n noninteractive?: boolean;\n};\n\nexport const ListboxItem = forwardRef<HTMLLIElement, ListboxItemProps>((props, ref) => {\n const {\n disabled,\n highlighted,\n hovered,\n selected,\n children,\n className,\n noninteractive,\n ...liProps\n } = props;\n\n const classes = cx(`${rootClassName}-item`, className, {\n [`${rootClassName}-item--highlighted`]: highlighted,\n [`${rootClassName}-item--selected`]: selected,\n [`${rootClassName}-item--hovered`]: hovered,\n [`${rootClassName}-item--disabled`]: disabled,\n [`${rootClassName}-item--noninteractive`]: noninteractive,\n });\n\n return (\n <li\n {...liProps}\n ref={ref}\n className={classes}\n aria-selected={!!selected}\n role=\"option\"\n aria-disabled={!!disabled}\n >\n {typeof children === \"string\" ? <Paragraph>{children}</Paragraph> : children}\n {selected && <IconCheckmark size=\"xs\" className={cx(`${rootClassName}-item__icon`)} />}\n </li>\n );\n});\n\nexport const isListboxItem = (child?: ReactNode): child is ReactElement<ListboxItemProps> =>\n isValidElement<ListboxItemProps>(child) && child?.type === ListboxItem;\n\nListboxItem.displayName = \"ListBoxItem\";\n","import React, {\n Children,\n forwardRef,\n type ForwardRefExoticComponent,\n type PropsWithoutRef,\n} from \"react\";\nimport type { BaseProps } from \"@purpurds/common-types\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./listbox.module.scss\";\nimport { isListboxItem, ListboxItem } from \"./listbox-item\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-listbox\";\n\nexport type ListboxProps = Omit<BaseProps<\"ul\">, \"role\"> & {\n \"aria-label\": NonNullable<BaseProps<\"ul\">[\"aria-label\"]>;\n \"aria-expanded\": NonNullable<BaseProps<\"ul\">[\"aria-expanded\"]>;\n};\n\ntype ListboxStatic = {\n Item: typeof ListboxItem;\n};\n\ntype ListboxComponent = ForwardRefExoticComponent<PropsWithoutRef<ListboxProps>> & ListboxStatic;\n\nexport const Listbox = forwardRef<HTMLUListElement, ListboxProps>(\n ({ children, ...listboxProps }, ref) => (\n <ul\n {...listboxProps}\n ref={ref}\n className={cx(rootClassName, listboxProps.className)}\n role=\"listbox\"\n >\n {Children.toArray(children).filter(isListboxItem)}\n </ul>\n )\n) as ListboxComponent;\n\nexport type { ListboxItemProps } from \"./listbox-item\";\nListbox.Item = ListboxItem;\nListbox.displayName = \"ListBox\";\n"],"names":["hasOwn","classNames","classes","i","arg","appendClass","parseValue","key","value","newClass","module","f","r","c","p","m","e","o","t","n","s","_","v","d","g","l","x","h","y","S","b","a","u","A","cx","styles","rootClassName","ListboxItem","forwardRef","props","ref","disabled","highlighted","hovered","selected","children","className","noninteractive","liProps","jsxs","jsx","Paragraph","IconCheckmark","isListboxItem","child","isValidElement","Listbox","listboxProps","Children"],"mappings":"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","x_google_ignoreList":[0]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@purpurds/listbox",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.7.0",
|
|
4
4
|
"license": "AGPL-3.0-only",
|
|
5
5
|
"main": "./dist/listbox.cjs.js",
|
|
6
6
|
"types": "./dist/listbox.d.ts",
|
|
@@ -16,9 +16,10 @@
|
|
|
16
16
|
"source": "src/listbox.tsx",
|
|
17
17
|
"dependencies": {
|
|
18
18
|
"classnames": "~2.5.0",
|
|
19
|
-
"@purpurds/
|
|
20
|
-
"@purpurds/
|
|
21
|
-
"@purpurds/
|
|
19
|
+
"@purpurds/common-types": "7.7.0",
|
|
20
|
+
"@purpurds/icon": "7.7.0",
|
|
21
|
+
"@purpurds/paragraph": "7.7.0",
|
|
22
|
+
"@purpurds/tokens": "7.7.0"
|
|
22
23
|
},
|
|
23
24
|
"devDependencies": {
|
|
24
25
|
"eslint": "9.24.0",
|
package/src/listbox-item.tsx
CHANGED
|
@@ -1,10 +1,5 @@
|
|
|
1
|
-
import type
|
|
2
|
-
|
|
3
|
-
ForwardedRef,
|
|
4
|
-
ReactElement,
|
|
5
|
-
ReactNode,
|
|
6
|
-
} from "react";
|
|
7
|
-
import React, { forwardRef, isValidElement } from "react";
|
|
1
|
+
import React, { forwardRef, isValidElement, type ReactElement, type ReactNode } from "react";
|
|
2
|
+
import type { BaseProps } from "@purpurds/common-types";
|
|
8
3
|
import { IconCheckmark } from "@purpurds/icon/checkmark";
|
|
9
4
|
import { Paragraph } from "@purpurds/paragraph";
|
|
10
5
|
import c from "classnames/bind";
|
|
@@ -15,8 +10,7 @@ const cx = c.bind(styles);
|
|
|
15
10
|
|
|
16
11
|
const rootClassName = "purpur-listbox";
|
|
17
12
|
|
|
18
|
-
export type ListboxItemProps = Omit<
|
|
19
|
-
"data-testid"?: string;
|
|
13
|
+
export type ListboxItemProps = Omit<BaseProps<"li">, "role"> & {
|
|
20
14
|
highlighted?: boolean;
|
|
21
15
|
hovered?: boolean;
|
|
22
16
|
key?: string;
|
|
@@ -25,37 +19,42 @@ export type ListboxItemProps = Omit<ComponentPropsWithRef<"li">, "role"> & {
|
|
|
25
19
|
noninteractive?: boolean;
|
|
26
20
|
};
|
|
27
21
|
|
|
28
|
-
export const ListboxItem = forwardRef(
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
22
|
+
export const ListboxItem = forwardRef<HTMLLIElement, ListboxItemProps>((props, ref) => {
|
|
23
|
+
const {
|
|
24
|
+
disabled,
|
|
25
|
+
highlighted,
|
|
26
|
+
hovered,
|
|
27
|
+
selected,
|
|
28
|
+
children,
|
|
29
|
+
className,
|
|
30
|
+
noninteractive,
|
|
31
|
+
...liProps
|
|
32
|
+
} = props;
|
|
33
|
+
|
|
34
|
+
const classes = cx(`${rootClassName}-item`, className, {
|
|
35
|
+
[`${rootClassName}-item--highlighted`]: highlighted,
|
|
36
|
+
[`${rootClassName}-item--selected`]: selected,
|
|
37
|
+
[`${rootClassName}-item--hovered`]: hovered,
|
|
38
|
+
[`${rootClassName}-item--disabled`]: disabled,
|
|
39
|
+
[`${rootClassName}-item--noninteractive`]: noninteractive,
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
return (
|
|
43
|
+
<li
|
|
44
|
+
{...liProps}
|
|
45
|
+
ref={ref}
|
|
46
|
+
className={classes}
|
|
47
|
+
aria-selected={!!selected}
|
|
48
|
+
role="option"
|
|
49
|
+
aria-disabled={!!disabled}
|
|
50
|
+
>
|
|
51
|
+
{typeof children === "string" ? <Paragraph>{children}</Paragraph> : children}
|
|
52
|
+
{selected && <IconCheckmark size="xs" className={cx(`${rootClassName}-item__icon`)} />}
|
|
53
|
+
</li>
|
|
54
|
+
);
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
export const isListboxItem = (child?: ReactNode): child is ReactElement<ListboxItemProps> =>
|
|
59
58
|
isValidElement<ListboxItemProps>(child) && child?.type === ListboxItem;
|
|
60
59
|
|
|
61
60
|
ListboxItem.displayName = "ListBoxItem";
|
package/src/listbox.tsx
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
ForwardRefExoticComponent,
|
|
5
|
-
PropsWithoutRef,
|
|
1
|
+
import React, {
|
|
2
|
+
Children,
|
|
3
|
+
forwardRef,
|
|
4
|
+
type ForwardRefExoticComponent,
|
|
5
|
+
type PropsWithoutRef,
|
|
6
6
|
} from "react";
|
|
7
|
-
import
|
|
7
|
+
import type { BaseProps } from "@purpurds/common-types";
|
|
8
8
|
import c from "classnames/bind";
|
|
9
9
|
|
|
10
10
|
import styles from "./listbox.module.scss";
|
|
@@ -14,10 +14,9 @@ const cx = c.bind(styles);
|
|
|
14
14
|
|
|
15
15
|
const rootClassName = "purpur-listbox";
|
|
16
16
|
|
|
17
|
-
export type ListboxProps = Omit<
|
|
18
|
-
"
|
|
19
|
-
"aria-
|
|
20
|
-
"aria-expanded": NonNullable<ComponentPropsWithRef<"ul">["aria-expanded"]>;
|
|
17
|
+
export type ListboxProps = Omit<BaseProps<"ul">, "role"> & {
|
|
18
|
+
"aria-label": NonNullable<BaseProps<"ul">["aria-label"]>;
|
|
19
|
+
"aria-expanded": NonNullable<BaseProps<"ul">["aria-expanded"]>;
|
|
21
20
|
};
|
|
22
21
|
|
|
23
22
|
type ListboxStatic = {
|
|
@@ -26,8 +25,8 @@ type ListboxStatic = {
|
|
|
26
25
|
|
|
27
26
|
type ListboxComponent = ForwardRefExoticComponent<PropsWithoutRef<ListboxProps>> & ListboxStatic;
|
|
28
27
|
|
|
29
|
-
export const Listbox = forwardRef(
|
|
30
|
-
({ children, ...listboxProps }
|
|
28
|
+
export const Listbox = forwardRef<HTMLUListElement, ListboxProps>(
|
|
29
|
+
({ children, ...listboxProps }, ref) => (
|
|
31
30
|
<ul
|
|
32
31
|
{...listboxProps}
|
|
33
32
|
ref={ref}
|