{"version":3,"file":"/Users/anthonygubler/development/dojo-org/widgets/src/context-menu/index.tsx","sourceRoot":"","sources":["index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,MAAM,qBAAqB,CAAC;AACxC,OAAO,IAAoB,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAC;AACvD,OAAO,KAAK,GAAG,MAAM,qCAAqC,CAAC;AAC3D,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAOrF,MAAM,OAAO,GAAG,MAAM,CAAC;IACtB,KAAK;IACL,QAAQ,EAAE,wBAAwB,EAAc;CAChD,CAAC,CAAC,UAAU,EAAyB,CAAC;AAEvC,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,WAAW,CAAC,EACvD,UAAU,EACV,QAAQ,EACR,UAAU,EAAE,EAAE,KAAK,EAAE,EACrB;IACA,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,CAAC;IAC9D,OAAO,CACN,IAAC,YAAY,QACX;QACA,OAAO,EAAE,QAAQ,EAAE;QACnB,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CACpC,IAAC,IAAI,IACJ,GAAG,EAAC,MAAM,EACV,MAAM,EAAC,MAAM,EACb,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,KAAK,CAAC,OAAO,CACnB,OAAO,EACP,GAAG,EACH,MAAM,CACN,EACD,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,IAAI,QACJ,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,KAAK,EACb,cAAc,EAAE,KAAK,EACrB,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBAClB,KAAK,EAAE,CAAC;gBACR,QAAQ,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC,GACA,CACF;KACD,CACa,CACf,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,eAAe,WAAW,CAAC","sourcesContent":["import { create, tsx } from '@dojo/framework/core/vdom';\nimport theme from '../middleware/theme';\nimport List, { ListOption } from '../list/index';\nimport * as menuCss from '../theme/default/list.m.css';\nimport * as css from '../theme/default/context-menu.m.css';\nimport ContextPopup from '../context-popup';\nimport { createResourceMiddleware } from '@dojo/framework/core/middleware/resources';\n\nexport interface ContextMenuProperties {\n\t/* A callback that will be called with the value of whatever item is selected */\n\tonSelect(value: ListOption): void;\n}\n\nconst factory = create({\n\ttheme,\n\tresource: createResourceMiddleware<ListOption>()\n}).properties<ContextMenuProperties>();\n\nexport const ContextMenu = factory(function ContextMenu({\n\tproperties,\n\tchildren,\n\tmiddleware: { theme }\n}) {\n\tconst { resource, onSelect, classes, variant } = properties();\n\treturn (\n\t\t<ContextPopup>\n\t\t\t{{\n\t\t\t\ttrigger: children(),\n\t\t\t\tcontent: ({ close, shouldFocus }) => (\n\t\t\t\t\t<List\n\t\t\t\t\t\tkey=\"menu\"\n\t\t\t\t\t\theight=\"auto\"\n\t\t\t\t\t\tfocus={shouldFocus}\n\t\t\t\t\t\ttheme={theme.compose(\n\t\t\t\t\t\t\tmenuCss,\n\t\t\t\t\t\t\tcss,\n\t\t\t\t\t\t\t'menu'\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tclasses={classes}\n\t\t\t\t\t\tvariant={variant}\n\t\t\t\t\t\tmenu\n\t\t\t\t\t\tresource={resource}\n\t\t\t\t\t\tonBlur={close}\n\t\t\t\t\t\tonRequestClose={close}\n\t\t\t\t\t\tonValue={(value) => {\n\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t\tonSelect(value);\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t)\n\t\t\t}}\n\t\t</ContextPopup>\n\t);\n});\n\nexport default ContextMenu;\n"]}