{"version":3,"file":"/Users/anthonygubler/development/dojo-org/widgets/src/avatar/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,KAAK,GAAG,MAAM,+BAA+B,CAAC;AAiBrD,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,UAAU,EAAoB,CAAC;AAEjE,MAAM,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,MAAM,CAAC,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE;IAC5F,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACpC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,GAAG,QAAQ,EAAE,IAAI,GAAG,QAAQ,EAAE,GAAG,UAAU,EAAE,CAAC;IACxF,OAAO,CACN,aACC,GAAG,EAAC,MAAM,EACV,IAAI,EAAE,GAAG,IAAI,OAAO,gBACR,GAAG,EACf,OAAO,EAAE;YACR,KAAK,CAAC,OAAO,EAAE;YACf,QAAQ,CAAC,IAAI;YACb,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW;YAChE,OAAO,IAAI,QAAQ,CAAC,aAAa;YACjC,QAAQ,CAAC,IAAI,CAAC;YACd,QAAQ,CAAC,IAAI,CAAC;SACd,EACD,MAAM,EACL,GAAG;YACF,CAAC,CAAC;gBACA,eAAe,EAAE,OAAO,GAAG,GAAG;aAC7B;YACH,CAAC,CAAC,EAAE,IAGL,QAAQ,EAAE,CACN,CACN,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,eAAe,MAAM,CAAC","sourcesContent":["import { create, tsx } from '@dojo/framework/core/vdom';\nimport theme from '../middleware/theme';\nimport * as css from '../theme/default/avatar.m.css';\n\nexport interface AvatarProperties {\n\t/* defines the avatar type, defaults to circle */\n\ttype?: 'square' | 'rounded' | 'circle';\n\t/* determines if secondary color scheme should be used */\n\tsecondary?: boolean;\n\t/* Determines if avatar should be rendered as an outline */\n\toutline?: boolean;\n\t/* the image source used for this avatar */\n\tsrc?: string;\n\t/* size of the avatar, defaults to medium */\n\tsize?: 'small' | 'medium' | 'large';\n\t/* alt text to be used for aria */\n\talt?: string;\n}\n\nconst factory = create({ theme }).properties<AvatarProperties>();\n\nexport const Avatar = factory(function Avatar({ middleware: { theme }, properties, children }) {\n\tconst themeCss = theme.classes(css);\n\tconst { secondary, outline, src, alt, type = 'circle', size = 'medium' } = properties();\n\treturn (\n\t\t<div\n\t\t\tkey=\"root\"\n\t\t\trole={src && 'image'}\n\t\t\taria-label={alt}\n\t\t\tclasses={[\n\t\t\t\ttheme.variant(),\n\t\t\t\tthemeCss.root,\n\t\t\t\tsecondary ? themeCss.avatarColorSecondary : themeCss.avatarColor,\n\t\t\t\toutline && themeCss.avatarOutline,\n\t\t\t\tthemeCss[size],\n\t\t\t\tthemeCss[type]\n\t\t\t]}\n\t\t\tstyles={\n\t\t\t\tsrc\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tbackgroundImage: `url(${src})`\n\t\t\t\t\t  }\n\t\t\t\t\t: {}\n\t\t\t}\n\t\t>\n\t\t\t{children()}\n\t\t</div>\n\t);\n});\n\nexport default Avatar;\n"]}