{"version":3,"file":"/Users/anthonygubler/development/dojo-org/widgets/src/popup-confirmation/index.tsx","sourceRoot":"","sources":["index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,IAAI,MAAM,sCAAsC,CAAC;AAGxD,OAAO,KAAK,MAAM,qBAAqB,CAAC;AACxC,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAC5C,OAAO,MAAM,MAAM,WAAW,CAAC;AAG/B,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,GAAG,MAAM,2CAA2C,CAAC;AACjE,OAAO,MAAM,MAAM,yBAAyB,CAAC;AAkB7C,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;KACrC,UAAU,EAA+B;KACzC,QAAQ,EAA6B,CAAC;AAExC,eAAe,OAAO,CAAC,SAAS,iBAAiB,CAAC,EACjD,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAC3B,UAAU,EACV,QAAQ,EACR;IACA,MAAM,iBAOU,EAPV,EACL,QAAQ,EACR,SAAS,EACT,OAAO,EACP,KAAK,EAAE,cAAc,EACrB,OAAO,OAEQ,EADf,8FACe,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAE3C,OAAO,CACN,aAAK,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;QAC9C,IAAC,YAAY,kBACZ,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,OAAO,EAChB,GAAG,EAAC,eAAe,IACf,eAAe,GAElB;YACA,OAAO;YACP,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAC7B,aACC,OAAO,EAAE;oBACR,SAAS,CAAC,cAAc;oBACxB,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK;iBACxD;gBAED,aAAK,OAAO,EAAE,SAAS,CAAC,KAAK;oBAC5B,aAAK,OAAO,EAAE,SAAS,CAAC,YAAY,IAAG,OAAO,CAAO;oBACrD,aAAK,OAAO,EAAE,SAAS,CAAC,aAAa;wBACpC,IAAC,MAAM,IACN,OAAO,EAAE,OAAO,EAChB,GAAG,EAAC,eAAe,EACnB,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,KAAK,CAAC,OAAO,CACnB,SAAS,EACT,GAAG,EACH,QAAQ,CACR,EACD,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,GAAG,EAAE;gCACb,KAAK,EAAE,CAAC;gCACR,QAAQ,IAAI,QAAQ,EAAE,CAAC;4BACxB,CAAC,IAEA,QAAQ,CAAC,EAAE,CACJ;wBACT,IAAC,MAAM,IACN,OAAO,EAAE,OAAO,EAChB,GAAG,EAAC,gBAAgB,EACpB,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,KAAK,CAAC,OAAO,CACnB,SAAS,EACT,GAAG,EACH,SAAS,CACT,EACD,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,GAAG,EAAE;gCACb,KAAK,EAAE,CAAC;gCACR,SAAS,IAAI,SAAS,EAAE,CAAC;4BAC1B,CAAC,IAEA,QAAQ,CAAC,GAAG,CACL,CACJ,CACD,CACD,CACN;SACD,CACa,CACV,CACN,CAAC;AACH,CAAC,CAAC,CAAC","sourcesContent":["import { create, tsx } from '@dojo/framework/core/vdom';\nimport i18n from '@dojo/framework/core/middleware/i18n';\nimport { RenderResult } from '@dojo/framework/core/interfaces';\n\nimport theme from '../middleware/theme';\nimport TriggerPopup from '../trigger-popup';\nimport Button from '../button';\nimport { BasePopupProperties } from '../popup';\n\nimport * as buttonCss from '../theme/default/button.m.css';\nimport * as css from '../theme/default/popup-confirmation.m.css';\nimport bundle from './nls/PopupConfirmation';\n\nexport interface PopupConfirmationProperties extends BasePopupProperties {\n\t/* Callback when the dialog has been confirmed; dialog will be closed */\n\tonConfirm(): void;\n\n\t/* Callback when the dialog has been canceled; dialog will be closed */\n\tonCancel(): void;\n}\n\nexport interface PopupConfirmationChildren {\n\t/* Callback for rendering the trigger content */\n\ttrigger: (toggleOpen: () => void) => RenderResult;\n\n\t/* Content for confirmation dialog */\n\tcontent: RenderResult;\n}\n\nconst factory = create({ theme, i18n })\n\t.properties<PopupConfirmationProperties>()\n\t.children<PopupConfirmationChildren>();\n\nexport default factory(function PopupConfirmation({\n\tmiddleware: { theme, i18n },\n\tproperties,\n\tchildren\n}) {\n\tconst {\n\t\tonCancel,\n\t\tonConfirm,\n\t\tclasses,\n\t\ttheme: inheritedTheme,\n\t\tvariant,\n\t\t...otherProperties\n\t} = properties();\n\tconst [{ content, trigger }] = children();\n\tconst themedCss = theme.classes(css);\n\tconst { messages } = i18n.localize(bundle);\n\n\treturn (\n\t\t<div classes={[themedCss.root, theme.variant()]}>\n\t\t\t<TriggerPopup\n\t\t\t\tclasses={classes}\n\t\t\t\ttheme={inheritedTheme}\n\t\t\t\tvariant={variant}\n\t\t\t\tkey=\"trigger-popup\"\n\t\t\t\t{...otherProperties}\n\t\t\t>\n\t\t\t\t{{\n\t\t\t\t\ttrigger,\n\t\t\t\t\tcontent: (close, position) => (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclasses={[\n\t\t\t\t\t\t\t\tthemedCss.popupContainer,\n\t\t\t\t\t\t\t\tposition === 'above' ? themedCss.above : themedCss.below\n\t\t\t\t\t\t\t]}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<div classes={themedCss.popup}>\n\t\t\t\t\t\t\t\t<div classes={themedCss.popupContent}>{content}</div>\n\t\t\t\t\t\t\t\t<div classes={themedCss.popupControls}>\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tclasses={classes}\n\t\t\t\t\t\t\t\t\t\tkey=\"cancel-button\"\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\ttheme={theme.compose(\n\t\t\t\t\t\t\t\t\t\t\tbuttonCss,\n\t\t\t\t\t\t\t\t\t\t\tcss,\n\t\t\t\t\t\t\t\t\t\t\t'cancel'\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\tvariant={variant}\n\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t\t\t\t\t\tonCancel && onCancel();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{messages.no}\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tclasses={classes}\n\t\t\t\t\t\t\t\t\t\tkey=\"confirm-button\"\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\ttheme={theme.compose(\n\t\t\t\t\t\t\t\t\t\t\tbuttonCss,\n\t\t\t\t\t\t\t\t\t\t\tcss,\n\t\t\t\t\t\t\t\t\t\t\t'confirm'\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\tvariant={variant}\n\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tclose();\n\t\t\t\t\t\t\t\t\t\t\tonConfirm && onConfirm();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{messages.yes}\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)\n\t\t\t\t}}\n\t\t\t</TriggerPopup>\n\t\t</div>\n\t);\n});\n"]}