diff --git a/README.md b/README.md index 18cf442..66f575f 100644 --- a/README.md +++ b/README.md @@ -262,6 +262,20 @@ Slots for injecting content around the results/input. Useful for header/footer l ``` +### Adding labels + +It is common in forms to add a label next to the `` tag for semantic html / accessibility. You can use the +`before-input` slot to accomplish this in conjunction with the `inputProps.id`: + +```html + + + ... + +``` + ### suggestion item (i.e. default slot) Used to style each suggestion inside the `
  • ` tag. Using [scoped slots](https://vuejs.org/v2/guide/components-slots.html#Scoped-Slots) you have access to the `suggestion` item inside the `v-for` suggestions loop. This gives you the power of Vue templating, since diff --git a/__tests__/__snapshots__/autosuggest.test.js.snap b/__tests__/__snapshots__/autosuggest.test.js.snap index 4818797..7eb2076 100644 --- a/__tests__/__snapshots__/autosuggest.test.js.snap +++ b/__tests__/__snapshots__/autosuggest.test.js.snap @@ -1,26 +1,26 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Autosuggest @click and @selected listener events works as expected 1`] = ` -
    -
    +
    +
    `; exports[`Autosuggest can click outside document to trigger close 1`] = ` -
    -
    +
    +
    `; exports[`Autosuggest can customize css prefix 1`] = ` -
    -
    +
    +
    -
      +
      • clifford kits
      • @@ -37,7 +37,7 @@ exports[`Autosuggest can customize css prefix 1`] = ` life of fred math
      -
        +
        • spike
        • @@ -48,7 +48,7 @@ exports[`Autosuggest can customize css prefix 1`] = ` rover
        -
          +
          • sassy
          • @@ -59,7 +59,7 @@ exports[`Autosuggest can customize css prefix 1`] = ` church
          -
            +
            • elephant
            • @@ -67,7 +67,7 @@ exports[`Autosuggest can customize css prefix 1`] = ` lion
            -
              +
              • something
              • @@ -81,10 +81,10 @@ exports[`Autosuggest can customize css prefix 1`] = ` `; exports[`Autosuggest can customize ids and classes for container divs 1`] = ` -
                -
                +
                +
                -
                  +
                  • clifford kits
                  • @@ -101,7 +101,7 @@ exports[`Autosuggest can customize ids and classes for container divs 1`] = ` life of fred math
                  -
                    +
                    • spike
                    • @@ -112,7 +112,7 @@ exports[`Autosuggest can customize ids and classes for container divs 1`] = ` rover
                    -
                      +
                      • sassy
                      • @@ -123,7 +123,7 @@ exports[`Autosuggest can customize ids and classes for container divs 1`] = ` church
                      -
                        +
                        • elephant
                        • @@ -131,7 +131,7 @@ exports[`Autosuggest can customize ids and classes for container divs 1`] = ` lion
                        -
                          +
                          • something
                          • @@ -145,11 +145,11 @@ exports[`Autosuggest can customize ids and classes for container divs 1`] = ` `; exports[`Autosuggest can display section header 1`] = ` -
                            -
                            +
                            +
                            -
                              -
                            • Suggestions
                            • +
                                +
                              • Suggestions
                              • clifford kits
                              • @@ -172,10 +172,10 @@ exports[`Autosuggest can display section header 1`] = ` `; exports[`Autosuggest can display ul and li classNames 1`] = ` -
                                -
                                +
                                +
                                -
                                  +
                                  • clifford kits
                                  • @@ -192,7 +192,7 @@ exports[`Autosuggest can display ul and li classNames 1`] = ` life of fred math
                                  -
                                    +
                                    • spike
                                    • @@ -203,7 +203,7 @@ exports[`Autosuggest can display ul and li classNames 1`] = ` rover
                                    -
                                      +
                                      • sassy
                                      • @@ -214,7 +214,7 @@ exports[`Autosuggest can display ul and li classNames 1`] = ` church
                                      -
                                        +
                                        • elephant
                                        • @@ -222,7 +222,7 @@ exports[`Autosuggest can display ul and li classNames 1`] = ` lion
                                        -
                                          +
                                          • something
                                          • @@ -236,43 +236,43 @@ exports[`Autosuggest can display ul and li classNames 1`] = ` `; exports[`Autosuggest can handle null data 1`] = ` -
                                            -
                                            +
                                            +
                                            `; exports[`Autosuggest can modify input type attribute 1`] = ` -
                                            -
                                            +
                                            +
                                            `; exports[`Autosuggest can mount 1`] = ` -
                                            -
                                            +
                                            +
                                            `; exports[`Autosuggest can render default suggestion value by property name 1`] = ` -
                                            -
                                            +
                                            +
                                            `; exports[`Autosuggest can render section slots 1`] = ` -
                                            -
                                            +
                                            +
                                            -
                                              -
                                            • Suggestions
                                            • +
                                                +
                                              • Suggestions
                                              • clifford kits
                                              • @@ -289,7 +289,7 @@ exports[`Autosuggest can render section slots 1`] = ` life of fred math
                                              -
                                                +
                                                • The Dogs
                                                • spike @@ -301,7 +301,7 @@ exports[`Autosuggest can render section slots 1`] = ` rover
                                                -
                                                  +
                                                  • Moar Cats is good
                                                  • sassy @@ -313,7 +313,7 @@ exports[`Autosuggest can render section slots 1`] = ` church
                                                  -
                                                    +
                                                    • zoo animals?
                                                    • elephant @@ -322,8 +322,8 @@ exports[`Autosuggest can render section slots 1`] = ` lion
                                                    -
                                                      -
                                                    • uhh
                                                    • +
                                                        +
                                                      • uhh
                                                      • something
                                                      • @@ -337,10 +337,10 @@ exports[`Autosuggest can render section slots 1`] = ` `; exports[`Autosuggest can render simplest component with single onSelected 1`] = ` -
                                                        -
                                                        +
                                                        +
                                                        -
                                                          +
                                                          • clifford kits
                                                          • @@ -408,11 +408,11 @@ exports[`Autosuggest can render simplest component with single onSelected 1`] = `; exports[`Autosuggest can render slots 1`] = ` -
                                                            -
                                                            +
                                                            +
                                                            -
                                                              +
                                                              • clifford kits

                                                              • @@ -436,10 +436,10 @@ exports[`Autosuggest can render slots 1`] = ` `; exports[`Autosuggest can render suggestions 1`] = ` -
                                                                -
                                                                +
                                                                +
                                                                -
                                                                  +
                                                                  • clifford kits
                                                                  • @@ -462,26 +462,26 @@ exports[`Autosuggest can render suggestions 1`] = ` `; exports[`Autosuggest can select from suggestions using keystroke 1`] = ` -
                                                                    -
                                                                    +
                                                                    +
                                                                    `; exports[`Autosuggest can use escape key to exit 1`] = ` -
                                                                    -
                                                                    +
                                                                    +
                                                                    `; exports[`Autosuggest highlights first option on keydown when previously closed 1`] = ` -
                                                                    -
                                                                    +
                                                                    +
                                                                    -
                                                                      +
                                                                      • clifford kits
                                                                      • @@ -498,7 +498,7 @@ exports[`Autosuggest highlights first option on keydown when previously closed 1 life of fred math
                                                                      -
                                                                        +
                                                                        • spike
                                                                        • @@ -509,7 +509,7 @@ exports[`Autosuggest highlights first option on keydown when previously closed 1 rover
                                                                        -
                                                                          +
                                                                          • sassy
                                                                          • @@ -520,7 +520,7 @@ exports[`Autosuggest highlights first option on keydown when previously closed 1 church
                                                                          -
                                                                            +
                                                                            • elephant
                                                                            • @@ -528,7 +528,7 @@ exports[`Autosuggest highlights first option on keydown when previously closed 1 lion
                                                                            -
                                                                              +
                                                                              • something
                                                                              • @@ -542,10 +542,11 @@ exports[`Autosuggest highlights first option on keydown when previously closed 1 `; exports[`Autosuggest is aria complete 1`] = ` -
                                                                                -
                                                                                +
                                                                                +
                                                                                -
                                                                                  +
                                                                                    +
                                                                                  • Suggestions
                                                                                  • clifford kits
                                                                                  • diff --git a/__tests__/autosuggest.test.js b/__tests__/autosuggest.test.js index 11301e7..51ab401 100644 --- a/__tests__/autosuggest.test.js +++ b/__tests__/autosuggest.test.js @@ -307,23 +307,39 @@ describe("Autosuggest", () => { }); it("is aria complete", async () => { - const wrapper = mount(Autosuggest, { - propsData: defaultProps - }); + const propsData = { + ...defaultProps, + sectionConfigs: { + default: { + label: "Suggestions", + limit: 5, + onSelected: () => {} + } + } + } + const wrapper = mount(Autosuggest, { propsData }); const input = wrapper.find("input"); expect(input.attributes()["role"]).toBe("combobox"); expect(input.attributes()["aria-autocomplete"]).toBe("list"); expect(input.attributes()["aria-activedescendant"]).toBe(""); - expect(input.attributes()["aria-owns"]).toBe("autosuggest__results"); - expect(input.attributes()["aria-owns"]).toBe("autosuggest__results"); - + expect(input.attributes()["aria-owns"]).toBe("autosuggest-autosuggest__results"); + + // aria owns needs to be an "id", #191 + const results = wrapper.find(`#${input.attributes()["aria-owns"]}`) + expect(results.exists()).toBeTruthy() + // TODO: Make sure aria-completeness is actually 2legit2quit. input.trigger("click"); input.setValue("G"); expect(input.attributes()["aria-haspopup"]).toBe("true"); + + // make sure aria-labeledby references the section config label, and that it's an "id" + const ul = wrapper.find('ul') + expect(ul.attributes()['aria-labelledby']).toBe('autosuggest-Suggestions') + expect(ul.find(`#${ul.attributes()['aria-labelledby']}`).exists).toBeTruthy() const mouseDownTimes = 3; times(mouseDownTimes)(() => { diff --git a/docs/App.vue b/docs/App.vue index 4815104..44bc855 100644 --- a/docs/App.vue +++ b/docs/App.vue @@ -1,10 +1,11 @@ + \ No newline at end of file diff --git a/docs/storybook/static/preview.a4c7ea3211409c3899df.bundle.js b/docs/storybook/static/preview.f7c8bd8feb12de85cbf0.bundle.js similarity index 96% rename from docs/storybook/static/preview.a4c7ea3211409c3899df.bundle.js rename to docs/storybook/static/preview.f7c8bd8feb12de85cbf0.bundle.js index 32e4ad8..198e600 100644 --- a/docs/storybook/static/preview.a4c7ea3211409c3899df.bundle.js +++ b/docs/storybook/static/preview.f7c8bd8feb12de85cbf0.bundle.js @@ -1 +1 @@ -!function(modules){function __webpack_require__(moduleId){if(installedModules[moduleId])return installedModules[moduleId].exports;var module=installedModules[moduleId]={i:moduleId,l:!1,exports:{}};return modules[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.l=!0,module.exports}var installedModules={};__webpack_require__.m=modules,__webpack_require__.c=installedModules,__webpack_require__.d=function(exports,name,getter){__webpack_require__.o(exports,name)||Object.defineProperty(exports,name,{configurable:!1,enumerable:!0,get:getter})},__webpack_require__.n=function(module){var getter=module&&module.__esModule?function(){return module.default}:function(){return module};return __webpack_require__.d(getter,"a",getter),getter},__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=564)}([,function(module,exports){var core=module.exports={version:"2.5.3"};"number"==typeof __e&&(__e=core)},function(module,exports,__webpack_require__){"use strict";exports.__esModule=!0,exports.default=function(instance,Constructor){if(!(instance instanceof Constructor))throw new TypeError("Cannot call a class as a function")}},function(module,exports,__webpack_require__){"use strict";exports.__esModule=!0;var _assign=__webpack_require__(52),_assign2=function(obj){return obj&&obj.__esModule?obj:{default:obj}}(_assign);exports.default=_assign2.default||function(target){for(var i=1;i2?arguments[2]:{},props=keys(map);hasSymbols&&(props=props.concat(Object.getOwnPropertySymbols(map))),foreach(props,function(name){defineProperty(object,name,map[name],predicates[name])})};defineProperties.supportsDescriptors=!!supportsDescriptors,module.exports=defineProperties},function(module,exports,__webpack_require__){"use strict";var implementation=__webpack_require__(269);module.exports=Function.prototype.bind||implementation},function(module,exports,__webpack_require__){var global=__webpack_require__(10),core=__webpack_require__(1),ctx=__webpack_require__(23),hide=__webpack_require__(26),$export=function(type,name,source){var key,own,out,IS_FORCED=type&$export.F,IS_GLOBAL=type&$export.G,IS_STATIC=type&$export.S,IS_PROTO=type&$export.P,IS_BIND=type&$export.B,IS_WRAP=type&$export.W,exports=IS_GLOBAL?core:core[name]||(core[name]={}),expProto=exports.prototype,target=IS_GLOBAL?global:IS_STATIC?global[name]:(global[name]||{}).prototype;IS_GLOBAL&&(source=name);for(key in source)(own=!IS_FORCED&&target&&void 0!==target[key])&&key in exports||(out=own?target[key]:source[key],exports[key]=IS_GLOBAL&&"function"!=typeof target[key]?source[key]:IS_BIND&&own?ctx(out,global):IS_WRAP&&target[key]==out?function(C){var F=function(a,b,c){if(this instanceof C){switch(arguments.length){case 0:return new C;case 1:return new C(a);case 2:return new C(a,b)}return new C(a,b,c)}return C.apply(this,arguments)};return F.prototype=C.prototype,F}(out):IS_PROTO&&"function"==typeof out?ctx(Function.call,out):out,IS_PROTO&&((exports.virtual||(exports.virtual={}))[key]=out,type&$export.R&&expProto&&!expProto[key]&&hide(expProto,key,out)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,module.exports=$export},,function(module,exports,__webpack_require__){var bind=__webpack_require__(6);module.exports=bind.call(Function.call,Object.prototype.hasOwnProperty)},function(module,exports){var global=module.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=global)},function(module,exports,__webpack_require__){var store=__webpack_require__(110)("wks"),uid=__webpack_require__(72),Symbol=__webpack_require__(10).Symbol,USE_SYMBOL="function"==typeof Symbol;(module.exports=function(name){return store[name]||(store[name]=USE_SYMBOL&&Symbol[name]||(USE_SYMBOL?Symbol:uid)("Symbol."+name))}).store=store},function(module,exports,__webpack_require__){"use strict";exports.__esModule=!0;var _typeof2=__webpack_require__(22),_typeof3=function(obj){return obj&&obj.__esModule?obj:{default:obj}}(_typeof2);exports.default=function(self,call){if(!self)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!call||"object"!==(void 0===call?"undefined":(0,_typeof3.default)(call))&&"function"!=typeof call?self:call}},function(module,exports,__webpack_require__){"use strict";function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.__esModule=!0;var _setPrototypeOf=__webpack_require__(424),_setPrototypeOf2=_interopRequireDefault(_setPrototypeOf),_create=__webpack_require__(428),_create2=_interopRequireDefault(_create),_typeof2=__webpack_require__(22),_typeof3=_interopRequireDefault(_typeof2);exports.default=function(subClass,superClass){if("function"!=typeof superClass&&null!==superClass)throw new TypeError("Super expression must either be null or a function, not "+(void 0===superClass?"undefined":(0,_typeof3.default)(superClass)));subClass.prototype=(0,_create2.default)(superClass&&superClass.prototype,{constructor:{value:subClass,enumerable:!1,writable:!0,configurable:!0}}),superClass&&(_setPrototypeOf2.default?(0,_setPrototypeOf2.default)(subClass,superClass):subClass.__proto__=superClass)}},function(module,exports){module.exports=function(it){return"object"==typeof it?null!==it:"function"==typeof it}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(422),__esModule:!0}},function(module,exports,__webpack_require__){var isObject=__webpack_require__(14);module.exports=function(it){if(!isObject(it))throw TypeError(it+" is not an object!");return it}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(16),IE8_DOM_DEFINE=__webpack_require__(186),toPrimitive=__webpack_require__(105),dP=Object.defineProperty;exports.f=__webpack_require__(19)?Object.defineProperty:function(O,P,Attributes){if(anObject(O),P=toPrimitive(P,!0),anObject(Attributes),IE8_DOM_DEFINE)try{return dP(O,P,Attributes)}catch(e){}if("get"in Attributes||"set"in Attributes)throw TypeError("Accessors not supported!");return"value"in Attributes&&(O[P]=Attributes.value),O}},function(module,exports){var g;g=function(){return this}();try{g=g||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(g=window)}module.exports=g},function(module,exports,__webpack_require__){module.exports=!__webpack_require__(27)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(module,exports,__webpack_require__){"use strict";exports.__esModule=!0;var _defineProperty=__webpack_require__(113),_defineProperty2=function(obj){return obj&&obj.__esModule?obj:{default:obj}}(_defineProperty);exports.default=function(obj,key,value){return key in obj?(0,_defineProperty2.default)(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}},function(module,exports,__webpack_require__){"use strict";var fnToStr=Function.prototype.toString,constructorRegex=/^\s*class /,isES6ClassFn=function(value){try{var fnStr=fnToStr.call(value),singleStripped=fnStr.replace(/\/\/.*\n/g,""),multiStripped=singleStripped.replace(/\/\*[.\s\S]*\*\//g,""),spaceStripped=multiStripped.replace(/\n/gm," ").replace(/ {2}/g," ");return constructorRegex.test(spaceStripped)}catch(e){return!1}},tryFunctionObject=function(value){try{return!isES6ClassFn(value)&&(fnToStr.call(value),!0)}catch(e){return!1}},toStr=Object.prototype.toString,hasToStringTag="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;module.exports=function(value){if(!value)return!1;if("function"!=typeof value&&"object"!=typeof value)return!1;if(hasToStringTag)return tryFunctionObject(value);if(isES6ClassFn(value))return!1;var strClass=toStr.call(value);return"[object Function]"===strClass||"[object GeneratorFunction]"===strClass}},function(module,exports,__webpack_require__){"use strict";function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.__esModule=!0;var _iterator=__webpack_require__(391),_iterator2=_interopRequireDefault(_iterator),_symbol=__webpack_require__(200),_symbol2=_interopRequireDefault(_symbol),_typeof="function"==typeof _symbol2.default&&"symbol"==typeof _iterator2.default?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof _symbol2.default&&obj.constructor===_symbol2.default&&obj!==_symbol2.default.prototype?"symbol":typeof obj};exports.default="function"==typeof _symbol2.default&&"symbol"===_typeof(_iterator2.default)?function(obj){return void 0===obj?"undefined":_typeof(obj)}:function(obj){return obj&&"function"==typeof _symbol2.default&&obj.constructor===_symbol2.default&&obj!==_symbol2.default.prototype?"symbol":void 0===obj?"undefined":_typeof(obj)}},function(module,exports,__webpack_require__){var aFunction=__webpack_require__(53);module.exports=function(fn,that,length){if(aFunction(fn),void 0===that)return fn;switch(length){case 1:return function(a){return fn.call(that,a)};case 2:return function(a,b){return fn.call(that,a,b)};case 3:return function(a,b,c){return fn.call(that,a,b,c)}}return function(){return fn.apply(that,arguments)}}},function(module,exports){var global=module.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=global)},function(module,exports,__webpack_require__){var store=__webpack_require__(91)("wks"),uid=__webpack_require__(51),Symbol=__webpack_require__(24).Symbol,USE_SYMBOL="function"==typeof Symbol;(module.exports=function(name){return store[name]||(store[name]=USE_SYMBOL&&Symbol[name]||(USE_SYMBOL?Symbol:uid)("Symbol."+name))}).store=store},function(module,exports,__webpack_require__){var dP=__webpack_require__(17),createDesc=__webpack_require__(54);module.exports=__webpack_require__(19)?function(object,key,value){return dP.f(object,key,createDesc(1,value))}:function(object,key,value){return object[key]=value,object}},function(module,exports){module.exports=function(exec){try{return!!exec()}catch(e){return!0}}},function(module,exports){var hasOwnProperty={}.hasOwnProperty;module.exports=function(it,key){return hasOwnProperty.call(it,key)}},function(module,exports,__webpack_require__){var IObject=__webpack_require__(106),defined=__webpack_require__(107);module.exports=function(it){return IObject(defined(it))}},function(module,exports){var hasOwnProperty={}.hasOwnProperty;module.exports=function(it,key){return hasOwnProperty.call(it,key)}},function(module,__webpack_exports__,__webpack_require__){"use strict";var __WEBPACK_IMPORTED_MODULE_0__TemplateTag__=__webpack_require__(594);__webpack_require__.d(__webpack_exports__,"a",function(){return __WEBPACK_IMPORTED_MODULE_0__TemplateTag__.a})},function(module,__webpack_exports__,__webpack_require__){"use strict";var __WEBPACK_IMPORTED_MODULE_0__trimResultTransformer__=__webpack_require__(595);__webpack_require__.d(__webpack_exports__,"a",function(){return __WEBPACK_IMPORTED_MODULE_0__trimResultTransformer__.a})},function(module,exports,__webpack_require__){module.exports=!__webpack_require__(64)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(module,exports){var core=module.exports={version:"2.5.7"};"number"==typeof __e&&(__e=core)},function(module,exports,__webpack_require__){var dP=__webpack_require__(36),createDesc=__webpack_require__(66);module.exports=__webpack_require__(33)?function(object,key,value){return dP.f(object,key,createDesc(1,value))}:function(object,key,value){return object[key]=value,object}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(65),IE8_DOM_DEFINE=__webpack_require__(137),toPrimitive=__webpack_require__(90),dP=Object.defineProperty;exports.f=__webpack_require__(33)?Object.defineProperty:function(O,P,Attributes){if(anObject(O),P=toPrimitive(P,!0),anObject(Attributes),IE8_DOM_DEFINE)try{return dP(O,P,Attributes)}catch(e){}if("get"in Attributes||"set"in Attributes)throw TypeError("Accessors not supported!");return"value"in Attributes&&(O[P]=Attributes.value),O}},function(module,exports,__webpack_require__){var IObject=__webpack_require__(238),defined=__webpack_require__(141);module.exports=function(it){return IObject(defined(it))}},function(module,exports,__webpack_require__){"use strict";var hasSymbols="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator,isPrimitive=__webpack_require__(149),isCallable=__webpack_require__(21),isDate=__webpack_require__(275),isSymbol=__webpack_require__(276),ordinaryToPrimitive=function(O,hint){if(void 0===O||null===O)throw new TypeError("Cannot call method on "+O);if("string"!=typeof hint||"number"!==hint&&"string"!==hint)throw new TypeError('hint must be "string" or "number"');var method,result,i,methodNames="string"===hint?["toString","valueOf"]:["valueOf","toString"];for(i=0;i1&&(PreferredType===String?hint="string":PreferredType===Number&&(hint="number"));var exoticToPrim;if(hasSymbols&&(Symbol.toPrimitive?exoticToPrim=GetMethod(input,Symbol.toPrimitive):isSymbol(input)&&(exoticToPrim=Symbol.prototype.valueOf)),void 0!==exoticToPrim){var result=exoticToPrim.call(input,hint);if(isPrimitive(result))return result;throw new TypeError("unable to convert exotic object to primitive")}return"default"===hint&&(isDate(input)||isSymbol(input))&&(hint="string"),ordinaryToPrimitive(input,"default"===hint?"number":hint)}},function(module,exports,__webpack_require__){"use strict";var toStr=Object.prototype.toString,isPrimitive=__webpack_require__(149),isCallable=__webpack_require__(21),ES5internalSlots={"[[DefaultValue]]":function(O,hint){var actualHint=hint||("[object Date]"===toStr.call(O)?String:Number);if(actualHint===String||actualHint===Number){var value,i,methods=actualHint===String?["toString","valueOf"]:["valueOf","toString"];for(i=0;i=O.length?{value:void 0,done:!0}:(point=$at(O,index),this._i+=point.length,{value:point,done:!1})})},function(module,exports,__webpack_require__){__webpack_require__(367);for(var global=__webpack_require__(10),hide=__webpack_require__(26),Iterators=__webpack_require__(45),TO_STRING_TAG=__webpack_require__(11)("toStringTag"),DOMIterables="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),i=0;iindex;index++)if((result=entries?f(anObject(step=iterable[index])[0],step[1]):f(iterable[index]))===BREAK||result===RETURN)return result}else for(iterator=iterFn.call(iterable);!(step=iterator.next()).done;)if((result=call(iterator,f,step.value,entries))===BREAK||result===RETURN)return result};exports.BREAK=BREAK,exports.RETURN=RETURN},function(module,exports,__webpack_require__){"use strict";exports.__esModule=!0;var _from=__webpack_require__(216),_from2=function(obj){return obj&&obj.__esModule?obj:{default:obj}}(_from);exports.default=function(arr){if(Array.isArray(arr)){for(var i=0,arr2=Array(arr.length);i0?min(toInteger(it),9007199254740991):0}},function(module,exports){var id=0,px=Math.random();module.exports=function(key){return"Symbol(".concat(void 0===key?"":key,")_",(++id+px).toString(36))}},function(module,exports){module.exports=!0},function(module,exports,__webpack_require__){(function(global){var win;win="undefined"!=typeof window?window:void 0!==global?global:"undefined"!=typeof self?self:{},module.exports=win}).call(exports,__webpack_require__(18))},function(module,__webpack_exports__,__webpack_require__){"use strict";var __WEBPACK_IMPORTED_MODULE_0__stripIndentTransformer__=__webpack_require__(596);__webpack_require__.d(__webpack_exports__,"a",function(){return __WEBPACK_IMPORTED_MODULE_0__stripIndentTransformer__.a})},,,,,,function(module,exports,__webpack_require__){var $export=__webpack_require__(7),core=__webpack_require__(1),fails=__webpack_require__(27);module.exports=function(KEY,exec){var fn=(core.Object||{})[KEY]||Object[KEY],exp={};exp[KEY]=exec(fn),$export($export.S+$export.F*fails(function(){fn(1)}),"Object",exp)}},function(module,exports){},function(module,exports,__webpack_require__){var anObject=__webpack_require__(16),dPs=__webpack_require__(213),enumBugKeys=__webpack_require__(111),IE_PROTO=__webpack_require__(109)("IE_PROTO"),Empty=function(){},createDict=function(){var iframeDocument,iframe=__webpack_require__(104)("iframe"),i=enumBugKeys.length;for(iframe.style.display="none",__webpack_require__(189).appendChild(iframe),iframe.src="javascript:",iframeDocument=iframe.contentWindow.document,iframeDocument.open(),iframeDocument.write("