@atlassian/aui
Version:
Atlassian User Interface Framework
14 lines • 2.64 kB
JavaScript
/*!!
* @atlassian/aui - Atlassian User Interface Framework
* @version v8.0.0-alpha.1
* @link https://aui.atlassian.com
* @license SEE LICENSE IN LICENSE.md
* @author Atlassian Pty Ltd.
*/
exports.ids=[29],exports.modules={49:
/*!********************************!*\
!*** ../src/js/aui/spinner.js ***!
\********************************/
/*! no static exports found */
/*! all exports used */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=n(i(/*! ./internal/skate */5)),r=n(i(/*! underscore */15));function n(t){return t&&t.__esModule?t:{default:t}}var s={SMALL:{name:"small",px:20,radius:9},MEDIUM:{name:"medium",px:30,radius:13.5},LARGE:{name:"large",px:50,radius:22.5}},u={filled:!1,size:s.MEDIUM.name};function d(t){var e=s.MEDIUM.name;return t=t.toLowerCase(),Object.keys(s).map(function(t){return t.toLowerCase()}).indexOf(t)>-1&&(e=t),e}function l(t){if(t._data.IS_COMPONENT_ATTACHED){var e=r.default.find(s,function(e){return e.name===t._data.size})||s.MEDIUM,i=e.px,a=e.radius;!function(t,e,i){var a=t.querySelector("svg"),r=t.querySelector("circle");a.setAttribute("size",e),a.setAttribute("height",e),a.setAttribute("width",e),a.setAttribute("viewBox","0 0 "+e+" "+e);var n=e/2;r.setAttribute("cx",n),r.setAttribute("cy",n),r.setAttribute("r",i)}(t,i,a),t._data.filled?function(t){var e=t.querySelector("svg"),i=t.parentNode,a=e.getBoundingClientRect(),r=i.getBoundingClientRect(),n=r.top+r.height/2,s=a.top+a.height/2;e.style.top=n-s+"px"}(t):function(t){t.querySelector("svg").style.top="0px"}(t)}}var o=(0,a.default)("aui-spinner",{template:function(t){t._data.IS_COMPONENT_ATTACHED=!1,t.innerHTML='<div class="aui-spinner spinner">\n <svg focusable="false" size="'+s.MEDIUM.px+'" height="'+s.MEDIUM.px+'" width="'+s.MEDIUM.px+'" viewBox="0 0 '+s.MEDIUM.px+" "+s.MEDIUM.px+'">\n <circle cx="'+s.MEDIUM.px/2+'" cy="'+s.MEDIUM.px/2+'" r="'+s.MEDIUM.radius+'"></circle>\n </svg>\n </div>',t.hasAttribute("size")||t.setAttribute("size",s.MEDIUM.name)},attached:function(t){t._data.IS_COMPONENT_ATTACHED=!0,l(t)},attributes:{filled:{created:function(t){t._data.filled=!0,l(t)},removed:function(t){t._data.filled=!1,l(t)}},size:function(t,e){t._data.size=d(e.newValue),l(t)}},prototype:{get _data(){return this.__data||(this._data=r.default.defaults({},u))},set _data(t){return this.__data=t},set filled(t){t?this.setAttribute("filled",""):this.removeAttribute("filled")},set size(t){var e=d(t);this.setAttribute("size",e)}}});e.default=o,t.exports=e.default}};