{"version":3,"sources":["webpack://senateVoting/webpack/universalModuleDefinition","webpack://senateVoting/webpack/bootstrap","webpack://senateVoting/./node_modules/core-js/internals/to-string-tag-support.js","webpack://senateVoting/./node_modules/core-js/internals/function-bind-context.js","webpack://senateVoting/./node_modules/core-js/internals/object-get-own-property-names-external.js","webpack://senateVoting/./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack://senateVoting/./node_modules/core-js/internals/ie8-dom-define.js","webpack://senateVoting/./node_modules/xstate/es/environment.js","webpack://senateVoting/./src/components/ErrorMessage.vue?d2f2","webpack://senateVoting/./node_modules/xstate/es/types.js","webpack://senateVoting/./node_modules/core-js/modules/es.string.split.js","webpack://senateVoting/./node_modules/core-js/modules/es.array.reduce.js","webpack://senateVoting/./node_modules/core-js/internals/regexp-exec-abstract.js","webpack://senateVoting/./node_modules/core-js/modules/web.dom-collections.for-each.js","webpack://senateVoting/./node_modules/xstate/es/scheduler.js","webpack://senateVoting/./node_modules/core-js/internals/array-for-each.js","webpack://senateVoting/./node_modules/core-js/internals/an-instance.js","webpack://senateVoting/./node_modules/core-js/internals/html.js","webpack://senateVoting/./node_modules/core-js/internals/a-function.js","webpack://senateVoting/./node_modules/core-js/internals/check-correctness-of-iteration.js","webpack://senateVoting/./node_modules/core-js/internals/engine-is-ios.js","webpack://senateVoting/./node_modules/core-js/internals/require-object-coercible.js","webpack://senateVoting/./node_modules/core-js/internals/array-method-has-species-support.js","webpack://senateVoting/./node_modules/core-js/internals/iterate.js","webpack://senateVoting/./node_modules/core-js/internals/to-absolute-index.js","webpack://senateVoting/./node_modules/core-js/internals/export.js","webpack://senateVoting/./node_modules/core-js/internals/object-get-own-property-names.js","webpack://senateVoting/./node_modules/core-js/modules/es.string.includes.js","webpack://senateVoting/./node_modules/core-js/internals/set-species.js","webpack://senateVoting/./node_modules/xstate/es/interpreter.js","webpack://senateVoting/./node_modules/core-js/internals/task.js","webpack://senateVoting/./node_modules/core-js/internals/engine-v8-version.js","webpack://senateVoting/./node_modules/xstate/es/State.js","webpack://senateVoting/./node_modules/vuex/dist/vuex.esm.js","webpack://senateVoting/./node_modules/core-js/internals/engine-user-agent.js","webpack://senateVoting/./node_modules/core-js/internals/get-iterator-method.js","webpack://senateVoting/./node_modules/core-js/internals/object-define-properties.js","webpack://senateVoting/./node_modules/xstate/es/registry.js","webpack://senateVoting/./node_modules/core-js/internals/iterators.js","webpack://senateVoting/./node_modules/core-js/modules/es.array.for-each.js","webpack://senateVoting/./node_modules/core-js/internals/path.js","webpack://senateVoting/./node_modules/xstate/es/Actor.js","webpack://senateVoting/./node_modules/core-js/internals/indexed-object.js","webpack://senateVoting/./node_modules/core-js/internals/add-to-unscopables.js","webpack://senateVoting/./node_modules/core-js/internals/host-report-errors.js","webpack://senateVoting/./node_modules/core-js/internals/is-regexp.js","webpack://senateVoting/./node_modules/core-js/modules/es.array.some.js","webpack://senateVoting/./src/views/Idle.vue?27de","webpack://senateVoting/./node_modules/core-js/internals/species-constructor.js","webpack://senateVoting/./node_modules/core-js/internals/native-symbol.js","webpack://senateVoting/./node_modules/core-js/modules/es.string.trim.js","webpack://senateVoting/./node_modules/xstate/es/utils.js","webpack://senateVoting/./node_modules/core-js/internals/array-includes.js","webpack://senateVoting/./node_modules/core-js/modules/es.array.filter.js","webpack://senateVoting/./node_modules/core-js/internals/to-length.js","webpack://senateVoting/./node_modules/core-js/internals/has.js","webpack://senateVoting/./node_modules/core-js/internals/shared.js","webpack://senateVoting/./node_modules/core-js/internals/own-keys.js","webpack://senateVoting/./node_modules/core-js/internals/whitespaces.js","webpack://senateVoting/./node_modules/core-js/internals/string-trim.js","webpack://senateVoting/./node_modules/core-js/internals/not-a-regexp.js","webpack://senateVoting/./src/App.vue?c650","webpack://senateVoting/./node_modules/core-js/internals/create-property-descriptor.js","webpack://senateVoting/./node_modules/core-js/internals/object-assign.js","webpack://senateVoting/./node_modules/xstate/es/stateUtils.js","webpack://senateVoting/./node_modules/core-js/internals/string-multibyte.js","webpack://senateVoting/./node_modules/core-js/internals/array-species-create.js","webpack://senateVoting/./node_modules/core-js/internals/internal-state.js","webpack://senateVoting/./node_modules/core-js/internals/redefine.js","webpack://senateVoting/./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack://senateVoting/./node_modules/core-js/internals/define-well-known-symbol.js","webpack://senateVoting/./node_modules/core-js/internals/enum-bug-keys.js","webpack://senateVoting/./node_modules/core-js/internals/to-object.js","webpack://senateVoting/./node_modules/core-js/internals/object-create.js","webpack://senateVoting/./node_modules/core-js/modules/es.array.find.js","webpack://senateVoting/./node_modules/core-js/internals/native-weak-map.js","webpack://senateVoting/./node_modules/core-js/internals/an-object.js","webpack://senateVoting/./node_modules/core-js/internals/descriptors.js","webpack://senateVoting/./node_modules/core-js/internals/create-property.js","webpack://senateVoting/./node_modules/core-js/internals/is-object.js","webpack://senateVoting/./node_modules/@soda/get-current-script/index.js","webpack://senateVoting/./node_modules/core-js/internals/inspect-source.js","webpack://senateVoting/./src/components/SpinningLoader.vue?8639","webpack://senateVoting/./node_modules/core-js/internals/advance-string-index.js","webpack://senateVoting/external {\"commonjs\":\"vue\",\"commonjs2\":\"vue\",\"root\":\"Vue\"}","webpack://senateVoting/./node_modules/core-js/internals/uid.js","webpack://senateVoting/./node_modules/core-js/internals/create-non-enumerable-property.js","webpack://senateVoting/./node_modules/core-js/internals/regexp-exec.js","webpack://senateVoting/./node_modules/core-js/internals/is-forced.js","webpack://senateVoting/./node_modules/regenerator-runtime/runtime.js","webpack://senateVoting/./node_modules/core-js/modules/es.array.concat.js","webpack://senateVoting/./node_modules/core-js/internals/call-with-safe-iteration-closing.js","webpack://senateVoting/./node_modules/core-js/internals/object-define-property.js","webpack://senateVoting/./node_modules/core-js/internals/regexp-sticky-helpers.js","webpack://senateVoting/./node_modules/core-js/modules/es.array.join.js","webpack://senateVoting/./node_modules/core-js/modules/es.symbol.js","webpack://senateVoting/./node_modules/core-js/internals/array-method-is-strict.js","webpack://senateVoting/./node_modules/core-js/internals/to-integer.js","webpack://senateVoting/./node_modules/core-js/internals/correct-is-regexp-logic.js","webpack://senateVoting/./node_modules/core-js/modules/es.regexp.exec.js","webpack://senateVoting/./node_modules/core-js/internals/regexp-flags.js","webpack://senateVoting/./node_modules/core-js/internals/array-method-uses-to-length.js","webpack://senateVoting/./node_modules/core-js/internals/object-to-string.js","webpack://senateVoting/./node_modules/core-js/modules/es.function.name.js","webpack://senateVoting/./node_modules/core-js/internals/microtask.js","webpack://senateVoting/./node_modules/core-js/internals/well-known-symbol.js","webpack://senateVoting/./node_modules/core-js/modules/es.object.keys.js","webpack://senateVoting/./node_modules/core-js/internals/array-iteration.js","webpack://senateVoting/./node_modules/core-js/internals/to-primitive.js","webpack://senateVoting/./node_modules/xstate/es/devTools.js","webpack://senateVoting/./node_modules/core-js/internals/is-pure.js","webpack://senateVoting/./node_modules/core-js/internals/classof-raw.js","webpack://senateVoting/./node_modules/core-js/internals/shared-store.js","webpack://senateVoting/(webpack)/buildin/global.js","webpack://senateVoting/./node_modules/core-js/internals/string-trim-forced.js","webpack://senateVoting/./node_modules/core-js/internals/object-keys-internal.js","webpack://senateVoting/./node_modules/core-js/modules/es.array.includes.js","webpack://senateVoting/./node_modules/xstate/es/actionTypes.js","webpack://senateVoting/./node_modules/core-js/internals/document-create-element.js","webpack://senateVoting/./node_modules/core-js/modules/es.object.assign.js","webpack://senateVoting/./node_modules/core-js/internals/promise-resolve.js","webpack://senateVoting/./node_modules/core-js/internals/set-global.js","webpack://senateVoting/./node_modules/core-js/internals/hidden-keys.js","webpack://senateVoting/./node_modules/core-js/internals/fails.js","webpack://senateVoting/./node_modules/core-js/internals/get-built-in.js","webpack://senateVoting/./node_modules/xstate/es/constants.js","webpack://senateVoting/./node_modules/core-js/internals/object-property-is-enumerable.js","webpack://senateVoting/./node_modules/core-js/modules/es.object.to-string.js","webpack://senateVoting/./node_modules/core-js/internals/set-to-string-tag.js","webpack://senateVoting/./node_modules/core-js/internals/array-reduce.js","webpack://senateVoting/./node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack://senateVoting/./node_modules/core-js/modules/es.array.map.js","webpack://senateVoting/./node_modules/core-js/internals/global.js","webpack://senateVoting/./node_modules/core-js/modules/es.object.get-own-property-descriptors.js","webpack://senateVoting/./node_modules/core-js/internals/object-keys.js","webpack://senateVoting/./node_modules/xstate/es/actions.js","webpack://senateVoting/./node_modules/core-js/internals/redefine-all.js","webpack://senateVoting/./node_modules/xstate/es/_virtual/_tslib.js","webpack://senateVoting/./node_modules/core-js/modules/es.object.get-own-property-descriptor.js","webpack://senateVoting/./node_modules/core-js/internals/well-known-symbol-wrapped.js","webpack://senateVoting/./node_modules/core-js/internals/perform.js","webpack://senateVoting/./node_modules/core-js/modules/es.promise.js","webpack://senateVoting/./node_modules/core-js/internals/copy-constructor-properties.js","webpack://senateVoting/./node_modules/core-js/internals/is-array.js","webpack://senateVoting/./node_modules/core-js/internals/is-array-iterator-method.js","webpack://senateVoting/./node_modules/core-js/internals/new-promise-capability.js","webpack://senateVoting/./node_modules/core-js/internals/classof.js","webpack://senateVoting/./node_modules/core-js/internals/shared-key.js","webpack://senateVoting/./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js","webpack://senateVoting/./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","webpack://senateVoting/./src/App.vue?e27c","webpack://senateVoting/./src/views/Idle.vue?5005","webpack://senateVoting/./node_modules/xstate/es/StateNode.js","webpack://senateVoting/./node_modules/xstate/es/Machine.js","webpack://senateVoting/./src/machines/waitingMachine.js","webpack://senateVoting/./src/helpers.js","webpack://senateVoting/./src/components/ErrorMessage.vue?61a7","webpack://senateVoting/src/components/ErrorMessage.vue","webpack://senateVoting/./src/components/ErrorMessage.vue?f743","webpack://senateVoting/./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack://senateVoting/./src/components/ErrorMessage.vue?8e61","webpack://senateVoting/./src/components/LoadingMessage.vue?78d2","webpack://senateVoting/./src/components/SpinningLoader.vue?d828","webpack://senateVoting/src/components/SpinningLoader.vue","webpack://senateVoting/./src/components/SpinningLoader.vue?8e23","webpack://senateVoting/./src/components/SpinningLoader.vue?3a29","webpack://senateVoting/src/components/LoadingMessage.vue","webpack://senateVoting/./src/components/LoadingMessage.vue?2902","webpack://senateVoting/./src/components/LoadingMessage.vue","webpack://senateVoting/src/views/Idle.vue","webpack://senateVoting/./src/views/Idle.vue?8e08","webpack://senateVoting/./src/views/Idle.vue?cf97","webpack://senateVoting/./src/views/MotionDiscussion.vue?28bc","webpack://senateVoting/./src/machines/discussionMachine.js","webpack://senateVoting/./src/components/MotionContent.vue?829e","webpack://senateVoting/src/components/MotionContent.vue","webpack://senateVoting/./src/components/MotionContent.vue?a42e","webpack://senateVoting/./src/components/MotionContent.vue","webpack://senateVoting/src/views/MotionDiscussion.vue","webpack://senateVoting/./src/views/MotionDiscussion.vue?fcf0","webpack://senateVoting/./src/views/MotionDiscussion.vue","webpack://senateVoting/./src/views/MotionVoting.vue?3780","webpack://senateVoting/./src/machines/votingMachine.js","webpack://senateVoting/src/views/MotionVoting.vue","webpack://senateVoting/./src/views/MotionVoting.vue?9d3c","webpack://senateVoting/./src/views/MotionVoting.vue","webpack://senateVoting/./src/views/MotionWaiting.vue?5436","webpack://senateVoting/src/views/MotionWaiting.vue","webpack://senateVoting/./src/views/MotionWaiting.vue?0c33","webpack://senateVoting/./src/views/MotionWaiting.vue","webpack://senateVoting/./src/views/MotionResults.vue?c3bc","webpack://senateVoting/src/views/MotionResults.vue","webpack://senateVoting/./src/views/MotionResults.vue?bbd3","webpack://senateVoting/./src/views/MotionResults.vue","webpack://senateVoting/./src/views/Amending.vue?4b50","webpack://senateVoting/src/views/Amending.vue","webpack://senateVoting/./src/views/Amending.vue?9d22","webpack://senateVoting/./src/views/Amending.vue","webpack://senateVoting/./src/views/Waiting.vue?9521","webpack://senateVoting/src/views/Waiting.vue","webpack://senateVoting/./src/views/Waiting.vue?0e1e","webpack://senateVoting/./src/views/Waiting.vue","webpack://senateVoting/./src/views/MotionDiscussionTwo.vue?ecec","webpack://senateVoting/src/views/MotionDiscussionTwo.vue","webpack://senateVoting/./src/views/MotionDiscussionTwo.vue?8bc7","webpack://senateVoting/./src/views/MotionDiscussionTwo.vue","webpack://senateVoting/./src/views/MotionVotingTwo.vue?1d21","webpack://senateVoting/src/views/MotionVotingTwo.vue","webpack://senateVoting/./src/views/MotionVotingTwo.vue?ac5c","webpack://senateVoting/./src/views/MotionVotingTwo.vue","webpack://senateVoting/./src/views/DidNotVote.vue?60a5","webpack://senateVoting/src/views/DidNotVote.vue","webpack://senateVoting/./src/views/DidNotVote.vue?f5ac","webpack://senateVoting/./src/views/DidNotVote.vue","webpack://senateVoting/./src/views/ThanksForVoting.vue?734b","webpack://senateVoting/src/views/ThanksForVoting.vue","webpack://senateVoting/./src/views/ThanksForVoting.vue?715a","webpack://senateVoting/./src/views/ThanksForVoting.vue","webpack://senateVoting/./src/views/AlreadyVoted.vue?1e96","webpack://senateVoting/src/views/AlreadyVoted.vue","webpack://senateVoting/./src/views/AlreadyVoted.vue?c2ba","webpack://senateVoting/./src/views/AlreadyVoted.vue","webpack://senateVoting/./src/views/AdminVotingResults.vue?b7bb","webpack://senateVoting/src/views/AdminVotingResults.vue","webpack://senateVoting/./src/views/AdminVotingResults.vue?ee2c","webpack://senateVoting/./src/views/AdminVotingResults.vue","webpack://senateVoting/./src/views/MotionVotingChange.vue?e982","webpack://senateVoting/src/views/MotionVotingChange.vue","webpack://senateVoting/./src/views/MotionVotingChange.vue?0593","webpack://senateVoting/./src/views/MotionVotingChange.vue","webpack://senateVoting/./src/views/VotingResults.vue?c409","webpack://senateVoting/src/views/VotingResults.vue","webpack://senateVoting/./src/views/VotingResults.vue?5154","webpack://senateVoting/./src/views/VotingResults.vue","webpack://senateVoting/./src/views/ElectionsSession.vue?fded","webpack://senateVoting/./src/components/ElectionsVoting.vue?8bd0","webpack://senateVoting/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://senateVoting/./node_modules/@babel/runtime/helpers/esm/objectSpread2.js","webpack://senateVoting/src/components/ElectionsVoting.vue","webpack://senateVoting/./src/components/ElectionsVoting.vue?45f0","webpack://senateVoting/./src/components/ElectionsVoting.vue","webpack://senateVoting/./src/components/ElectionsResults.vue?73c8","webpack://senateVoting/src/components/ElectionsResults.vue","webpack://senateVoting/./src/components/ElectionsResults.vue?cf49","webpack://senateVoting/./src/components/ElectionsResults.vue","webpack://senateVoting/src/views/ElectionsSession.vue","webpack://senateVoting/./src/views/ElectionsSession.vue?175a","webpack://senateVoting/./src/views/ElectionsSession.vue","webpack://senateVoting/src/App.vue","webpack://senateVoting/./src/App.vue?1160","webpack://senateVoting/./src/App.vue?bff9","webpack://senateVoting/./node_modules/vue-router/dist/vue-router.esm.js","webpack://senateVoting/./src/router/index.js","webpack://senateVoting/./src/machines/procedureMachine.js","webpack://senateVoting/./src/machines/floorMachine.js","webpack://senateVoting/./src/store/elections.js","webpack://senateVoting/./src/store/index.js","webpack://senateVoting/./src/main.js","webpack://senateVoting/./node_modules/core-js/internals/to-indexed-object.js","webpack://senateVoting/./node_modules/core-js/internals/dom-iterables.js","webpack://senateVoting/./node_modules/core-js/internals/use-symbol-as-uid.js","webpack://senateVoting/./node_modules/core-js/internals/native-promise-constructor.js"],"names":["root","factory","exports","module","require","define","amd","self","this","__WEBPACK_EXTERNAL_MODULE__8bbf__","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","wellKnownSymbol","TO_STRING_TAG","test","String","aFunction","fn","that","length","undefined","a","b","apply","arguments","toIndexedObject","nativeGetOwnPropertyNames","f","toString","windowNames","window","getOwnPropertyNames","getWindowNames","it","error","slice","DESCRIPTORS","propertyIsEnumerableModule","createPropertyDescriptor","toPrimitive","has","IE8_DOM_DEFINE","nativeGetOwnPropertyDescriptor","getOwnPropertyDescriptor","O","P","fails","createElement","IS_PRODUCTION","ActionTypes","SpecialTargets","fixRegExpWellKnownSymbolLogic","isRegExp","anObject","requireObjectCoercible","speciesConstructor","advanceStringIndex","toLength","callRegExpExec","regexpExec","arrayPush","push","min","Math","MAX_UINT32","SUPPORTS_Y","RegExp","SPLIT","nativeSplit","maybeCallNative","internalSplit","split","separator","limit","string","lim","match","lastIndex","lastLength","output","flags","ignoreCase","multiline","unicode","sticky","lastLastIndex","separatorCopy","source","index","splitter","regexp","res","done","rx","S","C","unicodeMatching","q","A","e","z","$","$reduce","left","arrayMethodIsStrict","arrayMethodUsesToLength","STRICT_METHOD","USES_TO_LENGTH","1","target","proto","forced","reduce","callbackfn","classof","R","exec","result","TypeError","global","DOMIterables","forEach","createNonEnumerableProperty","COLLECTION_NAME","Collection","CollectionPrototype","defaultOptions","deferEvents","Scheduler","options","processingEvent","queue","initialized","initialize","callback","schedule","process","flushEvents","task","Error","clear","nextCallback","shift","$forEach","Constructor","getBuiltIn","ITERATOR","SAFE_CLOSING","called","iteratorWithReturn","next","Array","from","SKIP_CLOSING","ITERATION_SUPPORT","userAgent","V8_VERSION","SPECIES","METHOD_NAME","array","constructor","foo","Boolean","isArrayIteratorMethod","getIteratorMethod","callWithSafeIterationClosing","Result","stopped","iterate","iterable","AS_ENTRIES","IS_ITERATOR","iterator","iterFn","step","boundFunction","stop","toInteger","max","integer","redefine","setGlobal","copyConstructorProperties","isForced","FORCED","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","noTargetGet","sham","internalObjectKeys","enumBugKeys","hiddenKeys","concat","notARegExp","correctIsRegExpLogic","includes","searchString","indexOf","definePropertyModule","CONSTRUCTOR_NAME","configurable","InterpreterStatus","DEFAULT_SPAWN_OPTIONS","sync","autoForward","withServiceScope","serviceStack","service","pop","Interpreter","machine","_this","scheduler","delayedEventsMap","listeners","Set","contextListeners","stopListeners","doneListeners","eventListeners","sendListeners","_status","NotStarted","children","Map","forwardTo","init","start","send","event","payload","batch","state","_event","Stopped","id","JSON","stringify","data","Running","forward","nextState","update","_state","sendTo","to","isParent","parent","Parent","origin","sessionId","type","resolvedOptions","clock","logger","resolvedId","bookId","_initialState","initialState","execute","actionsConfig","e_1","_a","_b","actions","_c","action","e_1_1","return","e_2","e_3","e_4","e_5","_d","_sessionid","devTools","_e","_f","listener","e_2_1","_g","_h","e_3_1","_j","_k","contextListener","context","history","e_4_1","isDone","configuration","finalChildStateNode","find","sn","doneData","_l","_m","e_5_1","onTransition","add","subscribe","nextListenerOrObserver","errorListener","completeListener","unsubscribe","resolvedCompleteListener","complete","onDone","delete","onEvent","onSend","onChange","onStop","off","register","resolvedState","resolveState","attachDev","e_6","e_7","e_8","e_9","e_10","e_6_1","e_7_1","e_8_1","_o","e_9_1","child","_p","_q","clearTimeout","e_10_1","free","events","e_11","batchChanged","batchedActions","_loop_1","event_1","transition","map","changed","events_1","events_1_1","e_11_1","sender","nextEvents","some","nextEvent","e_12","e_12_1","defer","sendAction","setTimeout","delay","cancel","sendId","actionFunctionMap","actionOrExec","err","activity","activities","Invoke","serviceCreator","services","src","resolvedData","spawnPromise","Promise","resolve","spawnCallback","spawnObservable","spawnMachine","withContext","spawnActivity","stopChild","label","removeChild","childId","spawn","entity","spawnActor","childService","actor","set","doneEvent","promise","canceled","then","response","errorData","errorEvent","strict","handleError","unsubscribed","toJSON","callbackStop","receivers","receive","newListener","receiver","subscription","implementation","dispose","spawnEffect","__REDUX_DEVTOOLS_EXTENSION__","devToolsOptions","connect","autoPause","stateSanitizer","features","jump","skip","ms","console","log","interpret","interpreter","channel","port","html","IS_IOS","location","setImmediate","clearImmediate","MessageChannel","Dispatch","counter","ONREADYSTATECHANGE","run","runner","post","postMessage","protocol","host","args","Function","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","version","versions","v8","stateValuesEqual","aKeys","bKeys","every","isState","bindActionToState","boundAction","State","config","meta","historyValue","matches","toStrings","transitions","stateValue","inert","delimiter","valueKeys","jsonValues","parentStateValue","applyMixin","Vue","Number","mixin","beforeCreate","vuexInit","_init","$options","store","$store","devtoolHook","__VUE_DEVTOOLS_GLOBAL_HOOK__","devtoolPlugin","_devtoolHook","emit","on","targetState","replaceState","mutation","prepend","subscribeAction","list","filter","deepCopy","obj","cache","hit","original","copy","isArray","keys","forEachValue","isObject","isPromise","val","partial","arg","Module","rawModule","runtime","_children","_rawModule","rawState","prototypeAccessors","namespaced","addChild","getChild","hasChild","mutations","getters","forEachChild","forEachGetter","forEachAction","forEachMutation","defineProperties","ModuleCollection","rawRootModule","path","targetModule","newModule","getNamespace","namespace","this$1","rawChildModule","unregister","isRegistered","Store","install","plugins","_committing","_actions","_actionSubscribers","_mutations","_wrappedGetters","_modules","_modulesNamespaceMap","_subscribers","_watcherVM","_makeLocalGettersCache","ref","dispatch","commit","installModule","resetStoreVM","plugin","useDevtools","devtools","prototypeAccessors$1","genericSubscribe","subs","unshift","splice","resetStore","hot","oldVm","_vm","wrappedGetters","computed","silent","$$state","enableStrictMode","_withCommit","_data","$destroy","rootState","isRoot","parentState","getNestedState","moduleName","local","makeLocalContext","namespacedType","registerMutation","handler","registerAction","registerGetter","noNamespace","_type","_payload","_options","unifyObjectStyle","makeLocalGetters","gettersProxy","splitPos","localType","entry","rootGetters","catch","rawGetter","$watch","deep","_Vue","v","sub","before","all","reject","after","watch","cb","registerModule","preserveState","unregisterModule","hasModule","hotUpdate","newOptions","committing","mapState","normalizeNamespace","states","normalizeMap","getModuleByNamespace","vuex","mapMutations","len","mapGetters","mapActions","createNamespacedHelpers","isValidMap","charAt","helper","createLogger","collapsed","stateBefore","stateAfter","transformer","mutationTransformer","mut","actionFilter","actionTransformer","act","logMutations","logActions","prevState","formattedTime","getFormattedTime","formattedMutation","message","startMessage","endMessage","formattedAction","groupCollapsed","group","groupEnd","time","Date","pad","getHours","getMinutes","getSeconds","getMilliseconds","repeat","str","times","join","num","maxLength","Iterators","objectKeys","Properties","sessionIdIndex","registry","createNullActor","createInvocableActor","invokeDefinition","tempActor","deferred","isActor","item","propertyIsEnumerable","UNSCOPABLES","ArrayPrototype","MATCH","$some","defaultConstructor","getOwnPropertySymbols","$trim","trim","forcedStringTrimMethod","matchesState","parentStateId","childStateId","toStateValue","childStateValue","isString","getEventType","toStatePath","stateId","isStateLike","pathToStateValue","statePath","marker","mapValues","collection","iteratee","collectionKeys","mapFilterValues","predicate","props","props_1","props_1_1","prop","nestedPath","accessorProp","props_2","props_2_1","toStatePaths","flatten","subStateValue","subPath","toArrayStrict","toArray","mapContext","mapper","isFunction","subMapper","isBuiltInEvent","eventType","isPromiseLike","partition","items","truthy","falsy","items_1","items_1_1","updateHistoryStates","hist","subHist","current","updateHistoryValue","updateContext","assignActions","warn","updatedContext","acc","assignAction","assignment","partialUpdate","propAssignment","assign","toGuard","condition","guardMap","isObservable","symbolObservable","observable","isMachine","uniqueId","currentId","toEventObject","toSCXMLEvent","scxmlEvent","$$type","eventObject","toTransitionConfigArray","configLike","transitionLike","normalizeTarget","reportUnhandledExceptionOnInvocation","originalError","currentError","originalStackTrace","stack","stackTrace","evaluateGuard","guard","guards","guardMeta","cond","condFn","toAbsoluteIndex","createMethod","IS_INCLUDES","$this","el","fromIndex","$filter","arrayMethodHasSpeciesSupport","HAS_SPECIES_SUPPORT","argument","IS_PURE","copyright","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","whitespaces","whitespace","ltrim","rtrim","TYPE","replace","end","bitmap","writable","toObject","IndexedObject","nativeAssign","B","symbol","alphabet","chr","T","argumentsLength","j","isLeafNode","stateNode","getChildren","getAllStateNodes","stateNodes","getConfiguration","prevStateNodes","prevConfiguration","prevAdjList","getAdjList","configuration_1","configuration_1_1","adjList","configuration_2","configuration_2_1","initialStateNodes","configuration_3","configuration_3_1","getValueFromAdj","baseNode","childStateNodes","childStateNode","csn","configuration_4","configuration_4_1","getValue","rootNode","member","ownEvents","isInFinalState","CONVERT_TO_STRING","pos","first","second","position","size","charCodeAt","codeAt","originalArray","NATIVE_WEAK_MAP","objectHas","sharedKey","WeakMap","enforce","getterFor","wmget","wmhas","wmset","metadata","STATE","inspectSource","InternalStateModule","getInternalState","enforceInternalState","TEMPLATE","unsafe","simple","wrappedWellKnownSymbolModule","NAME","activeXDocument","documentCreateElement","GT","LT","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObjectViaIFrame","iframeDocument","iframe","JS","style","display","contentWindow","document","open","F","NullProtoObject","domain","ActiveXObject","$find","addToUnscopables","FIND","SKIPS_HOLES","propertyKey","getCurrentScript","currentScript","pageSource","inlineScriptSourceRegExp","inlineScriptSource","ieStackRegExp","ffStackRegExp","stackDetails","scriptLocation","line","currentLocation","href","hash","scripts","getElementsByTagName","documentElement","outerHTML","readyState","innerHTML","functionToString","postfix","random","regexpFlags","stickyHelpers","nativeExec","nativeReplace","patchedExec","UPDATES_LAST_INDEX_WRONG","re1","re2","UNSUPPORTED_Y","BROKEN_CARET","NPCG_INCLUDED","PATCH","reCopy","re","charsAdded","strCopy","input","replacement","feature","detection","normalize","POLYFILL","NATIVE","toLowerCase","Op","hasOwn","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","wrap","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","_invoke","makeInvokeMethod","tryCatch","GenStateSuspendedStart","GenStateSuspendedYield","GenStateExecuting","GenStateCompleted","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","method","AsyncIterator","PromiseImpl","invoke","record","__await","unwrapped","previousPromise","enqueue","callInvokeWithMethodAndArg","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","info","resultName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iteratorMethod","isNaN","displayName","isGeneratorFunction","genFun","ctor","mark","setPrototypeOf","__proto__","awrap","async","iter","reverse","skipTempReset","prev","rootEntry","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","finish","thrown","delegateYield","regeneratorRuntime","accidentalStrictMode","createProperty","arraySpeciesCreate","IS_CONCAT_SPREADABLE","MAX_SAFE_INTEGER","MAXIMUM_ALLOWED_INDEX_EXCEEDED","IS_CONCAT_SPREADABLE_SUPPORT","SPECIES_SUPPORT","isConcatSpreadable","spreadable","k","E","ENTRIES","returnMethod","nativeDefineProperty","Attributes","RE","nativeJoin","ES3_STRINGS","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","nativeObjectCreate","getOwnPropertyNamesExternal","getOwnPropertyDescriptorModule","shared","uid","defineWellKnownSymbol","setToStringTag","HIDDEN","SYMBOL","TO_PRIMITIVE","setInternalState","ObjectPrototype","$stringify","nativePropertyIsEnumerable","AllSymbols","ObjectPrototypeSymbols","StringToSymbolRegistry","SymbolToStringRegistry","WellKnownSymbolsStore","QObject","USE_SETTER","findChild","setSymbolDescriptor","ObjectPrototypeDescriptor","tag","description","isSymbol","$defineProperty","$defineProperties","properties","$getOwnPropertySymbols","$propertyIsEnumerable","$create","V","$getOwnPropertyDescriptor","$getOwnPropertyNames","names","IS_OBJECT_PROTOTYPE","setter","keyFor","sym","useSetter","useSimple","FORCED_JSON_STRINGIFY","replacer","space","$replacer","valueOf","ceil","floor","dotAll","thrower","ACCESSORS","argument0","argument1","TO_STRING_TAG_SUPPORT","FunctionPrototype","FunctionPrototypeToString","nameRE","flush","head","last","notify","toggle","node","macrotask","MutationObserver","WebKitMutationObserver","IS_NODE","queueMicrotaskDescriptor","queueMicrotask","exit","enter","createTextNode","observe","characterData","createWellKnownSymbol","withoutSetter","nativeKeys","FAILS_ON_PRIMITIVES","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","specificCreate","findIndex","PREFERRED_STRING","getDevTools","w","__xstate__","registerService","SHARED","g","non","$includes","Start","Stop","raise","Raise","Send","Cancel","nullEvent","NullEvent","Assign","After","DoneState","Log","Init","errorPlatform","ErrorExecution","ErrorPlatform","ErrorCustom","Update","choose","Choose","pure","Pure","EXISTS","newPromiseCapability","x","promiseCapability","variable","STATE_DELIMITER","EMPTY_ACTIVITY_MAP","DEFAULT_GUARD_TYPE","TARGETLESS_KEY","NASHORN_BUG","TAG","IS_RIGHT","memo","right","REPLACE_SUPPORTS_NAMED_GROUPS","groups","REPLACE_KEEPS_$0","REPLACE","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","KEY","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","nativeRegExpMethod","methods","nativeMethod","arg2","forceStringMethod","stringMethod","regexMethod","$map","check","globalThis","ownKeys","getOwnPropertyDescriptors","initEvent","getActionFunction","actionType","toActionObject","actionObject","other","toActionObjects","subAction","toActivityDefinition","Internal","resolveRaise","resolveSend","ctx","delaysMap","resolvedDelay","resolvedEvent","configDelay","resolvedTarget","resolveLog","expr","activityDef","delayRef","idSuffix","doneInvoke","DoneInvoke","resolveActions","currentState","currentContext","otherActions","resolvedActions","delays","chooseAction","matchedActions","conds","resolved","__assign","__rest","__values","__read","ar","__spread","OwnPromiseCapability","PromiseWrapper","nativeThen","NativePromise","redefineAll","setSpecies","anInstance","checkCorrectnessOfIteration","microtask","promiseResolve","hostReportErrors","newPromiseCapabilityModule","perform","PROMISE","getInternalPromiseState","PromiseConstructor","$fetch","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","REJECTION_HANDLED","PENDING","FULFILLED","REJECTED","HANDLED","UNHANDLED","GLOBAL_CORE_JS_PROMISE","PromiseRejectionEvent","FakePromise","INCORRECT_ITERATION","isThenable","isReject","notified","chain","reactions","ok","exited","reaction","fail","rejection","onHandleUnhandled","onUnhandled","reason","IS_UNHANDLED","isUnhandled","unwrap","internalReject","internalResolve","wrapper","executor","onFulfilled","onRejected","fetch","capability","$promiseResolve","remaining","alreadyCalled","race","PromiseCapability","$$resolve","$$reject","classofRaw","CORRECT_ARGUMENTS","tryGet","callee","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","$createElement","_self","votingType","staticClass","currentFloorView","staticRenderFns","_v","class","disabled","$event","getNextMotion","attrs","mergeMeta","NULL_EVENT","STATE_IDENTIFIER","WILDCARD","EMPTY_OBJECT","isStateId","createDefaultOptions","validateArrayifiedTransitions","hasNonLastUnguardedTarget","eventText","StateNode","order","__xstatenode","__cache","relativeValue","initialStateValue","candidates","delayedTransitions","idMap","_parent","_key","parallel","initial","stateConfig","dfs","_transient","always","onEntry","onExit","invokeConfig","invokeSrc","withConfig","definition","getDelayedTransitions","formatTransitions","getCandidates","eventName","transient","sameEventType","afterConfig","mutateEntryExit","configTransition","resolvedTransition","delayedTransition","formatTransition","getStateNodes","getStateNode","subStateKeys","subStateNodes","subStateKey","allSubStateNodes","subStateNode","handles","transitionLeafNode","transitionCompoundNode","_transition","transitionParallelNode","transitionMap","stateTransitions","enabledTransitions","st","willTransition","entryNodes","entrySet","exitSet","selectedTransition","nextStateNodes","candidate","stateIn","in","resolvedContext","isInState","getStateNodeById","guardPassed","allNextStateNodes","getRelativeStateNodes","isInternal","internal","reentryNodes","nodesFromChild","escapes","nodes","getActions","prevConfig","resolvedConfig","resolvedConfig_1","resolvedConfig_1_1","prevConfig_1","prevConfig_1_1","doneEvents","grandparent","parentNode","sort","entryStates","exitStates","entryActions","exitActions","resolvedStateValue","getResolvedPath","stateTransition","resolveTransition","resolveRaisedTransition","originalEvent","currentActions","actions_1","actions_1_1","raisedEvents","nonRaisedActions","invokeActions","resolvedConfiguration","didUpdateContext","maybeNextState","isTransient","raisedEvent","stateKey","resolvedStateId","getStateNodeByPath","arrayStatePath","currentStateNode","stateIdentifier","getInitialState","historyConfig","relativeStateId","resolveHistory","initialStateNodePaths","initialPath","getFromRelativePath","relativePath","childStatePath","relativeStateValue","historyTarget","relativeChildPath","subHistoryValue","subStatePath","childStateIds","stateIds","resolveTarget","_target","isInternalTarget","targetStateNode","transitionConfig","normalizedTarget","onConfig","wildcardConfigs","strictTransitionConfigs_1","transitionConfigArray","eventlessConfig","doneConfig","invokeDef","settleTransitions","onError","formattedTransitions","delayedTransitions_1","delayedTransitions_1_1","Machine","initialContext","resolvedInitialContext","waitingMachine","idle","GET_MOTION","pending","HAS_MOTION","NO_MOTION","discussion","no_motion","title","CLOSE_MESSAGE","motionWaitingMachine","IS_CURRENT","is_current","_s","alertContent","$emit","normalizeComponent","scriptExports","render","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","_compiled","functional","_scopeId","$vnode","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","shadowRoot","_injectStyles","originalRender","h","existing","component","h3","div","_t","directives","rawName","expression","show","components","waitingService","motion","reloadMotion","discussionService","discussionMachine","CHECK_IF_CAN_VOTE","CHECK_IF_AMENDED","RELOAD_MOTION","DISCUSSING","CAN_VOTE","CAN_NOT_VOTE","BEING_AMENDED","NOT_AMENDED","voting","show_amended","still_discussing","being_amended","not_amended","motionStatus","motionTitle","motionDetails","domProps","motionDescription","amendment","status_label","motion_title_new","main","committee_motion","motion_as_amended","amend","amend_limit","amend_postponement","amend_refer","amend_seriatim","amend_amend_seriatim","amend_divide_question","amend_amend_divide_question","amend_rescind_question","amend_amend_rescind_question","amendment_as_amended","amend_amend","refer_to_committee","postpone","postpone_indefinitely","table","amend_amend_limit","amend_amend_postponement","amend_amend_refer","appeal","seriatim","divide_question","divide_assembly","objection_consideration","point","suspend","withdraw","information","take_from_table","reconsider","fix_time","amend_fix_time","amend_amend_fix_time","adjourn","rescind_question","recess","amend_recess","amend_amend_recess","raise_question","orders_of_the_day","details","motion_description","activeMotion","isAdmin","SENATE_REST","is_admin","created","showVotingResults","votingMachine","SUBMIT_VOTE","VOTE_SUCCESFUL","NO_VALUE_SELECTED","NO_CURRENT_MOTION","WRONG_MOTION","VOTING_CLOSED","VOTING_COMPLETED","ALREADY_VOTED","wait","no_value","voting_not_open","wrong_motion","voting_completed","already_voted","get_motion","get_results","votingService","wrongCodes","voteValue","voteOptions","motion_voting","voting_options","isError","canVoteOnMotion","canShowAmendedMotion","motion_title","amendment_title","amendment_description","status","getFloorUpdate","closeError","currentFloor","floorService","nextStateAction","withPusher","preventDefault","submitVote","option","staticStyle","voteValueLabel","getVoteLabelFromValue","getResults","changeVote","lastVote","lastVoteLabel","startGettingResults","voteCounts","votes_needed","voting_population","vote_count","voteObj","voteVal","winningVoteAmount","count","interval","voteTalliesArr","vote_tallies","voting_members_count","stopGettingResults","clearInterval","voteTallies","session","vote_status","show_nominees","nominee","senator","ID","img_url","constituency","showCampaignStatement","sessionVotingStatus","activeNominee","hideCampaignStatement","statement","submitElectionVote","selections_number","selectedNominees","_i","$$a","$$el","$$c","checked","$$v","$$i","composing","checkbox","_defineProperty","enumerableOnly","symbols","_objectSpread2","elections","hasResults","results","extend","View","default","_","routerView","route","$route","_routerViewCache","depth","inactive","_routerRoot","vnodeData","keepAlive","_directInactive","_inactive","$parent","routerViewDepth","cachedData","cachedComponent","configProps","fillPropsinData","matched","registerRouteInstance","vm","instances","prepatch","vnode","componentInstance","propsToPass","resolveProps","params","encodeReserveRE","encodeReserveReplacer","commaRE","encode","encodeURIComponent","decode","decodeURIComponent","resolveQuery","query","extraQuery","_parseQuery","parsedQuery","parse","parseQuery","castQueryParamValue","param","parts","stringifyQuery","val2","trailingSlashRE","createRoute","redirectedFrom","router","clone","fullPath","getFullPath","formatMatch","freeze","START","_stringifyQuery","isSameRoute","isObjectEqual","aVal","bVal","isIncludedRoute","queryIncludes","resolvePath","relative","base","append","firstChar","segments","segment","parsePath","hashIndex","queryIndex","cleanPath","isarray","arr","pathToRegexp_1","pathToRegexp","parse_1","compile_1","compile","tokensToFunction_1","tokensToFunction","tokensToRegExp_1","tokensToRegExp","PATH_REGEXP","tokens","defaultDelimiter","escaped","offset","prefix","capture","modifier","asterisk","optional","pattern","escapeGroup","escapeString","substr","encodeURIComponentPretty","encodeURI","toUpperCase","encodeAsterisk","opts","pretty","token","attachKeys","sensitive","regexpToRegexp","arrayToRegexp","stringToRegexp","endsWithDelimiter","regexpCompileCache","fillParams","routeMsg","filler","pathMatch","normalizeLocation","raw","_normalized","params$1","rawPath","parsedPath","basePath","toTypes","eventTypes","noop","Link","required","exact","activeClass","exactActiveClass","ariaCurrentValue","$router","classes","globalActiveClass","linkActiveClass","globalExactActiveClass","linkExactActiveClass","activeClassFallback","exactActiveClassFallback","compareTarget","guardEvent","click","scopedSlot","$scopedSlots","$hasNormal","navigate","isActive","isExactActive","findAnchor","$slots","isStatic","aData","handler$1","event$1","aAttrs","metaKey","altKey","ctrlKey","shiftKey","defaultPrevented","button","currentTarget","getAttribute","installed","isDef","registerInstance","callVal","_parentVnode","_router","util","defineReactive","destroyed","_route","strats","optionMergeStrategies","beforeRouteEnter","beforeRouteLeave","beforeRouteUpdate","inBrowser","createRouteMap","routes","oldPathList","oldPathMap","oldNameMap","pathList","pathMap","nameMap","addRouteRecord","matchAs","pathToRegexpOptions","normalizedPath","normalizePath","caseSensitive","regex","compileRouteRegex","redirect","beforeEnter","childMatchAs","alias","aliases","aliasRoute","createMatcher","addRoutes","currentRoute","_createRoute","paramNames","record$1","matchRoute","originalRedirect","resolveRecordPath","resolvedPath","aliasedPath","aliasedMatch","aliasedRecord","Time","performance","genStateKey","toFixed","getStateKey","setStateKey","positionStore","setupScroll","scrollRestoration","protocolAndPath","absolutePath","stateCopy","handlePopState","removeEventListener","handleScroll","isPop","app","behavior","scrollBehavior","$nextTick","getScrollPosition","shouldScroll","scrollToPosition","saveScrollPosition","pageXOffset","y","pageYOffset","getElementPosition","docEl","docRect","getBoundingClientRect","elRect","top","isValidPosition","isNumber","normalizePosition","normalizeOffset","hashStartsWithNumberRE","selector","getElementById","querySelector","scrollTo","supportsPushState","ua","navigator","pushState","url","runQueue","NavigationFailureType","redirected","aborted","cancelled","duplicated","createNavigationRedirectedError","createRouterError","stringifyRoute","createNavigationDuplicatedError","createNavigationCancelledError","createNavigationAbortedError","_isRouter","propertiesToLog","isNavigationFailure","errorType","resolveAsyncComponents","hasAsync","flatMapComponents","def","cid","once","resolvedDef","isESModule","msg","comp","hasSymbol","History","normalizeBase","ready","readyCbs","readyErrorCbs","errorCbs","baseEl","resolveQueue","updated","activated","deactivated","extractGuards","records","instance","extractGuard","extractLeaveGuards","bindGuard","extractUpdateHooks","extractEnterGuards","cbs","isValid","bindEnterGuard","poll","_isBeingDestroyed","listen","onReady","errorCb","transitionTo","onComplete","onAbort","confirmTransition","updateRoute","ensureURL","afterHooks","abort","lastRouteIndex","lastCurrentIndex","beforeHooks","postEnterCbs","enterGuards","resolveHooks","setupListeners","teardownListeners","cleanupListener","HTML5History","_startLocation","getLocation","expectScroll","supportsScroll","handleRoutingEvent","go","fromRoute","getCurrentLocation","decodeURI","pathname","search","HashHistory","fallback","checkFallback","ensureSlash","getHash","replaceHash","pushHash","searchIndex","getUrl","AbstractHistory","targetIndex","VueRouter","apps","matcher","registerHook","createHref","$once","handleInitialScroll","routeOrError","beforeEach","beforeResolve","afterEach","back","getMatchedComponents","normalizedTo","use","isAmended","isNotAmended","isAmending","procedureMachine","MOTION_MADE","VOTE","AMEND","TABLE","VOTE_SUBMITTED","VOTE_COMPLETED","CLEAR_MOTION","amending","amendmentVote","amendmentWaiting","RESULTS_ANNOUNCED","amendmentResults","RECORDED","waiting","GET_FLOOR","IN_DISCUSSION","VOTING_OPEN","SHOW_RESULTS","resultsStates","GET_RESULTS","DID_NOT_VOTE","CAN_CHANGE_VOTE","loading","RESULTS_AVAILABLE","STILL_OPEN","DICUSSING_DIFFERENT_MOTION","VOTING_DIFFERENT_MOTION","stillOpen","differentMotionDiscussing","differentMotionVoting","resultsResubmitStates","CHANGE_VOTE","floorMachine","view","IDLE","discussing","Voting","submitting","SUCCESS","COULD_NOT_CHANGE","could_not_change","CLOSE","thanksForVoting","alreadyVoted","didNotVote","showResults","setSession","SET","field","vote","voteDescription","headers","nonce","body","json","code","getSession","postid","vote_completed","senator_already_voted","Vuex","procedureService","TRANSITION","updateActiveMotion","clearMotion","showMotionResults","fetchMotion","motionIsAmended","getFloor","floor_status","submitFloorVote","changeFloorVote","getAdminResults","currentComponent","productionTip","App","$mount","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"],"mappings":"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","file":"senateVoting.umd.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"vue\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"senateVoting\"] = factory(require(\"vue\"));\n\telse\n\t\troot[\"senateVoting\"] = factory(root[\"Vue\"]);\n})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__8bbf__) {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"fae3\");\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyNames = require('../internals/object-get-own-property-names').f;\n\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return nativeGetOwnPropertyNames(it);\n } catch (error) {\n return windowNames.slice();\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]'\n ? getWindowNames(it)\n : nativeGetOwnPropertyNames(toIndexedObject(it));\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var IS_PRODUCTION = process.env.NODE_ENV === 'production';\nexport { IS_PRODUCTION };","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorMessage.vue?vue&type=style&index=0&id=1e87c3f2&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorMessage.vue?vue&type=style&index=0&id=1e87c3f2&scoped=true&lang=scss&\"","var ActionTypes;\n\n(function (ActionTypes) {\n ActionTypes[\"Start\"] = \"xstate.start\";\n ActionTypes[\"Stop\"] = \"xstate.stop\";\n ActionTypes[\"Raise\"] = \"xstate.raise\";\n ActionTypes[\"Send\"] = \"xstate.send\";\n ActionTypes[\"Cancel\"] = \"xstate.cancel\";\n ActionTypes[\"NullEvent\"] = \"\";\n ActionTypes[\"Assign\"] = \"xstate.assign\";\n ActionTypes[\"After\"] = \"xstate.after\";\n ActionTypes[\"DoneState\"] = \"done.state\";\n ActionTypes[\"DoneInvoke\"] = \"done.invoke\";\n ActionTypes[\"Log\"] = \"xstate.log\";\n ActionTypes[\"Init\"] = \"xstate.init\";\n ActionTypes[\"Invoke\"] = \"xstate.invoke\";\n ActionTypes[\"ErrorExecution\"] = \"error.execution\";\n ActionTypes[\"ErrorCommunication\"] = \"error.communication\";\n ActionTypes[\"ErrorPlatform\"] = \"error.platform\";\n ActionTypes[\"ErrorCustom\"] = \"xstate.error\";\n ActionTypes[\"Update\"] = \"xstate.update\";\n ActionTypes[\"Pure\"] = \"xstate.pure\";\n ActionTypes[\"Choose\"] = \"xstate.choose\";\n})(ActionTypes || (ActionTypes = {}));\n\nvar SpecialTargets;\n\n(function (SpecialTargets) {\n SpecialTargets[\"Parent\"] = \"#_parent\";\n SpecialTargets[\"Internal\"] = \"#_internal\";\n})(SpecialTargets || (SpecialTargets = {}));\n\nexport { ActionTypes, SpecialTargets };","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\n\nvar arrayPush = [].push;\nvar min = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, !SUPPORTS_Y);\n","'use strict';\nvar $ = require('../internals/export');\nvar $reduce = require('../internals/array-reduce').left;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('reduce');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('reduce', { 1: 0 });\n\n// `Array.prototype.reduce` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.reduce\n$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, {\n reduce: function reduce(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var classof = require('./classof-raw');\nvar regexpExec = require('./regexp-exec');\n\n// `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classof(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\n};\n\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n}\n","import { __assign } from './_virtual/_tslib.js';\nvar defaultOptions = {\n deferEvents: false\n};\n\nvar Scheduler =\n/*#__PURE__*/\n\n/** @class */\nfunction () {\n function Scheduler(options) {\n this.processingEvent = false;\n this.queue = [];\n this.initialized = false;\n this.options = __assign(__assign({}, defaultOptions), options);\n }\n\n Scheduler.prototype.initialize = function (callback) {\n this.initialized = true;\n\n if (callback) {\n if (!this.options.deferEvents) {\n this.schedule(callback);\n return;\n }\n\n this.process(callback);\n }\n\n this.flushEvents();\n };\n\n Scheduler.prototype.schedule = function (task) {\n if (!this.initialized || this.processingEvent) {\n this.queue.push(task);\n return;\n }\n\n if (this.queue.length !== 0) {\n throw new Error('Event queue should be empty when it is not processing events');\n }\n\n this.process(task);\n this.flushEvents();\n };\n\n Scheduler.prototype.clear = function () {\n this.queue = [];\n };\n\n Scheduler.prototype.flushEvents = function () {\n var nextCallback = this.queue.shift();\n\n while (nextCallback) {\n this.process(nextCallback);\n nextCallback = this.queue.shift();\n }\n };\n\n Scheduler.prototype.process = function (callback) {\n this.processingEvent = true;\n\n try {\n callback();\n } catch (e) {\n // there is no use to keep the future events\n // as the situation is not anymore the same\n this.clear();\n throw e;\n } finally {\n this.processingEvent = false;\n }\n };\n\n return Scheduler;\n}();\n\nexport { Scheduler };","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.foreach\nmodule.exports = (!STRICT_METHOD || !USES_TO_LENGTH) ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n} : [].forEach;\n","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line no-throw-literal\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /(iphone|ipod|ipad).*applewebkit/i.test(userAgent);\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.github.io/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","var anObject = require('../internals/an-object');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar bind = require('../internals/function-bind-context');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar iterate = module.exports = function (iterable, fn, that, AS_ENTRIES, IS_ITERATOR) {\n var boundFunction = bind(fn, that, AS_ENTRIES ? 2 : 1);\n var iterator, iterFn, index, length, result, next, step;\n\n if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (typeof iterFn != 'function') throw TypeError('Target is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = toLength(iterable.length); length > index; index++) {\n result = AS_ENTRIES\n ? boundFunction(anObject(step = iterable[index])[0], step[1])\n : boundFunction(iterable[index]);\n if (result && result instanceof Result) return result;\n } return new Result(false);\n }\n iterator = iterFn.call(iterable);\n }\n\n next = iterator.next;\n while (!(step = next.call(iterator)).done) {\n result = callWithSafeIterationClosing(iterator, boundFunction, step.value, AS_ENTRIES);\n if (typeof result == 'object' && result && result instanceof Result) return result;\n } return new Result(false);\n};\n\niterate.stop = function (result) {\n return new Result(true, result);\n};\n","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertynames\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\n\n// `String.prototype.includes` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.includes\n$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~String(requireObjectCoercible(this))\n .indexOf(notARegExp(searchString), arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","import { __values, __assign, __spread } from './_virtual/_tslib.js';\nimport { IS_PRODUCTION } from './environment.js';\nimport { warn, mapContext, isFunction, keys, toSCXMLEvent, isPromiseLike, isObservable, isMachine, reportUnhandledExceptionOnInvocation, symbolObservable, isArray, toEventObject, isString, uniqueId } from './utils.js';\nimport { ActionTypes, SpecialTargets } from './types.js';\nimport { isInFinalState } from './stateUtils.js';\nimport { errorPlatform, log, stop, start, cancel, send, update, error as error$1 } from './actionTypes.js';\nimport { doneInvoke, initEvent, getActionFunction, error } from './actions.js';\nimport { isState, State, bindActionToState } from './State.js';\nimport { isActor } from './Actor.js';\nimport { Scheduler } from './scheduler.js';\nimport { registry } from './registry.js';\nimport { registerService } from './devTools.js';\nvar DEFAULT_SPAWN_OPTIONS = {\n sync: false,\n autoForward: false\n};\n/**\r\n * Maintains a stack of the current service in scope.\r\n * This is used to provide the correct service to spawn().\r\n *\r\n * @private\r\n */\n\nvar withServiceScope = /*#__PURE__*/function () {\n var serviceStack = [];\n return function (service, fn) {\n service && serviceStack.push(service);\n var result = fn(service || serviceStack[serviceStack.length - 1]);\n service && serviceStack.pop();\n return result;\n };\n}();\n\nvar InterpreterStatus;\n\n(function (InterpreterStatus) {\n InterpreterStatus[InterpreterStatus[\"NotStarted\"] = 0] = \"NotStarted\";\n InterpreterStatus[InterpreterStatus[\"Running\"] = 1] = \"Running\";\n InterpreterStatus[InterpreterStatus[\"Stopped\"] = 2] = \"Stopped\";\n})(InterpreterStatus || (InterpreterStatus = {}));\n\nvar Interpreter =\n/*#__PURE__*/\n\n/** @class */\nfunction () {\n /**\r\n * Creates a new Interpreter instance (i.e., service) for the given machine with the provided options, if any.\r\n *\r\n * @param machine The machine to be interpreted\r\n * @param options Interpreter options\r\n */\n function Interpreter(machine, options) {\n var _this = this;\n\n if (options === void 0) {\n options = Interpreter.defaultOptions;\n }\n\n this.machine = machine;\n this.scheduler = new Scheduler();\n this.delayedEventsMap = {};\n this.listeners = new Set();\n this.contextListeners = new Set();\n this.stopListeners = new Set();\n this.doneListeners = new Set();\n this.eventListeners = new Set();\n this.sendListeners = new Set();\n /**\r\n * Whether the service is started.\r\n */\n\n this.initialized = false;\n this._status = InterpreterStatus.NotStarted;\n this.children = new Map();\n this.forwardTo = new Set();\n /**\r\n * Alias for Interpreter.prototype.start\r\n */\n\n this.init = this.start;\n /**\r\n * Sends an event to the running interpreter to trigger a transition.\r\n *\r\n * An array of events (batched) can be sent as well, which will send all\r\n * batched events to the running interpreter. The listeners will be\r\n * notified only **once** when all events are processed.\r\n *\r\n * @param event The event(s) to send\r\n */\n\n this.send = function (event, payload) {\n if (isArray(event)) {\n _this.batch(event);\n\n return _this.state;\n }\n\n var _event = toSCXMLEvent(toEventObject(event, payload));\n\n if (_this._status === InterpreterStatus.Stopped) {\n // do nothing\n if (!IS_PRODUCTION) {\n warn(false, \"Event \\\"\" + _event.name + \"\\\" was sent to stopped service \\\"\" + _this.machine.id + \"\\\". This service has already reached its final state, and will not transition.\\nEvent: \" + JSON.stringify(_event.data));\n }\n\n return _this.state;\n }\n\n if (_this._status === InterpreterStatus.NotStarted && _this.options.deferEvents) {\n // tslint:disable-next-line:no-console\n if (!IS_PRODUCTION) {\n warn(false, \"Event \\\"\" + _event.name + \"\\\" was sent to uninitialized service \\\"\" + _this.machine.id + \"\\\" and is deferred. Make sure .start() is called for this service.\\nEvent: \" + JSON.stringify(_event.data));\n }\n } else if (_this._status !== InterpreterStatus.Running) {\n throw new Error(\"Event \\\"\" + _event.name + \"\\\" was sent to uninitialized service \\\"\" + _this.machine.id + \"\\\". Make sure .start() is called for this service, or set { deferEvents: true } in the service options.\\nEvent: \" + JSON.stringify(_event.data));\n }\n\n _this.scheduler.schedule(function () {\n // Forward copy of event to child actors\n _this.forward(_event);\n\n var nextState = _this.nextState(_event);\n\n _this.update(nextState, _event);\n });\n\n return _this._state; // TODO: deprecate (should return void)\n // tslint:disable-next-line:semicolon\n };\n\n this.sendTo = function (event, to) {\n var isParent = _this.parent && (to === SpecialTargets.Parent || _this.parent.id === to);\n var target = isParent ? _this.parent : isActor(to) ? to : _this.children.get(to) || registry.get(to);\n\n if (!target) {\n if (!isParent) {\n throw new Error(\"Unable to send event to child '\" + to + \"' from service '\" + _this.id + \"'.\");\n } // tslint:disable-next-line:no-console\n\n\n if (!IS_PRODUCTION) {\n warn(false, \"Service '\" + _this.id + \"' has no parent: unable to send event \" + event.type);\n }\n\n return;\n }\n\n if ('machine' in target) {\n // Send SCXML events to machines\n target.send(__assign(__assign({}, event), {\n name: event.name === error$1 ? \"\" + error(_this.id) : event.name,\n origin: _this.sessionId\n }));\n } else {\n // Send normal events to other targets\n target.send(event.data);\n }\n };\n\n var resolvedOptions = __assign(__assign({}, Interpreter.defaultOptions), options);\n\n var clock = resolvedOptions.clock,\n logger = resolvedOptions.logger,\n parent = resolvedOptions.parent,\n id = resolvedOptions.id;\n var resolvedId = id !== undefined ? id : machine.id;\n this.id = resolvedId;\n this.logger = logger;\n this.clock = clock;\n this.parent = parent;\n this.options = resolvedOptions;\n this.scheduler = new Scheduler({\n deferEvents: this.options.deferEvents\n });\n this.sessionId = registry.bookId();\n }\n\n Object.defineProperty(Interpreter.prototype, \"initialState\", {\n get: function () {\n var _this = this;\n\n if (this._initialState) {\n return this._initialState;\n }\n\n return withServiceScope(this, function () {\n _this._initialState = _this.machine.initialState;\n return _this._initialState;\n });\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Interpreter.prototype, \"state\", {\n get: function () {\n if (!IS_PRODUCTION) {\n warn(this._status !== InterpreterStatus.NotStarted, \"Attempted to read state from uninitialized service '\" + this.id + \"'. Make sure the service is started first.\");\n }\n\n return this._state;\n },\n enumerable: true,\n configurable: true\n });\n /**\r\n * Executes the actions of the given state, with that state's `context` and `event`.\r\n *\r\n * @param state The state whose actions will be executed\r\n * @param actionsConfig The action implementations to use\r\n */\n\n Interpreter.prototype.execute = function (state, actionsConfig) {\n var e_1, _a;\n\n try {\n for (var _b = __values(state.actions), _c = _b.next(); !_c.done; _c = _b.next()) {\n var action = _c.value;\n this.exec(action, state, actionsConfig);\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n };\n\n Interpreter.prototype.update = function (state, _event) {\n var e_2, _a, e_3, _b, e_4, _c, e_5, _d;\n\n var _this = this; // Attach session ID to state\n\n\n state._sessionid = this.sessionId; // Update state\n\n this._state = state; // Execute actions\n\n if (this.options.execute) {\n this.execute(this.state);\n } // Dev tools\n\n\n if (this.devTools) {\n this.devTools.send(_event.data, state);\n } // Execute listeners\n\n\n if (state.event) {\n try {\n for (var _e = __values(this.eventListeners), _f = _e.next(); !_f.done; _f = _e.next()) {\n var listener = _f.value;\n listener(state.event);\n }\n } catch (e_2_1) {\n e_2 = {\n error: e_2_1\n };\n } finally {\n try {\n if (_f && !_f.done && (_a = _e.return)) _a.call(_e);\n } finally {\n if (e_2) throw e_2.error;\n }\n }\n }\n\n try {\n for (var _g = __values(this.listeners), _h = _g.next(); !_h.done; _h = _g.next()) {\n var listener = _h.value;\n listener(state, state.event);\n }\n } catch (e_3_1) {\n e_3 = {\n error: e_3_1\n };\n } finally {\n try {\n if (_h && !_h.done && (_b = _g.return)) _b.call(_g);\n } finally {\n if (e_3) throw e_3.error;\n }\n }\n\n try {\n for (var _j = __values(this.contextListeners), _k = _j.next(); !_k.done; _k = _j.next()) {\n var contextListener = _k.value;\n contextListener(this.state.context, this.state.history ? this.state.history.context : undefined);\n }\n } catch (e_4_1) {\n e_4 = {\n error: e_4_1\n };\n } finally {\n try {\n if (_k && !_k.done && (_c = _j.return)) _c.call(_j);\n } finally {\n if (e_4) throw e_4.error;\n }\n }\n\n var isDone = isInFinalState(state.configuration || [], this.machine);\n\n if (this.state.configuration && isDone) {\n // get final child state node\n var finalChildStateNode = state.configuration.find(function (sn) {\n return sn.type === 'final' && sn.parent === _this.machine;\n });\n var doneData = finalChildStateNode && finalChildStateNode.doneData ? mapContext(finalChildStateNode.doneData, state.context, _event) : undefined;\n\n try {\n for (var _l = __values(this.doneListeners), _m = _l.next(); !_m.done; _m = _l.next()) {\n var listener = _m.value;\n listener(doneInvoke(this.id, doneData));\n }\n } catch (e_5_1) {\n e_5 = {\n error: e_5_1\n };\n } finally {\n try {\n if (_m && !_m.done && (_d = _l.return)) _d.call(_l);\n } finally {\n if (e_5) throw e_5.error;\n }\n }\n\n this.stop();\n }\n };\n /*\r\n * Adds a listener that is notified whenever a state transition happens. The listener is called with\r\n * the next state and the event object that caused the state transition.\r\n *\r\n * @param listener The state listener\r\n */\n\n\n Interpreter.prototype.onTransition = function (listener) {\n this.listeners.add(listener); // Send current state to listener\n\n if (this._status === InterpreterStatus.Running) {\n listener(this.state, this.state.event);\n }\n\n return this;\n };\n\n Interpreter.prototype.subscribe = function (nextListenerOrObserver, // @ts-ignore\n errorListener, completeListener) {\n var _this = this;\n\n if (!nextListenerOrObserver) {\n return {\n unsubscribe: function () {\n return void 0;\n }\n };\n }\n\n var listener;\n var resolvedCompleteListener = completeListener;\n\n if (typeof nextListenerOrObserver === 'function') {\n listener = nextListenerOrObserver;\n } else {\n listener = nextListenerOrObserver.next.bind(nextListenerOrObserver);\n resolvedCompleteListener = nextListenerOrObserver.complete.bind(nextListenerOrObserver);\n }\n\n this.listeners.add(listener); // Send current state to listener\n\n if (this._status === InterpreterStatus.Running) {\n listener(this.state);\n }\n\n if (resolvedCompleteListener) {\n this.onDone(resolvedCompleteListener);\n }\n\n return {\n unsubscribe: function () {\n listener && _this.listeners.delete(listener);\n resolvedCompleteListener && _this.doneListeners.delete(resolvedCompleteListener);\n }\n };\n };\n /**\r\n * Adds an event listener that is notified whenever an event is sent to the running interpreter.\r\n * @param listener The event listener\r\n */\n\n\n Interpreter.prototype.onEvent = function (listener) {\n this.eventListeners.add(listener);\n return this;\n };\n /**\r\n * Adds an event listener that is notified whenever a `send` event occurs.\r\n * @param listener The event listener\r\n */\n\n\n Interpreter.prototype.onSend = function (listener) {\n this.sendListeners.add(listener);\n return this;\n };\n /**\r\n * Adds a context listener that is notified whenever the state context changes.\r\n * @param listener The context listener\r\n */\n\n\n Interpreter.prototype.onChange = function (listener) {\n this.contextListeners.add(listener);\n return this;\n };\n /**\r\n * Adds a listener that is notified when the machine is stopped.\r\n * @param listener The listener\r\n */\n\n\n Interpreter.prototype.onStop = function (listener) {\n this.stopListeners.add(listener);\n return this;\n };\n /**\r\n * Adds a state listener that is notified when the statechart has reached its final state.\r\n * @param listener The state listener\r\n */\n\n\n Interpreter.prototype.onDone = function (listener) {\n this.doneListeners.add(listener);\n return this;\n };\n /**\r\n * Removes a listener.\r\n * @param listener The listener to remove\r\n */\n\n\n Interpreter.prototype.off = function (listener) {\n this.listeners.delete(listener);\n this.eventListeners.delete(listener);\n this.sendListeners.delete(listener);\n this.stopListeners.delete(listener);\n this.doneListeners.delete(listener);\n this.contextListeners.delete(listener);\n return this;\n };\n /**\r\n * Starts the interpreter from the given state, or the initial state.\r\n * @param initialState The state to start the statechart from\r\n */\n\n\n Interpreter.prototype.start = function (initialState) {\n var _this = this;\n\n if (this._status === InterpreterStatus.Running) {\n // Do not restart the service if it is already started\n return this;\n }\n\n registry.register(this.sessionId, this);\n this.initialized = true;\n this._status = InterpreterStatus.Running;\n var resolvedState = initialState === undefined ? this.initialState : withServiceScope(this, function () {\n return isState(initialState) ? _this.machine.resolveState(initialState) : _this.machine.resolveState(State.from(initialState, _this.machine.context));\n });\n\n if (this.options.devTools) {\n this.attachDev();\n }\n\n this.scheduler.initialize(function () {\n _this.update(resolvedState, initEvent);\n });\n return this;\n };\n /**\r\n * Stops the interpreter and unsubscribe all listeners.\r\n *\r\n * This will also notify the `onStop` listeners.\r\n */\n\n\n Interpreter.prototype.stop = function () {\n var e_6, _a, e_7, _b, e_8, _c, e_9, _d, e_10, _e;\n\n try {\n for (var _f = __values(this.listeners), _g = _f.next(); !_g.done; _g = _f.next()) {\n var listener = _g.value;\n this.listeners.delete(listener);\n }\n } catch (e_6_1) {\n e_6 = {\n error: e_6_1\n };\n } finally {\n try {\n if (_g && !_g.done && (_a = _f.return)) _a.call(_f);\n } finally {\n if (e_6) throw e_6.error;\n }\n }\n\n try {\n for (var _h = __values(this.stopListeners), _j = _h.next(); !_j.done; _j = _h.next()) {\n var listener = _j.value; // call listener, then remove\n\n listener();\n this.stopListeners.delete(listener);\n }\n } catch (e_7_1) {\n e_7 = {\n error: e_7_1\n };\n } finally {\n try {\n if (_j && !_j.done && (_b = _h.return)) _b.call(_h);\n } finally {\n if (e_7) throw e_7.error;\n }\n }\n\n try {\n for (var _k = __values(this.contextListeners), _l = _k.next(); !_l.done; _l = _k.next()) {\n var listener = _l.value;\n this.contextListeners.delete(listener);\n }\n } catch (e_8_1) {\n e_8 = {\n error: e_8_1\n };\n } finally {\n try {\n if (_l && !_l.done && (_c = _k.return)) _c.call(_k);\n } finally {\n if (e_8) throw e_8.error;\n }\n }\n\n try {\n for (var _m = __values(this.doneListeners), _o = _m.next(); !_o.done; _o = _m.next()) {\n var listener = _o.value;\n this.doneListeners.delete(listener);\n }\n } catch (e_9_1) {\n e_9 = {\n error: e_9_1\n };\n } finally {\n try {\n if (_o && !_o.done && (_d = _m.return)) _d.call(_m);\n } finally {\n if (e_9) throw e_9.error;\n }\n } // Stop all children\n\n\n this.children.forEach(function (child) {\n if (isFunction(child.stop)) {\n child.stop();\n }\n });\n\n try {\n // Cancel all delayed events\n for (var _p = __values(keys(this.delayedEventsMap)), _q = _p.next(); !_q.done; _q = _p.next()) {\n var key = _q.value;\n this.clock.clearTimeout(this.delayedEventsMap[key]);\n }\n } catch (e_10_1) {\n e_10 = {\n error: e_10_1\n };\n } finally {\n try {\n if (_q && !_q.done && (_e = _p.return)) _e.call(_p);\n } finally {\n if (e_10) throw e_10.error;\n }\n }\n\n this.scheduler.clear();\n this.initialized = false;\n this._status = InterpreterStatus.Stopped;\n registry.free(this.sessionId);\n return this;\n };\n\n Interpreter.prototype.batch = function (events) {\n var _this = this;\n\n if (this._status === InterpreterStatus.NotStarted && this.options.deferEvents) {\n // tslint:disable-next-line:no-console\n if (!IS_PRODUCTION) {\n warn(false, events.length + \" event(s) were sent to uninitialized service \\\"\" + this.machine.id + \"\\\" and are deferred. Make sure .start() is called for this service.\\nEvent: \" + JSON.stringify(event));\n }\n } else if (this._status !== InterpreterStatus.Running) {\n throw new Error( // tslint:disable-next-line:max-line-length\n events.length + \" event(s) were sent to uninitialized service \\\"\" + this.machine.id + \"\\\". Make sure .start() is called for this service, or set { deferEvents: true } in the service options.\");\n }\n\n this.scheduler.schedule(function () {\n var e_11, _a;\n\n var nextState = _this.state;\n var batchChanged = false;\n var batchedActions = [];\n\n var _loop_1 = function (event_1) {\n var _event = toSCXMLEvent(event_1);\n\n _this.forward(_event);\n\n nextState = withServiceScope(_this, function () {\n return _this.machine.transition(nextState, _event);\n });\n batchedActions.push.apply(batchedActions, __spread(nextState.actions.map(function (a) {\n return bindActionToState(a, nextState);\n })));\n batchChanged = batchChanged || !!nextState.changed;\n };\n\n try {\n for (var events_1 = __values(events), events_1_1 = events_1.next(); !events_1_1.done; events_1_1 = events_1.next()) {\n var event_1 = events_1_1.value;\n\n _loop_1(event_1);\n }\n } catch (e_11_1) {\n e_11 = {\n error: e_11_1\n };\n } finally {\n try {\n if (events_1_1 && !events_1_1.done && (_a = events_1.return)) _a.call(events_1);\n } finally {\n if (e_11) throw e_11.error;\n }\n }\n\n nextState.changed = batchChanged;\n nextState.actions = batchedActions;\n\n _this.update(nextState, toSCXMLEvent(events[events.length - 1]));\n });\n };\n /**\r\n * Returns a send function bound to this interpreter instance.\r\n *\r\n * @param event The event to be sent by the sender.\r\n */\n\n\n Interpreter.prototype.sender = function (event) {\n return this.send.bind(this, event);\n };\n /**\r\n * Returns the next state given the interpreter's current state and the event.\r\n *\r\n * This is a pure method that does _not_ update the interpreter's state.\r\n *\r\n * @param event The event to determine the next state\r\n */\n\n\n Interpreter.prototype.nextState = function (event) {\n var _this = this;\n\n var _event = toSCXMLEvent(event);\n\n if (_event.name.indexOf(errorPlatform) === 0 && !this.state.nextEvents.some(function (nextEvent) {\n return nextEvent.indexOf(errorPlatform) === 0;\n })) {\n throw _event.data.data;\n }\n\n var nextState = withServiceScope(this, function () {\n return _this.machine.transition(_this.state, _event);\n });\n return nextState;\n };\n\n Interpreter.prototype.forward = function (event) {\n var e_12, _a;\n\n try {\n for (var _b = __values(this.forwardTo), _c = _b.next(); !_c.done; _c = _b.next()) {\n var id = _c.value;\n var child = this.children.get(id);\n\n if (!child) {\n throw new Error(\"Unable to forward event '\" + event + \"' from interpreter '\" + this.id + \"' to nonexistant child '\" + id + \"'.\");\n }\n\n child.send(event);\n }\n } catch (e_12_1) {\n e_12 = {\n error: e_12_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_12) throw e_12.error;\n }\n }\n };\n\n Interpreter.prototype.defer = function (sendAction) {\n var _this = this;\n\n this.delayedEventsMap[sendAction.id] = this.clock.setTimeout(function () {\n if (sendAction.to) {\n _this.sendTo(sendAction._event, sendAction.to);\n } else {\n _this.send(sendAction._event);\n }\n }, sendAction.delay);\n };\n\n Interpreter.prototype.cancel = function (sendId) {\n this.clock.clearTimeout(this.delayedEventsMap[sendId]);\n delete this.delayedEventsMap[sendId];\n };\n\n Interpreter.prototype.exec = function (action, state, actionFunctionMap) {\n if (actionFunctionMap === void 0) {\n actionFunctionMap = this.machine.options.actions;\n }\n\n var context = state.context,\n _event = state._event;\n var actionOrExec = action.exec || getActionFunction(action.type, actionFunctionMap);\n var exec = isFunction(actionOrExec) ? actionOrExec : actionOrExec ? actionOrExec.exec : action.exec;\n\n if (exec) {\n try {\n return exec(context, _event.data, {\n action: action,\n state: this.state,\n _event: _event\n });\n } catch (err) {\n if (this.parent) {\n this.parent.send({\n type: 'xstate.error',\n data: err\n });\n }\n\n throw err;\n }\n }\n\n switch (action.type) {\n case send:\n var sendAction = action;\n\n if (typeof sendAction.delay === 'number') {\n this.defer(sendAction);\n return;\n } else {\n if (sendAction.to) {\n this.sendTo(sendAction._event, sendAction.to);\n } else {\n this.send(sendAction._event);\n }\n }\n\n break;\n\n case cancel:\n this.cancel(action.sendId);\n break;\n\n case start:\n {\n var activity = action.activity; // If the activity will be stopped right after it's started\n // (such as in transient states)\n // don't bother starting the activity.\n\n if (!this.state.activities[activity.id || activity.type]) {\n break;\n } // Invoked services\n\n\n if (activity.type === ActionTypes.Invoke) {\n var serviceCreator = this.machine.options.services ? this.machine.options.services[activity.src] : undefined;\n var id = activity.id,\n data = activity.data;\n\n if (!IS_PRODUCTION) {\n warn(!('forward' in activity), // tslint:disable-next-line:max-line-length\n \"`forward` property is deprecated (found in invocation of '\" + activity.src + \"' in in machine '\" + this.machine.id + \"'). \" + \"Please use `autoForward` instead.\");\n }\n\n var autoForward = 'autoForward' in activity ? activity.autoForward : !!activity.forward;\n\n if (!serviceCreator) {\n // tslint:disable-next-line:no-console\n if (!IS_PRODUCTION) {\n warn(false, \"No service found for invocation '\" + activity.src + \"' in machine '\" + this.machine.id + \"'.\");\n }\n\n return;\n }\n\n var resolvedData = data ? mapContext(data, context, _event) : undefined;\n var source = isFunction(serviceCreator) ? serviceCreator(context, _event.data, {\n data: resolvedData\n }) : serviceCreator;\n\n if (isPromiseLike(source)) {\n this.state.children[id] = this.spawnPromise(Promise.resolve(source), id);\n } else if (isFunction(source)) {\n this.state.children[id] = this.spawnCallback(source, id);\n } else if (isObservable(source)) {\n this.state.children[id] = this.spawnObservable(source, id);\n } else if (isMachine(source)) {\n // TODO: try/catch here\n this.state.children[id] = this.spawnMachine(resolvedData ? source.withContext(resolvedData) : source, {\n id: id,\n autoForward: autoForward\n });\n }\n } else {\n this.spawnActivity(activity);\n }\n\n break;\n }\n\n case stop:\n {\n this.stopChild(action.activity.id);\n break;\n }\n\n case log:\n var label = action.label,\n value = action.value;\n\n if (label) {\n this.logger(label, value);\n } else {\n this.logger(value);\n }\n\n break;\n\n default:\n if (!IS_PRODUCTION) {\n warn(false, \"No implementation found for action type '\" + action.type + \"'\");\n }\n\n break;\n }\n\n return undefined;\n };\n\n Interpreter.prototype.removeChild = function (childId) {\n this.children.delete(childId);\n this.forwardTo.delete(childId);\n delete this.state.children[childId];\n };\n\n Interpreter.prototype.stopChild = function (childId) {\n var child = this.children.get(childId);\n\n if (!child) {\n return;\n }\n\n this.removeChild(childId);\n\n if (isFunction(child.stop)) {\n child.stop();\n }\n };\n\n Interpreter.prototype.spawn = function (entity, name, options) {\n if (isPromiseLike(entity)) {\n return this.spawnPromise(Promise.resolve(entity), name);\n } else if (isFunction(entity)) {\n return this.spawnCallback(entity, name);\n } else if (isActor(entity)) {\n return this.spawnActor(entity);\n } else if (isObservable(entity)) {\n return this.spawnObservable(entity, name);\n } else if (isMachine(entity)) {\n return this.spawnMachine(entity, __assign(__assign({}, options), {\n id: name\n }));\n } else {\n throw new Error(\"Unable to spawn entity \\\"\" + name + \"\\\" of type \\\"\" + typeof entity + \"\\\".\");\n }\n };\n\n Interpreter.prototype.spawnMachine = function (machine, options) {\n var _this = this;\n\n if (options === void 0) {\n options = {};\n }\n\n var childService = new Interpreter(machine, __assign(__assign({}, this.options), {\n parent: this,\n id: options.id || machine.id\n }));\n\n var resolvedOptions = __assign(__assign({}, DEFAULT_SPAWN_OPTIONS), options);\n\n if (resolvedOptions.sync) {\n childService.onTransition(function (state) {\n _this.send(update, {\n state: state,\n id: childService.id\n });\n });\n }\n\n var actor = childService;\n this.children.set(childService.id, actor);\n\n if (resolvedOptions.autoForward) {\n this.forwardTo.add(childService.id);\n }\n\n childService.onDone(function (doneEvent) {\n _this.removeChild(childService.id);\n\n _this.send(toSCXMLEvent(doneEvent, {\n origin: childService.id\n }));\n }).start();\n return actor;\n };\n\n Interpreter.prototype.spawnPromise = function (promise, id) {\n var _this = this;\n\n var canceled = false;\n promise.then(function (response) {\n if (!canceled) {\n _this.removeChild(id);\n\n _this.send(toSCXMLEvent(doneInvoke(id, response), {\n origin: id\n }));\n }\n }, function (errorData) {\n if (!canceled) {\n _this.removeChild(id);\n\n var errorEvent = error(id, errorData);\n\n try {\n // Send \"error.platform.id\" to this (parent).\n _this.send(toSCXMLEvent(errorEvent, {\n origin: id\n }));\n } catch (error) {\n reportUnhandledExceptionOnInvocation(errorData, error, id);\n\n if (_this.devTools) {\n _this.devTools.send(errorEvent, _this.state);\n }\n\n if (_this.machine.strict) {\n // it would be better to always stop the state machine if unhandled\n // exception/promise rejection happens but because we don't want to\n // break existing code so enforce it on strict mode only especially so\n // because documentation says that onError is optional\n _this.stop();\n }\n }\n }\n });\n var actor = {\n id: id,\n send: function () {\n return void 0;\n },\n subscribe: function (next, handleError, complete) {\n var unsubscribed = false;\n promise.then(function (response) {\n if (unsubscribed) {\n return;\n }\n\n next && next(response);\n\n if (unsubscribed) {\n return;\n }\n\n complete && complete();\n }, function (err) {\n if (unsubscribed) {\n return;\n }\n\n handleError(err);\n });\n return {\n unsubscribe: function () {\n return unsubscribed = true;\n }\n };\n },\n stop: function () {\n canceled = true;\n },\n toJSON: function () {\n return {\n id: id\n };\n }\n };\n this.children.set(id, actor);\n return actor;\n };\n\n Interpreter.prototype.spawnCallback = function (callback, id) {\n var _this = this;\n\n var canceled = false;\n var receivers = new Set();\n var listeners = new Set();\n\n var receive = function (e) {\n listeners.forEach(function (listener) {\n return listener(e);\n });\n\n if (canceled) {\n return;\n }\n\n _this.send(e);\n };\n\n var callbackStop;\n\n try {\n callbackStop = callback(receive, function (newListener) {\n receivers.add(newListener);\n });\n } catch (err) {\n this.send(error(id, err));\n }\n\n if (isPromiseLike(callbackStop)) {\n // it turned out to be an async function, can't reliably check this before calling `callback`\n // because transpiled async functions are not recognizable\n return this.spawnPromise(callbackStop, id);\n }\n\n var actor = {\n id: id,\n send: function (event) {\n return receivers.forEach(function (receiver) {\n return receiver(event);\n });\n },\n subscribe: function (next) {\n listeners.add(next);\n return {\n unsubscribe: function () {\n listeners.delete(next);\n }\n };\n },\n stop: function () {\n canceled = true;\n\n if (isFunction(callbackStop)) {\n callbackStop();\n }\n },\n toJSON: function () {\n return {\n id: id\n };\n }\n };\n this.children.set(id, actor);\n return actor;\n };\n\n Interpreter.prototype.spawnObservable = function (source, id) {\n var _this = this;\n\n var subscription = source.subscribe(function (value) {\n _this.send(toSCXMLEvent(value, {\n origin: id\n }));\n }, function (err) {\n _this.removeChild(id);\n\n _this.send(toSCXMLEvent(error(id, err), {\n origin: id\n }));\n }, function () {\n _this.removeChild(id);\n\n _this.send(toSCXMLEvent(doneInvoke(id), {\n origin: id\n }));\n });\n var actor = {\n id: id,\n send: function () {\n return void 0;\n },\n subscribe: function (next, handleError, complete) {\n return source.subscribe(next, handleError, complete);\n },\n stop: function () {\n return subscription.unsubscribe();\n },\n toJSON: function () {\n return {\n id: id\n };\n }\n };\n this.children.set(id, actor);\n return actor;\n };\n\n Interpreter.prototype.spawnActor = function (actor) {\n this.children.set(actor.id, actor);\n return actor;\n };\n\n Interpreter.prototype.spawnActivity = function (activity) {\n var implementation = this.machine.options && this.machine.options.activities ? this.machine.options.activities[activity.type] : undefined;\n\n if (!implementation) {\n if (!IS_PRODUCTION) {\n warn(false, \"No implementation found for activity '\" + activity.type + \"'\");\n } // tslint:disable-next-line:no-console\n\n\n return;\n } // Start implementation\n\n\n var dispose = implementation(this.state.context, activity);\n this.spawnEffect(activity.id, dispose);\n };\n\n Interpreter.prototype.spawnEffect = function (id, dispose) {\n this.children.set(id, {\n id: id,\n send: function () {\n return void 0;\n },\n subscribe: function () {\n return {\n unsubscribe: function () {\n return void 0;\n }\n };\n },\n stop: dispose || undefined,\n toJSON: function () {\n return {\n id: id\n };\n }\n });\n };\n\n Interpreter.prototype.attachDev = function () {\n if (this.options.devTools && typeof window !== 'undefined') {\n if (window.__REDUX_DEVTOOLS_EXTENSION__) {\n var devToolsOptions = typeof this.options.devTools === 'object' ? this.options.devTools : undefined;\n this.devTools = window.__REDUX_DEVTOOLS_EXTENSION__.connect(__assign(__assign({\n name: this.id,\n autoPause: true,\n stateSanitizer: function (state) {\n return {\n value: state.value,\n context: state.context,\n actions: state.actions\n };\n }\n }, devToolsOptions), {\n features: __assign({\n jump: false,\n skip: false\n }, devToolsOptions ? devToolsOptions.features : undefined)\n }), this.machine);\n this.devTools.init(this.state);\n } // add XState-specific dev tooling hook\n\n\n registerService(this);\n }\n };\n\n Interpreter.prototype.toJSON = function () {\n return {\n id: this.id\n };\n };\n\n Interpreter.prototype[symbolObservable] = function () {\n return this;\n };\n /**\r\n * The default interpreter options:\r\n *\r\n * - `clock` uses the global `setTimeout` and `clearTimeout` functions\r\n * - `logger` uses the global `console.log()` method\r\n */\n\n\n Interpreter.defaultOptions = /*#__PURE__*/function (global) {\n return {\n execute: true,\n deferEvents: true,\n clock: {\n setTimeout: function (fn, ms) {\n return global.setTimeout.call(null, fn, ms);\n },\n clearTimeout: function (id) {\n return global.clearTimeout.call(null, id);\n }\n },\n logger: global.console.log.bind(console),\n devTools: false\n };\n }(typeof window === 'undefined' ? global : window);\n\n Interpreter.interpret = interpret;\n return Interpreter;\n}();\n\nvar createNullActor = function (name) {\n if (name === void 0) {\n name = 'null';\n }\n\n return {\n id: name,\n send: function () {\n return void 0;\n },\n subscribe: function () {\n // tslint:disable-next-line:no-empty\n return {\n unsubscribe: function () {}\n };\n },\n toJSON: function () {\n return {\n id: name\n };\n }\n };\n};\n\nvar resolveSpawnOptions = function (nameOrOptions) {\n if (isString(nameOrOptions)) {\n return __assign(__assign({}, DEFAULT_SPAWN_OPTIONS), {\n name: nameOrOptions\n });\n }\n\n return __assign(__assign(__assign({}, DEFAULT_SPAWN_OPTIONS), {\n name: uniqueId()\n }), nameOrOptions);\n};\n\nfunction spawn(entity, nameOrOptions) {\n var resolvedOptions = resolveSpawnOptions(nameOrOptions);\n return withServiceScope(undefined, function (service) {\n if (!IS_PRODUCTION) {\n warn(!!service, \"Attempted to spawn an Actor (ID: \\\"\" + (isMachine(entity) ? entity.id : 'undefined') + \"\\\") outside of a service. This will have no effect.\");\n }\n\n if (service) {\n return service.spawn(entity, resolvedOptions.name, resolvedOptions);\n } else {\n return createNullActor(resolvedOptions.name);\n }\n });\n}\n/**\r\n * Creates a new Interpreter instance for the given machine with the provided options, if any.\r\n *\r\n * @param machine The machine to interpret\r\n * @param options Interpreter options\r\n */\n\n\nfunction interpret(machine, options) {\n var interpreter = new Interpreter(machine, options);\n return interpreter;\n}\n\nexport { Interpreter, interpret, spawn };","var global = require('../internals/global');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\nvar bind = require('../internals/function-bind-context');\nvar html = require('../internals/html');\nvar createElement = require('../internals/document-create-element');\nvar IS_IOS = require('../internals/engine-is-ios');\n\nvar location = global.location;\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\n\nvar run = function (id) {\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar listener = function (event) {\n run(event.data);\n};\n\nvar post = function (id) {\n // old engines have not location.origin\n global.postMessage(id + '', location.protocol + '//' + location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n (typeof fn == 'function' ? fn : Function(fn)).apply(undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (classof(process) == 'process') {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = bind(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n typeof postMessage == 'function' &&\n !global.importScripts &&\n !fails(post) &&\n location.protocol !== 'file:'\n ) {\n defer = post;\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","import { __spread, __rest, __assign } from './_virtual/_tslib.js';\nimport { EMPTY_ACTIVITY_MAP } from './constants.js';\nimport { isString, matchesState, keys } from './utils.js';\nimport { nextEvents } from './stateUtils.js';\nimport { initEvent } from './actions.js';\n\nfunction stateValuesEqual(a, b) {\n if (a === b) {\n return true;\n }\n\n if (a === undefined || b === undefined) {\n return false;\n }\n\n if (isString(a) || isString(b)) {\n return a === b;\n }\n\n var aKeys = keys(a);\n var bKeys = keys(b);\n return aKeys.length === bKeys.length && aKeys.every(function (key) {\n return stateValuesEqual(a[key], b[key]);\n });\n}\n\nfunction isState(state) {\n if (isString(state)) {\n return false;\n }\n\n return 'value' in state && 'history' in state;\n}\n\nfunction bindActionToState(action, state) {\n var exec = action.exec;\n\n var boundAction = __assign(__assign({}, action), {\n exec: exec !== undefined ? function () {\n return exec(state.context, state.event, {\n action: action,\n state: state,\n _event: state._event\n });\n } : undefined\n });\n\n return boundAction;\n}\n\nvar State =\n/*#__PURE__*/\n\n/** @class */\nfunction () {\n /**\r\n * Creates a new State instance.\r\n * @param value The state value\r\n * @param context The extended state\r\n * @param historyValue The tree representing historical values of the state nodes\r\n * @param history The previous state\r\n * @param actions An array of action objects to execute as side-effects\r\n * @param activities A mapping of activities and whether they are started (`true`) or stopped (`false`).\r\n * @param meta\r\n * @param events Internal event queue. Should be empty with run-to-completion semantics.\r\n * @param configuration\r\n */\n function State(config) {\n var _this = this;\n\n this.actions = [];\n this.activities = EMPTY_ACTIVITY_MAP;\n this.meta = {};\n this.events = [];\n this.value = config.value;\n this.context = config.context;\n this._event = config._event;\n this._sessionid = config._sessionid;\n this.event = this._event.data;\n this.historyValue = config.historyValue;\n this.history = config.history;\n this.actions = config.actions || [];\n this.activities = config.activities || EMPTY_ACTIVITY_MAP;\n this.meta = config.meta || {};\n this.events = config.events || [];\n this.matches = this.matches.bind(this);\n this.toStrings = this.toStrings.bind(this);\n this.configuration = config.configuration;\n this.transitions = config.transitions;\n this.children = config.children;\n this.done = !!config.done;\n Object.defineProperty(this, 'nextEvents', {\n get: function () {\n return nextEvents(_this.configuration);\n }\n });\n }\n /**\r\n * Creates a new State instance for the given `stateValue` and `context`.\r\n * @param stateValue\r\n * @param context\r\n */\n\n\n State.from = function (stateValue, context) {\n if (stateValue instanceof State) {\n if (stateValue.context !== context) {\n return new State({\n value: stateValue.value,\n context: context,\n _event: stateValue._event,\n _sessionid: null,\n historyValue: stateValue.historyValue,\n history: stateValue.history,\n actions: [],\n activities: stateValue.activities,\n meta: {},\n events: [],\n configuration: [],\n transitions: [],\n children: {}\n });\n }\n\n return stateValue;\n }\n\n var _event = initEvent;\n return new State({\n value: stateValue,\n context: context,\n _event: _event,\n _sessionid: null,\n historyValue: undefined,\n history: undefined,\n actions: [],\n activities: undefined,\n meta: undefined,\n events: [],\n configuration: [],\n transitions: [],\n children: {}\n });\n };\n /**\r\n * Creates a new State instance for the given `config`.\r\n * @param config The state config\r\n */\n\n\n State.create = function (config) {\n return new State(config);\n };\n /**\r\n * Creates a new `State` instance for the given `stateValue` and `context` with no actions (side-effects).\r\n * @param stateValue\r\n * @param context\r\n */\n\n\n State.inert = function (stateValue, context) {\n if (stateValue instanceof State) {\n if (!stateValue.actions.length) {\n return stateValue;\n }\n\n var _event = initEvent;\n return new State({\n value: stateValue.value,\n context: context,\n _event: _event,\n _sessionid: null,\n historyValue: stateValue.historyValue,\n history: stateValue.history,\n activities: stateValue.activities,\n configuration: stateValue.configuration,\n transitions: [],\n children: {}\n });\n }\n\n return State.from(stateValue, context);\n };\n /**\r\n * Returns an array of all the string leaf state node paths.\r\n * @param stateValue\r\n * @param delimiter The character(s) that separate each subpath in the string state node path.\r\n */\n\n\n State.prototype.toStrings = function (stateValue, delimiter) {\n var _this = this;\n\n if (stateValue === void 0) {\n stateValue = this.value;\n }\n\n if (delimiter === void 0) {\n delimiter = '.';\n }\n\n if (isString(stateValue)) {\n return [stateValue];\n }\n\n var valueKeys = keys(stateValue);\n return valueKeys.concat.apply(valueKeys, __spread(valueKeys.map(function (key) {\n return _this.toStrings(stateValue[key], delimiter).map(function (s) {\n return key + delimiter + s;\n });\n })));\n };\n\n State.prototype.toJSON = function () {\n var _a = this,\n configuration = _a.configuration,\n transitions = _a.transitions,\n jsonValues = __rest(_a, [\"configuration\", \"transitions\"]);\n\n return jsonValues;\n };\n /**\r\n * Whether the current state value is a subset of the given parent state value.\r\n * @param parentStateValue\r\n */\n\n\n State.prototype.matches = function (parentStateValue) {\n return matchesState(parentStateValue, this.value);\n };\n\n return State;\n}();\n\nexport { State, bindActionToState, isState, stateValuesEqual };","/*!\n * vuex v3.5.1\n * (c) 2020 Evan You\n * @license MIT\n */\nfunction applyMixin (Vue) {\n var version = Number(Vue.version.split('.')[0]);\n\n if (version >= 2) {\n Vue.mixin({ beforeCreate: vuexInit });\n } else {\n // override init and inject vuex init procedure\n // for 1.x backwards compatibility.\n var _init = Vue.prototype._init;\n Vue.prototype._init = function (options) {\n if ( options === void 0 ) options = {};\n\n options.init = options.init\n ? [vuexInit].concat(options.init)\n : vuexInit;\n _init.call(this, options);\n };\n }\n\n /**\n * Vuex init hook, injected into each instances init hooks list.\n */\n\n function vuexInit () {\n var options = this.$options;\n // store injection\n if (options.store) {\n this.$store = typeof options.store === 'function'\n ? options.store()\n : options.store;\n } else if (options.parent && options.parent.$store) {\n this.$store = options.parent.$store;\n }\n }\n}\n\nvar target = typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\nvar devtoolHook = target.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\nfunction devtoolPlugin (store) {\n if (!devtoolHook) { return }\n\n store._devtoolHook = devtoolHook;\n\n devtoolHook.emit('vuex:init', store);\n\n devtoolHook.on('vuex:travel-to-state', function (targetState) {\n store.replaceState(targetState);\n });\n\n store.subscribe(function (mutation, state) {\n devtoolHook.emit('vuex:mutation', mutation, state);\n }, { prepend: true });\n\n store.subscribeAction(function (action, state) {\n devtoolHook.emit('vuex:action', action, state);\n }, { prepend: true });\n}\n\n/**\n * Get the first item that pass the test\n * by second argument function\n *\n * @param {Array} list\n * @param {Function} f\n * @return {*}\n */\nfunction find (list, f) {\n return list.filter(f)[0]\n}\n\n/**\n * Deep copy the given object considering circular structure.\n * This function caches all nested objects and its copies.\n * If it detects circular structure, use cached copy to avoid infinite loop.\n *\n * @param {*} obj\n * @param {Array<Object>} cache\n * @return {*}\n */\nfunction deepCopy (obj, cache) {\n if ( cache === void 0 ) cache = [];\n\n // just return if obj is immutable value\n if (obj === null || typeof obj !== 'object') {\n return obj\n }\n\n // if obj is hit, it is in circular structure\n var hit = find(cache, function (c) { return c.original === obj; });\n if (hit) {\n return hit.copy\n }\n\n var copy = Array.isArray(obj) ? [] : {};\n // put the copy into cache at first\n // because we want to refer it in recursive deepCopy\n cache.push({\n original: obj,\n copy: copy\n });\n\n Object.keys(obj).forEach(function (key) {\n copy[key] = deepCopy(obj[key], cache);\n });\n\n return copy\n}\n\n/**\n * forEach for object\n */\nfunction forEachValue (obj, fn) {\n Object.keys(obj).forEach(function (key) { return fn(obj[key], key); });\n}\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nfunction isPromise (val) {\n return val && typeof val.then === 'function'\n}\n\nfunction assert (condition, msg) {\n if (!condition) { throw new Error((\"[vuex] \" + msg)) }\n}\n\nfunction partial (fn, arg) {\n return function () {\n return fn(arg)\n }\n}\n\n// Base data struct for store's module, package with some attribute and method\nvar Module = function Module (rawModule, runtime) {\n this.runtime = runtime;\n // Store some children item\n this._children = Object.create(null);\n // Store the origin module object which passed by programmer\n this._rawModule = rawModule;\n var rawState = rawModule.state;\n\n // Store the origin module's state\n this.state = (typeof rawState === 'function' ? rawState() : rawState) || {};\n};\n\nvar prototypeAccessors = { namespaced: { configurable: true } };\n\nprototypeAccessors.namespaced.get = function () {\n return !!this._rawModule.namespaced\n};\n\nModule.prototype.addChild = function addChild (key, module) {\n this._children[key] = module;\n};\n\nModule.prototype.removeChild = function removeChild (key) {\n delete this._children[key];\n};\n\nModule.prototype.getChild = function getChild (key) {\n return this._children[key]\n};\n\nModule.prototype.hasChild = function hasChild (key) {\n return key in this._children\n};\n\nModule.prototype.update = function update (rawModule) {\n this._rawModule.namespaced = rawModule.namespaced;\n if (rawModule.actions) {\n this._rawModule.actions = rawModule.actions;\n }\n if (rawModule.mutations) {\n this._rawModule.mutations = rawModule.mutations;\n }\n if (rawModule.getters) {\n this._rawModule.getters = rawModule.getters;\n }\n};\n\nModule.prototype.forEachChild = function forEachChild (fn) {\n forEachValue(this._children, fn);\n};\n\nModule.prototype.forEachGetter = function forEachGetter (fn) {\n if (this._rawModule.getters) {\n forEachValue(this._rawModule.getters, fn);\n }\n};\n\nModule.prototype.forEachAction = function forEachAction (fn) {\n if (this._rawModule.actions) {\n forEachValue(this._rawModule.actions, fn);\n }\n};\n\nModule.prototype.forEachMutation = function forEachMutation (fn) {\n if (this._rawModule.mutations) {\n forEachValue(this._rawModule.mutations, fn);\n }\n};\n\nObject.defineProperties( Module.prototype, prototypeAccessors );\n\nvar ModuleCollection = function ModuleCollection (rawRootModule) {\n // register root module (Vuex.Store options)\n this.register([], rawRootModule, false);\n};\n\nModuleCollection.prototype.get = function get (path) {\n return path.reduce(function (module, key) {\n return module.getChild(key)\n }, this.root)\n};\n\nModuleCollection.prototype.getNamespace = function getNamespace (path) {\n var module = this.root;\n return path.reduce(function (namespace, key) {\n module = module.getChild(key);\n return namespace + (module.namespaced ? key + '/' : '')\n }, '')\n};\n\nModuleCollection.prototype.update = function update$1 (rawRootModule) {\n update([], this.root, rawRootModule);\n};\n\nModuleCollection.prototype.register = function register (path, rawModule, runtime) {\n var this$1 = this;\n if ( runtime === void 0 ) runtime = true;\n\n if ((process.env.NODE_ENV !== 'production')) {\n assertRawModule(path, rawModule);\n }\n\n var newModule = new Module(rawModule, runtime);\n if (path.length === 0) {\n this.root = newModule;\n } else {\n var parent = this.get(path.slice(0, -1));\n parent.addChild(path[path.length - 1], newModule);\n }\n\n // register nested modules\n if (rawModule.modules) {\n forEachValue(rawModule.modules, function (rawChildModule, key) {\n this$1.register(path.concat(key), rawChildModule, runtime);\n });\n }\n};\n\nModuleCollection.prototype.unregister = function unregister (path) {\n var parent = this.get(path.slice(0, -1));\n var key = path[path.length - 1];\n var child = parent.getChild(key);\n\n if (!child) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\n \"[vuex] trying to unregister module '\" + key + \"', which is \" +\n \"not registered\"\n );\n }\n return\n }\n\n if (!child.runtime) {\n return\n }\n\n parent.removeChild(key);\n};\n\nModuleCollection.prototype.isRegistered = function isRegistered (path) {\n var parent = this.get(path.slice(0, -1));\n var key = path[path.length - 1];\n\n return parent.hasChild(key)\n};\n\nfunction update (path, targetModule, newModule) {\n if ((process.env.NODE_ENV !== 'production')) {\n assertRawModule(path, newModule);\n }\n\n // update target module\n targetModule.update(newModule);\n\n // update nested modules\n if (newModule.modules) {\n for (var key in newModule.modules) {\n if (!targetModule.getChild(key)) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\n \"[vuex] trying to add a new module '\" + key + \"' on hot reloading, \" +\n 'manual reload is needed'\n );\n }\n return\n }\n update(\n path.concat(key),\n targetModule.getChild(key),\n newModule.modules[key]\n );\n }\n }\n}\n\nvar functionAssert = {\n assert: function (value) { return typeof value === 'function'; },\n expected: 'function'\n};\n\nvar objectAssert = {\n assert: function (value) { return typeof value === 'function' ||\n (typeof value === 'object' && typeof value.handler === 'function'); },\n expected: 'function or object with \"handler\" function'\n};\n\nvar assertTypes = {\n getters: functionAssert,\n mutations: functionAssert,\n actions: objectAssert\n};\n\nfunction assertRawModule (path, rawModule) {\n Object.keys(assertTypes).forEach(function (key) {\n if (!rawModule[key]) { return }\n\n var assertOptions = assertTypes[key];\n\n forEachValue(rawModule[key], function (value, type) {\n assert(\n assertOptions.assert(value),\n makeAssertionMessage(path, key, type, value, assertOptions.expected)\n );\n });\n });\n}\n\nfunction makeAssertionMessage (path, key, type, value, expected) {\n var buf = key + \" should be \" + expected + \" but \\\"\" + key + \".\" + type + \"\\\"\";\n if (path.length > 0) {\n buf += \" in module \\\"\" + (path.join('.')) + \"\\\"\";\n }\n buf += \" is \" + (JSON.stringify(value)) + \".\";\n return buf\n}\n\nvar Vue; // bind on install\n\nvar Store = function Store (options) {\n var this$1 = this;\n if ( options === void 0 ) options = {};\n\n // Auto install if it is not done yet and `window` has `Vue`.\n // To allow users to avoid auto-installation in some cases,\n // this code should be placed here. See #731\n if (!Vue && typeof window !== 'undefined' && window.Vue) {\n install(window.Vue);\n }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Vue, \"must call Vue.use(Vuex) before creating a store instance.\");\n assert(typeof Promise !== 'undefined', \"vuex requires a Promise polyfill in this browser.\");\n assert(this instanceof Store, \"store must be called with the new operator.\");\n }\n\n var plugins = options.plugins; if ( plugins === void 0 ) plugins = [];\n var strict = options.strict; if ( strict === void 0 ) strict = false;\n\n // store internal state\n this._committing = false;\n this._actions = Object.create(null);\n this._actionSubscribers = [];\n this._mutations = Object.create(null);\n this._wrappedGetters = Object.create(null);\n this._modules = new ModuleCollection(options);\n this._modulesNamespaceMap = Object.create(null);\n this._subscribers = [];\n this._watcherVM = new Vue();\n this._makeLocalGettersCache = Object.create(null);\n\n // bind commit and dispatch to self\n var store = this;\n var ref = this;\n var dispatch = ref.dispatch;\n var commit = ref.commit;\n this.dispatch = function boundDispatch (type, payload) {\n return dispatch.call(store, type, payload)\n };\n this.commit = function boundCommit (type, payload, options) {\n return commit.call(store, type, payload, options)\n };\n\n // strict mode\n this.strict = strict;\n\n var state = this._modules.root.state;\n\n // init root module.\n // this also recursively registers all sub-modules\n // and collects all module getters inside this._wrappedGetters\n installModule(this, state, [], this._modules.root);\n\n // initialize the store vm, which is responsible for the reactivity\n // (also registers _wrappedGetters as computed properties)\n resetStoreVM(this, state);\n\n // apply plugins\n plugins.forEach(function (plugin) { return plugin(this$1); });\n\n var useDevtools = options.devtools !== undefined ? options.devtools : Vue.config.devtools;\n if (useDevtools) {\n devtoolPlugin(this);\n }\n};\n\nvar prototypeAccessors$1 = { state: { configurable: true } };\n\nprototypeAccessors$1.state.get = function () {\n return this._vm._data.$$state\n};\n\nprototypeAccessors$1.state.set = function (v) {\n if ((process.env.NODE_ENV !== 'production')) {\n assert(false, \"use store.replaceState() to explicit replace store state.\");\n }\n};\n\nStore.prototype.commit = function commit (_type, _payload, _options) {\n var this$1 = this;\n\n // check object-style commit\n var ref = unifyObjectStyle(_type, _payload, _options);\n var type = ref.type;\n var payload = ref.payload;\n var options = ref.options;\n\n var mutation = { type: type, payload: payload };\n var entry = this._mutations[type];\n if (!entry) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] unknown mutation type: \" + type));\n }\n return\n }\n this._withCommit(function () {\n entry.forEach(function commitIterator (handler) {\n handler(payload);\n });\n });\n\n this._subscribers\n .slice() // shallow copy to prevent iterator invalidation if subscriber synchronously calls unsubscribe\n .forEach(function (sub) { return sub(mutation, this$1.state); });\n\n if (\n (process.env.NODE_ENV !== 'production') &&\n options && options.silent\n ) {\n console.warn(\n \"[vuex] mutation type: \" + type + \". Silent option has been removed. \" +\n 'Use the filter functionality in the vue-devtools'\n );\n }\n};\n\nStore.prototype.dispatch = function dispatch (_type, _payload) {\n var this$1 = this;\n\n // check object-style dispatch\n var ref = unifyObjectStyle(_type, _payload);\n var type = ref.type;\n var payload = ref.payload;\n\n var action = { type: type, payload: payload };\n var entry = this._actions[type];\n if (!entry) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] unknown action type: \" + type));\n }\n return\n }\n\n try {\n this._actionSubscribers\n .slice() // shallow copy to prevent iterator invalidation if subscriber synchronously calls unsubscribe\n .filter(function (sub) { return sub.before; })\n .forEach(function (sub) { return sub.before(action, this$1.state); });\n } catch (e) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\"[vuex] error in before action subscribers: \");\n console.error(e);\n }\n }\n\n var result = entry.length > 1\n ? Promise.all(entry.map(function (handler) { return handler(payload); }))\n : entry[0](payload);\n\n return new Promise(function (resolve, reject) {\n result.then(function (res) {\n try {\n this$1._actionSubscribers\n .filter(function (sub) { return sub.after; })\n .forEach(function (sub) { return sub.after(action, this$1.state); });\n } catch (e) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\"[vuex] error in after action subscribers: \");\n console.error(e);\n }\n }\n resolve(res);\n }, function (error) {\n try {\n this$1._actionSubscribers\n .filter(function (sub) { return sub.error; })\n .forEach(function (sub) { return sub.error(action, this$1.state, error); });\n } catch (e) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.warn(\"[vuex] error in error action subscribers: \");\n console.error(e);\n }\n }\n reject(error);\n });\n })\n};\n\nStore.prototype.subscribe = function subscribe (fn, options) {\n return genericSubscribe(fn, this._subscribers, options)\n};\n\nStore.prototype.subscribeAction = function subscribeAction (fn, options) {\n var subs = typeof fn === 'function' ? { before: fn } : fn;\n return genericSubscribe(subs, this._actionSubscribers, options)\n};\n\nStore.prototype.watch = function watch (getter, cb, options) {\n var this$1 = this;\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(typeof getter === 'function', \"store.watch only accepts a function.\");\n }\n return this._watcherVM.$watch(function () { return getter(this$1.state, this$1.getters); }, cb, options)\n};\n\nStore.prototype.replaceState = function replaceState (state) {\n var this$1 = this;\n\n this._withCommit(function () {\n this$1._vm._data.$$state = state;\n });\n};\n\nStore.prototype.registerModule = function registerModule (path, rawModule, options) {\n if ( options === void 0 ) options = {};\n\n if (typeof path === 'string') { path = [path]; }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n assert(path.length > 0, 'cannot register the root module by using registerModule.');\n }\n\n this._modules.register(path, rawModule);\n installModule(this, this.state, path, this._modules.get(path), options.preserveState);\n // reset store to update getters...\n resetStoreVM(this, this.state);\n};\n\nStore.prototype.unregisterModule = function unregisterModule (path) {\n var this$1 = this;\n\n if (typeof path === 'string') { path = [path]; }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n }\n\n this._modules.unregister(path);\n this._withCommit(function () {\n var parentState = getNestedState(this$1.state, path.slice(0, -1));\n Vue.delete(parentState, path[path.length - 1]);\n });\n resetStore(this);\n};\n\nStore.prototype.hasModule = function hasModule (path) {\n if (typeof path === 'string') { path = [path]; }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n }\n\n return this._modules.isRegistered(path)\n};\n\nStore.prototype.hotUpdate = function hotUpdate (newOptions) {\n this._modules.update(newOptions);\n resetStore(this, true);\n};\n\nStore.prototype._withCommit = function _withCommit (fn) {\n var committing = this._committing;\n this._committing = true;\n fn();\n this._committing = committing;\n};\n\nObject.defineProperties( Store.prototype, prototypeAccessors$1 );\n\nfunction genericSubscribe (fn, subs, options) {\n if (subs.indexOf(fn) < 0) {\n options && options.prepend\n ? subs.unshift(fn)\n : subs.push(fn);\n }\n return function () {\n var i = subs.indexOf(fn);\n if (i > -1) {\n subs.splice(i, 1);\n }\n }\n}\n\nfunction resetStore (store, hot) {\n store._actions = Object.create(null);\n store._mutations = Object.create(null);\n store._wrappedGetters = Object.create(null);\n store._modulesNamespaceMap = Object.create(null);\n var state = store.state;\n // init all modules\n installModule(store, state, [], store._modules.root, true);\n // reset vm\n resetStoreVM(store, state, hot);\n}\n\nfunction resetStoreVM (store, state, hot) {\n var oldVm = store._vm;\n\n // bind store public getters\n store.getters = {};\n // reset local getters cache\n store._makeLocalGettersCache = Object.create(null);\n var wrappedGetters = store._wrappedGetters;\n var computed = {};\n forEachValue(wrappedGetters, function (fn, key) {\n // use computed to leverage its lazy-caching mechanism\n // direct inline function use will lead to closure preserving oldVm.\n // using partial to return function with only arguments preserved in closure environment.\n computed[key] = partial(fn, store);\n Object.defineProperty(store.getters, key, {\n get: function () { return store._vm[key]; },\n enumerable: true // for local getters\n });\n });\n\n // use a Vue instance to store the state tree\n // suppress warnings just in case the user has added\n // some funky global mixins\n var silent = Vue.config.silent;\n Vue.config.silent = true;\n store._vm = new Vue({\n data: {\n $$state: state\n },\n computed: computed\n });\n Vue.config.silent = silent;\n\n // enable strict mode for new vm\n if (store.strict) {\n enableStrictMode(store);\n }\n\n if (oldVm) {\n if (hot) {\n // dispatch changes in all subscribed watchers\n // to force getter re-evaluation for hot reloading.\n store._withCommit(function () {\n oldVm._data.$$state = null;\n });\n }\n Vue.nextTick(function () { return oldVm.$destroy(); });\n }\n}\n\nfunction installModule (store, rootState, path, module, hot) {\n var isRoot = !path.length;\n var namespace = store._modules.getNamespace(path);\n\n // register in namespace map\n if (module.namespaced) {\n if (store._modulesNamespaceMap[namespace] && (process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] duplicate namespace \" + namespace + \" for the namespaced module \" + (path.join('/'))));\n }\n store._modulesNamespaceMap[namespace] = module;\n }\n\n // set state\n if (!isRoot && !hot) {\n var parentState = getNestedState(rootState, path.slice(0, -1));\n var moduleName = path[path.length - 1];\n store._withCommit(function () {\n if ((process.env.NODE_ENV !== 'production')) {\n if (moduleName in parentState) {\n console.warn(\n (\"[vuex] state field \\\"\" + moduleName + \"\\\" was overridden by a module with the same name at \\\"\" + (path.join('.')) + \"\\\"\")\n );\n }\n }\n Vue.set(parentState, moduleName, module.state);\n });\n }\n\n var local = module.context = makeLocalContext(store, namespace, path);\n\n module.forEachMutation(function (mutation, key) {\n var namespacedType = namespace + key;\n registerMutation(store, namespacedType, mutation, local);\n });\n\n module.forEachAction(function (action, key) {\n var type = action.root ? key : namespace + key;\n var handler = action.handler || action;\n registerAction(store, type, handler, local);\n });\n\n module.forEachGetter(function (getter, key) {\n var namespacedType = namespace + key;\n registerGetter(store, namespacedType, getter, local);\n });\n\n module.forEachChild(function (child, key) {\n installModule(store, rootState, path.concat(key), child, hot);\n });\n}\n\n/**\n * make localized dispatch, commit, getters and state\n * if there is no namespace, just use root ones\n */\nfunction makeLocalContext (store, namespace, path) {\n var noNamespace = namespace === '';\n\n var local = {\n dispatch: noNamespace ? store.dispatch : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if ((process.env.NODE_ENV !== 'production') && !store._actions[type]) {\n console.error((\"[vuex] unknown local action type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n return store.dispatch(type, payload)\n },\n\n commit: noNamespace ? store.commit : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if ((process.env.NODE_ENV !== 'production') && !store._mutations[type]) {\n console.error((\"[vuex] unknown local mutation type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n store.commit(type, payload, options);\n }\n };\n\n // getters and state object must be gotten lazily\n // because they will be changed by vm update\n Object.defineProperties(local, {\n getters: {\n get: noNamespace\n ? function () { return store.getters; }\n : function () { return makeLocalGetters(store, namespace); }\n },\n state: {\n get: function () { return getNestedState(store.state, path); }\n }\n });\n\n return local\n}\n\nfunction makeLocalGetters (store, namespace) {\n if (!store._makeLocalGettersCache[namespace]) {\n var gettersProxy = {};\n var splitPos = namespace.length;\n Object.keys(store.getters).forEach(function (type) {\n // skip if the target getter is not match this namespace\n if (type.slice(0, splitPos) !== namespace) { return }\n\n // extract local getter type\n var localType = type.slice(splitPos);\n\n // Add a port to the getters proxy.\n // Define as getter property because\n // we do not want to evaluate the getters in this time.\n Object.defineProperty(gettersProxy, localType, {\n get: function () { return store.getters[type]; },\n enumerable: true\n });\n });\n store._makeLocalGettersCache[namespace] = gettersProxy;\n }\n\n return store._makeLocalGettersCache[namespace]\n}\n\nfunction registerMutation (store, type, handler, local) {\n var entry = store._mutations[type] || (store._mutations[type] = []);\n entry.push(function wrappedMutationHandler (payload) {\n handler.call(store, local.state, payload);\n });\n}\n\nfunction registerAction (store, type, handler, local) {\n var entry = store._actions[type] || (store._actions[type] = []);\n entry.push(function wrappedActionHandler (payload) {\n var res = handler.call(store, {\n dispatch: local.dispatch,\n commit: local.commit,\n getters: local.getters,\n state: local.state,\n rootGetters: store.getters,\n rootState: store.state\n }, payload);\n if (!isPromise(res)) {\n res = Promise.resolve(res);\n }\n if (store._devtoolHook) {\n return res.catch(function (err) {\n store._devtoolHook.emit('vuex:error', err);\n throw err\n })\n } else {\n return res\n }\n });\n}\n\nfunction registerGetter (store, type, rawGetter, local) {\n if (store._wrappedGetters[type]) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error((\"[vuex] duplicate getter key: \" + type));\n }\n return\n }\n store._wrappedGetters[type] = function wrappedGetter (store) {\n return rawGetter(\n local.state, // local state\n local.getters, // local getters\n store.state, // root state\n store.getters // root getters\n )\n };\n}\n\nfunction enableStrictMode (store) {\n store._vm.$watch(function () { return this._data.$$state }, function () {\n if ((process.env.NODE_ENV !== 'production')) {\n assert(store._committing, \"do not mutate vuex store state outside mutation handlers.\");\n }\n }, { deep: true, sync: true });\n}\n\nfunction getNestedState (state, path) {\n return path.reduce(function (state, key) { return state[key]; }, state)\n}\n\nfunction unifyObjectStyle (type, payload, options) {\n if (isObject(type) && type.type) {\n options = payload;\n payload = type;\n type = type.type;\n }\n\n if ((process.env.NODE_ENV !== 'production')) {\n assert(typeof type === 'string', (\"expects string as the type, but found \" + (typeof type) + \".\"));\n }\n\n return { type: type, payload: payload, options: options }\n}\n\nfunction install (_Vue) {\n if (Vue && _Vue === Vue) {\n if ((process.env.NODE_ENV !== 'production')) {\n console.error(\n '[vuex] already installed. Vue.use(Vuex) should be called only once.'\n );\n }\n return\n }\n Vue = _Vue;\n applyMixin(Vue);\n}\n\n/**\n * Reduce the code which written in Vue.js for getting the state.\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} states # Object's item can be a function which accept state and getters for param, you can do something for state and getters in it.\n * @param {Object}\n */\nvar mapState = normalizeNamespace(function (namespace, states) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(states)) {\n console.error('[vuex] mapState: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(states).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedState () {\n var state = this.$store.state;\n var getters = this.$store.getters;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapState', namespace);\n if (!module) {\n return\n }\n state = module.context.state;\n getters = module.context.getters;\n }\n return typeof val === 'function'\n ? val.call(this, state, getters)\n : state[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for committing the mutation\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} mutations # Object's item can be a function which accept `commit` function as the first param, it can accept anthor params. You can commit mutation and do any other things in this function. specially, You need to pass anthor params from the mapped function.\n * @return {Object}\n */\nvar mapMutations = normalizeNamespace(function (namespace, mutations) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(mutations)) {\n console.error('[vuex] mapMutations: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(mutations).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedMutation () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n // Get the commit method from store\n var commit = this.$store.commit;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapMutations', namespace);\n if (!module) {\n return\n }\n commit = module.context.commit;\n }\n return typeof val === 'function'\n ? val.apply(this, [commit].concat(args))\n : commit.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for getting the getters\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} getters\n * @return {Object}\n */\nvar mapGetters = normalizeNamespace(function (namespace, getters) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(getters)) {\n console.error('[vuex] mapGetters: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(getters).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n // The namespace has been mutated by normalizeNamespace\n val = namespace + val;\n res[key] = function mappedGetter () {\n if (namespace && !getModuleByNamespace(this.$store, 'mapGetters', namespace)) {\n return\n }\n if ((process.env.NODE_ENV !== 'production') && !(val in this.$store.getters)) {\n console.error((\"[vuex] unknown getter: \" + val));\n return\n }\n return this.$store.getters[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\n/**\n * Reduce the code which written in Vue.js for dispatch the action\n * @param {String} [namespace] - Module's namespace\n * @param {Object|Array} actions # Object's item can be a function which accept `dispatch` function as the first param, it can accept anthor params. You can dispatch action and do any other things in this function. specially, You need to pass anthor params from the mapped function.\n * @return {Object}\n */\nvar mapActions = normalizeNamespace(function (namespace, actions) {\n var res = {};\n if ((process.env.NODE_ENV !== 'production') && !isValidMap(actions)) {\n console.error('[vuex] mapActions: mapper parameter must be either an Array or an Object');\n }\n normalizeMap(actions).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedAction () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n // get dispatch function from store\n var dispatch = this.$store.dispatch;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapActions', namespace);\n if (!module) {\n return\n }\n dispatch = module.context.dispatch;\n }\n return typeof val === 'function'\n ? val.apply(this, [dispatch].concat(args))\n : dispatch.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\n/**\n * Rebinding namespace param for mapXXX function in special scoped, and return them by simple object\n * @param {String} namespace\n * @return {Object}\n */\nvar createNamespacedHelpers = function (namespace) { return ({\n mapState: mapState.bind(null, namespace),\n mapGetters: mapGetters.bind(null, namespace),\n mapMutations: mapMutations.bind(null, namespace),\n mapActions: mapActions.bind(null, namespace)\n}); };\n\n/**\n * Normalize the map\n * normalizeMap([1, 2, 3]) => [ { key: 1, val: 1 }, { key: 2, val: 2 }, { key: 3, val: 3 } ]\n * normalizeMap({a: 1, b: 2, c: 3}) => [ { key: 'a', val: 1 }, { key: 'b', val: 2 }, { key: 'c', val: 3 } ]\n * @param {Array|Object} map\n * @return {Object}\n */\nfunction normalizeMap (map) {\n if (!isValidMap(map)) {\n return []\n }\n return Array.isArray(map)\n ? map.map(function (key) { return ({ key: key, val: key }); })\n : Object.keys(map).map(function (key) { return ({ key: key, val: map[key] }); })\n}\n\n/**\n * Validate whether given map is valid or not\n * @param {*} map\n * @return {Boolean}\n */\nfunction isValidMap (map) {\n return Array.isArray(map) || isObject(map)\n}\n\n/**\n * Return a function expect two param contains namespace and map. it will normalize the namespace and then the param's function will handle the new namespace and the map.\n * @param {Function} fn\n * @return {Function}\n */\nfunction normalizeNamespace (fn) {\n return function (namespace, map) {\n if (typeof namespace !== 'string') {\n map = namespace;\n namespace = '';\n } else if (namespace.charAt(namespace.length - 1) !== '/') {\n namespace += '/';\n }\n return fn(namespace, map)\n }\n}\n\n/**\n * Search a special module from store by namespace. if module not exist, print error message.\n * @param {Object} store\n * @param {String} helper\n * @param {String} namespace\n * @return {Object}\n */\nfunction getModuleByNamespace (store, helper, namespace) {\n var module = store._modulesNamespaceMap[namespace];\n if ((process.env.NODE_ENV !== 'production') && !module) {\n console.error((\"[vuex] module namespace not found in \" + helper + \"(): \" + namespace));\n }\n return module\n}\n\n// Credits: borrowed code from fcomb/redux-logger\n\nfunction createLogger (ref) {\n if ( ref === void 0 ) ref = {};\n var collapsed = ref.collapsed; if ( collapsed === void 0 ) collapsed = true;\n var filter = ref.filter; if ( filter === void 0 ) filter = function (mutation, stateBefore, stateAfter) { return true; };\n var transformer = ref.transformer; if ( transformer === void 0 ) transformer = function (state) { return state; };\n var mutationTransformer = ref.mutationTransformer; if ( mutationTransformer === void 0 ) mutationTransformer = function (mut) { return mut; };\n var actionFilter = ref.actionFilter; if ( actionFilter === void 0 ) actionFilter = function (action, state) { return true; };\n var actionTransformer = ref.actionTransformer; if ( actionTransformer === void 0 ) actionTransformer = function (act) { return act; };\n var logMutations = ref.logMutations; if ( logMutations === void 0 ) logMutations = true;\n var logActions = ref.logActions; if ( logActions === void 0 ) logActions = true;\n var logger = ref.logger; if ( logger === void 0 ) logger = console;\n\n return function (store) {\n var prevState = deepCopy(store.state);\n\n if (typeof logger === 'undefined') {\n return\n }\n\n if (logMutations) {\n store.subscribe(function (mutation, state) {\n var nextState = deepCopy(state);\n\n if (filter(mutation, prevState, nextState)) {\n var formattedTime = getFormattedTime();\n var formattedMutation = mutationTransformer(mutation);\n var message = \"mutation \" + (mutation.type) + formattedTime;\n\n startMessage(logger, message, collapsed);\n logger.log('%c prev state', 'color: #9E9E9E; font-weight: bold', transformer(prevState));\n logger.log('%c mutation', 'color: #03A9F4; font-weight: bold', formattedMutation);\n logger.log('%c next state', 'color: #4CAF50; font-weight: bold', transformer(nextState));\n endMessage(logger);\n }\n\n prevState = nextState;\n });\n }\n\n if (logActions) {\n store.subscribeAction(function (action, state) {\n if (actionFilter(action, state)) {\n var formattedTime = getFormattedTime();\n var formattedAction = actionTransformer(action);\n var message = \"action \" + (action.type) + formattedTime;\n\n startMessage(logger, message, collapsed);\n logger.log('%c action', 'color: #03A9F4; font-weight: bold', formattedAction);\n endMessage(logger);\n }\n });\n }\n }\n}\n\nfunction startMessage (logger, message, collapsed) {\n var startMessage = collapsed\n ? logger.groupCollapsed\n : logger.group;\n\n // render\n try {\n startMessage.call(logger, message);\n } catch (e) {\n logger.log(message);\n }\n}\n\nfunction endMessage (logger) {\n try {\n logger.groupEnd();\n } catch (e) {\n logger.log('—— log end ——');\n }\n}\n\nfunction getFormattedTime () {\n var time = new Date();\n return (\" @ \" + (pad(time.getHours(), 2)) + \":\" + (pad(time.getMinutes(), 2)) + \":\" + (pad(time.getSeconds(), 2)) + \".\" + (pad(time.getMilliseconds(), 3)))\n}\n\nfunction repeat (str, times) {\n return (new Array(times + 1)).join(str)\n}\n\nfunction pad (num, maxLength) {\n return repeat('0', maxLength - num.toString().length) + num\n}\n\nvar index = {\n Store: Store,\n install: install,\n version: '3.5.1',\n mapState: mapState,\n mapMutations: mapMutations,\n mapGetters: mapGetters,\n mapActions: mapActions,\n createNamespacedHelpers: createNamespacedHelpers,\n createLogger: createLogger\n};\n\nexport default index;\nexport { Store, createLogger, createNamespacedHelpers, install, mapActions, mapGetters, mapMutations, mapState };\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var classof = require('../internals/classof');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperties\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n","var children = /*#__PURE__*/new Map();\nvar sessionIdIndex = 0;\nvar registry = {\n bookId: function () {\n return \"x:\" + sessionIdIndex++;\n },\n register: function (id, actor) {\n children.set(id, actor);\n return id;\n },\n get: function (id) {\n return children.get(id);\n },\n free: function (id) {\n children.delete(id);\n }\n};\nexport { registry };","module.exports = {};\n","'use strict';\nvar $ = require('../internals/export');\nvar forEach = require('../internals/array-for-each');\n\n// `Array.prototype.forEach` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n$({ target: 'Array', proto: true, forced: [].forEach != forEach }, {\n forEach: forEach\n});\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","import { isMachine } from './utils.js';\n\nfunction createNullActor(id) {\n return {\n id: id,\n send: function () {\n return void 0;\n },\n subscribe: function () {\n return {\n unsubscribe: function () {\n return void 0;\n }\n };\n },\n toJSON: function () {\n return {\n id: id\n };\n }\n };\n}\n/**\r\n * Creates a deferred actor that is able to be invoked given the provided\r\n * invocation information in its `.meta` value.\r\n *\r\n * @param invokeDefinition The meta information needed to invoke the actor.\r\n */\n\n\nfunction createInvocableActor(invokeDefinition, machine) {\n var _a;\n\n var tempActor = createNullActor(invokeDefinition.id);\n var serviceCreator = (_a = machine.options.services) === null || _a === void 0 ? void 0 : _a[invokeDefinition.src];\n tempActor.deferred = true;\n\n if (isMachine(serviceCreator)) {\n tempActor.state = serviceCreator.initialState;\n }\n\n tempActor.meta = invokeDefinition;\n return tempActor;\n}\n\nfunction isActor(item) {\n try {\n return typeof item.send === 'function';\n } catch (e) {\n return false;\n }\n}\n\nexport { createInvocableActor, createNullActor, isActor };","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var global = require('../internals/global');\n\nmodule.exports = function (a, b) {\n var console = global.console;\n if (console && console.error) {\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n }\n};\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.github.io/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $some = require('../internals/array-iteration').some;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('some');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('some');\n\n// `Array.prototype.some` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.some\n$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, {\n some: function some(callbackfn /* , thisArg */) {\n return $some(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Idle.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Idle.vue?vue&type=style&index=0&lang=scss&\"","var anObject = require('../internals/an-object');\nvar aFunction = require('../internals/a-function');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.github.io/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n // Chrome 38 Symbol has incorrect toString conversion\n // eslint-disable-next-line no-undef\n return !String(Symbol());\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","import { __spread, __values, __read, __assign } from './_virtual/_tslib.js';\nimport { DEFAULT_GUARD_TYPE, TARGETLESS_KEY, STATE_DELIMITER } from './constants.js';\nimport { IS_PRODUCTION } from './environment.js';\n\nfunction keys(value) {\n return Object.keys(value);\n}\n\nfunction matchesState(parentStateId, childStateId, delimiter) {\n if (delimiter === void 0) {\n delimiter = STATE_DELIMITER;\n }\n\n var parentStateValue = toStateValue(parentStateId, delimiter);\n var childStateValue = toStateValue(childStateId, delimiter);\n\n if (isString(childStateValue)) {\n if (isString(parentStateValue)) {\n return childStateValue === parentStateValue;\n } // Parent more specific than child\n\n\n return false;\n }\n\n if (isString(parentStateValue)) {\n return parentStateValue in childStateValue;\n }\n\n return keys(parentStateValue).every(function (key) {\n if (!(key in childStateValue)) {\n return false;\n }\n\n return matchesState(parentStateValue[key], childStateValue[key]);\n });\n}\n\nfunction getEventType(event) {\n try {\n return isString(event) || typeof event === 'number' ? \"\" + event : event.type;\n } catch (e) {\n throw new Error('Events must be strings or objects with a string event.type property.');\n }\n}\n\nfunction toStatePath(stateId, delimiter) {\n try {\n if (isArray(stateId)) {\n return stateId;\n }\n\n return stateId.toString().split(delimiter);\n } catch (e) {\n throw new Error(\"'\" + stateId + \"' is not a valid state path.\");\n }\n}\n\nfunction isStateLike(state) {\n return typeof state === 'object' && 'value' in state && 'context' in state && 'event' in state && '_event' in state;\n}\n\nfunction toStateValue(stateValue, delimiter) {\n if (isStateLike(stateValue)) {\n return stateValue.value;\n }\n\n if (isArray(stateValue)) {\n return pathToStateValue(stateValue);\n }\n\n if (typeof stateValue !== 'string') {\n return stateValue;\n }\n\n var statePath = toStatePath(stateValue, delimiter);\n return pathToStateValue(statePath);\n}\n\nfunction pathToStateValue(statePath) {\n if (statePath.length === 1) {\n return statePath[0];\n }\n\n var value = {};\n var marker = value;\n\n for (var i = 0; i < statePath.length - 1; i++) {\n if (i === statePath.length - 2) {\n marker[statePath[i]] = statePath[i + 1];\n } else {\n marker[statePath[i]] = {};\n marker = marker[statePath[i]];\n }\n }\n\n return value;\n}\n\nfunction mapValues(collection, iteratee) {\n var result = {};\n var collectionKeys = keys(collection);\n\n for (var i = 0; i < collectionKeys.length; i++) {\n var key = collectionKeys[i];\n result[key] = iteratee(collection[key], key, collection, i);\n }\n\n return result;\n}\n\nfunction mapFilterValues(collection, iteratee, predicate) {\n var e_1, _a;\n\n var result = {};\n\n try {\n for (var _b = __values(keys(collection)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var key = _c.value;\n var item = collection[key];\n\n if (!predicate(item)) {\n continue;\n }\n\n result[key] = iteratee(item, key, collection);\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n\n return result;\n}\n/**\r\n * Retrieves a value at the given path.\r\n * @param props The deep path to the prop of the desired value\r\n */\n\n\nvar path = function (props) {\n return function (object) {\n var e_2, _a;\n\n var result = object;\n\n try {\n for (var props_1 = __values(props), props_1_1 = props_1.next(); !props_1_1.done; props_1_1 = props_1.next()) {\n var prop = props_1_1.value;\n result = result[prop];\n }\n } catch (e_2_1) {\n e_2 = {\n error: e_2_1\n };\n } finally {\n try {\n if (props_1_1 && !props_1_1.done && (_a = props_1.return)) _a.call(props_1);\n } finally {\n if (e_2) throw e_2.error;\n }\n }\n\n return result;\n };\n};\n/**\r\n * Retrieves a value at the given path via the nested accessor prop.\r\n * @param props The deep path to the prop of the desired value\r\n */\n\n\nfunction nestedPath(props, accessorProp) {\n return function (object) {\n var e_3, _a;\n\n var result = object;\n\n try {\n for (var props_2 = __values(props), props_2_1 = props_2.next(); !props_2_1.done; props_2_1 = props_2.next()) {\n var prop = props_2_1.value;\n result = result[accessorProp][prop];\n }\n } catch (e_3_1) {\n e_3 = {\n error: e_3_1\n };\n } finally {\n try {\n if (props_2_1 && !props_2_1.done && (_a = props_2.return)) _a.call(props_2);\n } finally {\n if (e_3) throw e_3.error;\n }\n }\n\n return result;\n };\n}\n\nfunction toStatePaths(stateValue) {\n if (!stateValue) {\n return [[]];\n }\n\n if (isString(stateValue)) {\n return [[stateValue]];\n }\n\n var result = flatten(keys(stateValue).map(function (key) {\n var subStateValue = stateValue[key];\n\n if (typeof subStateValue !== 'string' && (!subStateValue || !Object.keys(subStateValue).length)) {\n return [[key]];\n }\n\n return toStatePaths(stateValue[key]).map(function (subPath) {\n return [key].concat(subPath);\n });\n }));\n return result;\n}\n\nfunction flatten(array) {\n var _a;\n\n return (_a = []).concat.apply(_a, __spread(array));\n}\n\nfunction toArrayStrict(value) {\n if (isArray(value)) {\n return value;\n }\n\n return [value];\n}\n\nfunction toArray(value) {\n if (value === undefined) {\n return [];\n }\n\n return toArrayStrict(value);\n}\n\nfunction mapContext(mapper, context, _event) {\n var e_5, _a;\n\n if (isFunction(mapper)) {\n return mapper(context, _event.data);\n }\n\n var result = {};\n\n try {\n for (var _b = __values(Object.keys(mapper)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var key = _c.value;\n var subMapper = mapper[key];\n\n if (isFunction(subMapper)) {\n result[key] = subMapper(context, _event.data);\n } else {\n result[key] = subMapper;\n }\n }\n } catch (e_5_1) {\n e_5 = {\n error: e_5_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_5) throw e_5.error;\n }\n }\n\n return result;\n}\n\nfunction isBuiltInEvent(eventType) {\n return /^(done|error)\\./.test(eventType);\n}\n\nfunction isPromiseLike(value) {\n if (value instanceof Promise) {\n return true;\n } // Check if shape matches the Promise/A+ specification for a \"thenable\".\n\n\n if (value !== null && (isFunction(value) || typeof value === 'object') && isFunction(value.then)) {\n return true;\n }\n\n return false;\n}\n\nfunction partition(items, predicate) {\n var e_6, _a;\n\n var _b = __read([[], []], 2),\n truthy = _b[0],\n falsy = _b[1];\n\n try {\n for (var items_1 = __values(items), items_1_1 = items_1.next(); !items_1_1.done; items_1_1 = items_1.next()) {\n var item = items_1_1.value;\n\n if (predicate(item)) {\n truthy.push(item);\n } else {\n falsy.push(item);\n }\n }\n } catch (e_6_1) {\n e_6 = {\n error: e_6_1\n };\n } finally {\n try {\n if (items_1_1 && !items_1_1.done && (_a = items_1.return)) _a.call(items_1);\n } finally {\n if (e_6) throw e_6.error;\n }\n }\n\n return [truthy, falsy];\n}\n\nfunction updateHistoryStates(hist, stateValue) {\n return mapValues(hist.states, function (subHist, key) {\n if (!subHist) {\n return undefined;\n }\n\n var subStateValue = (isString(stateValue) ? undefined : stateValue[key]) || (subHist ? subHist.current : undefined);\n\n if (!subStateValue) {\n return undefined;\n }\n\n return {\n current: subStateValue,\n states: updateHistoryStates(subHist, subStateValue)\n };\n });\n}\n\nfunction updateHistoryValue(hist, stateValue) {\n return {\n current: stateValue,\n states: updateHistoryStates(hist, stateValue)\n };\n}\n\nfunction updateContext(context, _event, assignActions, state) {\n if (!IS_PRODUCTION) {\n warn(!!context, 'Attempting to update undefined context');\n }\n\n var updatedContext = context ? assignActions.reduce(function (acc, assignAction) {\n var e_7, _a;\n\n var assignment = assignAction.assignment;\n var meta = {\n state: state,\n action: assignAction,\n _event: _event\n };\n var partialUpdate = {};\n\n if (isFunction(assignment)) {\n partialUpdate = assignment(acc, _event.data, meta);\n } else {\n try {\n for (var _b = __values(keys(assignment)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var key = _c.value;\n var propAssignment = assignment[key];\n partialUpdate[key] = isFunction(propAssignment) ? propAssignment(acc, _event.data, meta) : propAssignment;\n }\n } catch (e_7_1) {\n e_7 = {\n error: e_7_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_7) throw e_7.error;\n }\n }\n }\n\n return Object.assign({}, acc, partialUpdate);\n }, context) : context;\n return updatedContext;\n} // tslint:disable-next-line:no-empty\n\n\nvar warn = function () {};\n\nif (!IS_PRODUCTION) {\n warn = function (condition, message) {\n var error = condition instanceof Error ? condition : undefined;\n\n if (!error && condition) {\n return;\n }\n\n if (console !== undefined) {\n var args = [\"Warning: \" + message];\n\n if (error) {\n args.push(error);\n } // tslint:disable-next-line:no-console\n\n\n console.warn.apply(console, args);\n }\n };\n}\n\nfunction isArray(value) {\n return Array.isArray(value);\n} // tslint:disable-next-line:ban-types\n\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nfunction isString(value) {\n return typeof value === 'string';\n} // export function memoizedGetter<T, TP extends { prototype: object }>(\n// o: TP,\n// property: string,\n// getter: () => T\n// ): void {\n// Object.defineProperty(o.prototype, property, {\n// get: getter,\n// enumerable: false,\n// configurable: false\n// });\n// }\n\n\nfunction toGuard(condition, guardMap) {\n if (!condition) {\n return undefined;\n }\n\n if (isString(condition)) {\n return {\n type: DEFAULT_GUARD_TYPE,\n name: condition,\n predicate: guardMap ? guardMap[condition] : undefined\n };\n }\n\n if (isFunction(condition)) {\n return {\n type: DEFAULT_GUARD_TYPE,\n name: condition.name,\n predicate: condition\n };\n }\n\n return condition;\n}\n\nfunction isObservable(value) {\n try {\n return 'subscribe' in value && isFunction(value.subscribe);\n } catch (e) {\n return false;\n }\n}\n\nvar symbolObservable = /*#__PURE__*/function () {\n return typeof Symbol === 'function' && Symbol.observable || '@@observable';\n}();\n\nfunction isMachine(value) {\n try {\n return '__xstatenode' in value;\n } catch (e) {\n return false;\n }\n}\n\nvar uniqueId = /*#__PURE__*/function () {\n var currentId = 0;\n return function () {\n currentId++;\n return currentId.toString(16);\n };\n}();\n\nfunction toEventObject(event, payload // id?: TEvent['type']\n) {\n if (isString(event) || typeof event === 'number') {\n return __assign({\n type: event\n }, payload);\n }\n\n return event;\n}\n\nfunction toSCXMLEvent(event, scxmlEvent) {\n if (!isString(event) && '$$type' in event && event.$$type === 'scxml') {\n return event;\n }\n\n var eventObject = toEventObject(event);\n return __assign({\n name: eventObject.type,\n data: eventObject,\n $$type: 'scxml',\n type: 'external'\n }, scxmlEvent);\n}\n\nfunction toTransitionConfigArray(event, configLike) {\n var transitions = toArrayStrict(configLike).map(function (transitionLike) {\n if (typeof transitionLike === 'undefined' || typeof transitionLike === 'string' || isMachine(transitionLike)) {\n // @ts-ignore until Type instantiation is excessively deep and possibly infinite bug is fixed\n return {\n target: transitionLike,\n event: event\n };\n }\n\n return __assign(__assign({}, transitionLike), {\n event: event\n });\n });\n return transitions;\n}\n\nfunction normalizeTarget(target) {\n if (target === undefined || target === TARGETLESS_KEY) {\n return undefined;\n }\n\n return toArray(target);\n}\n\nfunction reportUnhandledExceptionOnInvocation(originalError, currentError, id) {\n if (!IS_PRODUCTION) {\n var originalStackTrace = originalError.stack ? \" Stacktrace was '\" + originalError.stack + \"'\" : '';\n\n if (originalError === currentError) {\n // tslint:disable-next-line:no-console\n console.error(\"Missing onError handler for invocation '\" + id + \"', error was '\" + originalError + \"'.\" + originalStackTrace);\n } else {\n var stackTrace = currentError.stack ? \" Stacktrace was '\" + currentError.stack + \"'\" : ''; // tslint:disable-next-line:no-console\n\n console.error(\"Missing onError handler and/or unhandled exception/promise rejection for invocation '\" + id + \"'. \" + (\"Original error: '\" + originalError + \"'. \" + originalStackTrace + \" Current error is '\" + currentError + \"'.\" + stackTrace));\n }\n }\n}\n\nfunction evaluateGuard(machine, guard, context, _event, state) {\n var guards = machine.options.guards;\n var guardMeta = {\n state: state,\n cond: guard,\n _event: _event\n }; // TODO: do not hardcode!\n\n if (guard.type === DEFAULT_GUARD_TYPE) {\n return guard.predicate(context, _event.data, guardMeta);\n }\n\n var condFn = guards[guard.type];\n\n if (!condFn) {\n throw new Error(\"Guard '\" + guard.type + \"' is not implemented on machine '\" + machine.id + \"'.\");\n }\n\n return condFn(context, _event.data, guardMeta);\n}\n\nexport { evaluateGuard, flatten, getEventType, isArray, isBuiltInEvent, isFunction, isMachine, isObservable, isPromiseLike, isStateLike, isString, keys, mapContext, mapFilterValues, mapValues, matchesState, nestedPath, normalizeTarget, partition, path, pathToStateValue, reportUnhandledExceptionOnInvocation, symbolObservable, toArray, toArrayStrict, toEventObject, toGuard, toSCXMLEvent, toStatePath, toStatePaths, toStateValue, toTransitionConfigArray, uniqueId, updateContext, updateHistoryStates, updateHistoryValue, warn };","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n// Edge 14- issue\nvar USES_TO_LENGTH = arrayMethodUsesToLength('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","// a string of all valid unicode whitespaces\n// eslint-disable-next-line max-len\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var requireObjectCoercible = require('../internals/require-object-coercible');\nvar whitespaces = require('../internals/whitespaces');\n\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","var isRegExp = require('../internals/is-regexp');\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","import mod from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\nvar nativeAssign = Object.assign;\nvar defineProperty = Object.defineProperty;\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\nmodule.exports = !nativeAssign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key];\n }\n } return T;\n} : nativeAssign;\n","import { __values, __spread } from './_virtual/_tslib.js';\nimport { keys, flatten } from './utils.js';\n\nvar isLeafNode = function (stateNode) {\n return stateNode.type === 'atomic' || stateNode.type === 'final';\n};\n\nfunction getChildren(stateNode) {\n return keys(stateNode.states).map(function (key) {\n return stateNode.states[key];\n });\n}\n\nfunction getAllStateNodes(stateNode) {\n var stateNodes = [stateNode];\n\n if (isLeafNode(stateNode)) {\n return stateNodes;\n }\n\n return stateNodes.concat(flatten(getChildren(stateNode).map(getAllStateNodes)));\n}\n\nfunction getConfiguration(prevStateNodes, stateNodes) {\n var e_1, _a, e_2, _b, e_3, _c, e_4, _d;\n\n var prevConfiguration = new Set(prevStateNodes);\n var prevAdjList = getAdjList(prevConfiguration);\n var configuration = new Set(stateNodes);\n\n try {\n // add all ancestors\n for (var configuration_1 = __values(configuration), configuration_1_1 = configuration_1.next(); !configuration_1_1.done; configuration_1_1 = configuration_1.next()) {\n var s = configuration_1_1.value;\n var m = s.parent;\n\n while (m && !configuration.has(m)) {\n configuration.add(m);\n m = m.parent;\n }\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (configuration_1_1 && !configuration_1_1.done && (_a = configuration_1.return)) _a.call(configuration_1);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n\n var adjList = getAdjList(configuration);\n\n try {\n // add descendants\n for (var configuration_2 = __values(configuration), configuration_2_1 = configuration_2.next(); !configuration_2_1.done; configuration_2_1 = configuration_2.next()) {\n var s = configuration_2_1.value; // if previously active, add existing child nodes\n\n if (s.type === 'compound' && (!adjList.get(s) || !adjList.get(s).length)) {\n if (prevAdjList.get(s)) {\n prevAdjList.get(s).forEach(function (sn) {\n return configuration.add(sn);\n });\n } else {\n s.initialStateNodes.forEach(function (sn) {\n return configuration.add(sn);\n });\n }\n } else {\n if (s.type === 'parallel') {\n try {\n for (var _e = (e_3 = void 0, __values(getChildren(s))), _f = _e.next(); !_f.done; _f = _e.next()) {\n var child = _f.value;\n\n if (child.type === 'history') {\n continue;\n }\n\n if (!configuration.has(child)) {\n configuration.add(child);\n\n if (prevAdjList.get(child)) {\n prevAdjList.get(child).forEach(function (sn) {\n return configuration.add(sn);\n });\n } else {\n child.initialStateNodes.forEach(function (sn) {\n return configuration.add(sn);\n });\n }\n }\n }\n } catch (e_3_1) {\n e_3 = {\n error: e_3_1\n };\n } finally {\n try {\n if (_f && !_f.done && (_c = _e.return)) _c.call(_e);\n } finally {\n if (e_3) throw e_3.error;\n }\n }\n }\n }\n }\n } catch (e_2_1) {\n e_2 = {\n error: e_2_1\n };\n } finally {\n try {\n if (configuration_2_1 && !configuration_2_1.done && (_b = configuration_2.return)) _b.call(configuration_2);\n } finally {\n if (e_2) throw e_2.error;\n }\n }\n\n try {\n // add all ancestors\n for (var configuration_3 = __values(configuration), configuration_3_1 = configuration_3.next(); !configuration_3_1.done; configuration_3_1 = configuration_3.next()) {\n var s = configuration_3_1.value;\n var m = s.parent;\n\n while (m && !configuration.has(m)) {\n configuration.add(m);\n m = m.parent;\n }\n }\n } catch (e_4_1) {\n e_4 = {\n error: e_4_1\n };\n } finally {\n try {\n if (configuration_3_1 && !configuration_3_1.done && (_d = configuration_3.return)) _d.call(configuration_3);\n } finally {\n if (e_4) throw e_4.error;\n }\n }\n\n return configuration;\n}\n\nfunction getValueFromAdj(baseNode, adjList) {\n var childStateNodes = adjList.get(baseNode);\n\n if (!childStateNodes) {\n return {}; // todo: fix?\n }\n\n if (baseNode.type === 'compound') {\n var childStateNode = childStateNodes[0];\n\n if (childStateNode) {\n if (isLeafNode(childStateNode)) {\n return childStateNode.key;\n }\n } else {\n return {};\n }\n }\n\n var stateValue = {};\n childStateNodes.forEach(function (csn) {\n stateValue[csn.key] = getValueFromAdj(csn, adjList);\n });\n return stateValue;\n}\n\nfunction getAdjList(configuration) {\n var e_5, _a;\n\n var adjList = new Map();\n\n try {\n for (var configuration_4 = __values(configuration), configuration_4_1 = configuration_4.next(); !configuration_4_1.done; configuration_4_1 = configuration_4.next()) {\n var s = configuration_4_1.value;\n\n if (!adjList.has(s)) {\n adjList.set(s, []);\n }\n\n if (s.parent) {\n if (!adjList.has(s.parent)) {\n adjList.set(s.parent, []);\n }\n\n adjList.get(s.parent).push(s);\n }\n }\n } catch (e_5_1) {\n e_5 = {\n error: e_5_1\n };\n } finally {\n try {\n if (configuration_4_1 && !configuration_4_1.done && (_a = configuration_4.return)) _a.call(configuration_4);\n } finally {\n if (e_5) throw e_5.error;\n }\n }\n\n return adjList;\n}\n\nfunction getValue(rootNode, configuration) {\n var config = getConfiguration([rootNode], configuration);\n return getValueFromAdj(rootNode, getAdjList(config));\n}\n\nfunction has(iterable, item) {\n if (Array.isArray(iterable)) {\n return iterable.some(function (member) {\n return member === item;\n });\n }\n\n if (iterable instanceof Set) {\n return iterable.has(item);\n }\n\n return false; // TODO: fix\n}\n\nfunction nextEvents(configuration) {\n return flatten(__spread(new Set(configuration.map(function (sn) {\n return sn.ownEvents;\n }))));\n}\n\nfunction isInFinalState(configuration, stateNode) {\n if (stateNode.type === 'compound') {\n return getChildren(stateNode).some(function (s) {\n return s.type === 'final' && has(configuration, s);\n });\n }\n\n if (stateNode.type === 'parallel') {\n return getChildren(stateNode).every(function (sn) {\n return isInFinalState(configuration, sn);\n });\n }\n\n return false;\n}\n\nexport { getAdjList, getAllStateNodes, getChildren, getConfiguration, getValue, has, isInFinalState, isLeafNode, nextEvents };","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","var isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.github.io/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return new (C === undefined ? Array : C)(length === 0 ? 0 : length);\n};\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = new WeakMap();\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);\n enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","exports.f = Object.getOwnPropertySymbols;\n","var path = require('../internals/path');\nvar has = require('../internals/has');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","var anObject = require('../internals/an-object');\nvar defineProperties = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n /* global ActiveXObject */\n activeXDocument = document.domain && new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.github.io/ecma262/#sec-object.create\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $find = require('../internals/array-iteration').find;\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\nvar USES_TO_LENGTH = arrayMethodUsesToLength(FIND);\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.find\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES || !USES_TO_LENGTH }, {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND);\n","var global = require('../internals/global');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","var fails = require('../internals/fails');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !fails(function () {\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","// addapted from the document.currentScript polyfill by Adam Miller\n// MIT license\n// source: https://github.com/amiller-gh/currentScript-polyfill\n\n// added support for Firefox https://bugzilla.mozilla.org/show_bug.cgi?id=1620505\n\n(function (root, factory) {\n if (typeof define === 'function' && define.amd) {\n define([], factory);\n } else if (typeof module === 'object' && module.exports) {\n module.exports = factory();\n } else {\n root.getCurrentScript = factory();\n }\n}(typeof self !== 'undefined' ? self : this, function () {\n function getCurrentScript () {\n var descriptor = Object.getOwnPropertyDescriptor(document, 'currentScript')\n // for chrome\n if (!descriptor && 'currentScript' in document && document.currentScript) {\n return document.currentScript\n }\n\n // for other browsers with native support for currentScript\n if (descriptor && descriptor.get !== getCurrentScript && document.currentScript) {\n return document.currentScript\n }\n \n // IE 8-10 support script readyState\n // IE 11+ & Firefox support stack trace\n try {\n throw new Error();\n }\n catch (err) {\n // Find the second match for the \"at\" string to get file src url from stack.\n var ieStackRegExp = /.*at [^(]*\\((.*):(.+):(.+)\\)$/ig,\n ffStackRegExp = /@([^@]*):(\\d+):(\\d+)\\s*$/ig,\n stackDetails = ieStackRegExp.exec(err.stack) || ffStackRegExp.exec(err.stack),\n scriptLocation = (stackDetails && stackDetails[1]) || false,\n line = (stackDetails && stackDetails[2]) || false,\n currentLocation = document.location.href.replace(document.location.hash, ''),\n pageSource,\n inlineScriptSourceRegExp,\n inlineScriptSource,\n scripts = document.getElementsByTagName('script'); // Live NodeList collection\n \n if (scriptLocation === currentLocation) {\n pageSource = document.documentElement.outerHTML;\n inlineScriptSourceRegExp = new RegExp('(?:[^\\\\n]+?\\\\n){0,' + (line - 2) + '}[^<]*<script>([\\\\d\\\\D]*?)<\\\\/script>[\\\\d\\\\D]*', 'i');\n inlineScriptSource = pageSource.replace(inlineScriptSourceRegExp, '$1').trim();\n }\n \n for (var i = 0; i < scripts.length; i++) {\n // If ready state is interactive, return the script tag\n if (scripts[i].readyState === 'interactive') {\n return scripts[i];\n }\n \n // If src matches, return the script tag\n if (scripts[i].src === scriptLocation) {\n return scripts[i];\n }\n \n // If inline source matches, return the script tag\n if (\n scriptLocation === currentLocation &&\n scripts[i].innerHTML &&\n scripts[i].innerHTML.trim() === inlineScriptSource\n ) {\n return scripts[i];\n }\n }\n \n // If no match, return null\n return null;\n }\n };\n\n return getCurrentScript\n}));\n","var store = require('../internals/shared-store');\n\nvar functionToString = Function.toString;\n\n// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpinningLoader.vue?vue&type=style&index=0&id=37619534&scoped=true&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpinningLoader.vue?vue&type=style&index=0&id=37619534&scoped=true&lang=css&\"","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","module.exports = __WEBPACK_EXTERNAL_MODULE__8bbf__;","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar regexpFlags = require('./regexp-flags');\nvar stickyHelpers = require('./regexp-sticky-helpers');\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = regexpFlags.call(re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = flags.replace('y', '');\n if (flags.indexOf('g') === -1) {\n flags += 'g';\n }\n\n strCopy = String(str).slice(re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = match.input.slice(charsAdded);\n match[0] = match[0].slice(charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat');\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;\n\n// `Array.prototype.concat` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, forced: FORCED }, {\n concat: function concat(arg) { // eslint-disable-line no-unused-vars\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = toLength(E.length);\n if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","var anObject = require('../internals/an-object');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (error) {\n var returnMethod = iterator['return'];\n if (returnMethod !== undefined) anObject(returnMethod.call(iterator));\n throw error;\n }\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return nativeDefineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\n\nvar fails = require('./fails');\n\n// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,\n// so we use an intermediate function.\nfunction RE(s, f) {\n return RegExp(s, f);\n}\n\nexports.UNSUPPORTED_Y = fails(function () {\n // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\n var re = RE('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\nexports.BROKEN_CARET = fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = RE('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = [].join;\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar shared = require('../internals/shared');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineWellKnownSymbol = require('../internals/define-well-known-symbol');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar HIDDEN = sharedKey('hidden');\nvar SYMBOL = 'Symbol';\nvar PROTOTYPE = 'prototype';\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\nvar ObjectPrototype = Object[PROTOTYPE];\nvar $Symbol = global.Symbol;\nvar $stringify = getBuiltIn('JSON', 'stringify');\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar StringToSymbolRegistry = shared('string-to-symbol-registry');\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\nvar WellKnownSymbolsStore = shared('wks');\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (O, P, Attributes) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];\n nativeDefineProperty(O, P, Attributes);\n if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar isSymbol = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return Object(it) instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(O, P, Attributes) {\n if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);\n anObject(O);\n var key = toPrimitive(P, true);\n anObject(Attributes);\n if (has(AllSymbols, key)) {\n if (!Attributes.enumerable) {\n if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));\n O[HIDDEN][key] = true;\n } else {\n if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;\n Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(O, key, Attributes);\n } return nativeDefineProperty(O, key, Attributes);\n};\n\nvar $defineProperties = function defineProperties(O, Properties) {\n anObject(O);\n var properties = toIndexedObject(Properties);\n var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));\n $forEach(keys, function (key) {\n if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);\n });\n return O;\n};\n\nvar $create = function create(O, Properties) {\n return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(V) {\n var P = toPrimitive(V, true);\n var enumerable = nativePropertyIsEnumerable.call(this, P);\n if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;\n return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {\n var it = toIndexedObject(O);\n var key = toPrimitive(P, true);\n if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;\n var descriptor = nativeGetOwnPropertyDescriptor(it, key);\n if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {\n descriptor.enumerable = true;\n }\n return descriptor;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(O) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);\n });\n return result;\n};\n\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(O) {\n var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {\n result.push(AllSymbols[key]);\n }\n });\n return result;\n};\n\n// `Symbol` constructor\n// https://tc39.github.io/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');\n var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n redefine($Symbol, 'withoutSetter', function (description) {\n return wrap(uid(description), description);\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n nativeDefineProperty($Symbol[PROTOTYPE], 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n}\n\n$({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {\n Symbol: $Symbol\n});\n\n$forEach(objectKeys(WellKnownSymbolsStore), function (name) {\n defineWellKnownSymbol(name);\n});\n\n$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n // `Symbol.for` method\n // https://tc39.github.io/ecma262/#sec-symbol.for\n 'for': function (key) {\n var string = String(key);\n if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];\n var symbol = $Symbol(string);\n StringToSymbolRegistry[string] = symbol;\n SymbolToStringRegistry[symbol] = string;\n return symbol;\n },\n // `Symbol.keyFor` method\n // https://tc39.github.io/ecma262/#sec-symbol.keyfor\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');\n if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];\n },\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.github.io/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames,\n // `Object.getOwnPropertySymbols` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\n$({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n return getOwnPropertySymbolsModule.f(toObject(it));\n }\n});\n\n// `JSON.stringify` method behavior with symbols\n// https://tc39.github.io/ecma262/#sec-json.stringify\nif ($stringify) {\n var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {\n var symbol = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n return $stringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || $stringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || $stringify(Object(symbol)) != '{}';\n });\n\n $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {\n // eslint-disable-next-line no-unused-vars\n stringify: function stringify(it, replacer, space) {\n var args = [it];\n var index = 1;\n var $replacer;\n while (arguments.length > index) args.push(arguments[index++]);\n $replacer = replacer;\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return $stringify.apply(null, args);\n }\n });\n}\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@toprimitive\nif (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {\n createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n}\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call,no-throw-literal\n method.call(null, argument || function () { throw 1; }, 1);\n });\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.github.io/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (e) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (f) { /* empty */ }\n } return false;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\n\nvar defineProperty = Object.defineProperty;\nvar cache = {};\n\nvar thrower = function (it) { throw it; };\n\nmodule.exports = function (METHOD_NAME, options) {\n if (has(cache, METHOD_NAME)) return cache[METHOD_NAME];\n if (!options) options = {};\n var method = [][METHOD_NAME];\n var ACCESSORS = has(options, 'ACCESSORS') ? options.ACCESSORS : false;\n var argument0 = has(options, 0) ? options[0] : thrower;\n var argument1 = has(options, 1) ? options[1] : undefined;\n\n return cache[METHOD_NAME] = !!method && !fails(function () {\n if (ACCESSORS && !DESCRIPTORS) return true;\n var O = { length: -1 };\n\n if (ACCESSORS) defineProperty(O, 1, { enumerable: true, get: thrower });\n else O[1] = 1;\n\n method.call(O, argument0, argument1);\n });\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar FunctionPrototype = Function.prototype;\nvar FunctionPrototypeToString = FunctionPrototype.toString;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.github.io/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !(NAME in FunctionPrototype)) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return FunctionPrototypeToString.call(this).match(nameRE)[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar classof = require('../internals/classof-raw');\nvar macrotask = require('../internals/task').set;\nvar IS_IOS = require('../internals/engine-is-ios');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar process = global.process;\nvar Promise = global.Promise;\nvar IS_NODE = classof(process) == 'process';\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\n\nvar flush, head, last, notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!queueMicrotask) {\n flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (error) {\n if (head) notify();\n else last = undefined;\n throw error;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // Node.js\n if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n } else if (MutationObserver && !IS_IOS) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n then = promise.then;\n notify = function () {\n then.call(promise, flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n}\n\nmodule.exports = queueMicrotask || function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n};\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar has = require('../internals/has');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name)) {\n if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];\n else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","var bind = require('../internals/function-bind-context');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = [].push;\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push.call(target, value); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6)\n};\n","var isObject = require('../internals/is-object');\n\n// `ToPrimitive` abstract operation\n// https://tc39.github.io/ecma262/#sec-toprimitive\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (input, PREFERRED_STRING) {\n if (!isObject(input)) return input;\n var fn, val;\n if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;\n if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","import { IS_PRODUCTION } from './environment.js';\n\nfunction getDevTools() {\n var w = window;\n\n if (!!w.__xstate__) {\n return w.__xstate__;\n }\n\n return undefined;\n}\n\nfunction registerService(service) {\n if (IS_PRODUCTION || typeof window === 'undefined') {\n return;\n }\n\n var devTools = getDevTools();\n\n if (devTools) {\n devTools.register(service);\n }\n}\n\nexport { registerService };","module.exports = false;\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","var fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar USES_TO_LENGTH = arrayMethodUsesToLength('indexOf', { ACCESSORS: true, 1: 0 });\n\n// `Array.prototype.includes` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: !USES_TO_LENGTH }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","import { ActionTypes } from './types.js'; // xstate-specific action types\n\nvar start = ActionTypes.Start;\nvar stop = ActionTypes.Stop;\nvar raise = ActionTypes.Raise;\nvar send = ActionTypes.Send;\nvar cancel = ActionTypes.Cancel;\nvar nullEvent = ActionTypes.NullEvent;\nvar assign = ActionTypes.Assign;\nvar after = ActionTypes.After;\nvar doneState = ActionTypes.DoneState;\nvar log = ActionTypes.Log;\nvar init = ActionTypes.Init;\nvar invoke = ActionTypes.Invoke;\nvar errorExecution = ActionTypes.ErrorExecution;\nvar errorPlatform = ActionTypes.ErrorPlatform;\nvar error = ActionTypes.ErrorCustom;\nvar update = ActionTypes.Update;\nvar choose = ActionTypes.Choose;\nvar pure = ActionTypes.Pure;\nexport { after, assign, cancel, choose, doneState, error, errorExecution, errorPlatform, init, invoke, log, nullEvent, pure, raise, send, start, stop, update };","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\n$({ target: 'Object', stat: true, forced: Object.assign !== assign }, {\n assign: assign\n});\n","var anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nmodule.exports = function (key, value) {\n try {\n createNonEnumerableProperty(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","module.exports = {};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","var STATE_DELIMITER = '.';\nvar EMPTY_ACTIVITY_MAP = {};\nvar DEFAULT_GUARD_TYPE = 'xstate.guard';\nvar TARGETLESS_KEY = '';\nexport { DEFAULT_GUARD_TYPE, EMPTY_ACTIVITY_MAP, STATE_DELIMITER, TARGETLESS_KEY };","'use strict';\nvar nativePropertyIsEnumerable = {}.propertyIsEnumerable;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar redefine = require('../internals/redefine');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n redefine(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","var defineProperty = require('../internals/object-define-property').f;\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","var aFunction = require('../internals/a-function');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.{ reduce, reduceRight }` methods implementation\nvar createMethod = function (IS_RIGHT) {\n return function (that, callbackfn, argumentsLength, memo) {\n aFunction(callbackfn);\n var O = toObject(that);\n var self = IndexedObject(O);\n var length = toLength(O.length);\n var index = IS_RIGHT ? length - 1 : 0;\n var i = IS_RIGHT ? -1 : 1;\n if (argumentsLength < 2) while (true) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (IS_RIGHT ? index < 0 : length <= index) {\n throw TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.reduce` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.reduce\n left: createMethod(false),\n // `Array.prototype.reduceRight` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.reduceright\n right: createMethod(true)\n};\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar redefine = require('../internals/redefine');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar regexpExec = require('../internals/regexp-exec');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$<a>') !== '7';\n});\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\nvar REPLACE = wellKnownSymbol('replace');\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\nmodule.exports = function (KEY, length, exec, sham) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !(\n REPLACE_SUPPORTS_NAMED_GROUPS &&\n REPLACE_KEEPS_$0 &&\n !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n )) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }, {\n REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,\n REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n });\n var stringMethod = methods[0];\n var regexMethod = methods[1];\n\n redefine(String.prototype, KEY, stringMethod);\n redefine(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return regexMethod.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return regexMethod.call(string, this); }\n );\n }\n\n if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n// FF49- issue\nvar USES_TO_LENGTH = arrayMethodUsesToLength('map');\n\n// `Array.prototype.map` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line no-undef\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func\n Function('return this')();\n","var $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar ownKeys = require('../internals/own-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar createProperty = require('../internals/create-property');\n\n// `Object.getOwnPropertyDescriptors` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors\n$({ target: 'Object', stat: true, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {\n var O = toIndexedObject(object);\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n var keys = ownKeys(O);\n var result = {};\n var index = 0;\n var key, descriptor;\n while (keys.length > index) {\n descriptor = getOwnPropertyDescriptor(O, key = keys[index++]);\n if (descriptor !== undefined) createProperty(result, key, descriptor);\n }\n return result;\n }\n});\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","import { __assign, __read, __rest } from './_virtual/_tslib.js';\nimport { IS_PRODUCTION } from './environment.js';\nimport { toSCXMLEvent, isFunction, toEventObject, getEventType, isString, partition, updateContext, flatten, toArray, toGuard, evaluateGuard, warn, isArray } from './utils.js';\nimport { SpecialTargets, ActionTypes } from './types.js';\nimport { send as send$1, update, assign as assign$1, init, raise as raise$1, log as log$1, cancel as cancel$1, error as error$1, pure as pure$1, choose as choose$1 } from './actionTypes.js';\nvar initEvent = /*#__PURE__*/toSCXMLEvent({\n type: init\n});\n\nfunction getActionFunction(actionType, actionFunctionMap) {\n return actionFunctionMap ? actionFunctionMap[actionType] || undefined : undefined;\n}\n\nfunction toActionObject(action, actionFunctionMap) {\n var actionObject;\n\n if (isString(action) || typeof action === 'number') {\n var exec = getActionFunction(action, actionFunctionMap);\n\n if (isFunction(exec)) {\n actionObject = {\n type: action,\n exec: exec\n };\n } else if (exec) {\n actionObject = exec;\n } else {\n actionObject = {\n type: action,\n exec: undefined\n };\n }\n } else if (isFunction(action)) {\n actionObject = {\n // Convert action to string if unnamed\n type: action.name || action.toString(),\n exec: action\n };\n } else {\n var exec = getActionFunction(action.type, actionFunctionMap);\n\n if (isFunction(exec)) {\n actionObject = __assign(__assign({}, action), {\n exec: exec\n });\n } else if (exec) {\n var type = action.type,\n other = __rest(action, [\"type\"]);\n\n actionObject = __assign(__assign({\n type: type\n }, exec), other);\n } else {\n actionObject = action;\n }\n }\n\n Object.defineProperty(actionObject, 'toString', {\n value: function () {\n return actionObject.type;\n },\n enumerable: false,\n configurable: true\n });\n return actionObject;\n}\n\nvar toActionObjects = function (action, actionFunctionMap) {\n if (!action) {\n return [];\n }\n\n var actions = isArray(action) ? action : [action];\n return actions.map(function (subAction) {\n return toActionObject(subAction, actionFunctionMap);\n });\n};\n\nfunction toActivityDefinition(action) {\n var actionObject = toActionObject(action);\n return __assign(__assign({\n id: isString(action) ? action : actionObject.id\n }, actionObject), {\n type: actionObject.type\n });\n}\n/**\r\n * Raises an event. This places the event in the internal event queue, so that\r\n * the event is immediately consumed by the machine in the current step.\r\n *\r\n * @param eventType The event to raise.\r\n */\n\n\nfunction raise(event) {\n if (!isString(event)) {\n return send(event, {\n to: SpecialTargets.Internal\n });\n }\n\n return {\n type: raise$1,\n event: event\n };\n}\n\nfunction resolveRaise(action) {\n return {\n type: raise$1,\n _event: toSCXMLEvent(action.event)\n };\n}\n/**\r\n * Sends an event. This returns an action that will be read by an interpreter to\r\n * send the event in the next step, after the current step is finished executing.\r\n *\r\n * @param event The event to send.\r\n * @param options Options to pass into the send event:\r\n * - `id` - The unique send event identifier (used with `cancel()`).\r\n * - `delay` - The number of milliseconds to delay the sending of the event.\r\n * - `to` - The target of this event (by default, the machine the event was sent from).\r\n */\n\n\nfunction send(event, options) {\n return {\n to: options ? options.to : undefined,\n type: send$1,\n event: isFunction(event) ? event : toEventObject(event),\n delay: options ? options.delay : undefined,\n id: options && options.id !== undefined ? options.id : isFunction(event) ? event.name : getEventType(event)\n };\n}\n\nfunction resolveSend(action, ctx, _event, delaysMap) {\n var meta = {\n _event: _event\n }; // TODO: helper function for resolving Expr\n\n var resolvedEvent = toSCXMLEvent(isFunction(action.event) ? action.event(ctx, _event.data, meta) : action.event);\n var resolvedDelay;\n\n if (isString(action.delay)) {\n var configDelay = delaysMap && delaysMap[action.delay];\n resolvedDelay = isFunction(configDelay) ? configDelay(ctx, _event.data, meta) : configDelay;\n } else {\n resolvedDelay = isFunction(action.delay) ? action.delay(ctx, _event.data, meta) : action.delay;\n }\n\n var resolvedTarget = isFunction(action.to) ? action.to(ctx, _event.data, meta) : action.to;\n return __assign(__assign({}, action), {\n to: resolvedTarget,\n _event: resolvedEvent,\n event: resolvedEvent.data,\n delay: resolvedDelay\n });\n}\n/**\r\n * Sends an event to this machine's parent.\r\n *\r\n * @param event The event to send to the parent machine.\r\n * @param options Options to pass into the send event.\r\n */\n\n\nfunction sendParent(event, options) {\n return send(event, __assign(__assign({}, options), {\n to: SpecialTargets.Parent\n }));\n}\n/**\r\n * Sends an update event to this machine's parent.\r\n */\n\n\nfunction sendUpdate() {\n return sendParent(update);\n}\n/**\r\n * Sends an event back to the sender of the original event.\r\n *\r\n * @param event The event to send back to the sender\r\n * @param options Options to pass into the send event\r\n */\n\n\nfunction respond(event, options) {\n return send(event, __assign(__assign({}, options), {\n to: function (_, __, _a) {\n var _event = _a._event;\n return _event.origin; // TODO: handle when _event.origin is undefined\n }\n }));\n}\n\nvar defaultLogExpr = function (context, event) {\n return {\n context: context,\n event: event\n };\n};\n/**\r\n *\r\n * @param expr The expression function to evaluate which will be logged.\r\n * Takes in 2 arguments:\r\n * - `ctx` - the current state context\r\n * - `event` - the event that caused this action to be executed.\r\n * @param label The label to give to the logged expression.\r\n */\n\n\nfunction log(expr, label) {\n if (expr === void 0) {\n expr = defaultLogExpr;\n }\n\n return {\n type: log$1,\n label: label,\n expr: expr\n };\n}\n\nvar resolveLog = function (action, ctx, _event) {\n return __assign(__assign({}, action), {\n value: isString(action.expr) ? action.expr : action.expr(ctx, _event.data, {\n _event: _event\n })\n });\n};\n/**\r\n * Cancels an in-flight `send(...)` action. A canceled sent action will not\r\n * be executed, nor will its event be sent, unless it has already been sent\r\n * (e.g., if `cancel(...)` is called after the `send(...)` action's `delay`).\r\n *\r\n * @param sendId The `id` of the `send(...)` action to cancel.\r\n */\n\n\nvar cancel = function (sendId) {\n return {\n type: cancel$1,\n sendId: sendId\n };\n};\n/**\r\n * Starts an activity.\r\n *\r\n * @param activity The activity to start.\r\n */\n\n\nfunction start(activity) {\n var activityDef = toActivityDefinition(activity);\n return {\n type: ActionTypes.Start,\n activity: activityDef,\n exec: undefined\n };\n}\n/**\r\n * Stops an activity.\r\n *\r\n * @param activity The activity to stop.\r\n */\n\n\nfunction stop(activity) {\n var activityDef = toActivityDefinition(activity);\n return {\n type: ActionTypes.Stop,\n activity: activityDef,\n exec: undefined\n };\n}\n/**\r\n * Updates the current context of the machine.\r\n *\r\n * @param assignment An object that represents the partial context to update.\r\n */\n\n\nvar assign = function (assignment) {\n return {\n type: assign$1,\n assignment: assignment\n };\n};\n/**\r\n * Returns an event type that represents an implicit event that\r\n * is sent after the specified `delay`.\r\n *\r\n * @param delayRef The delay in milliseconds\r\n * @param id The state node ID where this event is handled\r\n */\n\n\nfunction after(delayRef, id) {\n var idSuffix = id ? \"#\" + id : '';\n return ActionTypes.After + \"(\" + delayRef + \")\" + idSuffix;\n}\n/**\r\n * Returns an event that represents that a final state node\r\n * has been reached in the parent state node.\r\n *\r\n * @param id The final state node's parent state node `id`\r\n * @param data The data to pass into the event\r\n */\n\n\nfunction done(id, data) {\n var type = ActionTypes.DoneState + \".\" + id;\n var eventObject = {\n type: type,\n data: data\n };\n\n eventObject.toString = function () {\n return type;\n };\n\n return eventObject;\n}\n/**\r\n * Returns an event that represents that an invoked service has terminated.\r\n *\r\n * An invoked service is terminated when it has reached a top-level final state node,\r\n * but not when it is canceled.\r\n *\r\n * @param id The final state node ID\r\n * @param data The data to pass into the event\r\n */\n\n\nfunction doneInvoke(id, data) {\n var type = ActionTypes.DoneInvoke + \".\" + id;\n var eventObject = {\n type: type,\n data: data\n };\n\n eventObject.toString = function () {\n return type;\n };\n\n return eventObject;\n}\n\nfunction error(id, data) {\n var type = ActionTypes.ErrorPlatform + \".\" + id;\n var eventObject = {\n type: type,\n data: data\n };\n\n eventObject.toString = function () {\n return type;\n };\n\n return eventObject;\n}\n\nfunction pure(getActions) {\n return {\n type: ActionTypes.Pure,\n get: getActions\n };\n}\n/**\r\n * Forwards (sends) an event to a specified service.\r\n *\r\n * @param target The target service to forward the event to.\r\n * @param options Options to pass into the send action creator.\r\n */\n\n\nfunction forwardTo(target, options) {\n return send(function (_, event) {\n return event;\n }, __assign(__assign({}, options), {\n to: target\n }));\n}\n/**\r\n * Escalates an error by sending it as an event to this machine's parent.\r\n *\r\n * @param errorData The error data to send, or the expression function that\r\n * takes in the `context`, `event`, and `meta`, and returns the error data to send.\r\n * @param options Options to pass into the send action creator.\r\n */\n\n\nfunction escalate(errorData, options) {\n return sendParent(function (context, event, meta) {\n return {\n type: error$1,\n data: isFunction(errorData) ? errorData(context, event, meta) : errorData\n };\n }, __assign(__assign({}, options), {\n to: SpecialTargets.Parent\n }));\n}\n\nfunction choose(conds) {\n return {\n type: ActionTypes.Choose,\n conds: conds\n };\n}\n\nfunction resolveActions(machine, currentState, currentContext, _event, actions) {\n var _a = __read(partition(actions, function (action) {\n return action.type === assign$1;\n }), 2),\n assignActions = _a[0],\n otherActions = _a[1];\n\n var updatedContext = assignActions.length ? updateContext(currentContext, _event, assignActions, currentState) : currentContext;\n var resolvedActions = flatten(otherActions.map(function (actionObject) {\n var _a;\n\n switch (actionObject.type) {\n case raise$1:\n return resolveRaise(actionObject);\n\n case send$1:\n var sendAction = resolveSend(actionObject, updatedContext, _event, machine.options.delays); // TODO: fix ActionTypes.Init\n\n if (!IS_PRODUCTION) {\n // warn after resolving as we can create better contextual message here\n warn(!isString(actionObject.delay) || typeof sendAction.delay === 'number', // tslint:disable-next-line:max-line-length\n \"No delay reference for delay expression '\" + actionObject.delay + \"' was found on machine '\" + machine.id + \"'\");\n }\n\n return sendAction;\n\n case log$1:\n return resolveLog(actionObject, updatedContext, _event);\n\n case choose$1:\n {\n var chooseAction = actionObject;\n var matchedActions = (_a = chooseAction.conds.find(function (condition) {\n var guard = toGuard(condition.cond, machine.options.guards);\n return !guard || evaluateGuard(machine, guard, updatedContext, _event, currentState);\n })) === null || _a === void 0 ? void 0 : _a.actions;\n\n if (!matchedActions) {\n return [];\n }\n\n var resolved = resolveActions(machine, currentState, updatedContext, _event, toActionObjects(toArray(matchedActions), machine.options.actions));\n updatedContext = resolved[1];\n return resolved[0];\n }\n\n case pure$1:\n {\n var matchedActions = actionObject.get(updatedContext, _event.data);\n\n if (!matchedActions) {\n return [];\n }\n\n var resolved = resolveActions(machine, currentState, updatedContext, _event, toActionObjects(toArray(matchedActions), machine.options.actions));\n updatedContext = resolved[1];\n return resolved[0];\n }\n\n default:\n return toActionObject(actionObject, machine.options.actions);\n }\n }));\n return [resolvedActions, updatedContext];\n}\n\nexport { after, assign, cancel, choose, done, doneInvoke, error, escalate, forwardTo, getActionFunction, initEvent, log, pure, raise, resolveActions, resolveLog, resolveRaise, resolveSend, respond, send, sendParent, sendUpdate, start, stop, toActionObject, toActionObjects, toActivityDefinition };","var redefine = require('../internals/redefine');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) redefine(target, key, src[key], options);\n return target;\n};\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\nvar __assign = function () {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\nfunction __rest(s, e) {\n var t = {};\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nfunction __values(o) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator],\n i = 0;\n if (m) return m.call(o);\n return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return {\n value: o && o[i++],\n done: !o\n };\n }\n };\n}\n\nfunction __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o),\n r,\n ar = [],\n e;\n\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n } catch (error) {\n e = {\n error: error\n };\n } finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n } finally {\n if (e) throw e.error;\n }\n }\n\n return ar;\n}\n\nfunction __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));\n\n return ar;\n}\n\nexport { __assign, __read, __rest, __spread, __values };","var $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeGetOwnPropertyDescriptor(1); });\nvar FORCED = !DESCRIPTORS || FAILS_ON_PRIMITIVES;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\n$({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) {\n return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key);\n }\n});\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\n","module.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar NativePromise = require('../internals/native-promise-constructor');\nvar redefine = require('../internals/redefine');\nvar redefineAll = require('../internals/redefine-all');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar isObject = require('../internals/is-object');\nvar aFunction = require('../internals/a-function');\nvar anInstance = require('../internals/an-instance');\nvar classof = require('../internals/classof-raw');\nvar inspectSource = require('../internals/inspect-source');\nvar iterate = require('../internals/iterate');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar promiseResolve = require('../internals/promise-resolve');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar InternalStateModule = require('../internals/internal-state');\nvar isForced = require('../internals/is-forced');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\nvar PROMISE = 'Promise';\nvar getInternalState = InternalStateModule.get;\nvar setInternalState = InternalStateModule.set;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar PromiseConstructor = NativePromise;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar $fetch = getBuiltIn('fetch');\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\nvar IS_NODE = classof(process) == 'process';\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\nvar FORCED = isForced(PROMISE, function () {\n var GLOBAL_CORE_JS_PROMISE = inspectSource(PromiseConstructor) !== String(PromiseConstructor);\n if (!GLOBAL_CORE_JS_PROMISE) {\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (V8_VERSION === 66) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n if (!IS_NODE && typeof PromiseRejectionEvent != 'function') return true;\n }\n // We need Promise#finally in the pure version for preventing prototype pollution\n if (IS_PURE && !PromiseConstructor.prototype['finally']) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (V8_VERSION >= 51 && /native code/.test(PromiseConstructor)) return false;\n // Detect correctness of subclassing with @@species support\n var promise = PromiseConstructor.resolve(1);\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n return !(promise.then(function () { /* empty */ }) instanceof FakePromise);\n});\n\nvar INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {\n PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });\n});\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\n\nvar notify = function (promise, state, isReject) {\n if (state.notified) return;\n state.notified = true;\n var chain = state.reactions;\n microtask(function () {\n var value = state.value;\n var ok = state.state == FULFILLED;\n var index = 0;\n // variable length - can't use forEach\n while (chain.length > index) {\n var reaction = chain[index++];\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(promise, state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n }\n state.reactions = [];\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(promise, state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (handler = global['on' + name]) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (promise, state) {\n task.call(global, function () {\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (promise, state) {\n task.call(global, function () {\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, promise, state, unwrap) {\n return function (value) {\n fn(promise, state, value, unwrap);\n };\n};\n\nvar internalReject = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(promise, state, true);\n};\n\nvar internalResolve = function (promise, state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (promise === value) throw TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n then.call(value,\n bind(internalResolve, promise, wrapper, state),\n bind(internalReject, promise, wrapper, state)\n );\n } catch (error) {\n internalReject(promise, wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(promise, state, false);\n }\n } catch (error) {\n internalReject(promise, { done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromiseConstructor, PROMISE);\n aFunction(executor);\n Internal.call(this);\n var state = getInternalState(this);\n try {\n executor(bind(internalResolve, this, state), bind(internalReject, this, state));\n } catch (error) {\n internalReject(this, state, error);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: [],\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n Internal.prototype = redefineAll(PromiseConstructor.prototype, {\n // `Promise.prototype.then` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.then\n then: function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n state.parent = true;\n state.reactions.push(reaction);\n if (state.state != PENDING) notify(this, state, false);\n return reaction.promise;\n },\n // `Promise.prototype.catch` method\n // https://tc39.github.io/ecma262/#sec-promise.prototype.catch\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, promise, state);\n this.reject = bind(internalReject, promise, state);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && typeof NativePromise == 'function') {\n nativeThen = NativePromise.prototype.then;\n\n // wrap native Promise#then for native async functions\n redefine(NativePromise.prototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n nativeThen.call(that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n\n // wrap fetch result\n if (typeof $fetch == 'function') $({ global: true, enumerable: true, forced: true }, {\n // eslint-disable-next-line no-unused-vars\n fetch: function fetch(input /* , init */) {\n return promiseResolve(PromiseConstructor, $fetch.apply(global, arguments));\n }\n });\n }\n}\n\n$({ global: true, wrap: true, forced: FORCED }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n\nPromiseWrapper = getBuiltIn(PROMISE);\n\n// statics\n$({ target: PROMISE, stat: true, forced: FORCED }, {\n // `Promise.reject` method\n // https://tc39.github.io/ecma262/#sec-promise.reject\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n capability.reject.call(undefined, r);\n return capability.promise;\n }\n});\n\n$({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, {\n // `Promise.resolve` method\n // https://tc39.github.io/ecma262/#sec-promise.resolve\n resolve: function resolve(x) {\n return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x);\n }\n});\n\n$({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {\n // `Promise.all` method\n // https://tc39.github.io/ecma262/#sec-promise.all\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n $promiseResolve.call(C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n },\n // `Promise.race` method\n // https://tc39.github.io/ecma262/#sec-promise.race\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aFunction(C.resolve);\n iterate(iterable, function (promise) {\n $promiseResolve.call(C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.github.io/ecma262/#sec-isarray\nmodule.exports = Array.isArray || function isArray(arg) {\n return classof(arg) == 'Array';\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar aFunction = require('../internals/a-function');\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n};\n\n// 25.4.1.5 NewPromiseCapability(C)\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result;\n};\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n var currentScript = window.document.currentScript\n if (process.env.NEED_CURRENTSCRIPT_POLYFILL) {\n var getCurrentScript = require('@soda/get-current-script')\n currentScript = getCurrentScript()\n\n // for backward compatibility, because previously we directly included the polyfill\n if (!('currentScript' in document)) {\n Object.defineProperty(document, 'currentScript', { get: getCurrentScript })\n }\n }\n\n var src = currentScript && currentScript.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/)\n if (src) {\n __webpack_public_path__ = src[1] // eslint-disable-line\n }\n}\n\n// Indicate to webpack that this file can be concatenated\nexport default null\n","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.votingType === 'business')?_c('div',{staticClass:\"container mt-5\"},[_vm._m(0),_c('div',{staticClass:\"mt-5\"},[_c(_vm.currentFloorView,{tag:\"component\"})],1)]):_vm._e(),(_vm.votingType === 'elections')?_c('div',{staticClass:\"container mt-5\"},[_c('ElectionsSession')],1):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h1',[_vm._v(\"Rutgers University Senate Business\")]),_c('hr')])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"idle\"},[(_vm.current.matches('idle'))?_c('div',[_vm._m(0),_c('div',{staticClass:\"mt-4\"},[_c('button',{staticClass:\"btn btn-primary btn-lg\",class:{ disabled: _vm.current.matches('pending') },on:{\"click\":function($event){return _vm.getNextMotion()}}},[_vm._v(\" Get Next Motion \")])])]):_vm._e(),(_vm.current.matches('pending'))?_c('LoadingMessage',[_vm._v(\"Please wait for the next motion...\")]):_vm._e(),(_vm.current.matches('no_motion'))?_c('ErrorMessage',{attrs:{\"alert-content\":_vm.mergeMeta(_vm.current.meta)},on:{\"close\":function($event){return _vm.send('CLOSE_MESSAGE')}}}):_vm._e()],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h2',[_c('b',[_vm._v(\"Please wait for the next motion\")])])}]\n\nexport { render, staticRenderFns }","import { __assign, __values, __spread, __read, __rest } from './_virtual/_tslib.js';\nimport { STATE_DELIMITER } from './constants.js';\nimport { IS_PRODUCTION } from './environment.js';\nimport { mapValues, isArray, flatten, keys, toArray, toStateValue, isString, getEventType, matchesState, path, evaluateGuard, mapContext, toSCXMLEvent, pathToStateValue, isBuiltInEvent, partition, updateHistoryValue, toStatePath, mapFilterValues, warn, toStatePaths, nestedPath, normalizeTarget, toGuard, toTransitionConfigArray, isMachine, isFunction } from './utils.js';\nimport { SpecialTargets } from './types.js';\nimport { getAllStateNodes, getConfiguration, has, getChildren, isInFinalState, getValue, isLeafNode } from './stateUtils.js';\nimport { start as start$1, stop as stop$1, invoke, update, nullEvent, raise as raise$1, send as send$1 } from './actionTypes.js';\nimport { done, start, raise, stop, toActionObjects, resolveActions, doneInvoke, error, toActionObject, toActivityDefinition, after, send, cancel, initEvent } from './actions.js';\nimport { State, stateValuesEqual } from './State.js';\nimport { createInvocableActor } from './Actor.js';\nvar NULL_EVENT = '';\nvar STATE_IDENTIFIER = '#';\nvar WILDCARD = '*';\nvar EMPTY_OBJECT = {};\n\nvar isStateId = function (str) {\n return str[0] === STATE_IDENTIFIER;\n};\n\nvar createDefaultOptions = function () {\n return {\n actions: {},\n guards: {},\n services: {},\n activities: {},\n delays: {}\n };\n};\n\nvar validateArrayifiedTransitions = function (stateNode, event, transitions) {\n var hasNonLastUnguardedTarget = transitions.slice(0, -1).some(function (transition) {\n return !('cond' in transition) && !('in' in transition) && (isString(transition.target) || isMachine(transition.target));\n });\n var eventText = event === NULL_EVENT ? 'the transient event' : \"event '\" + event + \"'\";\n warn(!hasNonLastUnguardedTarget, \"One or more transitions for \" + eventText + \" on state '\" + stateNode.id + \"' are unreachable. \" + \"Make sure that the default transition is the last one defined.\");\n};\n\nvar StateNode =\n/*#__PURE__*/\n\n/** @class */\nfunction () {\n function StateNode(\n /**\r\n * The raw config used to create the machine.\r\n */\n config, options,\n /**\r\n * The initial extended state\r\n */\n context) {\n var _this = this;\n\n this.config = config;\n this.context = context;\n /**\r\n * The order this state node appears. Corresponds to the implicit SCXML document order.\r\n */\n\n this.order = -1;\n this.__xstatenode = true;\n this.__cache = {\n events: undefined,\n relativeValue: new Map(),\n initialStateValue: undefined,\n initialState: undefined,\n on: undefined,\n transitions: undefined,\n candidates: {},\n delayedTransitions: undefined\n };\n this.idMap = {};\n this.options = Object.assign(createDefaultOptions(), options);\n this.parent = this.options._parent;\n this.key = this.config.key || this.options._key || this.config.id || '(machine)';\n this.machine = this.parent ? this.parent.machine : this;\n this.path = this.parent ? this.parent.path.concat(this.key) : [];\n this.delimiter = this.config.delimiter || (this.parent ? this.parent.delimiter : STATE_DELIMITER);\n this.id = this.config.id || __spread([this.machine.key], this.path).join(this.delimiter);\n this.version = this.parent ? this.parent.version : this.config.version;\n this.type = this.config.type || (this.config.parallel ? 'parallel' : this.config.states && keys(this.config.states).length ? 'compound' : this.config.history ? 'history' : 'atomic');\n\n if (!IS_PRODUCTION) {\n warn(!('parallel' in this.config), \"The \\\"parallel\\\" property is deprecated and will be removed in version 4.1. \" + (this.config.parallel ? \"Replace with `type: 'parallel'`\" : \"Use `type: '\" + this.type + \"'`\") + \" in the config for state node '\" + this.id + \"' instead.\");\n }\n\n this.initial = this.config.initial;\n this.states = this.config.states ? mapValues(this.config.states, function (stateConfig, key) {\n var _a;\n\n var stateNode = new StateNode(stateConfig, {\n _parent: _this,\n _key: key\n });\n Object.assign(_this.idMap, __assign((_a = {}, _a[stateNode.id] = stateNode, _a), stateNode.idMap));\n return stateNode;\n }) : EMPTY_OBJECT; // Document order\n\n var order = 0;\n\n function dfs(stateNode) {\n var e_1, _a;\n\n stateNode.order = order++;\n\n try {\n for (var _b = __values(getChildren(stateNode)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var child = _c.value;\n dfs(child);\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_1) throw e_1.error;\n }\n }\n }\n\n dfs(this); // History config\n\n this.history = this.config.history === true ? 'shallow' : this.config.history || false;\n this._transient = !!this.config.always || (!this.config.on ? false : Array.isArray(this.config.on) ? this.config.on.some(function (_a) {\n var event = _a.event;\n return event === NULL_EVENT;\n }) : NULL_EVENT in this.config.on);\n this.strict = !!this.config.strict; // TODO: deprecate (entry)\n\n this.onEntry = toArray(this.config.entry || this.config.onEntry).map(function (action) {\n return toActionObject(action);\n }); // TODO: deprecate (exit)\n\n this.onExit = toArray(this.config.exit || this.config.onExit).map(function (action) {\n return toActionObject(action);\n });\n this.meta = this.config.meta;\n this.doneData = this.type === 'final' ? this.config.data : undefined;\n this.invoke = toArray(this.config.invoke).map(function (invokeConfig, i) {\n var _a, _b;\n\n if (isMachine(invokeConfig)) {\n _this.machine.options.services = __assign((_a = {}, _a[invokeConfig.id] = invokeConfig, _a), _this.machine.options.services);\n return {\n type: invoke,\n src: invokeConfig.id,\n id: invokeConfig.id\n };\n } else if (typeof invokeConfig.src !== 'string') {\n var invokeSrc = _this.id + \":invocation[\" + i + \"]\"; // TODO: util function\n\n _this.machine.options.services = __assign((_b = {}, _b[invokeSrc] = invokeConfig.src, _b), _this.machine.options.services);\n return __assign(__assign({\n type: invoke,\n id: invokeSrc\n }, invokeConfig), {\n src: invokeSrc\n });\n } else {\n return __assign(__assign({}, invokeConfig), {\n type: invoke,\n id: invokeConfig.id || invokeConfig.src,\n src: invokeConfig.src\n });\n }\n });\n this.activities = toArray(this.config.activities).concat(this.invoke).map(function (activity) {\n return toActivityDefinition(activity);\n });\n this.transition = this.transition.bind(this);\n }\n\n StateNode.prototype._init = function () {\n if (this.__cache.transitions) {\n return;\n }\n\n getAllStateNodes(this).forEach(function (stateNode) {\n return stateNode.on;\n });\n };\n /**\r\n * Clones this state machine with custom options and context.\r\n *\r\n * @param options Options (actions, guards, activities, services) to recursively merge with the existing options.\r\n * @param context Custom context (will override predefined context)\r\n */\n\n\n StateNode.prototype.withConfig = function (options, context) {\n if (context === void 0) {\n context = this.context;\n }\n\n var _a = this.options,\n actions = _a.actions,\n activities = _a.activities,\n guards = _a.guards,\n services = _a.services,\n delays = _a.delays;\n return new StateNode(this.config, {\n actions: __assign(__assign({}, actions), options.actions),\n activities: __assign(__assign({}, activities), options.activities),\n guards: __assign(__assign({}, guards), options.guards),\n services: __assign(__assign({}, services), options.services),\n delays: __assign(__assign({}, delays), options.delays)\n }, context);\n };\n /**\r\n * Clones this state machine with custom context.\r\n *\r\n * @param context Custom context (will override predefined context, not recursive)\r\n */\n\n\n StateNode.prototype.withContext = function (context) {\n return new StateNode(this.config, this.options, context);\n };\n\n Object.defineProperty(StateNode.prototype, \"definition\", {\n /**\r\n * The well-structured state node definition.\r\n */\n get: function () {\n return {\n id: this.id,\n key: this.key,\n version: this.version,\n context: this.context,\n type: this.type,\n initial: this.initial,\n history: this.history,\n states: mapValues(this.states, function (state) {\n return state.definition;\n }),\n on: this.on,\n transitions: this.transitions,\n entry: this.onEntry,\n exit: this.onExit,\n activities: this.activities || [],\n meta: this.meta,\n order: this.order || -1,\n data: this.doneData,\n invoke: this.invoke\n };\n },\n enumerable: true,\n configurable: true\n });\n\n StateNode.prototype.toJSON = function () {\n return this.definition;\n };\n\n Object.defineProperty(StateNode.prototype, \"on\", {\n /**\r\n * The mapping of events to transitions.\r\n */\n get: function () {\n if (this.__cache.on) {\n return this.__cache.on;\n }\n\n var transitions = this.transitions;\n return this.__cache.on = transitions.reduce(function (map, transition) {\n map[transition.eventType] = map[transition.eventType] || [];\n map[transition.eventType].push(transition);\n return map;\n }, {});\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(StateNode.prototype, \"after\", {\n get: function () {\n return this.__cache.delayedTransitions || (this.__cache.delayedTransitions = this.getDelayedTransitions(), this.__cache.delayedTransitions);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(StateNode.prototype, \"transitions\", {\n /**\r\n * All the transitions that can be taken from this state node.\r\n */\n get: function () {\n return this.__cache.transitions || (this.__cache.transitions = this.formatTransitions(), this.__cache.transitions);\n },\n enumerable: true,\n configurable: true\n });\n\n StateNode.prototype.getCandidates = function (eventName) {\n if (this.__cache.candidates[eventName]) {\n return this.__cache.candidates[eventName];\n }\n\n var transient = eventName === NULL_EVENT;\n var candidates = this.transitions.filter(function (transition) {\n var sameEventType = transition.eventType === eventName; // null events should only match against eventless transitions\n\n return transient ? sameEventType : sameEventType || transition.eventType === WILDCARD;\n });\n this.__cache.candidates[eventName] = candidates;\n return candidates;\n };\n /**\r\n * All delayed transitions from the config.\r\n */\n\n\n StateNode.prototype.getDelayedTransitions = function () {\n var _this = this;\n\n var afterConfig = this.config.after;\n\n if (!afterConfig) {\n return [];\n }\n\n var mutateEntryExit = function (delay, i) {\n var delayRef = isFunction(delay) ? _this.id + \":delay[\" + i + \"]\" : delay;\n var eventType = after(delayRef, _this.id);\n\n _this.onEntry.push(send(eventType, {\n delay: delay\n }));\n\n _this.onExit.push(cancel(eventType));\n\n return eventType;\n };\n\n var delayedTransitions = isArray(afterConfig) ? afterConfig.map(function (transition, i) {\n var eventType = mutateEntryExit(transition.delay, i);\n return __assign(__assign({}, transition), {\n event: eventType\n });\n }) : flatten(keys(afterConfig).map(function (delay, i) {\n var configTransition = afterConfig[delay];\n var resolvedTransition = isString(configTransition) ? {\n target: configTransition\n } : configTransition;\n var resolvedDelay = !isNaN(+delay) ? +delay : delay;\n var eventType = mutateEntryExit(resolvedDelay, i);\n return toArray(resolvedTransition).map(function (transition) {\n return __assign(__assign({}, transition), {\n event: eventType,\n delay: resolvedDelay\n });\n });\n }));\n return delayedTransitions.map(function (delayedTransition) {\n var delay = delayedTransition.delay;\n return __assign(__assign({}, _this.formatTransition(delayedTransition)), {\n delay: delay\n });\n });\n };\n /**\r\n * Returns the state nodes represented by the current state value.\r\n *\r\n * @param state The state value or State instance\r\n */\n\n\n StateNode.prototype.getStateNodes = function (state) {\n var _a;\n\n var _this = this;\n\n if (!state) {\n return [];\n }\n\n var stateValue = state instanceof State ? state.value : toStateValue(state, this.delimiter);\n\n if (isString(stateValue)) {\n var initialStateValue = this.getStateNode(stateValue).initial;\n return initialStateValue !== undefined ? this.getStateNodes((_a = {}, _a[stateValue] = initialStateValue, _a)) : [this.states[stateValue]];\n }\n\n var subStateKeys = keys(stateValue);\n var subStateNodes = subStateKeys.map(function (subStateKey) {\n return _this.getStateNode(subStateKey);\n });\n return subStateNodes.concat(subStateKeys.reduce(function (allSubStateNodes, subStateKey) {\n var subStateNode = _this.getStateNode(subStateKey).getStateNodes(stateValue[subStateKey]);\n\n return allSubStateNodes.concat(subStateNode);\n }, []));\n };\n /**\r\n * Returns `true` if this state node explicitly handles the given event.\r\n *\r\n * @param event The event in question\r\n */\n\n\n StateNode.prototype.handles = function (event) {\n var eventType = getEventType(event);\n return this.events.includes(eventType);\n };\n /**\r\n * Resolves the given `state` to a new `State` instance relative to this machine.\r\n *\r\n * This ensures that `.events` and `.nextEvents` represent the correct values.\r\n *\r\n * @param state The state to resolve\r\n */\n\n\n StateNode.prototype.resolveState = function (state) {\n var configuration = Array.from(getConfiguration([], this.getStateNodes(state.value)));\n return new State(__assign(__assign({}, state), {\n value: this.resolve(state.value),\n configuration: configuration\n }));\n };\n\n StateNode.prototype.transitionLeafNode = function (stateValue, state, _event) {\n var stateNode = this.getStateNode(stateValue);\n var next = stateNode.next(state, _event);\n\n if (!next || !next.transitions.length) {\n return this.next(state, _event);\n }\n\n return next;\n };\n\n StateNode.prototype.transitionCompoundNode = function (stateValue, state, _event) {\n var subStateKeys = keys(stateValue);\n var stateNode = this.getStateNode(subStateKeys[0]);\n\n var next = stateNode._transition(stateValue[subStateKeys[0]], state, _event);\n\n if (!next || !next.transitions.length) {\n return this.next(state, _event);\n }\n\n return next;\n };\n\n StateNode.prototype.transitionParallelNode = function (stateValue, state, _event) {\n var e_2, _a;\n\n var transitionMap = {};\n\n try {\n for (var _b = __values(keys(stateValue)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var subStateKey = _c.value;\n var subStateValue = stateValue[subStateKey];\n\n if (!subStateValue) {\n continue;\n }\n\n var subStateNode = this.getStateNode(subStateKey);\n\n var next = subStateNode._transition(subStateValue, state, _event);\n\n if (next) {\n transitionMap[subStateKey] = next;\n }\n }\n } catch (e_2_1) {\n e_2 = {\n error: e_2_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_2) throw e_2.error;\n }\n }\n\n var stateTransitions = keys(transitionMap).map(function (key) {\n return transitionMap[key];\n });\n var enabledTransitions = flatten(stateTransitions.map(function (st) {\n return st.transitions;\n }));\n var willTransition = stateTransitions.some(function (st) {\n return st.transitions.length > 0;\n });\n\n if (!willTransition) {\n return this.next(state, _event);\n }\n\n var entryNodes = flatten(stateTransitions.map(function (t) {\n return t.entrySet;\n }));\n var configuration = flatten(keys(transitionMap).map(function (key) {\n return transitionMap[key].configuration;\n }));\n return {\n transitions: enabledTransitions,\n entrySet: entryNodes,\n exitSet: flatten(stateTransitions.map(function (t) {\n return t.exitSet;\n })),\n configuration: configuration,\n source: state,\n actions: flatten(keys(transitionMap).map(function (key) {\n return transitionMap[key].actions;\n }))\n };\n };\n\n StateNode.prototype._transition = function (stateValue, state, _event) {\n // leaf node\n if (isString(stateValue)) {\n return this.transitionLeafNode(stateValue, state, _event);\n } // hierarchical node\n\n\n if (keys(stateValue).length === 1) {\n return this.transitionCompoundNode(stateValue, state, _event);\n } // orthogonal node\n\n\n return this.transitionParallelNode(stateValue, state, _event);\n };\n\n StateNode.prototype.next = function (state, _event) {\n var e_3, _a;\n\n var _this = this;\n\n var eventName = _event.name;\n var actions = [];\n var nextStateNodes = [];\n var selectedTransition;\n\n try {\n for (var _b = __values(this.getCandidates(eventName)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var candidate = _c.value;\n var cond = candidate.cond,\n stateIn = candidate.in;\n var resolvedContext = state.context;\n var isInState = stateIn ? isString(stateIn) && isStateId(stateIn) ? // Check if in state by ID\n state.matches(toStateValue(this.getStateNodeById(stateIn).path, this.delimiter)) : // Check if in state by relative grandparent\n matchesState(toStateValue(stateIn, this.delimiter), path(this.path.slice(0, -2))(state.value)) : true;\n var guardPassed = false;\n\n try {\n guardPassed = !cond || evaluateGuard(this.machine, cond, resolvedContext, _event, state);\n } catch (err) {\n throw new Error(\"Unable to evaluate guard '\" + (cond.name || cond.type) + \"' in transition for event '\" + eventName + \"' in state node '\" + this.id + \"':\\n\" + err.message);\n }\n\n if (guardPassed && isInState) {\n if (candidate.target !== undefined) {\n nextStateNodes = candidate.target;\n }\n\n actions.push.apply(actions, __spread(candidate.actions));\n selectedTransition = candidate;\n break;\n }\n }\n } catch (e_3_1) {\n e_3 = {\n error: e_3_1\n };\n } finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n } finally {\n if (e_3) throw e_3.error;\n }\n }\n\n if (!selectedTransition) {\n return undefined;\n }\n\n if (!nextStateNodes.length) {\n return {\n transitions: [selectedTransition],\n entrySet: [],\n exitSet: [],\n configuration: state.value ? [this] : [],\n source: state,\n actions: actions\n };\n }\n\n var allNextStateNodes = flatten(nextStateNodes.map(function (stateNode) {\n return _this.getRelativeStateNodes(stateNode, state.historyValue);\n }));\n var isInternal = !!selectedTransition.internal;\n var reentryNodes = isInternal ? [] : flatten(allNextStateNodes.map(function (n) {\n return _this.nodesFromChild(n);\n }));\n return {\n transitions: [selectedTransition],\n entrySet: reentryNodes,\n exitSet: isInternal ? [] : [this],\n configuration: allNextStateNodes,\n source: state,\n actions: actions\n };\n };\n\n StateNode.prototype.nodesFromChild = function (childStateNode) {\n if (childStateNode.escapes(this)) {\n return [];\n }\n\n var nodes = [];\n var marker = childStateNode;\n\n while (marker && marker !== this) {\n nodes.push(marker);\n marker = marker.parent;\n }\n\n nodes.push(this); // inclusive\n\n return nodes;\n };\n /**\r\n * Whether the given state node \"escapes\" this state node. If the `stateNode` is equal to or the parent of\r\n * this state node, it does not escape.\r\n */\n\n\n StateNode.prototype.escapes = function (stateNode) {\n if (this === stateNode) {\n return false;\n }\n\n var parent = this.parent;\n\n while (parent) {\n if (parent === stateNode) {\n return false;\n }\n\n parent = parent.parent;\n }\n\n return true;\n };\n\n StateNode.prototype.getActions = function (transition, currentContext, _event, prevState) {\n var e_4, _a, e_5, _b;\n\n var prevConfig = getConfiguration([], prevState ? this.getStateNodes(prevState.value) : [this]);\n var resolvedConfig = transition.configuration.length ? getConfiguration(prevConfig, transition.configuration) : prevConfig;\n\n try {\n for (var resolvedConfig_1 = __values(resolvedConfig), resolvedConfig_1_1 = resolvedConfig_1.next(); !resolvedConfig_1_1.done; resolvedConfig_1_1 = resolvedConfig_1.next()) {\n var sn = resolvedConfig_1_1.value;\n\n if (!has(prevConfig, sn)) {\n transition.entrySet.push(sn);\n }\n }\n } catch (e_4_1) {\n e_4 = {\n error: e_4_1\n };\n } finally {\n try {\n if (resolvedConfig_1_1 && !resolvedConfig_1_1.done && (_a = resolvedConfig_1.return)) _a.call(resolvedConfig_1);\n } finally {\n if (e_4) throw e_4.error;\n }\n }\n\n try {\n for (var prevConfig_1 = __values(prevConfig), prevConfig_1_1 = prevConfig_1.next(); !prevConfig_1_1.done; prevConfig_1_1 = prevConfig_1.next()) {\n var sn = prevConfig_1_1.value;\n\n if (!has(resolvedConfig, sn) || has(transition.exitSet, sn.parent)) {\n transition.exitSet.push(sn);\n }\n }\n } catch (e_5_1) {\n e_5 = {\n error: e_5_1\n };\n } finally {\n try {\n if (prevConfig_1_1 && !prevConfig_1_1.done && (_b = prevConfig_1.return)) _b.call(prevConfig_1);\n } finally {\n if (e_5) throw e_5.error;\n }\n }\n\n if (!transition.source) {\n transition.exitSet = []; // Ensure that root StateNode (machine) is entered\n\n transition.entrySet.push(this);\n }\n\n var doneEvents = flatten(transition.entrySet.map(function (sn) {\n var events = [];\n\n if (sn.type !== 'final') {\n return events;\n }\n\n var parent = sn.parent;\n\n if (!parent.parent) {\n return events;\n }\n\n events.push(done(sn.id, sn.doneData), // TODO: deprecate - final states should not emit done events for their own state.\n done(parent.id, sn.doneData ? mapContext(sn.doneData, currentContext, _event) : undefined));\n var grandparent = parent.parent;\n\n if (grandparent.type === 'parallel') {\n if (getChildren(grandparent).every(function (parentNode) {\n return isInFinalState(transition.configuration, parentNode);\n })) {\n events.push(done(grandparent.id));\n }\n }\n\n return events;\n }));\n transition.exitSet.sort(function (a, b) {\n return b.order - a.order;\n });\n transition.entrySet.sort(function (a, b) {\n return a.order - b.order;\n });\n var entryStates = new Set(transition.entrySet);\n var exitStates = new Set(transition.exitSet);\n\n var _c = __read([flatten(Array.from(entryStates).map(function (stateNode) {\n return __spread(stateNode.activities.map(function (activity) {\n return start(activity);\n }), stateNode.onEntry);\n })).concat(doneEvents.map(raise)), flatten(Array.from(exitStates).map(function (stateNode) {\n return __spread(stateNode.onExit, stateNode.activities.map(function (activity) {\n return stop(activity);\n }));\n }))], 2),\n entryActions = _c[0],\n exitActions = _c[1];\n\n var actions = toActionObjects(exitActions.concat(transition.actions).concat(entryActions), this.machine.options.actions);\n return actions;\n };\n /**\r\n * Determines the next state given the current `state` and sent `event`.\r\n *\r\n * @param state The current State instance or state value\r\n * @param event The event that was sent at the current state\r\n * @param context The current context (extended state) of the current state\r\n */\n\n\n StateNode.prototype.transition = function (state, event, context) {\n if (state === void 0) {\n state = this.initialState;\n }\n\n var _event = toSCXMLEvent(event);\n\n var currentState;\n\n if (state instanceof State) {\n currentState = context === undefined ? state : this.resolveState(State.from(state, context));\n } else {\n var resolvedStateValue = isString(state) ? this.resolve(pathToStateValue(this.getResolvedPath(state))) : this.resolve(state);\n var resolvedContext = context ? context : this.machine.context;\n currentState = this.resolveState(State.from(resolvedStateValue, resolvedContext));\n }\n\n if (!IS_PRODUCTION && _event.name === WILDCARD) {\n throw new Error(\"An event cannot have the wildcard type ('\" + WILDCARD + \"')\");\n }\n\n if (this.strict) {\n if (!this.events.includes(_event.name) && !isBuiltInEvent(_event.name)) {\n throw new Error(\"Machine '\" + this.id + \"' does not accept event '\" + _event.name + \"'\");\n }\n }\n\n var stateTransition = this._transition(currentState.value, currentState, _event) || {\n transitions: [],\n configuration: [],\n entrySet: [],\n exitSet: [],\n source: currentState,\n actions: []\n };\n var prevConfig = getConfiguration([], this.getStateNodes(currentState.value));\n var resolvedConfig = stateTransition.configuration.length ? getConfiguration(prevConfig, stateTransition.configuration) : prevConfig;\n stateTransition.configuration = __spread(resolvedConfig);\n return this.resolveTransition(stateTransition, currentState, _event);\n };\n\n StateNode.prototype.resolveRaisedTransition = function (state, _event, // @ts-ignore\n originalEvent) {\n var _a;\n\n var currentActions = state.actions;\n state = this.transition(state, _event); // Save original event to state\n // TODO: this should be the raised event! Delete in V5 (breaking)\n\n state._event = originalEvent;\n state.event = originalEvent.data;\n\n (_a = state.actions).unshift.apply(_a, __spread(currentActions));\n\n return state;\n };\n\n StateNode.prototype.resolveTransition = function (stateTransition, currentState, _event, context) {\n var e_6, _a;\n\n var _this = this;\n\n if (_event === void 0) {\n _event = initEvent;\n }\n\n if (context === void 0) {\n context = this.machine.context;\n }\n\n var configuration = stateTransition.configuration; // Transition will \"apply\" if:\n // - this is the initial state (there is no current state)\n // - OR there are transitions\n\n var willTransition = !currentState || stateTransition.transitions.length > 0;\n var resolvedStateValue = willTransition ? getValue(this.machine, configuration) : undefined;\n var historyValue = currentState ? currentState.historyValue ? currentState.historyValue : stateTransition.source ? this.machine.historyValue(currentState.value) : undefined : undefined;\n var currentContext = currentState ? currentState.context : context;\n var actions = this.getActions(stateTransition, currentContext, _event, currentState);\n var activities = currentState ? __assign({}, currentState.activities) : {};\n\n try {\n for (var actions_1 = __values(actions), actions_1_1 = actions_1.next(); !actions_1_1.done; actions_1_1 = actions_1.next()) {\n var action = actions_1_1.value;\n\n if (action.type === start$1) {\n activities[action.activity.id || action.activity.type] = action;\n } else if (action.type === stop$1) {\n activities[action.activity.id || action.activity.type] = false;\n }\n }\n } catch (e_6_1) {\n e_6 = {\n error: e_6_1\n };\n } finally {\n try {\n if (actions_1_1 && !actions_1_1.done && (_a = actions_1.return)) _a.call(actions_1);\n } finally {\n if (e_6) throw e_6.error;\n }\n }\n\n var _b = __read(resolveActions(this, currentState, currentContext, _event, actions), 2),\n resolvedActions = _b[0],\n updatedContext = _b[1];\n\n var _c = __read(partition(resolvedActions, function (action) {\n return action.type === raise$1 || action.type === send$1 && action.to === SpecialTargets.Internal;\n }), 2),\n raisedEvents = _c[0],\n nonRaisedActions = _c[1];\n\n var invokeActions = resolvedActions.filter(function (action) {\n return action.type === start$1 && action.activity.type === invoke;\n });\n var children = invokeActions.reduce(function (acc, action) {\n acc[action.activity.id] = createInvocableActor(action.activity, _this.machine);\n return acc;\n }, currentState ? __assign({}, currentState.children) : {});\n var resolvedConfiguration = resolvedStateValue ? stateTransition.configuration : currentState ? currentState.configuration : [];\n var meta = resolvedConfiguration.reduce(function (acc, stateNode) {\n if (stateNode.meta !== undefined) {\n acc[stateNode.id] = stateNode.meta;\n }\n\n return acc;\n }, {});\n var isDone = isInFinalState(resolvedConfiguration, this);\n var nextState = new State({\n value: resolvedStateValue || currentState.value,\n context: updatedContext,\n _event: _event,\n // Persist _sessionid between states\n _sessionid: currentState ? currentState._sessionid : null,\n historyValue: resolvedStateValue ? historyValue ? updateHistoryValue(historyValue, resolvedStateValue) : undefined : currentState ? currentState.historyValue : undefined,\n history: !resolvedStateValue || stateTransition.source ? currentState : undefined,\n actions: resolvedStateValue ? nonRaisedActions : [],\n activities: resolvedStateValue ? activities : currentState ? currentState.activities : {},\n meta: resolvedStateValue ? meta : currentState ? currentState.meta : undefined,\n events: [],\n configuration: resolvedConfiguration,\n transitions: stateTransition.transitions,\n children: children,\n done: isDone\n });\n var didUpdateContext = currentContext !== updatedContext;\n nextState.changed = _event.name === update || didUpdateContext; // Dispose of penultimate histories to prevent memory leaks\n\n var history = nextState.history;\n\n if (history) {\n delete history.history;\n }\n\n if (!resolvedStateValue) {\n return nextState;\n }\n\n var maybeNextState = nextState;\n\n if (!isDone) {\n var isTransient = this._transient || configuration.some(function (stateNode) {\n return stateNode._transient;\n });\n\n if (isTransient) {\n maybeNextState = this.resolveRaisedTransition(maybeNextState, {\n type: nullEvent\n }, _event);\n }\n\n while (raisedEvents.length) {\n var raisedEvent = raisedEvents.shift();\n maybeNextState = this.resolveRaisedTransition(maybeNextState, raisedEvent._event, _event);\n }\n } // Detect if state changed\n\n\n var changed = maybeNextState.changed || (history ? !!maybeNextState.actions.length || didUpdateContext || typeof history.value !== typeof maybeNextState.value || !stateValuesEqual(maybeNextState.value, history.value) : undefined);\n maybeNextState.changed = changed; // Preserve original history after raised events\n\n maybeNextState.historyValue = nextState.historyValue;\n maybeNextState.history = history;\n return maybeNextState;\n };\n /**\r\n * Returns the child state node from its relative `stateKey`, or throws.\r\n */\n\n\n StateNode.prototype.getStateNode = function (stateKey) {\n if (isStateId(stateKey)) {\n return this.machine.getStateNodeById(stateKey);\n }\n\n if (!this.states) {\n throw new Error(\"Unable to retrieve child state '\" + stateKey + \"' from '\" + this.id + \"'; no child states exist.\");\n }\n\n var result = this.states[stateKey];\n\n if (!result) {\n throw new Error(\"Child state '\" + stateKey + \"' does not exist on '\" + this.id + \"'\");\n }\n\n return result;\n };\n /**\r\n * Returns the state node with the given `stateId`, or throws.\r\n *\r\n * @param stateId The state ID. The prefix \"#\" is removed.\r\n */\n\n\n StateNode.prototype.getStateNodeById = function (stateId) {\n var resolvedStateId = isStateId(stateId) ? stateId.slice(STATE_IDENTIFIER.length) : stateId;\n\n if (resolvedStateId === this.id) {\n return this;\n }\n\n var stateNode = this.machine.idMap[resolvedStateId];\n\n if (!stateNode) {\n throw new Error(\"Child state node '#\" + resolvedStateId + \"' does not exist on machine '\" + this.id + \"'\");\n }\n\n return stateNode;\n };\n /**\r\n * Returns the relative state node from the given `statePath`, or throws.\r\n *\r\n * @param statePath The string or string array relative path to the state node.\r\n */\n\n\n StateNode.prototype.getStateNodeByPath = function (statePath) {\n if (typeof statePath === 'string' && isStateId(statePath)) {\n try {\n return this.getStateNodeById(statePath.slice(1));\n } catch (e) {// try individual paths\n // throw e;\n }\n }\n\n var arrayStatePath = toStatePath(statePath, this.delimiter).slice();\n var currentStateNode = this;\n\n while (arrayStatePath.length) {\n var key = arrayStatePath.shift();\n\n if (!key.length) {\n break;\n }\n\n currentStateNode = currentStateNode.getStateNode(key);\n }\n\n return currentStateNode;\n };\n /**\r\n * Resolves a partial state value with its full representation in this machine.\r\n *\r\n * @param stateValue The partial state value to resolve.\r\n */\n\n\n StateNode.prototype.resolve = function (stateValue) {\n var _a;\n\n var _this = this;\n\n if (!stateValue) {\n return this.initialStateValue || EMPTY_OBJECT; // TODO: type-specific properties\n }\n\n switch (this.type) {\n case 'parallel':\n return mapValues(this.initialStateValue, function (subStateValue, subStateKey) {\n return subStateValue ? _this.getStateNode(subStateKey).resolve(stateValue[subStateKey] || subStateValue) : EMPTY_OBJECT;\n });\n\n case 'compound':\n if (isString(stateValue)) {\n var subStateNode = this.getStateNode(stateValue);\n\n if (subStateNode.type === 'parallel' || subStateNode.type === 'compound') {\n return _a = {}, _a[stateValue] = subStateNode.initialStateValue, _a;\n }\n\n return stateValue;\n }\n\n if (!keys(stateValue).length) {\n return this.initialStateValue || {};\n }\n\n return mapValues(stateValue, function (subStateValue, subStateKey) {\n return subStateValue ? _this.getStateNode(subStateKey).resolve(subStateValue) : EMPTY_OBJECT;\n });\n\n default:\n return stateValue || EMPTY_OBJECT;\n }\n };\n\n StateNode.prototype.getResolvedPath = function (stateIdentifier) {\n if (isStateId(stateIdentifier)) {\n var stateNode = this.machine.idMap[stateIdentifier.slice(STATE_IDENTIFIER.length)];\n\n if (!stateNode) {\n throw new Error(\"Unable to find state node '\" + stateIdentifier + \"'\");\n }\n\n return stateNode.path;\n }\n\n return toStatePath(stateIdentifier, this.delimiter);\n };\n\n Object.defineProperty(StateNode.prototype, \"initialStateValue\", {\n get: function () {\n var _a;\n\n if (this.__cache.initialStateValue) {\n return this.__cache.initialStateValue;\n }\n\n var initialStateValue;\n\n if (this.type === 'parallel') {\n initialStateValue = mapFilterValues(this.states, function (state) {\n return state.initialStateValue || EMPTY_OBJECT;\n }, function (stateNode) {\n return !(stateNode.type === 'history');\n });\n } else if (this.initial !== undefined) {\n if (!this.states[this.initial]) {\n throw new Error(\"Initial state '\" + this.initial + \"' not found on '\" + this.key + \"'\");\n }\n\n initialStateValue = isLeafNode(this.states[this.initial]) ? this.initial : (_a = {}, _a[this.initial] = this.states[this.initial].initialStateValue, _a);\n }\n\n this.__cache.initialStateValue = initialStateValue;\n return this.__cache.initialStateValue;\n },\n enumerable: true,\n configurable: true\n });\n\n StateNode.prototype.getInitialState = function (stateValue, context) {\n var configuration = this.getStateNodes(stateValue);\n return this.resolveTransition({\n configuration: configuration,\n entrySet: configuration,\n exitSet: [],\n transitions: [],\n source: undefined,\n actions: []\n }, undefined, undefined, context);\n };\n\n Object.defineProperty(StateNode.prototype, \"initialState\", {\n /**\r\n * The initial State instance, which includes all actions to be executed from\r\n * entering the initial state.\r\n */\n get: function () {\n this._init();\n\n var initialStateValue = this.initialStateValue;\n\n if (!initialStateValue) {\n throw new Error(\"Cannot retrieve initial state from simple state '\" + this.id + \"'.\");\n }\n\n return this.getInitialState(initialStateValue);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(StateNode.prototype, \"target\", {\n /**\r\n * The target state value of the history state node, if it exists. This represents the\r\n * default state value to transition to if no history value exists yet.\r\n */\n get: function () {\n var target;\n\n if (this.type === 'history') {\n var historyConfig = this.config;\n\n if (isString(historyConfig.target)) {\n target = isStateId(historyConfig.target) ? pathToStateValue(this.machine.getStateNodeById(historyConfig.target).path.slice(this.path.length - 1)) : historyConfig.target;\n } else {\n target = historyConfig.target;\n }\n }\n\n return target;\n },\n enumerable: true,\n configurable: true\n });\n /**\r\n * Returns the leaf nodes from a state path relative to this state node.\r\n *\r\n * @param relativeStateId The relative state path to retrieve the state nodes\r\n * @param history The previous state to retrieve history\r\n * @param resolve Whether state nodes should resolve to initial child state nodes\r\n */\n\n StateNode.prototype.getRelativeStateNodes = function (relativeStateId, historyValue, resolve) {\n if (resolve === void 0) {\n resolve = true;\n }\n\n return resolve ? relativeStateId.type === 'history' ? relativeStateId.resolveHistory(historyValue) : relativeStateId.initialStateNodes : [relativeStateId];\n };\n\n Object.defineProperty(StateNode.prototype, \"initialStateNodes\", {\n get: function () {\n var _this = this;\n\n if (isLeafNode(this)) {\n return [this];\n } // Case when state node is compound but no initial state is defined\n\n\n if (this.type === 'compound' && !this.initial) {\n if (!IS_PRODUCTION) {\n warn(false, \"Compound state node '\" + this.id + \"' has no initial state.\");\n }\n\n return [this];\n }\n\n var initialStateNodePaths = toStatePaths(this.initialStateValue);\n return flatten(initialStateNodePaths.map(function (initialPath) {\n return _this.getFromRelativePath(initialPath);\n }));\n },\n enumerable: true,\n configurable: true\n });\n /**\r\n * Retrieves state nodes from a relative path to this state node.\r\n *\r\n * @param relativePath The relative path from this state node\r\n * @param historyValue\r\n */\n\n StateNode.prototype.getFromRelativePath = function (relativePath) {\n if (!relativePath.length) {\n return [this];\n }\n\n var _a = __read(relativePath),\n stateKey = _a[0],\n childStatePath = _a.slice(1);\n\n if (!this.states) {\n throw new Error(\"Cannot retrieve subPath '\" + stateKey + \"' from node with no states\");\n }\n\n var childStateNode = this.getStateNode(stateKey);\n\n if (childStateNode.type === 'history') {\n return childStateNode.resolveHistory();\n }\n\n if (!this.states[stateKey]) {\n throw new Error(\"Child state '\" + stateKey + \"' does not exist on '\" + this.id + \"'\");\n }\n\n return this.states[stateKey].getFromRelativePath(childStatePath);\n };\n\n StateNode.prototype.historyValue = function (relativeStateValue) {\n if (!keys(this.states).length) {\n return undefined;\n }\n\n return {\n current: relativeStateValue || this.initialStateValue,\n states: mapFilterValues(this.states, function (stateNode, key) {\n if (!relativeStateValue) {\n return stateNode.historyValue();\n }\n\n var subStateValue = isString(relativeStateValue) ? undefined : relativeStateValue[key];\n return stateNode.historyValue(subStateValue || stateNode.initialStateValue);\n }, function (stateNode) {\n return !stateNode.history;\n })\n };\n };\n /**\r\n * Resolves to the historical value(s) of the parent state node,\r\n * represented by state nodes.\r\n *\r\n * @param historyValue\r\n */\n\n\n StateNode.prototype.resolveHistory = function (historyValue) {\n var _this = this;\n\n if (this.type !== 'history') {\n return [this];\n }\n\n var parent = this.parent;\n\n if (!historyValue) {\n var historyTarget = this.target;\n return historyTarget ? flatten(toStatePaths(historyTarget).map(function (relativeChildPath) {\n return parent.getFromRelativePath(relativeChildPath);\n })) : parent.initialStateNodes;\n }\n\n var subHistoryValue = nestedPath(parent.path, 'states')(historyValue).current;\n\n if (isString(subHistoryValue)) {\n return [parent.getStateNode(subHistoryValue)];\n }\n\n return flatten(toStatePaths(subHistoryValue).map(function (subStatePath) {\n return _this.history === 'deep' ? parent.getFromRelativePath(subStatePath) : [parent.states[subStatePath[0]]];\n }));\n };\n\n Object.defineProperty(StateNode.prototype, \"stateIds\", {\n /**\r\n * All the state node IDs of this state node and its descendant state nodes.\r\n */\n get: function () {\n var _this = this;\n\n var childStateIds = flatten(keys(this.states).map(function (stateKey) {\n return _this.states[stateKey].stateIds;\n }));\n return [this.id].concat(childStateIds);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(StateNode.prototype, \"events\", {\n /**\r\n * All the event types accepted by this state node and its descendants.\r\n */\n get: function () {\n var e_7, _a, e_8, _b;\n\n if (this.__cache.events) {\n return this.__cache.events;\n }\n\n var states = this.states;\n var events = new Set(this.ownEvents);\n\n if (states) {\n try {\n for (var _c = __values(keys(states)), _d = _c.next(); !_d.done; _d = _c.next()) {\n var stateId = _d.value;\n var state = states[stateId];\n\n if (state.states) {\n try {\n for (var _e = (e_8 = void 0, __values(state.events)), _f = _e.next(); !_f.done; _f = _e.next()) {\n var event_1 = _f.value;\n events.add(\"\" + event_1);\n }\n } catch (e_8_1) {\n e_8 = {\n error: e_8_1\n };\n } finally {\n try {\n if (_f && !_f.done && (_b = _e.return)) _b.call(_e);\n } finally {\n if (e_8) throw e_8.error;\n }\n }\n }\n }\n } catch (e_7_1) {\n e_7 = {\n error: e_7_1\n };\n } finally {\n try {\n if (_d && !_d.done && (_a = _c.return)) _a.call(_c);\n } finally {\n if (e_7) throw e_7.error;\n }\n }\n }\n\n return this.__cache.events = Array.from(events);\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(StateNode.prototype, \"ownEvents\", {\n /**\r\n * All the events that have transitions directly from this state node.\r\n *\r\n * Excludes any inert events.\r\n */\n get: function () {\n var events = new Set(this.transitions.filter(function (transition) {\n return !(!transition.target && !transition.actions.length && transition.internal);\n }).map(function (transition) {\n return transition.eventType;\n }));\n return Array.from(events);\n },\n enumerable: true,\n configurable: true\n });\n\n StateNode.prototype.resolveTarget = function (_target) {\n var _this = this;\n\n if (_target === undefined) {\n // an undefined target signals that the state node should not transition from that state when receiving that event\n return undefined;\n }\n\n return _target.map(function (target) {\n if (!isString(target)) {\n return target;\n }\n\n var isInternalTarget = target[0] === _this.delimiter; // If internal target is defined on machine,\n // do not include machine key on target\n\n if (isInternalTarget && !_this.parent) {\n return _this.getStateNodeByPath(target.slice(1));\n }\n\n var resolvedTarget = isInternalTarget ? _this.key + target : target;\n\n if (_this.parent) {\n try {\n var targetStateNode = _this.parent.getStateNodeByPath(resolvedTarget);\n\n return targetStateNode;\n } catch (err) {\n throw new Error(\"Invalid transition definition for state node '\" + _this.id + \"':\\n\" + err.message);\n }\n } else {\n return _this.getStateNodeByPath(resolvedTarget);\n }\n });\n };\n\n StateNode.prototype.formatTransition = function (transitionConfig) {\n var _this = this;\n\n var normalizedTarget = normalizeTarget(transitionConfig.target);\n var internal = 'internal' in transitionConfig ? transitionConfig.internal : normalizedTarget ? normalizedTarget.some(function (_target) {\n return isString(_target) && _target[0] === _this.delimiter;\n }) : true;\n var guards = this.machine.options.guards;\n var target = this.resolveTarget(normalizedTarget);\n\n var transition = __assign(__assign({}, transitionConfig), {\n actions: toActionObjects(toArray(transitionConfig.actions)),\n cond: toGuard(transitionConfig.cond, guards),\n target: target,\n source: this,\n internal: internal,\n eventType: transitionConfig.event,\n toJSON: function () {\n return __assign(__assign({}, transition), {\n target: transition.target ? transition.target.map(function (t) {\n return \"#\" + t.id;\n }) : undefined,\n source: \"#\" + _this.id\n });\n }\n });\n\n return transition;\n };\n\n StateNode.prototype.formatTransitions = function () {\n var e_9, _a;\n\n var _this = this;\n\n var onConfig;\n\n if (!this.config.on) {\n onConfig = [];\n } else if (Array.isArray(this.config.on)) {\n onConfig = this.config.on;\n } else {\n var _b = this.config.on,\n _c = WILDCARD,\n _d = _b[_c],\n wildcardConfigs = _d === void 0 ? [] : _d,\n strictTransitionConfigs_1 = __rest(_b, [typeof _c === \"symbol\" ? _c : _c + \"\"]);\n\n onConfig = flatten(keys(strictTransitionConfigs_1).map(function (key) {\n if (!IS_PRODUCTION && key === NULL_EVENT) {\n warn(false, \"Empty string transition configs (e.g., `{ on: { '': ... }}`) for transient transitions are deprecated. Specify the transition in the `{ always: ... }` property instead. \" + (\"Please check the `on` configuration for \\\"#\" + _this.id + \"\\\".\"));\n }\n\n var transitionConfigArray = toTransitionConfigArray(key, strictTransitionConfigs_1[key]);\n\n if (!IS_PRODUCTION) {\n validateArrayifiedTransitions(_this, key, transitionConfigArray);\n }\n\n return transitionConfigArray;\n }).concat(toTransitionConfigArray(WILDCARD, wildcardConfigs)));\n }\n\n var eventlessConfig = this.config.always ? toTransitionConfigArray('', this.config.always) : [];\n var doneConfig = this.config.onDone ? toTransitionConfigArray(String(done(this.id)), this.config.onDone) : [];\n\n if (!IS_PRODUCTION) {\n warn(!(this.config.onDone && !this.parent), \"Root nodes cannot have an \\\".onDone\\\" transition. Please check the config of \\\"\" + this.id + \"\\\".\");\n }\n\n var invokeConfig = flatten(this.invoke.map(function (invokeDef) {\n var settleTransitions = [];\n\n if (invokeDef.onDone) {\n settleTransitions.push.apply(settleTransitions, __spread(toTransitionConfigArray(String(doneInvoke(invokeDef.id)), invokeDef.onDone)));\n }\n\n if (invokeDef.onError) {\n settleTransitions.push.apply(settleTransitions, __spread(toTransitionConfigArray(String(error(invokeDef.id)), invokeDef.onError)));\n }\n\n return settleTransitions;\n }));\n var delayedTransitions = this.after;\n var formattedTransitions = flatten(__spread(doneConfig, invokeConfig, onConfig, eventlessConfig).map(function (transitionConfig) {\n return toArray(transitionConfig).map(function (transition) {\n return _this.formatTransition(transition);\n });\n }));\n\n try {\n for (var delayedTransitions_1 = __values(delayedTransitions), delayedTransitions_1_1 = delayedTransitions_1.next(); !delayedTransitions_1_1.done; delayedTransitions_1_1 = delayedTransitions_1.next()) {\n var delayedTransition = delayedTransitions_1_1.value;\n formattedTransitions.push(delayedTransition);\n }\n } catch (e_9_1) {\n e_9 = {\n error: e_9_1\n };\n } finally {\n try {\n if (delayedTransitions_1_1 && !delayedTransitions_1_1.done && (_a = delayedTransitions_1.return)) _a.call(delayedTransitions_1);\n } finally {\n if (e_9) throw e_9.error;\n }\n }\n\n return formattedTransitions;\n };\n\n return StateNode;\n}();\n\nexport { StateNode };","import { StateNode } from './StateNode.js';\n\nfunction Machine(config, options, initialContext) {\n if (initialContext === void 0) {\n initialContext = config.context;\n }\n\n var resolvedInitialContext = typeof initialContext === 'function' ? initialContext() : initialContext;\n return new StateNode(config, options, resolvedInitialContext);\n}\n\nfunction createMachine(config, options) {\n var resolvedInitialContext = typeof config.context === 'function' ? config.context() : config.context;\n return new StateNode(config, options, resolvedInitialContext);\n}\n\nexport { Machine, createMachine };","import { Machine } from \"xstate\";\n\nexport const waitingMachine = Machine({\n id: \"waitingMachine\",\n initial: \"idle\",\n states: {\n idle: {\n on: {\n GET_MOTION: \"pending\"\n }\n },\n pending: {\n on: {\n HAS_MOTION: \"discussion\",\n NO_MOTION: \"no_motion\"\n }\n },\n discussion: {\n type: \"final\"\n },\n no_motion: {\n meta: {\n title: \"No Motion Available\",\n message:\n \"There is currently no motion on the floor. Please wait for the next motion to be on the floor.\"\n },\n on: {\n CLOSE_MESSAGE: \"idle\"\n }\n }\n }\n});\n\nexport const motionWaitingMachine = Machine({\n id: \"motionWaitingMachine\",\n initial: \"idle\",\n states: {\n idle: {\n on: {\n GET_MOTION: \"pending\"\n }\n },\n pending: {\n on: {\n HAS_MOTION: \"discussion\",\n IS_CURRENT: \"is_current\",\n NO_MOTION: \"no_motion\"\n }\n },\n discussion: {\n type: \"final\"\n },\n no_motion: {\n type: \"final\"\n },\n is_current: {\n meta: {\n title: \"This is the current motion.\",\n message: \"Please wait for the results to be announced.\"\n },\n on: {\n CLOSE_MESSAGE: \"idle\"\n }\n }\n }\n});\n","export function mergeMeta(meta) {\n return Object.keys(meta).reduce((acc, key) => {\n const value = meta[key];\n\n // Assuming each meta value is an object\n Object.assign(acc, value);\n\n return acc;\n }, {});\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:\"alert\",staticClass:\"alert alert-danger\",attrs:{\"role\":\"alert\"}},[_c('h4',{staticClass:\"alert-heading font-weight-bold d-flex justify-content-between align-items-center\"},[_vm._v(\" \"+_vm._s(_vm.alertContent.title)+\" \"),_c('button',{staticClass:\"btn btn-alert-close\",attrs:{\"type\":\"button\",\"data-dismiss\":\"alert\",\"aria-label\":\"Close\"},on:{\"click\":function($event){return _vm.$emit('close')}}},[_c('span',{attrs:{\"aria-hidden\":\"true\"}},[_vm._v(\"×\")])])]),_c('hr'),_c('p',[_vm._v(\" \"+_vm._s(_vm.alertContent.message)+\" \")])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"alert alert-danger\" role=\"alert\" ref=\"alert\">\n <h4\n class=\"alert-heading font-weight-bold d-flex justify-content-between align-items-center\"\n >\n {{ alertContent.title }}\n <button\n type=\"button\"\n class=\"btn btn-alert-close\"\n data-dismiss=\"alert\"\n aria-label=\"Close\"\n @click=\"$emit('close')\"\n >\n <span aria-hidden=\"true\">×</span>\n </button>\n </h4>\n <hr />\n <p>\n {{ alertContent.message }}\n </p>\n </div>\n</template>\n\n<script>\nexport default {\n name: \"ErrorMessage\",\n props: {\n alertContent: Object\n }\n};\n</script>\n\n<style scoped lang=\"scss\">\n.btn-alert-close {\n background: transparent;\n border: 1px solid #721c24;\n color: #721c24;\n padding: 4px 12px;\n\n span {\n font-size: 2rem;\n font-weight: bold;\n }\n}\n</style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorMessage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ErrorMessage.vue?vue&type=script&lang=js&\"","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import { render, staticRenderFns } from \"./ErrorMessage.vue?vue&type=template&id=1e87c3f2&scoped=true&\"\nimport script from \"./ErrorMessage.vue?vue&type=script&lang=js&\"\nexport * from \"./ErrorMessage.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ErrorMessage.vue?vue&type=style&index=0&id=1e87c3f2&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1e87c3f2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(!_vm.h3 && !_vm.div)?_c('h2',[_c('b',[_vm._t(\"default\")],2)]):_vm._e(),(_vm.h3)?_c('h3',[_c('b',[_vm._t(\"default\")],2)]):_vm._e(),(_vm.div)?_c('div',[_vm._t(\"default\")],2):_vm._e(),_c('SpinningLoader',{attrs:{\"show\":true}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.show),expression:\"show\"}],staticClass:\"spinner\"},[_c('div',{staticClass:\"double-bounce1\"}),_c('div',{staticClass:\"double-bounce2\"})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"spinner\" v-show=\"show\">\n <div class=\"double-bounce1\"></div>\n <div class=\"double-bounce2\"></div>\n </div>\n</template>\n<script>\nexport default {\n name: \"SpinningLoader\",\n props: {\n show: Boolean\n }\n};\n</script>\n<style scoped>\n.spinner {\n width: 40px;\n height: 40px;\n position: relative;\n top: 1rem;\n display: inline-block;\n}\n\n.double-bounce1,\n.double-bounce2 {\n width: 100%;\n height: 100%;\n border-radius: 50%;\n background-color: #c03;\n opacity: 0.6;\n position: absolute;\n top: 0;\n left: 0;\n\n -webkit-animation: sk-bounce 2s infinite ease-in-out;\n animation: sk-bounce 2s infinite ease-in-out;\n}\n\n.double-bounce2 {\n -webkit-animation-delay: -1s;\n animation-delay: -1s;\n}\n\n@-webkit-keyframes sk-bounce {\n 0%,\n 100% {\n -webkit-transform: scale(0);\n }\n 50% {\n -webkit-transform: scale(1);\n }\n}\n\n@keyframes sk-bounce {\n 0%,\n 100% {\n transform: scale(0);\n -webkit-transform: scale(0);\n }\n 50% {\n transform: scale(1);\n -webkit-transform: scale(1);\n }\n}\n</style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpinningLoader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpinningLoader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SpinningLoader.vue?vue&type=template&id=37619534&scoped=true&\"\nimport script from \"./SpinningLoader.vue?vue&type=script&lang=js&\"\nexport * from \"./SpinningLoader.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SpinningLoader.vue?vue&type=style&index=0&id=37619534&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"37619534\",\n null\n \n)\n\nexport default component.exports","<template>\n <div>\n <h2 v-if=\"!h3 && !div\">\n <b><slot /></b>\n </h2>\n <h3 v-if=\"h3\">\n <b><slot /></b>\n </h3>\n <div v-if=\"div\"><slot /></div>\n <SpinningLoader :show=\"true\" />\n </div>\n</template>\n\n<script>\nimport SpinningLoader from \"@/components/SpinningLoader\";\nexport default {\n name: \"LoadingMessage\",\n props: {\n h3: Boolean,\n div: Boolean\n },\n components: { SpinningLoader }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingMessage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingMessage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LoadingMessage.vue?vue&type=template&id=2c53b8ef&scoped=true&\"\nimport script from \"./LoadingMessage.vue?vue&type=script&lang=js&\"\nexport * from \"./LoadingMessage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2c53b8ef\",\n null\n \n)\n\nexport default component.exports","<template>\n <div class=\"idle\">\n <div v-if=\"current.matches('idle')\">\n <h2>\n <b>Please wait for the next motion</b>\n </h2>\n <div class=\"mt-4\">\n <button\n class=\"btn btn-primary btn-lg\"\n :class=\"{ disabled: current.matches('pending') }\"\n @click=\"getNextMotion()\"\n >\n Get Next Motion\n </button>\n </div>\n </div>\n <LoadingMessage v-if=\"current.matches('pending')\"\n >Please wait for the next motion...</LoadingMessage\n >\n <ErrorMessage\n v-if=\"current.matches('no_motion')\"\n :alert-content=\"mergeMeta(current.meta)\"\n @close=\"send('CLOSE_MESSAGE')\"\n />\n </div>\n</template>\n\n<script>\nimport { interpret } from \"xstate\";\nimport { waitingMachine } from \"@/machines/waitingMachine\";\nimport { mergeMeta } from \"@/helpers\";\nimport ErrorMessage from \"@/components/ErrorMessage\";\nimport LoadingMessage from \"@/components/LoadingMessage\";\n\nexport default {\n name: \"Idle\",\n components: { LoadingMessage, ErrorMessage },\n data() {\n return {\n waitingService: interpret(waitingMachine),\n current: waitingMachine.initialState\n };\n },\n async created() {\n // Start service on component creation\n this.waitingService\n .onTransition(state => {\n // Update the current state component data property with the next state\n this.current = state;\n })\n .start();\n await this.getNextMotion();\n },\n methods: {\n async getNextMotion() {\n if (this.current.matches(\"pending\")) {\n return;\n }\n this.waitingService.send(\"GET_MOTION\");\n const response = await this.$store.dispatch(\"fetchMotion\");\n if (response.code === \"no_motion\") {\n this.waitingService.send(\"NO_MOTION\");\n }\n },\n send(event) {\n this.waitingService.send(event);\n },\n mergeMeta\n }\n};\n</script>\n\n<style lang=\"scss\">\n.header {\n display: flex;\n margin: 1em;\n h2 {\n margin: 0;\n }\n}\n</style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Idle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Idle.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Idle.vue?vue&type=template&id=731eec25&\"\nimport script from \"./Idle.vue?vue&type=script&lang=js&\"\nexport * from \"./Idle.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Idle.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.current.matches('idle'))?_c('MotionContent',{attrs:{\"motion\":_vm.motion}}):_vm._e(),_c('div',{staticClass:\"mt-4\"}),_c('div',{staticClass:\"mt-4\"},[(_vm.current.matches('idle'))?_c('div',[_c('div',[_c('button',{staticClass:\"btn btn-primary btn-lg\",class:{ disabled: _vm.current.matches('pending') },on:{\"click\":function($event){return _vm.reloadMotion()}}},[_vm._v(\" Reload Motion \"),_c('i',{staticClass:\" ml-3 fas fa-spinner\"})])]),(false)?_c('div',[_c('button',{staticClass:\"btn btn-primary btn-lg\",class:{ disabled: _vm.current.matches('pending') },on:{\"click\":function($event){return _vm.canVoteOnMotion()}}},[_vm._v(\" Show Voting Options \")])]):_vm._e(),(false)?_c('div',{staticClass:\"mt-5\"},[_c('button',{staticClass:\"btn btn-secondary btn-lg\",class:{ disabled: _vm.current.matches('pending') },on:{\"click\":function($event){return _vm.canShowAmendedMotion()}}},[_vm._v(\" Show Amended Motion \")])]):_vm._e(),(false)?_c('div',{staticClass:\" mt-5\"},[_c('button',{staticClass:\"btn btn-primary btn-lg btn-block\",class:{ disabled: _vm.current.matches('pending') },on:{\"click\":function($event){return _vm.showVotingResults()}}},[_vm._v(\" Show Voting Results \")])]):_vm._e()]):_vm._e(),(_vm.current.matches('pending'))?_c('div',[_vm._m(0),_c('SpinningLoader',{attrs:{\"show\":true}})],1):_vm._e(),(\n _vm.current.matches('still_discussing') ||\n _vm.current.matches('not_amended') ||\n _vm.current.matches('being_amended')\n )?_c('ErrorMessage',{attrs:{\"alert-content\":_vm.mergeMeta(_vm.current.meta)},on:{\"close\":function($event){return _vm.discussionService.send('CLOSE_MESSAGE')}}}):_vm._e()],1)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h3',[_c('b',[_vm._v(\"Getting latest motion.\")])])}]\n\nexport { render, staticRenderFns }","import { Machine } from \"xstate\";\n\nexport const discussionMachine = Machine({\n id: \"discussionMachine\",\n initial: \"idle\",\n states: {\n idle: {\n on: {\n CHECK_IF_CAN_VOTE: \"pending\",\n CHECK_IF_AMENDED: \"pending\",\n RELOAD_MOTION: \"pending\"\n }\n },\n pending: {\n on: {\n DISCUSSING: \"idle\",\n CAN_VOTE: \"voting\",\n CAN_NOT_VOTE: \"still_discussing\",\n BEING_AMENDED: \"being_amended\",\n NOT_AMENDED: \"not_amended\"\n }\n },\n voting: {\n type: \"final\"\n },\n show_amended: {\n type: \"final\"\n },\n still_discussing: {\n meta: {\n title: \"Motion Still Being Discussed\",\n message:\n \"This motion is still being discussed and is not ready to be voted on. Please wait for when the time to vote is announced.\"\n },\n on: {\n CLOSE_MESSAGE: \"idle\"\n }\n },\n being_amended: {\n meta: {\n title: \"Motion Is Being Amended\",\n message: \"Please close this message to see the amended motion\"\n },\n on: {\n CLOSE_MESSAGE: \"show_amended\"\n }\n },\n not_amended: {\n meta: {\n title: \"Motion Not Being Amended\",\n message:\n \"This motion is still being discussed and is not being amended. Please wait for when the time to review the amendment is announced.\"\n },\n on: {\n CLOSE_MESSAGE: \"idle\"\n }\n }\n }\n});\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h2',{staticClass:\"h3\",class:{ 'pb-4': !_vm.motionStatus }},[_c('b',[_vm._v(\"MOTION ON THE FLOOR\")])]),(_vm.motionStatus.length)?_c('div',{staticClass:\"h4\"},[_c('span',{staticClass:\"badge badge-warning\"},[_vm._v(_vm._s(_vm.motionStatus))])]):_vm._e(),_c('h2',{staticClass:\"mt-3\"},[_c('b',[_vm._v(\" \"+_vm._s(_vm.motionTitle)+\" \")])]),(_vm.motionDetails)?_c('div',{staticClass:\"mt-2\"},[_c('p',[_vm._v(_vm._s(_vm.motionDetails))])]):_vm._e(),(_vm.motionDescription)?_c('div',{staticClass:\"mt-4\",domProps:{\"innerHTML\":_vm._s(_vm.motionDescription)}}):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <h2 class=\"h3\" :class=\"{ 'pb-4': !motionStatus }\">\n <b>MOTION ON THE FLOOR</b>\n </h2>\n <div class=\"h4\" v-if=\"motionStatus.length\">\n <span class=\"badge badge-warning\">{{ motionStatus }}</span>\n </div>\n <h2 class=\"mt-3\">\n <b>\n {{ motionTitle }}\n </b>\n </h2>\n <div class=\"mt-2\" v-if=\"motionDetails\">\n <p>{{ motionDetails }}</p>\n </div>\n <div class=\"mt-4\" v-if=\"motionDescription\" v-html=\"motionDescription\"></div>\n </div>\n</template>\n\n<script>\nexport default {\n name: \"MotionContent\",\n props: {\n motion: Object,\n amendment: Boolean\n },\n computed: {\n motionStatus() {\n return this.motion.status_label;\n },\n motionTitle() {\n return this.motion.motion_title_new || \"Motion Has No Title\";\n },\n motionDetails() {\n let type = this.motion.motion_type;\n if (!type) return null;\n const details = {\n main:\n \"Needs Second: Yes | Debatable: Yes | Amendable: Yes | Vote Needed: Majority\",\n committee_motion:\n \"Needs Second: No | Debatable: Yes | Amendable: Yes | Vote Needed: Majority\",\n motion_as_amended:\n \"Needs Second: Yes | Debatable: Yes | Amendable: Yes | Vote Needed: Majority\",\n amend:\n \"Needs Second: Yes | Debatable: Yes | Amendable: Yes | Vote Needed: Majority\",\n amend_limit:\n \"Needs Second: Yes | Debatable: No | Amendable: Yes | Vote Needed: Majority\",\n amend_postponement:\n \"Needs Second: Yes | Debatable: Yes | Amendable: Yes | Vote Needed: Majority\",\n amend_refer:\n \"Needs Second: Yes | Debatable: Yes | Amendable: Yes | Vote Needed: Majority\",\n amend_seriatim:\n \"Needs Second: Yes | Debatable: No | Amendable: Yes | Vote Needed: Majority\",\n amend_amend_seriatim:\n \"Needs Second: Yes | Debatable: No | Amendable: No | Vote Needed: Majority\",\n amend_divide_question:\n \"Needs Second: Yes | Debatable: No | Amendable: Yes | Vote Needed: Majority\",\n amend_amend_divide_question:\n \"Needs Second: Yes | Debatable: No | Amendable: No | Vote Needed: Majority\",\n amend_rescind_question:\n \"Needs Second: Yes | Debatable: Yes | Amendable: Yes | Vote Needed: Majority\",\n amend_amend_rescind_question:\n \"Needs Second: Yes | Debatable: Yes | Amendable: No | Vote Needed: Majority\",\n amendment_as_amended:\n \"Needs Second: Yes | Debatable: Yes | Amendable: Yes | Vote Needed: Majority\",\n amend_amend:\n \"Needs Second: Yes | Debatable: Yes | Amendable: No | Vote Needed: Majority\",\n refer_to_committee:\n \"Needs Second: Yes | Debatable: Yes | Amendable: Yes | Vote Needed: Majority\",\n postpone:\n \"Needs Second: Yes | Debatable: Yes | Amendable: Yes | Vote Needed: Majority\",\n postpone_indefinitely:\n \"Needs Second: Yes | Debatable: Yes | Amendable: No | Vote Needed: Majority\",\n limit:\n \"Needs Second: Yes | Debatable: No | Amendable: Yes | Vote Needed: Two Thirds\",\n call:\n \"Needs Second: Yes | Debatable: No | Amendable: No | Vote Needed: Two Thirds\",\n table:\n \"Needs Second: Yes | Debatable: No | Amendable: No | Vote Needed: Majority\",\n amend_amend_limit:\n \"Needs Second: Yes | Debatable: No | Amendable: No | Vote Needed: Majority\",\n amend_amend_postponement:\n \"Needs Second: Yes | Debatable: Yes | Amendable: No | Vote Needed: Majority\",\n amend_amend_refer:\n \"Needs Second: Yes | Debatable: Yes | Amendable: No | Vote Needed: Majority\",\n appeal:\n \"Needs Second: Yes | Debatable: If motion being applied to is debatable | Amendable: No | Vote Needed: Majority in the negative is needed to overturn the ruling of the Chair\",\n seriatim:\n \"Needs Second: Yes | Debatable: No | Amendable: Yes | Vote Needed: Majority\",\n divide_question:\n \"Needs Second: Yes | Debatable: No | Amendable: Yes | Vote Needed: Majority\",\n divide_assembly:\n \"Needs Second: No | Debatable: No | Amendable: No | Vote Needed: One member\",\n objection_consideration:\n \"Needs Second: No | Debatable: No | Amendable: No | Vote Needed: Two thirds\",\n point:\n \"Needs Second: No | Debatable: No | Amendable: No | Vote Needed: Ruled by chair\",\n suspend:\n \"Needs Second: Yes | Debatable: No | Amendable: No | Vote Needed: Two thirds\",\n withdraw:\n \"Needs Second: Yes, if motion is made by person requesting permission; no, if made by another member | Debatable: No | Amendable: No | Vote Needed: Majority\",\n information:\n \"Needs Second: No | Debatable: No | Amendable: No | Vote Needed: Responded to by chair\",\n take_from_table:\n \"Needs Second: Yes | Debatable: No | Amendable: No | Vote Needed: Majority\",\n reconsider:\n \"Needs Second: Yes | Debatable: Only if motion to be reconsidered is debatable | Amendable: No | Vote Needed: Majority\",\n fix_time:\n \"Needs Second: Yes | Debatable: No; Is debatable if the motion is made while no question is pending | Amendable: Yes | Vote Needed: Majority\",\n amend_fix_time:\n \"Needs Second: Yes | Debatable: No; Is debatable if the motion is made while no question is pending | Amendable: Yes | Vote Needed: Majority\",\n amend_amend_fix_time:\n \"Needs Second: Yes | Debatable: No; Is debatable if the motion is made while no question is pending | Amendable: No | Vote Needed: Majority\",\n adjourn:\n \"Needs Second: Yes | Debatable: No | Amendable: No | Vote Needed: Majority\",\n rescind_question:\n \"Needs Second: Yes | Debatable: Yes | Amendable: Yes | Vote Needed: a) a majority with notice; b) two thirds; or c) majority of entire membership\",\n recess:\n \"Needs Second: Yes | Debatable: No, Unless no question is pending | Amendable: Yes | Vote Needed: Majority\",\n amend_recess:\n \"Needs Second: Yes | Debatable: No, Unless no question is pending | Amendable: Yes | Vote Needed: Majority\",\n amend_amend_recess:\n \"Needs Second: Yes | Debatable: No, Unless no question is pending | Amendable: No | Vote Needed: Majority\",\n raise_question:\n \"Needs Second: No | Debatable: No | Amendable: No | Vote Needed: Ruled by chair\",\n orders_of_the_day:\n \"Needs Second: No | Debatable: No | Amendable: No | Vote Needed: One member\"\n };\n if (details[type]) return details[type];\n return null;\n },\n motionDescription() {\n return this.motion.motion_description;\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionContent.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionContent.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MotionContent.vue?vue&type=template&id=0fae1194&scoped=true&\"\nimport script from \"./MotionContent.vue?vue&type=script&lang=js&\"\nexport * from \"./MotionContent.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0fae1194\",\n null\n \n)\n\nexport default component.exports","<template>\n <div>\n <MotionContent :motion=\"motion\" v-if=\"current.matches('idle')\" />\n <div class=\"mt-4\"></div>\n <div class=\"mt-4\">\n <div v-if=\"current.matches('idle')\">\n <div>\n <button\n class=\"btn btn-primary btn-lg\"\n :class=\"{ disabled: current.matches('pending') }\"\n @click=\"reloadMotion()\"\n >\n Reload Motion <i class=\" ml-3 fas fa-spinner\"></i>\n </button>\n </div>\n <div v-if=\"false\">\n <button\n class=\"btn btn-primary btn-lg\"\n :class=\"{ disabled: current.matches('pending') }\"\n @click=\"canVoteOnMotion()\"\n >\n Show Voting Options\n </button>\n </div>\n <div class=\"mt-5\" v-if=\"false\">\n <button\n class=\"btn btn-secondary btn-lg\"\n :class=\"{ disabled: current.matches('pending') }\"\n @click=\"canShowAmendedMotion()\"\n >\n Show Amended Motion\n </button>\n </div>\n <div class=\" mt-5\" v-if=\"false\">\n <button\n class=\"btn btn-primary btn-lg btn-block\"\n :class=\"{ disabled: current.matches('pending') }\"\n @click=\"showVotingResults()\"\n >\n Show Voting Results\n </button>\n </div>\n </div>\n <div v-if=\"current.matches('pending')\">\n <h3>\n <b>Getting latest motion.</b>\n </h3>\n <SpinningLoader :show=\"true\" />\n </div>\n <ErrorMessage\n v-if=\"\n current.matches('still_discussing') ||\n current.matches('not_amended') ||\n current.matches('being_amended')\n \"\n :alert-content=\"mergeMeta(current.meta)\"\n @close=\"discussionService.send('CLOSE_MESSAGE')\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport { interpret } from \"xstate\";\nimport { discussionMachine } from \"@/machines/discussionMachine\";\nimport SpinningLoader from \"@/components/SpinningLoader\";\nimport ErrorMessage from \"@/components/ErrorMessage\";\nimport { mergeMeta } from \"@/helpers\";\nimport MotionContent from \"@/components/MotionContent\";\n\nexport default {\n name: \"MotionDiscussion\",\n components: { MotionContent, ErrorMessage, SpinningLoader },\n computed: {\n motion() {\n return this.$store.state.activeMotion;\n }\n },\n watch: {\n async current(value) {\n if (value.matches(\"show_amended\")) {\n await this.canShowAmendedMotion();\n }\n }\n },\n data() {\n return {\n discussionService: interpret(discussionMachine),\n current: discussionMachine.initialState,\n isAdmin: window.SENATE_REST.is_admin == 1\n };\n },\n created() {\n // Start service on component creation\n this.discussionService\n .onTransition(state => {\n // Update the current state component data property with the next state\n this.current = state;\n })\n .start();\n },\n methods: {\n mergeMeta,\n async reloadMotion() {\n if (this.current.matches(\"pending\")) {\n return;\n }\n this.discussionService.send(\"RELOAD_MOTION\");\n await this.$store.dispatch(\"fetchMotion\");\n this.discussionService.send(\"DISCUSSING\");\n return;\n },\n async canVoteOnMotion() {\n if (this.current.matches(\"pending\")) {\n return;\n }\n this.discussionService.send(\"CHECK_IF_CAN_VOTE\");\n const response = await this.$store.dispatch(\"canVoteOnMotion\");\n if (response.code === \"still_discussing\") {\n this.discussionService.send(\"CAN_NOT_VOTE\");\n return;\n }\n if (response.code === \"being_amended\") {\n this.discussionService.send(\"BEING_AMENDED\");\n }\n },\n async canShowAmendedMotion() {\n if (this.current.matches(\"pending\")) {\n return;\n }\n this.discussionService.send(\"CHECK_IF_AMENDED\");\n const response = await this.$store.dispatch(\"motionIsAmended\");\n if (response.code === \"not_amended\") {\n this.discussionService.send(\"NOT_AMENDED\");\n }\n },\n showVotingResults() {}\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionDiscussion.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionDiscussion.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MotionDiscussion.vue?vue&type=template&id=7a1928c6&scoped=true&\"\nimport script from \"./MotionDiscussion.vue?vue&type=script&lang=js&\"\nexport * from \"./MotionDiscussion.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7a1928c6\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (false)?_c('div',[_c('MotionContent',{attrs:{\"motion\":_vm.motion}}),(_vm.current.matches('idle'))?_c('div',{staticClass:\"mt-5\"},[_c('h3',[_vm._v(\"Vote For Motion\")]),_c('form',{staticClass:\"elections-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submitVote($event)}}},[_vm._l((_vm.voteOptions),function(option){return _c('div',{key:option.value},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.voteValue),expression:\"voteValue\"}],staticClass:\"senator_input\",attrs:{\"type\":\"radio\",\"name\":\"vote\",\"id\":(\"vote_\" + (option.value))},domProps:{\"value\":option.value,\"checked\":_vm._q(_vm.voteValue,option.value)},on:{\"change\":function($event){_vm.voteValue=option.value}}}),_c('label',{attrs:{\"for\":(\"vote_\" + (option.value))}},[_c('div',{staticClass:\"nominee-container d-flex align-items-center p-2\"},[_c('span',{staticClass:\"indicator\",attrs:{\"aria-hidden\":\"true\"}}),_c('span',{staticClass:\"senator\",staticStyle:{\"text-transform\":\"capitalize\"}},[_c('b',[_vm._v(_vm._s(option.label))])])])])])}),_c('input',{staticClass:\"btn btn-primary btn-lg mt-5\",attrs:{\"type\":\"submit\",\"value\":\"Submit Vote\",\"name\":\"submitButton\"}})],2)]):_vm._e(),(_vm.current.matches('pending'))?_c('LoadingMessage',[_vm._v(\" Please wait as your vote is submitted \")]):_vm._e(),(_vm.isError)?_c('ErrorMessage',{attrs:{\"alert-content\":_vm.mergeMeta(_vm.current.meta)},on:{\"close\":function($event){return _vm.votingService.send('CLOSE_MESSAGE')}}}):_vm._e()],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Machine } from \"xstate\";\nexport const votingMachine = Machine({\n id: \"votingMachinee\",\n initial: \"idle\",\n states: {\n idle: {\n on: {\n SUBMIT_VOTE: \"pending\"\n }\n },\n pending: {\n on: {\n VOTE_SUCCESFUL: \"wait\",\n NO_VALUE_SELECTED: \"no_value\",\n NO_CURRENT_MOTION: \"no_motion\",\n WRONG_MOTION: \"wrong_motion\",\n VOTING_CLOSED: \"voting_not_open\",\n VOTING_COMPLETED: \"voting_completed\",\n ALREADY_VOTED: \"already_voted\"\n }\n },\n wait: {\n type: \"final\"\n },\n no_value: {\n meta: {\n title: \"No Value Selected\",\n message: \"Please select a value before submitting your vote.\"\n },\n on: {\n CLOSE_MESSAGE: \"idle\"\n }\n },\n voting_not_open: {\n meta: {\n title: \"Voting Is Closed\",\n message: \"Please wait for voting to be opened.\"\n },\n on: {\n CLOSE_MESSAGE: \"idle\"\n }\n },\n no_motion: {\n meta: {\n title: \"No Active Motion\",\n message:\n \"There is currently no active motion. Please check for the latest motion.\"\n },\n on: {\n CLOSE_MESSAGE: \"get_motion\"\n }\n },\n wrong_motion: {\n meta: {\n title: \"Wrong Motion\",\n message:\n \"You are submitting a vote for a motion that is not active. Please check for the latest motion\"\n },\n on: {\n CLOSE_MESSAGE: \"get_motion\"\n }\n },\n voting_completed: {\n meta: {\n title: \"Voting Completed\",\n message:\n \"Voting for this motion has been completed. Please wait for the results\"\n },\n on: {\n CLOSE_MESSAGE: \"get_results\"\n }\n },\n already_voted: {\n meta: {\n title: \"Senator Already Voted\",\n message:\n \"Your vote has already been received. Please wait for the results.\"\n },\n on: {\n CLOSE_MESSAGE: \"get_results\"\n }\n },\n get_motion: {\n type: \"final\"\n },\n get_results: {\n type: \"final\"\n }\n }\n});\n","<template>\n <div v-if=\"false\">\n <MotionContent :motion=\"motion\" />\n <div class=\"mt-5\" v-if=\"current.matches('idle')\">\n <h3>Vote For Motion</h3>\n <form @submit.prevent=\"submitVote\" class=\"elections-form\">\n <div v-for=\"option in voteOptions\" :key=\"option.value\">\n <input\n type=\"radio\"\n name=\"vote\"\n :id=\"`vote_${option.value}`\"\n :value=\"option.value\"\n class=\"senator_input\"\n v-model=\"voteValue\"\n />\n <label :for=\"`vote_${option.value}`\">\n <div class=\"nominee-container d-flex align-items-center p-2\">\n <span aria-hidden=\"true\" class=\"indicator\"></span>\n <span class=\"senator\" style=\"text-transform: capitalize\">\n <b>{{ option.label }}</b>\n </span>\n </div>\n </label>\n </div>\n <input\n type=\"submit\"\n value=\"Submit Vote\"\n class=\"btn btn-primary btn-lg mt-5\"\n name=\"submitButton\"\n />\n </form>\n </div>\n <LoadingMessage v-if=\"current.matches('pending')\">\n Please wait as your vote is submitted\n </LoadingMessage>\n <ErrorMessage\n v-if=\"isError\"\n :alert-content=\"mergeMeta(current.meta)\"\n @close=\"votingService.send('CLOSE_MESSAGE')\"\n />\n </div>\n</template>\n\n<script>\nimport MotionContent from \"@/components/MotionContent\";\nimport { interpret } from \"xstate\";\nimport { mergeMeta } from \"@/helpers\";\nimport ErrorMessage from \"@/components/ErrorMessage\";\nimport { votingMachine } from \"@/machines/votingMachine\";\nimport LoadingMessage from \"@/components/LoadingMessage\";\n\nexport default {\n name: \"MotionVoting\",\n components: { LoadingMessage, MotionContent, ErrorMessage },\n data() {\n return {\n votingService: interpret(votingMachine),\n current: votingMachine.initialState,\n wrongCodes: [\n \"no_motion\",\n \"wrong_motion\",\n \"voting_not_open\",\n \"voting_completed\",\n \"already_voted\"\n ],\n voteValue: null\n };\n },\n\n created() {\n // Start service on component creation\n this.votingService\n .onTransition(state => {\n // Update the current state component data property with the next state\n this.current = state;\n })\n .start();\n },\n computed: {\n motion() {\n return this.$store.state.activeMotion;\n },\n voteOptions() {\n return this.motion.motion_voting.voting_options\n .split(\"\\n\")\n .map(option => {\n option = option.split(\":\");\n return {\n value: option[0].trim(),\n label: option[1].trim()\n };\n });\n },\n isError() {\n return this.wrongCodes.some(code => {\n return this.current.matches(code);\n });\n }\n },\n watch: {\n current(value) {\n if (value.matches(\"get_motion\")) {\n this.$store.dispatch(\"clearMotion\");\n }\n if (value.matches(\"get_results\")) {\n this.$store.dispatch(\"showMotionResults\");\n }\n }\n },\n methods: {\n mergeMeta,\n async submitVote() {\n if (this.current.matches(\"pending\")) {\n return;\n }\n this.votingService.send(\"SUBMIT_VOTE\");\n if (this.voteValue === null) {\n this.votingService.send(\"NO_VALUE_SELECTED\");\n return;\n }\n const response = await this.$store.dispatch(\"submitVote\", {\n value: this.voteValue,\n motion: this.motion.motion_voting.id\n });\n if (response.code === \"no_motion\") {\n this.votingService.send(\"NO_CURRENT_MOTION\");\n return;\n }\n if (response.code === \"wrong_motion\") {\n this.votingService.send(\"WRONG_MOTION\");\n return;\n }\n if (response.code === \"voting_not_open\") {\n this.votingService.send(\"VOTING_CLOSED\");\n return;\n }\n if (response.code === \"already_voted\") {\n this.votingService.send(\"ALREADY_VOTED\");\n return;\n }\n if (response.code === \"voting_completed\") {\n this.votingService.send(\"VOTING_COMPLETED\");\n return;\n }\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionVoting.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionVoting.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MotionVoting.vue?vue&type=template&id=3e2c2fb7&scoped=true&\"\nimport script from \"./MotionVoting.vue?vue&type=script&lang=js&\"\nexport * from \"./MotionVoting.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3e2c2fb7\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('MotionContent',{attrs:{\"motion\":_vm.motion}}),(_vm.current.matches('idle'))?_c('div',[_c('LoadingMessage',[_vm._v(\" Please wait for the results to be announced... \")]),_c('div',{staticClass:\"mt-4\"},[_c('button',{staticClass:\"btn btn-primary btn-lg\",class:{ disabled: _vm.current.matches('pending') },on:{\"click\":function($event){return _vm.getNextMotion()}}},[_vm._v(\" Get Next Motion \")])])],1):_vm._e(),(_vm.current.matches('pending'))?_c('div',[_vm._m(0),_c('SpinningLoader',{attrs:{\"show\":_vm.current.matches('pending')}})],1):_vm._e(),(_vm.current.matches('is_current'))?_c('ErrorMessage',{attrs:{\"alert-content\":_vm.mergeMeta(_vm.current.meta)},on:{\"close\":function($event){return _vm.waitingService.send('CLOSE_MESSAGE')}}}):_vm._e()],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h2',[_c('b',[_vm._v(\"Checking for next motion, please wait...\")])])}]\n\nexport { render, staticRenderFns }","<template>\n <div>\n <MotionContent :motion=\"motion\" />\n <div v-if=\"current.matches('idle')\">\n <LoadingMessage>\n Please wait for the results to be announced...\n </LoadingMessage>\n <div class=\"mt-4\">\n <button\n class=\"btn btn-primary btn-lg\"\n :class=\"{ disabled: current.matches('pending') }\"\n @click=\"getNextMotion()\"\n >\n Get Next Motion\n </button>\n </div>\n </div>\n <div v-if=\"current.matches('pending')\">\n <h2>\n <b>Checking for next motion, please wait...</b>\n </h2>\n <SpinningLoader :show=\"current.matches('pending')\" />\n </div>\n <ErrorMessage\n v-if=\"current.matches('is_current')\"\n :alert-content=\"mergeMeta(current.meta)\"\n @close=\"waitingService.send('CLOSE_MESSAGE')\"\n />\n </div>\n</template>\n\n<script>\nimport MotionContent from \"@/components/MotionContent\";\nimport LoadingMessage from \"@/components/LoadingMessage\";\nimport SpinningLoader from \"@/components/SpinningLoader\";\nimport ErrorMessage from \"@/components/ErrorMessage\";\nimport { mergeMeta } from \"@/helpers\";\nimport { interpret } from \"xstate\";\nimport { motionWaitingMachine } from \"@/machines/waitingMachine\";\n// import { mergeMeta } from \"@/helpers\";\nexport default {\n name: \"MotionWaiting\",\n components: { ErrorMessage, LoadingMessage, MotionContent, SpinningLoader },\n data() {\n return {\n waitingService: interpret(motionWaitingMachine),\n current: motionWaitingMachine.initialState\n };\n },\n created() {\n // Start service on component creation\n this.waitingService\n .onTransition(state => {\n // Update the current state component data property with the next state\n this.current = state;\n })\n .start();\n },\n computed: {\n motion() {\n return this.$store.state.activeMotion;\n }\n },\n methods: {\n mergeMeta,\n async getNextMotion() {\n if (this.current.matches(\"pending\")) {\n return;\n }\n this.waitingService.send(\"GET_MOTION\");\n const response = await this.$store.dispatch(\"fetchMotion\");\n if (response.code === \"no_motion\") {\n this.waitingService.send(\"NO_MOTION\");\n return;\n }\n if (response.code === \"is_current\") {\n this.waitingService.send(\"IS_CURRENT\");\n return;\n }\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionWaiting.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionWaiting.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MotionWaiting.vue?vue&type=template&id=6060fc31&scoped=true&\"\nimport script from \"./MotionWaiting.vue?vue&type=script&lang=js&\"\nexport * from \"./MotionWaiting.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6060fc31\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('MotionContent',{attrs:{\"motion\":_vm.motion}}),_c('div',[_vm._v(\" Current Results: \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <MotionContent :motion=\"motion\" />\n <div>\n Current Results:\n </div>\n </div>\n</template>\n\n<script>\nimport MotionContent from \"@/components/MotionContent\";\n\nexport default {\n name: \"MotionResults\",\n components: { MotionContent },\n computed: {\n motion() {\n return this.$store.state.activeMotion;\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionResults.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionResults.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MotionResults.vue?vue&type=template&id=581c67e2&scoped=true&\"\nimport script from \"./MotionResults.vue?vue&type=script&lang=js&\"\nexport * from \"./MotionResults.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"581c67e2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('MotionContent',{attrs:{\"motion\":_vm.motion,\"amendment\":\"\"}}),_c('div',{staticClass:\"mt-4\"},[(_vm.current.matches('idle'))?_c('div',[_c('div',[_c('button',{staticClass:\"btn btn-primary btn-lg\",class:{ disabled: _vm.current.matches('pending') },on:{\"click\":function($event){return _vm.canVoteOnMotion()}}},[_vm._v(\" Show Voting Options \")])]),_c('div',{staticClass:\" mt-5\"},[_c('button',{staticClass:\"btn btn-secondary btn-lg\",class:{ disabled: _vm.current.matches('pending') },on:{\"click\":function($event){return _vm.canShowAmendedMotion()}}},[_vm._v(\" Show Amended Motion \")])])]):_vm._e(),(_vm.current.matches('pending'))?_c('div',[_vm._m(0),_c('SpinningLoader',{attrs:{\"show\":true}})],1):_vm._e(),(\n _vm.current.matches('still_discussing') ||\n _vm.current.matches('not_amended') ||\n _vm.current.matches('being_amended')\n )?_c('ErrorMessage',{attrs:{\"alert-content\":_vm.mergeMeta(_vm.current.meta)},on:{\"close\":function($event){return _vm.discussionService.send('CLOSE_MESSAGE')}}}):_vm._e()],1)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h3',[_c('b',[_vm._v(\"Checking if motion is ready to be voted on.\")])])}]\n\nexport { render, staticRenderFns }","<template>\n <div>\n <MotionContent :motion=\"motion\" amendment />\n <div class=\"mt-4\">\n <div v-if=\"current.matches('idle')\">\n <div>\n <button\n class=\"btn btn-primary btn-lg\"\n :class=\"{ disabled: current.matches('pending') }\"\n @click=\"canVoteOnMotion()\"\n >\n Show Voting Options\n </button>\n </div>\n <div class=\" mt-5\">\n <button\n class=\"btn btn-secondary btn-lg\"\n :class=\"{ disabled: current.matches('pending') }\"\n @click=\"canShowAmendedMotion()\"\n >\n Show Amended Motion\n </button>\n </div>\n </div>\n <div v-if=\"current.matches('pending')\">\n <h3>\n <b>Checking if motion is ready to be voted on.</b>\n </h3>\n <SpinningLoader :show=\"true\" />\n </div>\n <ErrorMessage\n v-if=\"\n current.matches('still_discussing') ||\n current.matches('not_amended') ||\n current.matches('being_amended')\n \"\n :alert-content=\"mergeMeta(current.meta)\"\n @close=\"discussionService.send('CLOSE_MESSAGE')\"\n />\n </div>\n </div>\n</template>\n\n<script>\nimport { interpret } from \"xstate\";\nimport { discussionMachine } from \"@/machines/discussionMachine\";\nimport SpinningLoader from \"@/components/SpinningLoader\";\nimport ErrorMessage from \"@/components/ErrorMessage\";\nimport { mergeMeta } from \"@/helpers\";\nimport MotionContent from \"@/components/MotionContent\";\nexport default {\n name: \"Amending\",\n components: { MotionContent, ErrorMessage, SpinningLoader },\n data() {\n return {\n discussionService: interpret(discussionMachine),\n current: discussionMachine.initialState\n };\n },\n computed: {\n amendment() {\n return this.$store.state.activeMotion.amendment;\n },\n motion() {\n return {\n motion_title: this.amendment.amendment_title,\n motion_description: this.amendment.amendment_description\n };\n }\n },\n watch: {\n async current(value) {\n if (value.matches(\"show_amended\")) {\n await this.canShowAmendedMotion();\n }\n }\n },\n methods: {\n mergeMeta,\n async canVoteOnMotion() {\n if (this.current.matches(\"pending\")) {\n return;\n }\n this.discussionService.send(\"CHECK_IF_CAN_VOTE\");\n const response = await this.$store.dispatch(\"canVoteOnMotion\");\n if (response.code === \"still_discussing\") {\n this.discussionService.send(\"CAN_NOT_VOTE\");\n return;\n }\n if (response.code === \"being_amended\") {\n this.discussionService.send(\"BEING_AMENDED\");\n }\n },\n async canShowAmendedMotion() {\n if (this.current.matches(\"pending\")) {\n return;\n }\n this.discussionService.send(\"CHECK_IF_AMENDED\");\n const response = await this.$store.dispatch(\"motionIsAmended\");\n if (response.code === \"not_amended\") {\n this.discussionService.send(\"NOT_AMENDED\");\n }\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Amending.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Amending.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Amending.vue?vue&type=template&id=20c224a7&scoped=true&\"\nimport script from \"./Amending.vue?vue&type=script&lang=js&\"\nexport * from \"./Amending.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"20c224a7\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"waiting\"},[(_vm.status === 'idle')?_c('div',[_vm._m(0),_c('div',{staticClass:\"mt-4\"},[_c('button',{staticClass:\"btn btn-primary btn-lg\",class:{ disabled: _vm.status === 'loading' },on:{\"click\":function($event){return _vm.getFloorUpdate()}}},[_vm._v(\" Get Next Motion \")])])]):_vm._e(),(_vm.status === 'loading')?_c('LoadingMessage',[_vm._v(\" Please wait for the next motion... \")]):_vm._e(),(_vm.status === 'error')?_c('ErrorMessage',{attrs:{\"alert-content\":_vm.currentError.content},on:{\"close\":_vm.closeError}}):_vm._e()],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h2',[_c('b',[_vm._v(\"Please wait for the next motion.\")])])])}]\n\nexport { render, staticRenderFns }","<template>\n <div class=\"waiting\">\n <div v-if=\"status === 'idle'\">\n <div>\n <h2><b>Please wait for the next motion.</b></h2>\n </div>\n <div class=\"mt-4\">\n <button\n class=\"btn btn-primary btn-lg\"\n :class=\"{ disabled: status === 'loading' }\"\n @click=\"getFloorUpdate()\"\n >\n Get Next Motion\n </button>\n </div>\n </div>\n <LoadingMessage v-if=\"status === 'loading'\">\n Please wait for the next motion...\n </LoadingMessage>\n <ErrorMessage\n v-if=\"status === 'error'\"\n :alert-content=\"currentError.content\"\n @close=\"closeError\"\n />\n </div>\n</template>\n\n<script>\nimport LoadingMessage from \"@/components/LoadingMessage\";\nimport ErrorMessage from \"@/components/ErrorMessage\";\nimport { mergeMeta } from \"@/helpers\";\n\nexport default {\n name: \"Waiting\",\n components: { ErrorMessage, LoadingMessage },\n data() {\n return {\n status: \"idle\",\n currentError: null\n };\n },\n computed: {\n currentFloor() {\n return this.$store.state.currentFloor;\n }\n },\n async created() {\n await this.getFloorUpdate();\n },\n methods: {\n async getFloorUpdate() {\n if (this.status === \"loading\") {\n return;\n }\n this.status = \"loading\";\n this.$store.state.floorService.send(\"GET_FLOOR\");\n await this.$store.dispatch(\"getFloor\");\n let meta = mergeMeta(this.currentFloor.meta);\n if (meta.error) {\n this.currentError = meta.error;\n this.status = \"error\";\n }\n },\n closeError() {\n const nextStateAction = this.currentError.nextState;\n this.currentError = null;\n this.$store.state.floorService.send(nextStateAction);\n this.status = \"idle\";\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Waiting.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Waiting.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Waiting.vue?vue&type=template&id=428d1b56&scoped=true&\"\nimport script from \"./Waiting.vue?vue&type=script&lang=js&\"\nexport * from \"./Waiting.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"428d1b56\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"motion-discussion\"},[_c('MotionContent',{attrs:{\"motion\":_vm.motion}}),(_vm.status === 'idle')?_c('div',{staticClass:\"mt-5\"},[(!_vm.withPusher)?_c('button',{staticClass:\"btn btn-primary\",class:{ disabled: _vm.status === 'loading' },on:{\"click\":function($event){return _vm.reloadMotion()}}},[_vm._v(\" Reload Motion \"),_c('i',{staticClass:\" ml-3 fas fa-spinner\"})]):_vm._e()]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"motion-discussion\">\n <MotionContent :motion=\"motion\" />\n <div class=\"mt-5\" v-if=\"status === 'idle'\">\n <button\n class=\"btn btn-primary\"\n :class=\"{ disabled: status === 'loading' }\"\n @click=\"reloadMotion()\"\n v-if=\"!withPusher\"\n >\n Reload Motion <i class=\" ml-3 fas fa-spinner\"></i>\n </button>\n </div>\n </div>\n</template>\n\n<script>\nimport MotionContent from \"@/components/MotionContent\";\nimport { mergeMeta } from \"@/helpers\";\nexport default {\n name: \"MotionDiscussionTwo\",\n components: { MotionContent },\n data() {\n return {\n status: \"idle\",\n currentError: null\n };\n },\n computed: {\n motion() {\n return this.$store.state.floor.motion;\n },\n currentFloor() {\n return this.$store.state.currentFloor;\n },\n withPusher() {\n return window.SENATE_REST.sync == 1;\n }\n },\n methods: {\n async reloadMotion() {\n if (this.status === \"loading\") return;\n this.status = \"loading\";\n this.$store.state.floorService.send(\"GET_FLOOR\");\n await this.$store.dispatch(\"getFloor\");\n let meta = mergeMeta(this.currentFloor.meta);\n if (meta.error) {\n this.currentError = meta.error;\n this.status = \"error\";\n }\n },\n closeError() {\n const nextStateAction = this.currentError.nextState;\n this.currentError = null;\n this.$store.state.floorService.send(nextStateAction);\n this.status = \"idle\";\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionDiscussionTwo.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionDiscussionTwo.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MotionDiscussionTwo.vue?vue&type=template&id=42e8da4e&scoped=true&\"\nimport script from \"./MotionDiscussionTwo.vue?vue&type=script&lang=js&\"\nexport * from \"./MotionDiscussionTwo.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"42e8da4e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"motion-voting\"},[_c('MotionContent',{attrs:{\"motion\":_vm.motion}}),(_vm.status === 'idle')?_c('div',{staticClass:\"mt-5\"},[_c('h3',[_vm._v(\"Vote For Motion\")]),_c('form',{staticClass:\"elections-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submitVote($event)}}},[_vm._l((_vm.voteOptions),function(option){return _c('div',{key:option.value},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.voteValue),expression:\"voteValue\"}],staticClass:\"senator_input\",attrs:{\"type\":\"radio\",\"name\":\"vote\",\"id\":(\"vote_\" + (option.value))},domProps:{\"value\":option.value,\"checked\":_vm._q(_vm.voteValue,option.value)},on:{\"change\":function($event){_vm.voteValue=option.value}}}),_c('label',{attrs:{\"for\":(\"vote_\" + (option.value))}},[_c('div',{staticClass:\"nominee-container d-flex align-items-center p-2\"},[_c('span',{staticClass:\"indicator\",attrs:{\"aria-hidden\":\"true\"}}),_c('span',{staticClass:\"senator\",staticStyle:{\"text-transform\":\"capitalize\"}},[_c('b',[_vm._v(_vm._s(option.label))])])])])])}),_c('input',{staticClass:\"btn btn-primary btn-lg mt-5\",attrs:{\"type\":\"submit\",\"value\":\"Submit Vote\",\"name\":\"submitButton\"}})],2)]):_vm._e(),(_vm.status === 'loading')?_c('LoadingMessage',{attrs:{\"h3\":\"\"}},[_vm._v(\"Please wait as your vote is submitted\")]):_vm._e(),(_vm.status === 'error')?_c('ErrorMessage',{attrs:{\"alert-content\":_vm.currentError.content},on:{\"close\":_vm.closeError}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"motion-voting\">\n <MotionContent :motion=\"motion\" />\n <div class=\"mt-5\" v-if=\"status === 'idle'\">\n <h3>Vote For Motion</h3>\n <form @submit.prevent=\"submitVote\" class=\"elections-form\">\n <div v-for=\"option in voteOptions\" :key=\"option.value\">\n <input\n type=\"radio\"\n name=\"vote\"\n :id=\"`vote_${option.value}`\"\n :value=\"option.value\"\n class=\"senator_input\"\n v-model=\"voteValue\"\n />\n <label :for=\"`vote_${option.value}`\">\n <div class=\"nominee-container d-flex align-items-center p-2\">\n <span aria-hidden=\"true\" class=\"indicator\"></span>\n <span class=\"senator\" style=\"text-transform: capitalize\">\n <b>{{ option.label }}</b>\n </span>\n </div>\n </label>\n </div>\n <input\n type=\"submit\"\n value=\"Submit Vote\"\n class=\"btn btn-primary btn-lg mt-5\"\n name=\"submitButton\"\n />\n </form>\n </div>\n <LoadingMessage h3 v-if=\"status === 'loading'\"\n >Please wait as your vote is submitted</LoadingMessage\n >\n <ErrorMessage\n v-if=\"status === 'error'\"\n :alert-content=\"currentError.content\"\n @close=\"closeError\"\n />\n </div>\n</template>\n\n<script>\nimport MotionContent from \"@/components/MotionContent\";\nimport ErrorMessage from \"@/components/ErrorMessage\";\nimport { mergeMeta } from \"@/helpers\";\nimport LoadingMessage from \"@/components/LoadingMessage\";\nexport default {\n name: \"MotionVotingTwo\",\n components: { LoadingMessage, ErrorMessage, MotionContent },\n data() {\n return {\n status: \"idle\",\n currentError: null,\n voteValue: null\n };\n },\n computed: {\n motion() {\n return this.$store.state.floor.motion;\n },\n currentFloor() {\n return this.$store.state.currentFloor;\n },\n voteOptions() {\n return this.motion.motion_voting.voting_options\n .split(\"\\n\")\n .map(option => {\n option = option.split(\":\");\n return {\n value: option[0].trim(),\n label: option[1].trim()\n };\n });\n },\n voteValueLabel() {\n if (!this.voteValue) return \"\";\n return this.voteOptions.find(option => {\n return option.value === this.voteValue;\n }).label;\n }\n },\n methods: {\n getVoteLabelFromValue(value) {\n return this.voteOptions.filter(option => {\n return option.value === value;\n }).label;\n },\n async submitVote() {\n if (this.voteValue === null) return;\n if (this.status === \"loading\") return;\n this.status = \"loading\";\n this.$store.state.floorService.send(\"SUBMIT_VOTE\");\n const response = await this.$store.dispatch(\"submitFloorVote\", {\n value: this.voteValue,\n label: this.voteValueLabel,\n motion: this.motion.motion_voting.id\n });\n if (response.code) {\n this.$store.state.floorService.send(response.code);\n let meta = mergeMeta(this.currentFloor.meta);\n if (meta.error) {\n this.currentError = meta.error;\n this.status = \"error\";\n }\n } else {\n this.$store.state.floorService.send(\"SUCCESS\");\n this.status = \"idle\";\n }\n },\n closeError() {\n const nextStateAction = this.currentError.nextState;\n this.currentError = null;\n this.$store.state.floorService.send(nextStateAction);\n this.status = \"idle\";\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionVotingTwo.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionVotingTwo.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MotionVotingTwo.vue?vue&type=template&id=99978310&scoped=true&\"\nimport script from \"./MotionVotingTwo.vue?vue&type=script&lang=js&\"\nexport * from \"./MotionVotingTwo.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"99978310\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"did-not-vote\"},[_c('MotionContent',{attrs:{\"motion\":_vm.motion}}),(_vm.status === 'idle')?_c('div',[_c('LoadingMessage',{attrs:{\"h3\":\"\"}},[_vm._v(\"Voting for this motion has been completed. Please wait for the results\")]),_c('div',{staticClass:\"mt-5\"},[(!_vm.withPusher)?_c('button',{staticClass:\"btn btn-primary\",class:{ disabled: _vm.status === 'loading' },on:{\"click\":function($event){return _vm.getResults()}}},[_vm._v(\" Get Results \"),_c('i',{staticClass:\" ml-3 fas fa-spinner\"})]):_vm._e()])],1):_vm._e(),(_vm.status === 'loading')?_c('div',[_c('LoadingMessage',{attrs:{\"h3\":\"\"}},[_vm._v(\"Getting vote results\")])],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"did-not-vote\">\n <MotionContent :motion=\"motion\" />\n <div v-if=\"status === 'idle'\">\n <LoadingMessage h3\n >Voting for this motion has been completed. Please wait for the\n results</LoadingMessage\n >\n <div class=\"mt-5\">\n <button\n class=\"btn btn-primary\"\n :class=\"{ disabled: status === 'loading' }\"\n @click=\"getResults()\"\n v-if=\"!withPusher\"\n >\n Get Results <i class=\" ml-3 fas fa-spinner\"></i>\n </button>\n </div>\n </div>\n <div v-if=\"status === 'loading'\">\n <LoadingMessage h3>Getting vote results</LoadingMessage>\n </div>\n </div>\n</template>\n\n<script>\nimport MotionContent from \"@/components/MotionContent\";\nimport LoadingMessage from \"@/components/LoadingMessage\";\nexport default {\n name: \"DidNotVote\",\n components: { LoadingMessage, MotionContent },\n data() {\n return {\n status: \"idle\",\n currentError: null\n };\n },\n computed: {\n motion() {\n return this.$store.state.floor.motion;\n },\n currentFloor() {\n return this.$store.state.currentFloor;\n },\n withPusher() {\n return window.SENATE_REST.sync == 1;\n }\n },\n async created() {\n await this.$store.dispatch(\"getFloor\");\n },\n methods: {\n async getResults() {\n if (this.status === \"loading\") return;\n this.status = \"loading\";\n this.$store.state.floorService.send(\"GET_RESULTS\");\n await this.$store.dispatch(\"getFloorResults\");\n },\n closeError() {\n const nextStateAction = this.currentError.nextState;\n this.currentError = null;\n this.$store.state.floorService.send(nextStateAction);\n this.status = \"idle\";\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DidNotVote.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DidNotVote.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DidNotVote.vue?vue&type=template&id=f288825a&scoped=true&\"\nimport script from \"./DidNotVote.vue?vue&type=script&lang=js&\"\nexport * from \"./DidNotVote.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f288825a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"did-not-vote\"},[_c('MotionContent',{attrs:{\"motion\":_vm.motion}}),(_vm.status === 'idle')?_c('div',[_c('LoadingMessage',{attrs:{\"h3\":\"\"}},[_vm._v(\" Thanks for submitting your vote! Please wait for the results. \")]),_c('div',{staticClass:\"mt-5\"},[_c('button',{staticClass:\"btn btn-secondary mr-5\",class:{ disabled: _vm.status === 'loading' },on:{\"click\":function($event){return _vm.changeVote()}}},[_vm._v(\" Change Vote \")]),(!_vm.withPusher)?_c('button',{staticClass:\"btn btn-primary\",class:{ disabled: _vm.status === 'loading' },on:{\"click\":function($event){return _vm.getResults()}}},[_vm._v(\" Get Results \"),_c('i',{staticClass:\" ml-3 fas fa-spinner\"})]):_vm._e()])],1):_vm._e(),(_vm.status === 'loading')?_c('div',[_c('LoadingMessage',{attrs:{\"h3\":\"\"}},[_vm._v(\"Getting vote results\")])],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"did-not-vote\">\n <MotionContent :motion=\"motion\" />\n <div v-if=\"status === 'idle'\">\n <LoadingMessage h3>\n Thanks for submitting your vote! Please wait for the results.\n </LoadingMessage>\n <div class=\"mt-5\">\n <button\n class=\"btn btn-secondary mr-5\"\n :class=\"{ disabled: status === 'loading' }\"\n @click=\"changeVote()\"\n >\n Change Vote\n </button>\n <button\n class=\"btn btn-primary\"\n :class=\"{ disabled: status === 'loading' }\"\n @click=\"getResults()\"\n v-if=\"!withPusher\"\n >\n Get Results <i class=\" ml-3 fas fa-spinner\"></i>\n </button>\n </div>\n </div>\n <div v-if=\"status === 'loading'\">\n <LoadingMessage h3>Getting vote results</LoadingMessage>\n </div>\n </div>\n</template>\n\n<script>\nimport MotionContent from \"@/components/MotionContent\";\nimport LoadingMessage from \"@/components/LoadingMessage\";\nexport default {\n name: \"ThanksForVoting\",\n components: { LoadingMessage, MotionContent },\n data() {\n return {\n status: \"idle\",\n currentError: null\n };\n },\n computed: {\n lastVote() {\n return this.$store.state.lastVote\n },\n motion() {\n return this.$store.state.floor.motion;\n },\n lastVoteLabel() {\n return this.lastVote ? this.lastVote.label : null;\n },\n currentFloor() {\n return this.$store.state.currentFloor;\n },\n withPusher() {\n return window.SENATE_REST.sync == 1;\n }\n },\n async created() {\n await this.$store.dispatch(\"getFloor\");\n },\n methods: {\n changeVote() {\n this.$store.state.floorService.send(\"CHANGE_VOTE\");\n },\n async getResults() {\n if (this.status === \"loading\") return;\n this.status = \"loading\";\n this.$store.state.floorService.send(\"GET_RESULTS\");\n await this.$store.dispatch(\"getFloor\");\n },\n closeError() {\n const nextStateAction = this.currentError.nextState;\n this.currentError = null;\n this.$store.state.floorService.send(nextStateAction);\n this.status = \"idle\";\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThanksForVoting.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThanksForVoting.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ThanksForVoting.vue?vue&type=template&id=90f169ac&scoped=true&\"\nimport script from \"./ThanksForVoting.vue?vue&type=script&lang=js&\"\nexport * from \"./ThanksForVoting.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"90f169ac\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"did-not-vote\"},[_c('MotionContent',{attrs:{\"motion\":_vm.motion}}),(_vm.status === 'idle')?_c('div',[_c('LoadingMessage',{attrs:{\"h3\":\"\"}},[_vm._v(\"You have already voted for this motion. Please wait for the results\")]),_c('div',{staticClass:\"mt-5\"},[(!_vm.withPusher)?_c('button',{staticClass:\"btn btn-primary\",class:{ disabled: _vm.status === 'loading' },on:{\"click\":function($event){return _vm.getResults()}}},[_vm._v(\" Get Results \"),_c('i',{staticClass:\" ml-3 fas fa-spinner\"})]):_vm._e()])],1):_vm._e(),(_vm.status === 'loading')?_c('div',[_c('LoadingMessage',{attrs:{\"h3\":\"\"}},[_vm._v(\"Getting vote results\")])],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"did-not-vote\">\n <MotionContent :motion=\"motion\" />\n <div v-if=\"status === 'idle'\">\n <LoadingMessage h3\n >You have already voted for this motion. Please wait for the\n results</LoadingMessage\n >\n <div class=\"mt-5\">\n <button\n class=\"btn btn-primary\"\n :class=\"{ disabled: status === 'loading' }\"\n @click=\"getResults()\"\n v-if=\"!withPusher\"\n >\n Get Results <i class=\" ml-3 fas fa-spinner\"></i>\n </button>\n </div>\n </div>\n <div v-if=\"status === 'loading'\">\n <LoadingMessage h3>Getting vote results</LoadingMessage>\n </div>\n </div>\n</template>\n\n<script>\nimport MotionContent from \"@/components/MotionContent\";\nimport LoadingMessage from \"@/components/LoadingMessage\";\nexport default {\n name: \"AlreadyVoted\",\n components: { LoadingMessage, MotionContent },\n data() {\n return {\n status: \"idle\",\n currentError: null\n };\n },\n computed: {\n motion() {\n return this.$store.state.floor.motion;\n },\n currentFloor() {\n return this.$store.state.currentFloor;\n },\n withPusher() {\n return window.SENATE_REST.sync == 1;\n }\n },\n async created() {\n await this.$store.dispatch(\"getFloor\");\n },\n methods: {\n async getResults() {\n if (this.status === \"loading\") return;\n this.status = \"loading\";\n this.$store.state.floorService.send(\"GET_RESULTS\");\n await this.$store.dispatch(\"getFloorResults\");\n },\n closeError() {\n const nextStateAction = this.currentError.nextState;\n this.currentError = null;\n this.$store.state.floorService.send(nextStateAction);\n this.status = \"idle\";\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlreadyVoted.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AlreadyVoted.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AlreadyVoted.vue?vue&type=template&id=1f8bb712&scoped=true&\"\nimport script from \"./AlreadyVoted.vue?vue&type=script&lang=js&\"\nexport * from \"./AlreadyVoted.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1f8bb712\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"admin-voting-results\"},[_c('hr'),_vm._m(0),(_vm.status === 'idle')?_c('div',{staticClass:\"mt-3\"},[_c('button',{staticClass:\"btn btn-primary\",class:{ disabled: _vm.status === 'loading' },on:{\"click\":function($event){return _vm.startGettingResults()}}},[_vm._v(\" Get Results \"),_c('i',{staticClass:\" ml-3 fas fa-spinner\"})])]):_vm._e(),(_vm.status === 'loading')?_c('LoadingMessage',{attrs:{\"div\":\"\"}},[_c('h3',[_vm._v(\"Results:\")]),(_vm.voteCounts)?_c('div',{staticClass:\"mt-3\"},[_c('p',[_vm._v(\"Votes Needed: \"+_vm._s(this.voteCounts.votes_needed.label))]),_c('p',[_vm._v(\"Voting Population: \"+_vm._s(this.voteCounts.voting_population.label))]),_c('p',[_vm._v(\"Votes Received: \"+_vm._s(this.voteCounts.vote_count))]),_vm._l((_vm.voteCounts.vote_tallies),function(voteObj,voteVal){return _c('div',{key:voteVal},[_c('p',{class:{\n 'font-weight-bold': voteObj.vote_count >= _vm.winningVoteAmount\n }},[_vm._v(\" \"+_vm._s(voteObj.label)+\" : \"+_vm._s(voteObj.vote_count)+\" \")])])})],2):_vm._e()]):_vm._e()],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mt-5\"},[_c('h2',[_vm._v(\" Admin\"),_c('br'),_c('b',[_vm._v(\"Show results for current motion\")])])])}]\n\nexport { render, staticRenderFns }","<template>\n <div class=\"admin-voting-results\">\n <hr />\n <div class=\"mt-5\">\n <h2>\n Admin<br />\n <b>Show results for current motion</b>\n </h2>\n </div>\n <div class=\"mt-3\" v-if=\"status === 'idle'\">\n <button\n class=\"btn btn-primary\"\n :class=\"{ disabled: status === 'loading' }\"\n @click=\"startGettingResults()\"\n >\n Get Results <i class=\" ml-3 fas fa-spinner\"></i>\n </button>\n </div>\n <LoadingMessage div v-if=\"status === 'loading'\">\n <h3>Results:</h3>\n <div class=\"mt-3\" v-if=\"voteCounts\">\n <p>Votes Needed: {{ this.voteCounts.votes_needed.label }}</p>\n <p>Voting Population: {{ this.voteCounts.voting_population.label }}</p>\n <p>Votes Received: {{ this.voteCounts.vote_count }}</p>\n <div\n v-for=\"(voteObj, voteVal) in voteCounts.vote_tallies\"\n :key=\"voteVal\"\n >\n <p\n :class=\"{\n 'font-weight-bold': voteObj.vote_count >= winningVoteAmount\n }\"\n >\n {{ voteObj.label }} : {{ voteObj.vote_count }}\n </p>\n </div>\n </div>\n <!-- <div v-for=\"\"></div>-->\n </LoadingMessage>\n </div>\n</template>\n\n<script>\nimport LoadingMessage from \"@/components/LoadingMessage\";\nexport default {\n name: \"AdminVotingResults\",\n components: { LoadingMessage },\n data() {\n return {\n status: \"idle\",\n count: 0,\n interval: null\n };\n },\n computed: {\n voteCounts() {\n return this.$store.state.voteCounts;\n },\n voteTalliesArr() {\n if (!this.voteCounts) return [];\n return Object.keys(this.voteCounts.vote_tallies).map(value => {\n return this.voteCounts.vote_tallies[value];\n });\n },\n winningVoteAmount() {\n if (this.voteCounts.votes_needed.value === \"simple\") {\n if (this.voteCounts.voting_population.value === \"of_voting\") {\n return this.voteCounts.vote_count / 2;\n } else {\n return this.voteCounts.voting_members_count / 2;\n }\n } else {\n if (this.voteCounts.voting_population.value === \"of_voting\") {\n return this.voteCounts.vote_count * (2 / 3);\n } else {\n return this.voteCounts.voting_members_count * (2 / 3);\n }\n }\n // eslint-disable-next-line no-unreachable\n return null;\n }\n },\n watch: {\n count(value) {\n if (value === 12) {\n this.stopGettingResults();\n }\n }\n },\n methods: {\n async getResults() {\n this.$store.dispatch(\"getAdminResults\");\n this.count = this.count + 1;\n },\n async startGettingResults() {\n this.status = \"loading\";\n this.$store.dispatch(\"getAdminResults\");\n this.interval = setInterval(this.getResults, 5000);\n },\n stopGettingResults() {\n clearInterval(this.interval);\n this.interval = null;\n this.count = 0;\n this.status = \"idle\";\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminVotingResults.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminVotingResults.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminVotingResults.vue?vue&type=template&id=968d365e&scoped=true&\"\nimport script from \"./AdminVotingResults.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminVotingResults.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"968d365e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"motion-voting\"},[_c('MotionContent',{attrs:{\"motion\":_vm.motion}}),(_vm.status === 'idle')?_c('div',{staticClass:\"mt-5\"},[_c('h3',{staticClass:\"mb-2\"},[_vm._v(\" Change Your Vote \"),(_vm.lastVote)?_c('span',[_vm._v(\"of \"),_c('span',{staticClass:\"badge badge-dark badge-pill d-inline\"},[_vm._v(_vm._s(_vm.lastVoteLabel))])]):_vm._e(),_vm._v(\" For Motion \")]),_c('form',{staticClass:\"elections-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submitVote($event)}}},[_vm._l((_vm.voteOptions),function(option){return _c('div',{key:option.value},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.voteValue),expression:\"voteValue\"}],staticClass:\"senator_input\",attrs:{\"type\":\"radio\",\"name\":\"vote\",\"id\":(\"vote_\" + (option.value))},domProps:{\"value\":option.value,\"checked\":_vm._q(_vm.voteValue,option.value)},on:{\"change\":function($event){_vm.voteValue=option.value}}}),_c('label',{attrs:{\"for\":(\"vote_\" + (option.value))}},[_c('div',{staticClass:\"nominee-container d-flex align-items-center p-2\"},[_c('span',{staticClass:\"indicator\",attrs:{\"aria-hidden\":\"true\"}}),_c('span',{staticClass:\"senator\",staticStyle:{\"text-transform\":\"capitalize\"}},[_c('b',[_vm._v(_vm._s(option.label))])])])])])}),_c('input',{staticClass:\"btn btn-primary btn-lg mt-5\",attrs:{\"type\":\"submit\",\"value\":\"Submit Vote\",\"name\":\"submitButton\"}})],2)]):_vm._e(),(_vm.status === 'loading')?_c('LoadingMessage',{attrs:{\"h3\":\"\"}},[_vm._v(\"Please wait as your vote is submitted\")]):_vm._e(),(_vm.status === 'error')?_c('ErrorMessage',{attrs:{\"alert-content\":_vm.currentError.content},on:{\"close\":_vm.closeError}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"motion-voting\">\n <MotionContent :motion=\"motion\" />\n <div class=\"mt-5\" v-if=\"status === 'idle'\">\n <h3 class=\"mb-2\">\n Change Your Vote <span v-if=\"lastVote\">of\n <span class=\"badge badge-dark badge-pill d-inline\">{{\n lastVoteLabel\n }}</span></span>\n For Motion\n </h3>\n <form @submit.prevent=\"submitVote\" class=\"elections-form\">\n <div v-for=\"option in voteOptions\" :key=\"option.value\">\n <input\n type=\"radio\"\n name=\"vote\"\n :id=\"`vote_${option.value}`\"\n :value=\"option.value\"\n class=\"senator_input\"\n v-model=\"voteValue\"\n />\n <label :for=\"`vote_${option.value}`\">\n <div class=\"nominee-container d-flex align-items-center p-2\">\n <span aria-hidden=\"true\" class=\"indicator\"></span>\n <span class=\"senator\" style=\"text-transform: capitalize\">\n <b>{{ option.label }}</b>\n </span>\n </div>\n </label>\n </div>\n <input\n type=\"submit\"\n value=\"Submit Vote\"\n class=\"btn btn-primary btn-lg mt-5\"\n name=\"submitButton\"\n />\n </form>\n </div>\n <LoadingMessage h3 v-if=\"status === 'loading'\"\n >Please wait as your vote is submitted</LoadingMessage\n >\n <ErrorMessage\n v-if=\"status === 'error'\"\n :alert-content=\"currentError.content\"\n @close=\"closeError\"\n />\n </div>\n</template>\n\n<script>\nimport MotionContent from \"@/components/MotionContent\";\nimport ErrorMessage from \"@/components/ErrorMessage\";\nimport { mergeMeta } from \"@/helpers\";\nimport LoadingMessage from \"@/components/LoadingMessage\";\nexport default {\n name: \"MotionVotingChange\",\n components: { LoadingMessage, ErrorMessage, MotionContent },\n data() {\n return {\n status: \"idle\",\n currentError: null,\n voteValue: null\n };\n },\n computed: {\n lastVote() {\n return this.$store.state.lastVote;\n },\n motion() {\n return this.$store.state.floor.motion;\n },\n lastVoteLabel() {\n return this.lastVote ? this.lastVote.label : null;\n },\n currentFloor() {\n return this.$store.state.currentFloor;\n },\n voteOptions() {\n return this.motion.motion_voting.voting_options\n .split(\"\\n\")\n .map(option => {\n option = option.split(\":\");\n return {\n value: option[0].trim(),\n label: option[1].trim()\n };\n });\n },\n voteValueLabel() {\n if (!this.voteValue) return \"\";\n return this.voteOptions.find(option => {\n return option.value === this.voteValue;\n }).label;\n }\n },\n methods: {\n async submitVote() {\n if (this.voteValue === null) return;\n if (this.status === \"loading\") return;\n this.status = \"loading\";\n this.$store.state.floorService.send(\"SUBMIT_VOTE\");\n const response = await this.$store.dispatch(\"changeFloorVote\", {\n value: this.voteValue,\n label: this.voteValueLabel,\n motion: this.motion.motion_voting.id\n });\n if (response.code) {\n this.$store.state.floorService.send(response.code);\n let meta = mergeMeta(this.currentFloor.meta);\n if (meta.error) {\n this.currentError = meta.error;\n this.status = \"error\";\n }\n } else {\n this.$store.state.floorService.send(\"SUCCESS\");\n this.status = \"idle\";\n }\n },\n closeError() {\n const nextStateAction = this.currentError.nextState;\n this.currentError = null;\n this.$store.state.floorService.send(nextStateAction);\n this.status = \"idle\";\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionVotingChange.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MotionVotingChange.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MotionVotingChange.vue?vue&type=template&id=d741f95a&scoped=true&\"\nimport script from \"./MotionVotingChange.vue?vue&type=script&lang=js&\"\nexport * from \"./MotionVotingChange.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d741f95a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"voting-results\"},[_c('MotionContent',{attrs:{\"motion\":_vm.motion}}),_c('div',[_c('h3',{staticClass:\"mb-3\"},[_vm._v(\"Results\")]),_vm._l((_vm.voteTallies),function(voteObj,voteVal){return _c('div',{key:voteVal},[_c('p',[_c('b',[_vm._v(\" \"+_vm._s(voteObj.label)+\" : \"+_vm._s(voteObj.vote_count)+\" \")])])])})],2),(_vm.status === 'idle')?_c('div',{staticClass:\"mt-5\"},[(!_vm.withPusher)?_c('button',{staticClass:\"btn btn-primary\",class:{ disabled: _vm.status === 'loading' },on:{\"click\":function($event){return _vm.reloadMotion()}}},[_vm._v(\" Get Next Motion \"),_c('i',{staticClass:\" ml-3 fas fa-spinner\"})]):_vm._e()]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"voting-results\">\n <MotionContent :motion=\"motion\" />\n <div>\n <h3 class=\"mb-3\">Results</h3>\n <div v-for=\"(voteObj, voteVal) in voteTallies\" :key=\"voteVal\">\n <p>\n <b> {{ voteObj.label }} : {{ voteObj.vote_count }} </b>\n </p>\n </div>\n </div>\n <div class=\"mt-5\" v-if=\"status === 'idle'\">\n <button\n class=\"btn btn-primary\"\n :class=\"{ disabled: status === 'loading' }\"\n @click=\"reloadMotion()\"\n v-if=\"!withPusher\"\n >\n Get Next Motion <i class=\" ml-3 fas fa-spinner\"></i>\n </button>\n </div>\n </div>\n</template>\n\n<script>\nimport MotionContent from \"@/components/MotionContent\";\nimport { mergeMeta } from \"@/helpers\";\nexport default {\n name: \"VotingResults\",\n components: { MotionContent },\n data() {\n return {\n status: \"idle\",\n currentError: null\n };\n },\n computed: {\n motion() {\n return this.$store.state.floor.motion;\n },\n currentFloor() {\n return this.$store.state.currentFloor;\n },\n voteTallies() {\n return this.$store.state.floor.vote_tallies;\n },\n withPusher() {\n return window.SENATE_REST.sync == 1;\n }\n },\n methods: {\n async reloadMotion() {\n if (this.status === \"loading\") return;\n this.status = \"loading\";\n this.$store.state.floorService.send(\"GET_FLOOR\");\n await this.$store.dispatch(\"getFloor\");\n let meta = mergeMeta(this.currentFloor.meta);\n if (meta.error) {\n this.currentError = meta.error;\n this.status = \"error\";\n }\n },\n closeError() {\n const nextStateAction = this.currentError.nextState;\n this.currentError = null;\n this.$store.state.floorService.send(nextStateAction);\n this.status = \"idle\";\n }\n }\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VotingResults.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VotingResults.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./VotingResults.vue?vue&type=template&id=80f403d2&scoped=true&\"\nimport script from \"./VotingResults.vue?vue&type=script&lang=js&\"\nexport * from \"./VotingResults.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"80f403d2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.session)?_c('div',{staticClass:\"row mt-5\"},[_c('div',{staticClass:\"col\"},[(_vm.session.id)?[_c('h2',[_vm._v(\" Now Voting For: \"),_c('b',{staticClass:\"pl-0 pl-md-3 d-block d-md-inline-block\"},[_vm._v(\" \"+_vm._s(_vm.session[\"position_title\"])+\" \")])])]:_vm._e(),(!_vm.session.id && _vm.session['has_more_sessions'])?_c('LoadingMessage',{attrs:{\"h3\":\"\"}},[_vm._v(\" Thank you - your attendance has been marked. \"),_c('br'),_vm._v(\" Please wait for the next position. \")]):_vm._e(),(_vm.session.description && !_vm.session.vote_status)?[_c('br'),_c('h3',[_vm._v(\" Position Description \")]),_c('p',[_vm._v(_vm._s(_vm.session[\"description\"]))])]:_vm._e(),(_vm.session.show_nominees == true || _vm.session.vote_status == true)?[_c('br'),_c('h3',[_vm._v(\"Nominees\")]),_c('div',{staticClass:\"nominees-grid\"},_vm._l((_vm.session.nominees),function(nominee,index){return _c('div',{key:nominee.senator.ID,staticClass:\"nominee flex p-3\"},[(nominee.senator.img_url)?[_c('div',{staticClass:\"mr-3\"},[_c('img',{staticClass:\"nominee-img\",attrs:{\"src\":nominee.senator.img_url}})])]:_vm._e(),_c('div',[_c('div',{staticStyle:{\"flex-grow\":\"1\"}},[_c('h4',[_c('b',{attrs:{\"id\":nominee.senator.id}},[_vm._v(_vm._s(nominee.senator.name))]),_c('br'),_c('small',{class:{\n 'text-muted': !nominee.senator.constituency,\n }},[_vm._v(\" \"+_vm._s(nominee.senator.constituency ? nominee.senator.constituency : \"No constituency for this term\")+\" \")])])]),_c('div',[_c('button',{staticClass:\"btn btn-campaign-statement btn-sm pl-0\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();return _vm.showCampaignStatement(index)}}},[_c('i',{staticClass:\"fas fa-bullhorn mr-2\"}),_vm._v(\" Read Campaign Statement \")])])])],2)}),0)]:_vm._e(),(_vm.session.vote_status === true)?[_c('br'),(_vm.sessionVotingStatus === 'idle')?_c('ElectionsVoting',{attrs:{\"session\":_vm.session}}):_vm._e(),(_vm.sessionVotingStatus === 'already_voted')?_c('LoadingMessage',{attrs:{\"h3\":\"\"}},[_vm._v(\" You have already voted for this position, \"),_c('br'),_vm._v(\" please wait for the results. \")]):_vm._e(),(_vm.sessionVotingStatus === 'submitting_vote')?_c('LoadingMessage',{attrs:{\"h3\":\"\"}},[_vm._v(\" Please wait for the results \")]):_vm._e(),(_vm.sessionVotingStatus === 'thanks_for_voting')?_c('LoadingMessage',{attrs:{\"h3\":\"\"}},[_vm._v(\" Thanks for submitting your vote! Please wait for the results. \")]):_vm._e()]:_vm._e(),_c('hr'),_c('br'),_c('ElectionsResults'),_c('div',{staticClass:\"modal fade\",attrs:{\"id\":\"campaignStatementModal\",\"tabindex\":\"-1\",\"role\":\"dialog\",\"aria-labelledby\":\"accessibilityModalTitle\",\"aria-hidden\":\"true\"}},[_c('div',{staticClass:\"modal-dialog modal-dialog-centered\",attrs:{\"role\":\"document\"}},[(_vm.activeNominee)?_c('div',{staticClass:\"modal-content\"},[_c('div',{staticClass:\"modal-header\"},[_c('h2',{staticClass:\"modal-title h4\",attrs:{\"id\":\"accessibilityModalTitle\"}},[_c('b',[_vm._v(_vm._s(_vm.activeNominee.senator.name)+\"'s Campaign Statement\")])]),_c('button',{staticClass:\"close\",attrs:{\"type\":\"button\",\"aria-label\":\"Close\"},on:{\"click\":function($event){$event.preventDefault();return _vm.hideCampaignStatement($event)}}},[_c('span',{attrs:{\"aria-hidden\":\"true\"}},[_vm._v(\"×\")])])]),(_vm.activeNominee)?_c('div',{staticClass:\"modal-body\",domProps:{\"innerHTML\":_vm._s(_vm.activeNominee.statement)}}):_vm._e(),_c('div',{staticClass:\"modal-footer\"},[_c('button',{staticClass:\"btn btn-primary\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){$event.preventDefault();return _vm.hideCampaignStatement($event)}}},[_vm._v(\" Close \")])])]):_vm._e()])])],2)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.status === 'idle')?_c('form',{staticClass:\"elections-form mb-5\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submitElectionVote($event)}}},[_c('h3',[_vm._v(\" Elect \"+_vm._s(_vm.session.selections_number)+\" Senator\"+_vm._s(2 > _vm.session[\"selections_number\"] ? \"\" : \"s\")+\" \")]),_vm._l((_vm.session.nominees),function(nominee){return _c('div',{key:nominee.senator.ID},[((_vm.session['selections_number'] < 2 ? 'radio' : 'checkbox')==='checkbox')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selectedNominees),expression:\"selectedNominees\"}],staticClass:\"senator_input\",attrs:{\"id\":(\"senator_\" + (nominee.senator.ID)),\"type\":\"checkbox\"},domProps:{\"value\":nominee.senator,\"checked\":Array.isArray(_vm.selectedNominees)?_vm._i(_vm.selectedNominees,nominee.senator)>-1:(_vm.selectedNominees)},on:{\"change\":function($event){var $$a=_vm.selectedNominees,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=nominee.senator,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.selectedNominees=$$a.concat([$$v]))}else{$$i>-1&&(_vm.selectedNominees=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.selectedNominees=$$c}}}}):((_vm.session['selections_number'] < 2 ? 'radio' : 'checkbox')==='radio')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selectedNominees),expression:\"selectedNominees\"}],staticClass:\"senator_input\",attrs:{\"id\":(\"senator_\" + (nominee.senator.ID)),\"type\":\"radio\"},domProps:{\"value\":nominee.senator,\"checked\":_vm._q(_vm.selectedNominees,nominee.senator)},on:{\"change\":function($event){_vm.selectedNominees=nominee.senator}}}):_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selectedNominees),expression:\"selectedNominees\"}],staticClass:\"senator_input\",attrs:{\"id\":(\"senator_\" + (nominee.senator.ID)),\"type\":_vm.session['selections_number'] < 2 ? 'radio' : 'checkbox'},domProps:{\"value\":nominee.senator,\"value\":(_vm.selectedNominees)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.selectedNominees=$event.target.value}}}),_c('label',{attrs:{\"for\":(\"senator_\" + (nominee.senator.ID))}},[_c('div',{staticClass:\"nominee-container d-flex align-items-center p-2\"},[_c('span',{staticClass:\"indicator\",class:{ checkbox: _vm.session['selections_number'] > 1 },attrs:{\"aria-hidden\":\"true\"}}),_c('span',{staticClass:\"senator\"},[_c('b',[_vm._v(_vm._s(nominee.senator.name))])])])])])}),_c('button',{staticClass:\"btn btn-primary mt-4\",attrs:{\"type\":\"submit\"}},[_vm._v(\" Submit Selection\"+_vm._s(2 > _vm.session[\"selections_number\"] ? \"\" : \"s\")+\" \")])],2):_vm._e(),(_vm.status === 'loading')?_c('LoadingMessage',{attrs:{\"h3\":\"\"}},[_vm._v(\" Please wait as your vote is submitted \")]):_vm._e(),(_vm.status === 'error')?_c('ErrorMessage',{attrs:{\"alert-content\":_vm.currentError.content},on:{\"close\":_vm.closeError}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","import defineProperty from \"./defineProperty\";\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}","<template>\n <div>\n <form\n class=\"elections-form mb-5\"\n @submit.prevent=\"submitElectionVote\"\n v-if=\"status === 'idle'\"\n >\n <h3>\n Elect {{ session.selections_number }} Senator{{\n 2 > session[\"selections_number\"] ? \"\" : \"s\"\n }}\n </h3>\n <div v-for=\"nominee in session.nominees\" :key=\"nominee.senator.ID\">\n <input\n :type=\"session['selections_number'] < 2 ? 'radio' : 'checkbox'\"\n :id=\"`senator_${nominee.senator.ID}`\"\n :value=\"nominee.senator\"\n v-model=\"selectedNominees\"\n class=\"senator_input\"\n />\n <label :for=\"`senator_${nominee.senator.ID}`\">\n <div class=\"nominee-container d-flex align-items-center p-2\">\n <span\n aria-hidden=\"true\"\n class=\"indicator\"\n :class=\"{ checkbox: session['selections_number'] > 1 }\"\n ></span>\n <span class=\"senator\">\n <b>{{ nominee.senator.name }}</b>\n </span>\n </div>\n </label>\n </div>\n <button class=\"btn btn-primary mt-4\" type=\"submit\">\n Submit Selection{{ 2 > session[\"selections_number\"] ? \"\" : \"s\" }}\n </button>\n </form>\n <LoadingMessage h3 v-if=\"status === 'loading'\">\n Please wait as your vote is submitted\n </LoadingMessage>\n <ErrorMessage\n v-if=\"status === 'error'\"\n :alert-content=\"currentError.content\"\n @close=\"closeError\"\n />\n </div>\n</template>\n<script>\n import LoadingMessage from \"@/components/LoadingMessage\";\n export default {\n name: \"ElectionsVoting\",\n components: { LoadingMessage },\n props: {\n session: {},\n },\n data() {\n return {\n selectedNominees: [],\n status: \"idle\",\n };\n },\n computed: {\n selectedNomineesIDs() {\n if (Array.isArray(this.selectedNominees)) {\n return this.selectedNominees.map((nominee) => {\n return nominee.ID;\n });\n } else {\n return this.selectedNominees.ID;\n }\n },\n selectedNomineeNames() {\n if (Array.isArray(this.selectedNominees)) {\n return this.selectedNominees\n .map((nominee) => {\n return nominee.name;\n })\n .join(\", \");\n } else {\n return this.selectedNominees.name;\n }\n },\n },\n watch: {},\n methods: {\n async submitElectionVote() {\n this.status = \"loading\";\n const vote = {\n ru_senate_election_vote_nonce: window.SENATE_REST.nonce,\n election: this.session.electionId,\n ballot: this.session.id,\n ...(Array.isArray(this.selectedNomineesIDs)\n ? {\n nominees: this.selectedNomineesIDs,\n }\n : {\n nominee: this.selectedNomineesIDs,\n }),\n };\n\n const response = await this.$store.dispatch(\n \"elections/submitElectionVote\",\n {\n vote,\n voteDescription: this.selectedNomineeNames,\n }\n );\n if (response.code) {\n let newSession = { ...this.session };\n if (response.code === \"ALREADY_VOTED\") {\n newSession[\"senator_already_voted\"] = true;\n this.$store.commit(\"elections/setSession\", newSession);\n }\n }\n\n this.status = \"idle\";\n },\n },\n };\n</script>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ElectionsVoting.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ElectionsVoting.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ElectionsVoting.vue?vue&type=template&id=18ca7ca8&\"\nimport script from \"./ElectionsVoting.vue?vue&type=script&lang=js&\"\nexport * from \"./ElectionsVoting.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.hasResults)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('h2',[_vm._v(\"Previous Election Result\")]),_c('br'),_c('div',{staticClass:\"election-results\"},_vm._l((_vm.results),function(result){return _c('div',{key:result.position,staticClass:\"mb-4 border-bottom\"},[_c('h3',[_c('b',[_vm._v(_vm._s(result[\"position_title\"]))])]),_c('div',{domProps:{\"innerHTML\":_vm._s(result['result'])}})])}),0)])]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"row\" v-if=\"hasResults\">\n <div class=\"col\">\n <h2>Previous Election Result</h2>\n <br/>\n <div class=\"election-results\">\n <div\n class=\"mb-4 border-bottom\"\n v-for=\"result in results\"\n :key=\"result.position\"\n >\n <h3>\n <b>{{ result[\"position_title\"] }}</b>\n </h3>\n <div v-html=\"result['result']\"></div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nexport default {\n name: \"ElectionsResults\",\n computed: {\n session() {\n return this.$store.state.elections.session\n ? this.$store.state.elections.session\n : {};\n },\n hasResults() {\n if (this.session.results) return this.session.results.length > 0;\n return false;\n },\n results() {\n return this.session.results;\n },\n },\n};\n</script>\n\n<style scoped></style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ElectionsResults.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ElectionsResults.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ElectionsResults.vue?vue&type=template&id=9b8fbcd0&scoped=true&\"\nimport script from \"./ElectionsResults.vue?vue&type=script&lang=js&\"\nexport * from \"./ElectionsResults.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"9b8fbcd0\",\n null\n \n)\n\nexport default component.exports","<template>\n <div class=\"row mt-5\" v-if=\"session\">\n <div class=\"col\">\n <template v-if=\"session.id\">\n <h2>\n Now Voting For:\n <b class=\"pl-0 pl-md-3 d-block d-md-inline-block\">\n {{ session[\"position_title\"] }}\n </b>\n </h2>\n </template>\n <LoadingMessage h3 v-if=\"!session.id && session['has_more_sessions']\">\n Thank you - your attendance has been marked. <br />\n Please wait for the next position.\n </LoadingMessage>\n\n <template v-if=\"session.description && !session.vote_status\">\n <br />\n <h3>\n Position Description\n </h3>\n <p>{{ session[\"description\"] }}</p>\n </template>\n <template\n v-if=\"session.show_nominees == true || session.vote_status == true\"\n >\n <br />\n <h3>Nominees</h3>\n <div class=\"nominees-grid\">\n <div\n class=\"nominee flex p-3\"\n v-for=\"(nominee, index) in session.nominees\"\n :key=\"nominee.senator.ID\"\n >\n <template v-if=\"nominee.senator.img_url\">\n <div class=\"mr-3\">\n <img class=\"nominee-img\" :src=\"nominee.senator.img_url\" />\n </div>\n </template>\n <div>\n <div style=\"flex-grow: 1;\">\n <h4>\n <b :id=\"nominee.senator.id\">{{ nominee.senator.name }}</b>\n <br />\n <small\n :class=\"{\n 'text-muted': !nominee.senator.constituency,\n }\"\n >\n {{\n nominee.senator.constituency\n ? nominee.senator.constituency\n : \"No constituency for this term\"\n }}\n </small>\n </h4>\n </div>\n <div>\n <button\n type=\"button\"\n class=\"btn btn-campaign-statement btn-sm pl-0\"\n @click.prevent=\"showCampaignStatement(index)\"\n >\n <i class=\"fas fa-bullhorn mr-2\"></i>\n Read Campaign Statement\n </button>\n </div>\n </div>\n </div>\n </div>\n </template>\n\n <template v-if=\"session.vote_status === true\">\n <br />\n <ElectionsVoting\n :session=\"session\"\n v-if=\"sessionVotingStatus === 'idle'\"\n />\n <LoadingMessage h3 v-if=\"sessionVotingStatus === 'already_voted'\">\n You have already voted for this position,\n <br />\n please wait for the results.\n </LoadingMessage>\n <LoadingMessage h3 v-if=\"sessionVotingStatus === 'submitting_vote'\">\n Please wait for the results\n </LoadingMessage>\n <LoadingMessage h3 v-if=\"sessionVotingStatus === 'thanks_for_voting'\">\n Thanks for submitting your vote! Please wait for the results.\n </LoadingMessage>\n </template>\n\n <hr />\n <br />\n <ElectionsResults />\n\n <div\n class=\"modal fade\"\n id=\"campaignStatementModal\"\n tabindex=\"-1\"\n role=\"dialog\"\n aria-labelledby=\"accessibilityModalTitle\"\n aria-hidden=\"true\"\n >\n <div class=\"modal-dialog modal-dialog-centered\" role=\"document\">\n <div class=\"modal-content\" v-if=\"activeNominee\">\n <div class=\"modal-header\">\n <h2 class=\"modal-title h4\" id=\"accessibilityModalTitle\">\n <b>{{ activeNominee.senator.name }}'s Campaign Statement</b>\n </h2>\n <button\n type=\"button\"\n class=\"close\"\n aria-label=\"Close\"\n @click.prevent=\"hideCampaignStatement\"\n >\n <span aria-hidden=\"true\">×</span>\n </button>\n </div>\n <div\n class=\"modal-body\"\n v-html=\"activeNominee.statement\"\n v-if=\"activeNominee\"\n ></div>\n <div class=\"modal-footer\">\n <button\n type=\"button\"\n class=\"btn btn-primary\"\n @click.prevent=\"hideCampaignStatement\"\n >\n Close\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\n import ElectionsVoting from \"@/components/ElectionsVoting\";\n import LoadingMessage from \"@/components/LoadingMessage\";\n import ElectionsResults from \"@/components/ElectionsResults\";\n\n export default {\n name: \"ElectionsSession\",\n components: { ElectionsResults, LoadingMessage, ElectionsVoting },\n data() {\n return {\n activeNominee: null,\n };\n },\n computed: {\n session() {\n return this.$store.state.elections.session;\n },\n sessionVotingStatus() {\n return this.$store.getters[\"elections/sessionVotingStatus\"];\n },\n lastVote() {\n return this.$store.state.elections.lastVote;\n },\n },\n methods: {\n showCampaignStatement(nomineeIndex) {\n this.activeNominee = this.session.nominees[nomineeIndex];\n window.jQuery(\"#campaignStatementModal\").modal(\"show\");\n },\n hideCampaignStatement() {\n window.jQuery(\"#campaignStatementModal\").modal(\"hide\");\n this.activeNominee = null;\n },\n },\n };\n</script>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ElectionsSession.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ElectionsSession.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ElectionsSession.vue?vue&type=template&id=b917599c&\"\nimport script from \"./ElectionsSession.vue?vue&type=script&lang=js&\"\nexport * from \"./ElectionsSession.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","<template>\n <div>\n <div class=\"container mt-5\" v-if=\"votingType === 'business'\">\n <div>\n <h1>Rutgers University Senate Business</h1>\n <hr />\n </div>\n <div class=\"mt-5\">\n <component :is=\"currentFloorView\" />\n </div>\n </div>\n <div class=\"container mt-5\" v-if=\"votingType === 'elections'\">\n <ElectionsSession />\n </div>\n </div>\n</template>\n\n<script>\n import Idle from \"@/views/Idle\";\n import MotionDiscussion from \"@/views/MotionDiscussion\";\n import MotionVoting from \"@/views/MotionVoting\";\n import MotionWaiting from \"@/views/MotionWaiting\";\n import MotionResults from \"@/views/MotionResults\";\n import Amending from \"@/views/Amending\";\n import Waiting from \"@/views/Waiting\";\n import MotionDiscussionTwo from \"@/views/MotionDiscussionTwo\";\n import MotionVotingTwo from \"@/views/MotionVotingTwo\";\n import DidNotVote from \"@/views/DidNotVote\";\n import ThanksForVoting from \"@/views/ThanksForVoting\";\n import AlreadyVoted from \"@/views/AlreadyVoted\";\n import AdminVotingResults from \"@/views/AdminVotingResults\";\n import MotionVotingChange from \"@/views/MotionVotingChange\";\n import VotingResults from \"@/views/VotingResults\";\n import ElectionsSession from \"@/views/ElectionsSession\";\n export default {\n data() {\n return {\n isAdmin: false,\n votingType: null,\n };\n },\n components: {\n ElectionsSession,\n Amending,\n MotionVoting,\n MotionDiscussion,\n MotionResults,\n MotionWaiting,\n Idle,\n\n Waiting,\n MotionDiscussionTwo,\n MotionVotingTwo,\n DidNotVote,\n ThanksForVoting,\n AlreadyVoted,\n AdminVotingResults,\n MotionVotingChange,\n VotingResults,\n },\n computed: {\n currentComponent() {\n return this.$store.getters.currentComponent;\n },\n currentFloorView() {\n return this.$store.getters.currentFloorView;\n },\n floorStatus() {\n return this.$store.state.floor\n ? this.$store.state.floor.floor_status\n : \"no_MOTION\";\n },\n },\n created() {\n this.votingType = window.SENATE_REST.voting_type;\n if (this.votingType === \"elections\") {\n this.$store.dispatch(\"elections/getSession\");\n }\n this.isAdmin = window.SENATE_REST.is_admin == 1;\n this.subscribe();\n },\n methods: {\n subscribe() {\n const pusher = new window.Pusher(window.SENATE_REST.pusher_key, {\n cluster: \"us2\",\n });\n const self = this;\n if (this.votingType === \"business\") {\n const channel = pusher.subscribe(\"senate-business\");\n channel.bind(\"business\", function(data) {\n self.$store.commit(\"SET\", {\n field: \"floor\",\n value: data,\n });\n self.$store.state.floorService.send(data.floor_status);\n });\n }\n if (this.votingType === \"elections\") {\n const channel = pusher.subscribe(\"senate-elections\");\n let events = {};\n channel.bind(\"elections\", function(data) {\n // eslint-disable-next-line no-prototype-builtins\n if (!events.hasOwnProperty(data.id)) {\n events[data.id] = { chunks: [], receivedFinal: false };\n }\n var ev = events[data.id];\n ev.chunks[data.index] = data.chunk;\n if (data.final) ev.receivedFinal = true;\n if (\n ev.receivedFinal &&\n ev.chunks.length === Object.keys(ev.chunks).length\n ) {\n self.$store.commit(\n \"elections/setSession\",\n JSON.parse(ev.chunks.join(\"\"))\n );\n delete events[data.id];\n }\n });\n }\n },\n },\n };\n</script>\n\n<style lang=\"scss\">\n #app {\n font-family: Avenir, Helvetica, Arial, sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n text-align: center;\n color: #2c3e50;\n }\n\n #nav {\n padding: 30px;\n\n a {\n font-weight: bold;\n color: #2c3e50;\n\n &.router-link-exact-active {\n color: #42b983;\n }\n }\n }\n</style>\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=6c88fe3f&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/*!\n * vue-router v3.4.3\n * (c) 2020 Evan You\n * @license MIT\n */\n/* */\n\nfunction assert (condition, message) {\n if (!condition) {\n throw new Error((\"[vue-router] \" + message))\n }\n}\n\nfunction warn (condition, message) {\n if (process.env.NODE_ENV !== 'production' && !condition) {\n typeof console !== 'undefined' && console.warn((\"[vue-router] \" + message));\n }\n}\n\nfunction extend (a, b) {\n for (var key in b) {\n a[key] = b[key];\n }\n return a\n}\n\nvar View = {\n name: 'RouterView',\n functional: true,\n props: {\n name: {\n type: String,\n default: 'default'\n }\n },\n render: function render (_, ref) {\n var props = ref.props;\n var children = ref.children;\n var parent = ref.parent;\n var data = ref.data;\n\n // used by devtools to display a router-view badge\n data.routerView = true;\n\n // directly use parent context's createElement() function\n // so that components rendered by router-view can resolve named slots\n var h = parent.$createElement;\n var name = props.name;\n var route = parent.$route;\n var cache = parent._routerViewCache || (parent._routerViewCache = {});\n\n // determine current view depth, also check to see if the tree\n // has been toggled inactive but kept-alive.\n var depth = 0;\n var inactive = false;\n while (parent && parent._routerRoot !== parent) {\n var vnodeData = parent.$vnode ? parent.$vnode.data : {};\n if (vnodeData.routerView) {\n depth++;\n }\n if (vnodeData.keepAlive && parent._directInactive && parent._inactive) {\n inactive = true;\n }\n parent = parent.$parent;\n }\n data.routerViewDepth = depth;\n\n // render previous view if the tree is inactive and kept-alive\n if (inactive) {\n var cachedData = cache[name];\n var cachedComponent = cachedData && cachedData.component;\n if (cachedComponent) {\n // #2301\n // pass props\n if (cachedData.configProps) {\n fillPropsinData(cachedComponent, data, cachedData.route, cachedData.configProps);\n }\n return h(cachedComponent, data, children)\n } else {\n // render previous empty view\n return h()\n }\n }\n\n var matched = route.matched[depth];\n var component = matched && matched.components[name];\n\n // render empty node if no matched route or no config component\n if (!matched || !component) {\n cache[name] = null;\n return h()\n }\n\n // cache component\n cache[name] = { component: component };\n\n // attach instance registration hook\n // this will be called in the instance's injected lifecycle hooks\n data.registerRouteInstance = function (vm, val) {\n // val could be undefined for unregistration\n var current = matched.instances[name];\n if (\n (val && current !== vm) ||\n (!val && current === vm)\n ) {\n matched.instances[name] = val;\n }\n }\n\n // also register instance in prepatch hook\n // in case the same component instance is reused across different routes\n ;(data.hook || (data.hook = {})).prepatch = function (_, vnode) {\n matched.instances[name] = vnode.componentInstance;\n };\n\n // register instance in init hook\n // in case kept-alive component be actived when routes changed\n data.hook.init = function (vnode) {\n if (vnode.data.keepAlive &&\n vnode.componentInstance &&\n vnode.componentInstance !== matched.instances[name]\n ) {\n matched.instances[name] = vnode.componentInstance;\n }\n };\n\n var configProps = matched.props && matched.props[name];\n // save route and configProps in cache\n if (configProps) {\n extend(cache[name], {\n route: route,\n configProps: configProps\n });\n fillPropsinData(component, data, route, configProps);\n }\n\n return h(component, data, children)\n }\n};\n\nfunction fillPropsinData (component, data, route, configProps) {\n // resolve props\n var propsToPass = data.props = resolveProps(route, configProps);\n if (propsToPass) {\n // clone to prevent mutation\n propsToPass = data.props = extend({}, propsToPass);\n // pass non-declared props as attrs\n var attrs = data.attrs = data.attrs || {};\n for (var key in propsToPass) {\n if (!component.props || !(key in component.props)) {\n attrs[key] = propsToPass[key];\n delete propsToPass[key];\n }\n }\n }\n}\n\nfunction resolveProps (route, config) {\n switch (typeof config) {\n case 'undefined':\n return\n case 'object':\n return config\n case 'function':\n return config(route)\n case 'boolean':\n return config ? route.params : undefined\n default:\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false,\n \"props in \\\"\" + (route.path) + \"\\\" is a \" + (typeof config) + \", \" +\n \"expecting an object, function or boolean.\"\n );\n }\n }\n}\n\n/* */\n\nvar encodeReserveRE = /[!'()*]/g;\nvar encodeReserveReplacer = function (c) { return '%' + c.charCodeAt(0).toString(16); };\nvar commaRE = /%2C/g;\n\n// fixed encodeURIComponent which is more conformant to RFC3986:\n// - escapes [!'()*]\n// - preserve commas\nvar encode = function (str) { return encodeURIComponent(str)\n .replace(encodeReserveRE, encodeReserveReplacer)\n .replace(commaRE, ','); };\n\nvar decode = decodeURIComponent;\n\nfunction resolveQuery (\n query,\n extraQuery,\n _parseQuery\n) {\n if ( extraQuery === void 0 ) extraQuery = {};\n\n var parse = _parseQuery || parseQuery;\n var parsedQuery;\n try {\n parsedQuery = parse(query || '');\n } catch (e) {\n process.env.NODE_ENV !== 'production' && warn(false, e.message);\n parsedQuery = {};\n }\n for (var key in extraQuery) {\n var value = extraQuery[key];\n parsedQuery[key] = Array.isArray(value)\n ? value.map(castQueryParamValue)\n : castQueryParamValue(value);\n }\n return parsedQuery\n}\n\nvar castQueryParamValue = function (value) { return (value == null || typeof value === 'object' ? value : String(value)); };\n\nfunction parseQuery (query) {\n var res = {};\n\n query = query.trim().replace(/^(\\?|#|&)/, '');\n\n if (!query) {\n return res\n }\n\n query.split('&').forEach(function (param) {\n var parts = param.replace(/\\+/g, ' ').split('=');\n var key = decode(parts.shift());\n var val = parts.length > 0 ? decode(parts.join('=')) : null;\n\n if (res[key] === undefined) {\n res[key] = val;\n } else if (Array.isArray(res[key])) {\n res[key].push(val);\n } else {\n res[key] = [res[key], val];\n }\n });\n\n return res\n}\n\nfunction stringifyQuery (obj) {\n var res = obj\n ? Object.keys(obj)\n .map(function (key) {\n var val = obj[key];\n\n if (val === undefined) {\n return ''\n }\n\n if (val === null) {\n return encode(key)\n }\n\n if (Array.isArray(val)) {\n var result = [];\n val.forEach(function (val2) {\n if (val2 === undefined) {\n return\n }\n if (val2 === null) {\n result.push(encode(key));\n } else {\n result.push(encode(key) + '=' + encode(val2));\n }\n });\n return result.join('&')\n }\n\n return encode(key) + '=' + encode(val)\n })\n .filter(function (x) { return x.length > 0; })\n .join('&')\n : null;\n return res ? (\"?\" + res) : ''\n}\n\n/* */\n\nvar trailingSlashRE = /\\/?$/;\n\nfunction createRoute (\n record,\n location,\n redirectedFrom,\n router\n) {\n var stringifyQuery = router && router.options.stringifyQuery;\n\n var query = location.query || {};\n try {\n query = clone(query);\n } catch (e) {}\n\n var route = {\n name: location.name || (record && record.name),\n meta: (record && record.meta) || {},\n path: location.path || '/',\n hash: location.hash || '',\n query: query,\n params: location.params || {},\n fullPath: getFullPath(location, stringifyQuery),\n matched: record ? formatMatch(record) : []\n };\n if (redirectedFrom) {\n route.redirectedFrom = getFullPath(redirectedFrom, stringifyQuery);\n }\n return Object.freeze(route)\n}\n\nfunction clone (value) {\n if (Array.isArray(value)) {\n return value.map(clone)\n } else if (value && typeof value === 'object') {\n var res = {};\n for (var key in value) {\n res[key] = clone(value[key]);\n }\n return res\n } else {\n return value\n }\n}\n\n// the starting route that represents the initial state\nvar START = createRoute(null, {\n path: '/'\n});\n\nfunction formatMatch (record) {\n var res = [];\n while (record) {\n res.unshift(record);\n record = record.parent;\n }\n return res\n}\n\nfunction getFullPath (\n ref,\n _stringifyQuery\n) {\n var path = ref.path;\n var query = ref.query; if ( query === void 0 ) query = {};\n var hash = ref.hash; if ( hash === void 0 ) hash = '';\n\n var stringify = _stringifyQuery || stringifyQuery;\n return (path || '/') + stringify(query) + hash\n}\n\nfunction isSameRoute (a, b) {\n if (b === START) {\n return a === b\n } else if (!b) {\n return false\n } else if (a.path && b.path) {\n return (\n a.path.replace(trailingSlashRE, '') === b.path.replace(trailingSlashRE, '') &&\n a.hash === b.hash &&\n isObjectEqual(a.query, b.query)\n )\n } else if (a.name && b.name) {\n return (\n a.name === b.name &&\n a.hash === b.hash &&\n isObjectEqual(a.query, b.query) &&\n isObjectEqual(a.params, b.params)\n )\n } else {\n return false\n }\n}\n\nfunction isObjectEqual (a, b) {\n if ( a === void 0 ) a = {};\n if ( b === void 0 ) b = {};\n\n // handle null value #1566\n if (!a || !b) { return a === b }\n var aKeys = Object.keys(a);\n var bKeys = Object.keys(b);\n if (aKeys.length !== bKeys.length) {\n return false\n }\n return aKeys.every(function (key) {\n var aVal = a[key];\n var bVal = b[key];\n // query values can be null and undefined\n if (aVal == null || bVal == null) { return aVal === bVal }\n // check nested equality\n if (typeof aVal === 'object' && typeof bVal === 'object') {\n return isObjectEqual(aVal, bVal)\n }\n return String(aVal) === String(bVal)\n })\n}\n\nfunction isIncludedRoute (current, target) {\n return (\n current.path.replace(trailingSlashRE, '/').indexOf(\n target.path.replace(trailingSlashRE, '/')\n ) === 0 &&\n (!target.hash || current.hash === target.hash) &&\n queryIncludes(current.query, target.query)\n )\n}\n\nfunction queryIncludes (current, target) {\n for (var key in target) {\n if (!(key in current)) {\n return false\n }\n }\n return true\n}\n\n/* */\n\nfunction resolvePath (\n relative,\n base,\n append\n) {\n var firstChar = relative.charAt(0);\n if (firstChar === '/') {\n return relative\n }\n\n if (firstChar === '?' || firstChar === '#') {\n return base + relative\n }\n\n var stack = base.split('/');\n\n // remove trailing segment if:\n // - not appending\n // - appending to trailing slash (last segment is empty)\n if (!append || !stack[stack.length - 1]) {\n stack.pop();\n }\n\n // resolve relative path\n var segments = relative.replace(/^\\//, '').split('/');\n for (var i = 0; i < segments.length; i++) {\n var segment = segments[i];\n if (segment === '..') {\n stack.pop();\n } else if (segment !== '.') {\n stack.push(segment);\n }\n }\n\n // ensure leading slash\n if (stack[0] !== '') {\n stack.unshift('');\n }\n\n return stack.join('/')\n}\n\nfunction parsePath (path) {\n var hash = '';\n var query = '';\n\n var hashIndex = path.indexOf('#');\n if (hashIndex >= 0) {\n hash = path.slice(hashIndex);\n path = path.slice(0, hashIndex);\n }\n\n var queryIndex = path.indexOf('?');\n if (queryIndex >= 0) {\n query = path.slice(queryIndex + 1);\n path = path.slice(0, queryIndex);\n }\n\n return {\n path: path,\n query: query,\n hash: hash\n }\n}\n\nfunction cleanPath (path) {\n return path.replace(/\\/\\//g, '/')\n}\n\nvar isarray = Array.isArray || function (arr) {\n return Object.prototype.toString.call(arr) == '[object Array]';\n};\n\n/**\n * Expose `pathToRegexp`.\n */\nvar pathToRegexp_1 = pathToRegexp;\nvar parse_1 = parse;\nvar compile_1 = compile;\nvar tokensToFunction_1 = tokensToFunction;\nvar tokensToRegExp_1 = tokensToRegExp;\n\n/**\n * The main path matching regexp utility.\n *\n * @type {RegExp}\n */\nvar PATH_REGEXP = new RegExp([\n // Match escaped characters that would otherwise appear in future matches.\n // This allows the user to escape special characters that won't transform.\n '(\\\\\\\\.)',\n // Match Express-style parameters and un-named parameters with a prefix\n // and optional suffixes. Matches appear as:\n //\n // \"/:test(\\\\d+)?\" => [\"/\", \"test\", \"\\d+\", undefined, \"?\", undefined]\n // \"/route(\\\\d+)\" => [undefined, undefined, undefined, \"\\d+\", undefined, undefined]\n // \"/*\" => [\"/\", undefined, undefined, undefined, undefined, \"*\"]\n '([\\\\/.])?(?:(?:\\\\:(\\\\w+)(?:\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))?|\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))([+*?])?|(\\\\*))'\n].join('|'), 'g');\n\n/**\n * Parse a string for the raw tokens.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!Array}\n */\nfunction parse (str, options) {\n var tokens = [];\n var key = 0;\n var index = 0;\n var path = '';\n var defaultDelimiter = options && options.delimiter || '/';\n var res;\n\n while ((res = PATH_REGEXP.exec(str)) != null) {\n var m = res[0];\n var escaped = res[1];\n var offset = res.index;\n path += str.slice(index, offset);\n index = offset + m.length;\n\n // Ignore already escaped sequences.\n if (escaped) {\n path += escaped[1];\n continue\n }\n\n var next = str[index];\n var prefix = res[2];\n var name = res[3];\n var capture = res[4];\n var group = res[5];\n var modifier = res[6];\n var asterisk = res[7];\n\n // Push the current path onto the tokens.\n if (path) {\n tokens.push(path);\n path = '';\n }\n\n var partial = prefix != null && next != null && next !== prefix;\n var repeat = modifier === '+' || modifier === '*';\n var optional = modifier === '?' || modifier === '*';\n var delimiter = res[2] || defaultDelimiter;\n var pattern = capture || group;\n\n tokens.push({\n name: name || key++,\n prefix: prefix || '',\n delimiter: delimiter,\n optional: optional,\n repeat: repeat,\n partial: partial,\n asterisk: !!asterisk,\n pattern: pattern ? escapeGroup(pattern) : (asterisk ? '.*' : '[^' + escapeString(delimiter) + ']+?')\n });\n }\n\n // Match any characters still remaining.\n if (index < str.length) {\n path += str.substr(index);\n }\n\n // If the path exists, push it onto the end.\n if (path) {\n tokens.push(path);\n }\n\n return tokens\n}\n\n/**\n * Compile a string to a template function for the path.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!function(Object=, Object=)}\n */\nfunction compile (str, options) {\n return tokensToFunction(parse(str, options), options)\n}\n\n/**\n * Prettier encoding of URI path segments.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeURIComponentPretty (str) {\n return encodeURI(str).replace(/[\\/?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Encode the asterisk parameter. Similar to `pretty`, but allows slashes.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeAsterisk (str) {\n return encodeURI(str).replace(/[?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Expose a method for transforming tokens into the path function.\n */\nfunction tokensToFunction (tokens, options) {\n // Compile all the tokens into regexps.\n var matches = new Array(tokens.length);\n\n // Compile all the patterns before compilation.\n for (var i = 0; i < tokens.length; i++) {\n if (typeof tokens[i] === 'object') {\n matches[i] = new RegExp('^(?:' + tokens[i].pattern + ')$', flags(options));\n }\n }\n\n return function (obj, opts) {\n var path = '';\n var data = obj || {};\n var options = opts || {};\n var encode = options.pretty ? encodeURIComponentPretty : encodeURIComponent;\n\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n path += token;\n\n continue\n }\n\n var value = data[token.name];\n var segment;\n\n if (value == null) {\n if (token.optional) {\n // Prepend partial segment prefixes.\n if (token.partial) {\n path += token.prefix;\n }\n\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to be defined')\n }\n }\n\n if (isarray(value)) {\n if (!token.repeat) {\n throw new TypeError('Expected \"' + token.name + '\" to not repeat, but received `' + JSON.stringify(value) + '`')\n }\n\n if (value.length === 0) {\n if (token.optional) {\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to not be empty')\n }\n }\n\n for (var j = 0; j < value.length; j++) {\n segment = encode(value[j]);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected all \"' + token.name + '\" to match \"' + token.pattern + '\", but received `' + JSON.stringify(segment) + '`')\n }\n\n path += (j === 0 ? token.prefix : token.delimiter) + segment;\n }\n\n continue\n }\n\n segment = token.asterisk ? encodeAsterisk(value) : encode(value);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected \"' + token.name + '\" to match \"' + token.pattern + '\", but received \"' + segment + '\"')\n }\n\n path += token.prefix + segment;\n }\n\n return path\n }\n}\n\n/**\n * Escape a regular expression string.\n *\n * @param {string} str\n * @return {string}\n */\nfunction escapeString (str) {\n return str.replace(/([.+*?=^!:${}()[\\]|\\/\\\\])/g, '\\\\$1')\n}\n\n/**\n * Escape the capturing group by escaping special characters and meaning.\n *\n * @param {string} group\n * @return {string}\n */\nfunction escapeGroup (group) {\n return group.replace(/([=!:$\\/()])/g, '\\\\$1')\n}\n\n/**\n * Attach the keys as a property of the regexp.\n *\n * @param {!RegExp} re\n * @param {Array} keys\n * @return {!RegExp}\n */\nfunction attachKeys (re, keys) {\n re.keys = keys;\n return re\n}\n\n/**\n * Get the flags for a regexp from the options.\n *\n * @param {Object} options\n * @return {string}\n */\nfunction flags (options) {\n return options && options.sensitive ? '' : 'i'\n}\n\n/**\n * Pull out keys from a regexp.\n *\n * @param {!RegExp} path\n * @param {!Array} keys\n * @return {!RegExp}\n */\nfunction regexpToRegexp (path, keys) {\n // Use a negative lookahead to match only capturing groups.\n var groups = path.source.match(/\\((?!\\?)/g);\n\n if (groups) {\n for (var i = 0; i < groups.length; i++) {\n keys.push({\n name: i,\n prefix: null,\n delimiter: null,\n optional: false,\n repeat: false,\n partial: false,\n asterisk: false,\n pattern: null\n });\n }\n }\n\n return attachKeys(path, keys)\n}\n\n/**\n * Transform an array into a regexp.\n *\n * @param {!Array} path\n * @param {Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction arrayToRegexp (path, keys, options) {\n var parts = [];\n\n for (var i = 0; i < path.length; i++) {\n parts.push(pathToRegexp(path[i], keys, options).source);\n }\n\n var regexp = new RegExp('(?:' + parts.join('|') + ')', flags(options));\n\n return attachKeys(regexp, keys)\n}\n\n/**\n * Create a path regexp from string input.\n *\n * @param {string} path\n * @param {!Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction stringToRegexp (path, keys, options) {\n return tokensToRegExp(parse(path, options), keys, options)\n}\n\n/**\n * Expose a function for taking tokens and returning a RegExp.\n *\n * @param {!Array} tokens\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction tokensToRegExp (tokens, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options);\n keys = [];\n }\n\n options = options || {};\n\n var strict = options.strict;\n var end = options.end !== false;\n var route = '';\n\n // Iterate over the tokens and create our regexp string.\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n route += escapeString(token);\n } else {\n var prefix = escapeString(token.prefix);\n var capture = '(?:' + token.pattern + ')';\n\n keys.push(token);\n\n if (token.repeat) {\n capture += '(?:' + prefix + capture + ')*';\n }\n\n if (token.optional) {\n if (!token.partial) {\n capture = '(?:' + prefix + '(' + capture + '))?';\n } else {\n capture = prefix + '(' + capture + ')?';\n }\n } else {\n capture = prefix + '(' + capture + ')';\n }\n\n route += capture;\n }\n }\n\n var delimiter = escapeString(options.delimiter || '/');\n var endsWithDelimiter = route.slice(-delimiter.length) === delimiter;\n\n // In non-strict mode we allow a slash at the end of match. If the path to\n // match already ends with a slash, we remove it for consistency. The slash\n // is valid at the end of a path match, not in the middle. This is important\n // in non-ending mode, where \"/test/\" shouldn't match \"/test//route\".\n if (!strict) {\n route = (endsWithDelimiter ? route.slice(0, -delimiter.length) : route) + '(?:' + delimiter + '(?=$))?';\n }\n\n if (end) {\n route += '$';\n } else {\n // In non-ending mode, we need the capturing groups to match as much as\n // possible by using a positive lookahead to the end or next path segment.\n route += strict && endsWithDelimiter ? '' : '(?=' + delimiter + '|$)';\n }\n\n return attachKeys(new RegExp('^' + route, flags(options)), keys)\n}\n\n/**\n * Normalize the given path string, returning a regular expression.\n *\n * An empty array can be passed in for the keys, which will hold the\n * placeholder key descriptions. For example, using `/user/:id`, `keys` will\n * contain `[{ name: 'id', delimiter: '/', optional: false, repeat: false }]`.\n *\n * @param {(string|RegExp|Array)} path\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction pathToRegexp (path, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options);\n keys = [];\n }\n\n options = options || {};\n\n if (path instanceof RegExp) {\n return regexpToRegexp(path, /** @type {!Array} */ (keys))\n }\n\n if (isarray(path)) {\n return arrayToRegexp(/** @type {!Array} */ (path), /** @type {!Array} */ (keys), options)\n }\n\n return stringToRegexp(/** @type {string} */ (path), /** @type {!Array} */ (keys), options)\n}\npathToRegexp_1.parse = parse_1;\npathToRegexp_1.compile = compile_1;\npathToRegexp_1.tokensToFunction = tokensToFunction_1;\npathToRegexp_1.tokensToRegExp = tokensToRegExp_1;\n\n/* */\n\n// $flow-disable-line\nvar regexpCompileCache = Object.create(null);\n\nfunction fillParams (\n path,\n params,\n routeMsg\n) {\n params = params || {};\n try {\n var filler =\n regexpCompileCache[path] ||\n (regexpCompileCache[path] = pathToRegexp_1.compile(path));\n\n // Fix #2505 resolving asterisk routes { name: 'not-found', params: { pathMatch: '/not-found' }}\n // and fix #3106 so that you can work with location descriptor object having params.pathMatch equal to empty string\n if (typeof params.pathMatch === 'string') { params[0] = params.pathMatch; }\n\n return filler(params, { pretty: true })\n } catch (e) {\n if (process.env.NODE_ENV !== 'production') {\n // Fix #3072 no warn if `pathMatch` is string\n warn(typeof params.pathMatch === 'string', (\"missing param for \" + routeMsg + \": \" + (e.message)));\n }\n return ''\n } finally {\n // delete the 0 if it was added\n delete params[0];\n }\n}\n\n/* */\n\nfunction normalizeLocation (\n raw,\n current,\n append,\n router\n) {\n var next = typeof raw === 'string' ? { path: raw } : raw;\n // named target\n if (next._normalized) {\n return next\n } else if (next.name) {\n next = extend({}, raw);\n var params = next.params;\n if (params && typeof params === 'object') {\n next.params = extend({}, params);\n }\n return next\n }\n\n // relative params\n if (!next.path && next.params && current) {\n next = extend({}, next);\n next._normalized = true;\n var params$1 = extend(extend({}, current.params), next.params);\n if (current.name) {\n next.name = current.name;\n next.params = params$1;\n } else if (current.matched.length) {\n var rawPath = current.matched[current.matched.length - 1].path;\n next.path = fillParams(rawPath, params$1, (\"path \" + (current.path)));\n } else if (process.env.NODE_ENV !== 'production') {\n warn(false, \"relative params navigation requires a current route.\");\n }\n return next\n }\n\n var parsedPath = parsePath(next.path || '');\n var basePath = (current && current.path) || '/';\n var path = parsedPath.path\n ? resolvePath(parsedPath.path, basePath, append || next.append)\n : basePath;\n\n var query = resolveQuery(\n parsedPath.query,\n next.query,\n router && router.options.parseQuery\n );\n\n var hash = next.hash || parsedPath.hash;\n if (hash && hash.charAt(0) !== '#') {\n hash = \"#\" + hash;\n }\n\n return {\n _normalized: true,\n path: path,\n query: query,\n hash: hash\n }\n}\n\n/* */\n\n// work around weird flow bug\nvar toTypes = [String, Object];\nvar eventTypes = [String, Array];\n\nvar noop = function () {};\n\nvar Link = {\n name: 'RouterLink',\n props: {\n to: {\n type: toTypes,\n required: true\n },\n tag: {\n type: String,\n default: 'a'\n },\n exact: Boolean,\n append: Boolean,\n replace: Boolean,\n activeClass: String,\n exactActiveClass: String,\n ariaCurrentValue: {\n type: String,\n default: 'page'\n },\n event: {\n type: eventTypes,\n default: 'click'\n }\n },\n render: function render (h) {\n var this$1 = this;\n\n var router = this.$router;\n var current = this.$route;\n var ref = router.resolve(\n this.to,\n current,\n this.append\n );\n var location = ref.location;\n var route = ref.route;\n var href = ref.href;\n\n var classes = {};\n var globalActiveClass = router.options.linkActiveClass;\n var globalExactActiveClass = router.options.linkExactActiveClass;\n // Support global empty active class\n var activeClassFallback =\n globalActiveClass == null ? 'router-link-active' : globalActiveClass;\n var exactActiveClassFallback =\n globalExactActiveClass == null\n ? 'router-link-exact-active'\n : globalExactActiveClass;\n var activeClass =\n this.activeClass == null ? activeClassFallback : this.activeClass;\n var exactActiveClass =\n this.exactActiveClass == null\n ? exactActiveClassFallback\n : this.exactActiveClass;\n\n var compareTarget = route.redirectedFrom\n ? createRoute(null, normalizeLocation(route.redirectedFrom), null, router)\n : route;\n\n classes[exactActiveClass] = isSameRoute(current, compareTarget);\n classes[activeClass] = this.exact\n ? classes[exactActiveClass]\n : isIncludedRoute(current, compareTarget);\n\n var ariaCurrentValue = classes[exactActiveClass] ? this.ariaCurrentValue : null;\n\n var handler = function (e) {\n if (guardEvent(e)) {\n if (this$1.replace) {\n router.replace(location, noop);\n } else {\n router.push(location, noop);\n }\n }\n };\n\n var on = { click: guardEvent };\n if (Array.isArray(this.event)) {\n this.event.forEach(function (e) {\n on[e] = handler;\n });\n } else {\n on[this.event] = handler;\n }\n\n var data = { class: classes };\n\n var scopedSlot =\n !this.$scopedSlots.$hasNormal &&\n this.$scopedSlots.default &&\n this.$scopedSlots.default({\n href: href,\n route: route,\n navigate: handler,\n isActive: classes[activeClass],\n isExactActive: classes[exactActiveClass]\n });\n\n if (scopedSlot) {\n if (scopedSlot.length === 1) {\n return scopedSlot[0]\n } else if (scopedSlot.length > 1 || !scopedSlot.length) {\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false,\n (\"RouterLink with to=\\\"\" + (this.to) + \"\\\" is trying to use a scoped slot but it didn't provide exactly one child. Wrapping the content with a span element.\")\n );\n }\n return scopedSlot.length === 0 ? h() : h('span', {}, scopedSlot)\n }\n }\n\n if (this.tag === 'a') {\n data.on = on;\n data.attrs = { href: href, 'aria-current': ariaCurrentValue };\n } else {\n // find the first <a> child and apply listener and href\n var a = findAnchor(this.$slots.default);\n if (a) {\n // in case the <a> is a static node\n a.isStatic = false;\n var aData = (a.data = extend({}, a.data));\n aData.on = aData.on || {};\n // transform existing events in both objects into arrays so we can push later\n for (var event in aData.on) {\n var handler$1 = aData.on[event];\n if (event in on) {\n aData.on[event] = Array.isArray(handler$1) ? handler$1 : [handler$1];\n }\n }\n // append new listeners for router-link\n for (var event$1 in on) {\n if (event$1 in aData.on) {\n // on[event] is always a function\n aData.on[event$1].push(on[event$1]);\n } else {\n aData.on[event$1] = handler;\n }\n }\n\n var aAttrs = (a.data.attrs = extend({}, a.data.attrs));\n aAttrs.href = href;\n aAttrs['aria-current'] = ariaCurrentValue;\n } else {\n // doesn't have <a> child, apply listener to self\n data.on = on;\n }\n }\n\n return h(this.tag, data, this.$slots.default)\n }\n};\n\nfunction guardEvent (e) {\n // don't redirect with control keys\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) { return }\n // don't redirect when preventDefault called\n if (e.defaultPrevented) { return }\n // don't redirect on right click\n if (e.button !== undefined && e.button !== 0) { return }\n // don't redirect if `target=\"_blank\"`\n if (e.currentTarget && e.currentTarget.getAttribute) {\n var target = e.currentTarget.getAttribute('target');\n if (/\\b_blank\\b/i.test(target)) { return }\n }\n // this may be a Weex event which doesn't have this method\n if (e.preventDefault) {\n e.preventDefault();\n }\n return true\n}\n\nfunction findAnchor (children) {\n if (children) {\n var child;\n for (var i = 0; i < children.length; i++) {\n child = children[i];\n if (child.tag === 'a') {\n return child\n }\n if (child.children && (child = findAnchor(child.children))) {\n return child\n }\n }\n }\n}\n\nvar _Vue;\n\nfunction install (Vue) {\n if (install.installed && _Vue === Vue) { return }\n install.installed = true;\n\n _Vue = Vue;\n\n var isDef = function (v) { return v !== undefined; };\n\n var registerInstance = function (vm, callVal) {\n var i = vm.$options._parentVnode;\n if (isDef(i) && isDef(i = i.data) && isDef(i = i.registerRouteInstance)) {\n i(vm, callVal);\n }\n };\n\n Vue.mixin({\n beforeCreate: function beforeCreate () {\n if (isDef(this.$options.router)) {\n this._routerRoot = this;\n this._router = this.$options.router;\n this._router.init(this);\n Vue.util.defineReactive(this, '_route', this._router.history.current);\n } else {\n this._routerRoot = (this.$parent && this.$parent._routerRoot) || this;\n }\n registerInstance(this, this);\n },\n destroyed: function destroyed () {\n registerInstance(this);\n }\n });\n\n Object.defineProperty(Vue.prototype, '$router', {\n get: function get () { return this._routerRoot._router }\n });\n\n Object.defineProperty(Vue.prototype, '$route', {\n get: function get () { return this._routerRoot._route }\n });\n\n Vue.component('RouterView', View);\n Vue.component('RouterLink', Link);\n\n var strats = Vue.config.optionMergeStrategies;\n // use the same hook merging strategy for route hooks\n strats.beforeRouteEnter = strats.beforeRouteLeave = strats.beforeRouteUpdate = strats.created;\n}\n\n/* */\n\nvar inBrowser = typeof window !== 'undefined';\n\n/* */\n\nfunction createRouteMap (\n routes,\n oldPathList,\n oldPathMap,\n oldNameMap\n) {\n // the path list is used to control path matching priority\n var pathList = oldPathList || [];\n // $flow-disable-line\n var pathMap = oldPathMap || Object.create(null);\n // $flow-disable-line\n var nameMap = oldNameMap || Object.create(null);\n\n routes.forEach(function (route) {\n addRouteRecord(pathList, pathMap, nameMap, route);\n });\n\n // ensure wildcard routes are always at the end\n for (var i = 0, l = pathList.length; i < l; i++) {\n if (pathList[i] === '*') {\n pathList.push(pathList.splice(i, 1)[0]);\n l--;\n i--;\n }\n }\n\n if (process.env.NODE_ENV === 'development') {\n // warn if routes do not include leading slashes\n var found = pathList\n // check for missing leading slash\n .filter(function (path) { return path && path.charAt(0) !== '*' && path.charAt(0) !== '/'; });\n\n if (found.length > 0) {\n var pathNames = found.map(function (path) { return (\"- \" + path); }).join('\\n');\n warn(false, (\"Non-nested routes must include a leading slash character. Fix the following routes: \\n\" + pathNames));\n }\n }\n\n return {\n pathList: pathList,\n pathMap: pathMap,\n nameMap: nameMap\n }\n}\n\nfunction addRouteRecord (\n pathList,\n pathMap,\n nameMap,\n route,\n parent,\n matchAs\n) {\n var path = route.path;\n var name = route.name;\n if (process.env.NODE_ENV !== 'production') {\n assert(path != null, \"\\\"path\\\" is required in a route configuration.\");\n assert(\n typeof route.component !== 'string',\n \"route config \\\"component\\\" for path: \" + (String(\n path || name\n )) + \" cannot be a \" + \"string id. Use an actual component instead.\"\n );\n }\n\n var pathToRegexpOptions =\n route.pathToRegexpOptions || {};\n var normalizedPath = normalizePath(path, parent, pathToRegexpOptions.strict);\n\n if (typeof route.caseSensitive === 'boolean') {\n pathToRegexpOptions.sensitive = route.caseSensitive;\n }\n\n var record = {\n path: normalizedPath,\n regex: compileRouteRegex(normalizedPath, pathToRegexpOptions),\n components: route.components || { default: route.component },\n instances: {},\n name: name,\n parent: parent,\n matchAs: matchAs,\n redirect: route.redirect,\n beforeEnter: route.beforeEnter,\n meta: route.meta || {},\n props:\n route.props == null\n ? {}\n : route.components\n ? route.props\n : { default: route.props }\n };\n\n if (route.children) {\n // Warn if route is named, does not redirect and has a default child route.\n // If users navigate to this route by name, the default child will\n // not be rendered (GH Issue #629)\n if (process.env.NODE_ENV !== 'production') {\n if (\n route.name &&\n !route.redirect &&\n route.children.some(function (child) { return /^\\/?$/.test(child.path); })\n ) {\n warn(\n false,\n \"Named Route '\" + (route.name) + \"' has a default child route. \" +\n \"When navigating to this named route (:to=\\\"{name: '\" + (route.name) + \"'\\\"), \" +\n \"the default child route will not be rendered. Remove the name from \" +\n \"this route and use the name of the default child route for named \" +\n \"links instead.\"\n );\n }\n }\n route.children.forEach(function (child) {\n var childMatchAs = matchAs\n ? cleanPath((matchAs + \"/\" + (child.path)))\n : undefined;\n addRouteRecord(pathList, pathMap, nameMap, child, record, childMatchAs);\n });\n }\n\n if (!pathMap[record.path]) {\n pathList.push(record.path);\n pathMap[record.path] = record;\n }\n\n if (route.alias !== undefined) {\n var aliases = Array.isArray(route.alias) ? route.alias : [route.alias];\n for (var i = 0; i < aliases.length; ++i) {\n var alias = aliases[i];\n if (process.env.NODE_ENV !== 'production' && alias === path) {\n warn(\n false,\n (\"Found an alias with the same value as the path: \\\"\" + path + \"\\\". You have to remove that alias. It will be ignored in development.\")\n );\n // skip in dev to make it work\n continue\n }\n\n var aliasRoute = {\n path: alias,\n children: route.children\n };\n addRouteRecord(\n pathList,\n pathMap,\n nameMap,\n aliasRoute,\n parent,\n record.path || '/' // matchAs\n );\n }\n }\n\n if (name) {\n if (!nameMap[name]) {\n nameMap[name] = record;\n } else if (process.env.NODE_ENV !== 'production' && !matchAs) {\n warn(\n false,\n \"Duplicate named routes definition: \" +\n \"{ name: \\\"\" + name + \"\\\", path: \\\"\" + (record.path) + \"\\\" }\"\n );\n }\n }\n}\n\nfunction compileRouteRegex (\n path,\n pathToRegexpOptions\n) {\n var regex = pathToRegexp_1(path, [], pathToRegexpOptions);\n if (process.env.NODE_ENV !== 'production') {\n var keys = Object.create(null);\n regex.keys.forEach(function (key) {\n warn(\n !keys[key.name],\n (\"Duplicate param keys in route with path: \\\"\" + path + \"\\\"\")\n );\n keys[key.name] = true;\n });\n }\n return regex\n}\n\nfunction normalizePath (\n path,\n parent,\n strict\n) {\n if (!strict) { path = path.replace(/\\/$/, ''); }\n if (path[0] === '/') { return path }\n if (parent == null) { return path }\n return cleanPath(((parent.path) + \"/\" + path))\n}\n\n/* */\n\n\n\nfunction createMatcher (\n routes,\n router\n) {\n var ref = createRouteMap(routes);\n var pathList = ref.pathList;\n var pathMap = ref.pathMap;\n var nameMap = ref.nameMap;\n\n function addRoutes (routes) {\n createRouteMap(routes, pathList, pathMap, nameMap);\n }\n\n function match (\n raw,\n currentRoute,\n redirectedFrom\n ) {\n var location = normalizeLocation(raw, currentRoute, false, router);\n var name = location.name;\n\n if (name) {\n var record = nameMap[name];\n if (process.env.NODE_ENV !== 'production') {\n warn(record, (\"Route with name '\" + name + \"' does not exist\"));\n }\n if (!record) { return _createRoute(null, location) }\n var paramNames = record.regex.keys\n .filter(function (key) { return !key.optional; })\n .map(function (key) { return key.name; });\n\n if (typeof location.params !== 'object') {\n location.params = {};\n }\n\n if (currentRoute && typeof currentRoute.params === 'object') {\n for (var key in currentRoute.params) {\n if (!(key in location.params) && paramNames.indexOf(key) > -1) {\n location.params[key] = currentRoute.params[key];\n }\n }\n }\n\n location.path = fillParams(record.path, location.params, (\"named route \\\"\" + name + \"\\\"\"));\n return _createRoute(record, location, redirectedFrom)\n } else if (location.path) {\n location.params = {};\n for (var i = 0; i < pathList.length; i++) {\n var path = pathList[i];\n var record$1 = pathMap[path];\n if (matchRoute(record$1.regex, location.path, location.params)) {\n return _createRoute(record$1, location, redirectedFrom)\n }\n }\n }\n // no match\n return _createRoute(null, location)\n }\n\n function redirect (\n record,\n location\n ) {\n var originalRedirect = record.redirect;\n var redirect = typeof originalRedirect === 'function'\n ? originalRedirect(createRoute(record, location, null, router))\n : originalRedirect;\n\n if (typeof redirect === 'string') {\n redirect = { path: redirect };\n }\n\n if (!redirect || typeof redirect !== 'object') {\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false, (\"invalid redirect option: \" + (JSON.stringify(redirect)))\n );\n }\n return _createRoute(null, location)\n }\n\n var re = redirect;\n var name = re.name;\n var path = re.path;\n var query = location.query;\n var hash = location.hash;\n var params = location.params;\n query = re.hasOwnProperty('query') ? re.query : query;\n hash = re.hasOwnProperty('hash') ? re.hash : hash;\n params = re.hasOwnProperty('params') ? re.params : params;\n\n if (name) {\n // resolved named direct\n var targetRecord = nameMap[name];\n if (process.env.NODE_ENV !== 'production') {\n assert(targetRecord, (\"redirect failed: named route \\\"\" + name + \"\\\" not found.\"));\n }\n return match({\n _normalized: true,\n name: name,\n query: query,\n hash: hash,\n params: params\n }, undefined, location)\n } else if (path) {\n // 1. resolve relative redirect\n var rawPath = resolveRecordPath(path, record);\n // 2. resolve params\n var resolvedPath = fillParams(rawPath, params, (\"redirect route with path \\\"\" + rawPath + \"\\\"\"));\n // 3. rematch with existing query and hash\n return match({\n _normalized: true,\n path: resolvedPath,\n query: query,\n hash: hash\n }, undefined, location)\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, (\"invalid redirect option: \" + (JSON.stringify(redirect))));\n }\n return _createRoute(null, location)\n }\n }\n\n function alias (\n record,\n location,\n matchAs\n ) {\n var aliasedPath = fillParams(matchAs, location.params, (\"aliased route with path \\\"\" + matchAs + \"\\\"\"));\n var aliasedMatch = match({\n _normalized: true,\n path: aliasedPath\n });\n if (aliasedMatch) {\n var matched = aliasedMatch.matched;\n var aliasedRecord = matched[matched.length - 1];\n location.params = aliasedMatch.params;\n return _createRoute(aliasedRecord, location)\n }\n return _createRoute(null, location)\n }\n\n function _createRoute (\n record,\n location,\n redirectedFrom\n ) {\n if (record && record.redirect) {\n return redirect(record, redirectedFrom || location)\n }\n if (record && record.matchAs) {\n return alias(record, location, record.matchAs)\n }\n return createRoute(record, location, redirectedFrom, router)\n }\n\n return {\n match: match,\n addRoutes: addRoutes\n }\n}\n\nfunction matchRoute (\n regex,\n path,\n params\n) {\n var m = path.match(regex);\n\n if (!m) {\n return false\n } else if (!params) {\n return true\n }\n\n for (var i = 1, len = m.length; i < len; ++i) {\n var key = regex.keys[i - 1];\n var val = typeof m[i] === 'string' ? decodeURIComponent(m[i]) : m[i];\n if (key) {\n // Fix #1994: using * with props: true generates a param named 0\n params[key.name || 'pathMatch'] = val;\n }\n }\n\n return true\n}\n\nfunction resolveRecordPath (path, record) {\n return resolvePath(path, record.parent ? record.parent.path : '/', true)\n}\n\n/* */\n\n// use User Timing api (if present) for more accurate key precision\nvar Time =\n inBrowser && window.performance && window.performance.now\n ? window.performance\n : Date;\n\nfunction genStateKey () {\n return Time.now().toFixed(3)\n}\n\nvar _key = genStateKey();\n\nfunction getStateKey () {\n return _key\n}\n\nfunction setStateKey (key) {\n return (_key = key)\n}\n\n/* */\n\nvar positionStore = Object.create(null);\n\nfunction setupScroll () {\n // Prevent browser scroll behavior on History popstate\n if ('scrollRestoration' in window.history) {\n window.history.scrollRestoration = 'manual';\n }\n // Fix for #1585 for Firefox\n // Fix for #2195 Add optional third attribute to workaround a bug in safari https://bugs.webkit.org/show_bug.cgi?id=182678\n // Fix for #2774 Support for apps loaded from Windows file shares not mapped to network drives: replaced location.origin with\n // window.location.protocol + '//' + window.location.host\n // location.host contains the port and location.hostname doesn't\n var protocolAndPath = window.location.protocol + '//' + window.location.host;\n var absolutePath = window.location.href.replace(protocolAndPath, '');\n // preserve existing history state as it could be overriden by the user\n var stateCopy = extend({}, window.history.state);\n stateCopy.key = getStateKey();\n window.history.replaceState(stateCopy, '', absolutePath);\n window.addEventListener('popstate', handlePopState);\n return function () {\n window.removeEventListener('popstate', handlePopState);\n }\n}\n\nfunction handleScroll (\n router,\n to,\n from,\n isPop\n) {\n if (!router.app) {\n return\n }\n\n var behavior = router.options.scrollBehavior;\n if (!behavior) {\n return\n }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(typeof behavior === 'function', \"scrollBehavior must be a function\");\n }\n\n // wait until re-render finishes before scrolling\n router.app.$nextTick(function () {\n var position = getScrollPosition();\n var shouldScroll = behavior.call(\n router,\n to,\n from,\n isPop ? position : null\n );\n\n if (!shouldScroll) {\n return\n }\n\n if (typeof shouldScroll.then === 'function') {\n shouldScroll\n .then(function (shouldScroll) {\n scrollToPosition((shouldScroll), position);\n })\n .catch(function (err) {\n if (process.env.NODE_ENV !== 'production') {\n assert(false, err.toString());\n }\n });\n } else {\n scrollToPosition(shouldScroll, position);\n }\n });\n}\n\nfunction saveScrollPosition () {\n var key = getStateKey();\n if (key) {\n positionStore[key] = {\n x: window.pageXOffset,\n y: window.pageYOffset\n };\n }\n}\n\nfunction handlePopState (e) {\n saveScrollPosition();\n if (e.state && e.state.key) {\n setStateKey(e.state.key);\n }\n}\n\nfunction getScrollPosition () {\n var key = getStateKey();\n if (key) {\n return positionStore[key]\n }\n}\n\nfunction getElementPosition (el, offset) {\n var docEl = document.documentElement;\n var docRect = docEl.getBoundingClientRect();\n var elRect = el.getBoundingClientRect();\n return {\n x: elRect.left - docRect.left - offset.x,\n y: elRect.top - docRect.top - offset.y\n }\n}\n\nfunction isValidPosition (obj) {\n return isNumber(obj.x) || isNumber(obj.y)\n}\n\nfunction normalizePosition (obj) {\n return {\n x: isNumber(obj.x) ? obj.x : window.pageXOffset,\n y: isNumber(obj.y) ? obj.y : window.pageYOffset\n }\n}\n\nfunction normalizeOffset (obj) {\n return {\n x: isNumber(obj.x) ? obj.x : 0,\n y: isNumber(obj.y) ? obj.y : 0\n }\n}\n\nfunction isNumber (v) {\n return typeof v === 'number'\n}\n\nvar hashStartsWithNumberRE = /^#\\d/;\n\nfunction scrollToPosition (shouldScroll, position) {\n var isObject = typeof shouldScroll === 'object';\n if (isObject && typeof shouldScroll.selector === 'string') {\n // getElementById would still fail if the selector contains a more complicated query like #main[data-attr]\n // but at the same time, it doesn't make much sense to select an element with an id and an extra selector\n var el = hashStartsWithNumberRE.test(shouldScroll.selector) // $flow-disable-line\n ? document.getElementById(shouldScroll.selector.slice(1)) // $flow-disable-line\n : document.querySelector(shouldScroll.selector);\n\n if (el) {\n var offset =\n shouldScroll.offset && typeof shouldScroll.offset === 'object'\n ? shouldScroll.offset\n : {};\n offset = normalizeOffset(offset);\n position = getElementPosition(el, offset);\n } else if (isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n } else if (isObject && isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n\n if (position) {\n window.scrollTo(position.x, position.y);\n }\n}\n\n/* */\n\nvar supportsPushState =\n inBrowser &&\n (function () {\n var ua = window.navigator.userAgent;\n\n if (\n (ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) &&\n ua.indexOf('Mobile Safari') !== -1 &&\n ua.indexOf('Chrome') === -1 &&\n ua.indexOf('Windows Phone') === -1\n ) {\n return false\n }\n\n return window.history && typeof window.history.pushState === 'function'\n })();\n\nfunction pushState (url, replace) {\n saveScrollPosition();\n // try...catch the pushState call to get around Safari\n // DOM Exception 18 where it limits to 100 pushState calls\n var history = window.history;\n try {\n if (replace) {\n // preserve existing history state as it could be overriden by the user\n var stateCopy = extend({}, history.state);\n stateCopy.key = getStateKey();\n history.replaceState(stateCopy, '', url);\n } else {\n history.pushState({ key: setStateKey(genStateKey()) }, '', url);\n }\n } catch (e) {\n window.location[replace ? 'replace' : 'assign'](url);\n }\n}\n\nfunction replaceState (url) {\n pushState(url, true);\n}\n\n/* */\n\nfunction runQueue (queue, fn, cb) {\n var step = function (index) {\n if (index >= queue.length) {\n cb();\n } else {\n if (queue[index]) {\n fn(queue[index], function () {\n step(index + 1);\n });\n } else {\n step(index + 1);\n }\n }\n };\n step(0);\n}\n\nvar NavigationFailureType = {\n redirected: 2,\n aborted: 4,\n cancelled: 8,\n duplicated: 16\n};\n\nfunction createNavigationRedirectedError (from, to) {\n return createRouterError(\n from,\n to,\n NavigationFailureType.redirected,\n (\"Redirected when going from \\\"\" + (from.fullPath) + \"\\\" to \\\"\" + (stringifyRoute(\n to\n )) + \"\\\" via a navigation guard.\")\n )\n}\n\nfunction createNavigationDuplicatedError (from, to) {\n var error = createRouterError(\n from,\n to,\n NavigationFailureType.duplicated,\n (\"Avoided redundant navigation to current location: \\\"\" + (from.fullPath) + \"\\\".\")\n );\n // backwards compatible with the first introduction of Errors\n error.name = 'NavigationDuplicated';\n return error\n}\n\nfunction createNavigationCancelledError (from, to) {\n return createRouterError(\n from,\n to,\n NavigationFailureType.cancelled,\n (\"Navigation cancelled from \\\"\" + (from.fullPath) + \"\\\" to \\\"\" + (to.fullPath) + \"\\\" with a new navigation.\")\n )\n}\n\nfunction createNavigationAbortedError (from, to) {\n return createRouterError(\n from,\n to,\n NavigationFailureType.aborted,\n (\"Navigation aborted from \\\"\" + (from.fullPath) + \"\\\" to \\\"\" + (to.fullPath) + \"\\\" via a navigation guard.\")\n )\n}\n\nfunction createRouterError (from, to, type, message) {\n var error = new Error(message);\n error._isRouter = true;\n error.from = from;\n error.to = to;\n error.type = type;\n\n return error\n}\n\nvar propertiesToLog = ['params', 'query', 'hash'];\n\nfunction stringifyRoute (to) {\n if (typeof to === 'string') { return to }\n if ('path' in to) { return to.path }\n var location = {};\n propertiesToLog.forEach(function (key) {\n if (key in to) { location[key] = to[key]; }\n });\n return JSON.stringify(location, null, 2)\n}\n\nfunction isError (err) {\n return Object.prototype.toString.call(err).indexOf('Error') > -1\n}\n\nfunction isNavigationFailure (err, errorType) {\n return (\n isError(err) &&\n err._isRouter &&\n (errorType == null || err.type === errorType)\n )\n}\n\n/* */\n\nfunction resolveAsyncComponents (matched) {\n return function (to, from, next) {\n var hasAsync = false;\n var pending = 0;\n var error = null;\n\n flatMapComponents(matched, function (def, _, match, key) {\n // if it's a function and doesn't have cid attached,\n // assume it's an async component resolve function.\n // we are not using Vue's default async resolving mechanism because\n // we want to halt the navigation until the incoming component has been\n // resolved.\n if (typeof def === 'function' && def.cid === undefined) {\n hasAsync = true;\n pending++;\n\n var resolve = once(function (resolvedDef) {\n if (isESModule(resolvedDef)) {\n resolvedDef = resolvedDef.default;\n }\n // save resolved on async factory in case it's used elsewhere\n def.resolved = typeof resolvedDef === 'function'\n ? resolvedDef\n : _Vue.extend(resolvedDef);\n match.components[key] = resolvedDef;\n pending--;\n if (pending <= 0) {\n next();\n }\n });\n\n var reject = once(function (reason) {\n var msg = \"Failed to resolve async component \" + key + \": \" + reason;\n process.env.NODE_ENV !== 'production' && warn(false, msg);\n if (!error) {\n error = isError(reason)\n ? reason\n : new Error(msg);\n next(error);\n }\n });\n\n var res;\n try {\n res = def(resolve, reject);\n } catch (e) {\n reject(e);\n }\n if (res) {\n if (typeof res.then === 'function') {\n res.then(resolve, reject);\n } else {\n // new syntax in Vue 2.3\n var comp = res.component;\n if (comp && typeof comp.then === 'function') {\n comp.then(resolve, reject);\n }\n }\n }\n }\n });\n\n if (!hasAsync) { next(); }\n }\n}\n\nfunction flatMapComponents (\n matched,\n fn\n) {\n return flatten(matched.map(function (m) {\n return Object.keys(m.components).map(function (key) { return fn(\n m.components[key],\n m.instances[key],\n m, key\n ); })\n }))\n}\n\nfunction flatten (arr) {\n return Array.prototype.concat.apply([], arr)\n}\n\nvar hasSymbol =\n typeof Symbol === 'function' &&\n typeof Symbol.toStringTag === 'symbol';\n\nfunction isESModule (obj) {\n return obj.__esModule || (hasSymbol && obj[Symbol.toStringTag] === 'Module')\n}\n\n// in Webpack 2, require.ensure now also returns a Promise\n// so the resolve/reject functions may get called an extra time\n// if the user uses an arrow function shorthand that happens to\n// return that Promise.\nfunction once (fn) {\n var called = false;\n return function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n if (called) { return }\n called = true;\n return fn.apply(this, args)\n }\n}\n\n/* */\n\nvar History = function History (router, base) {\n this.router = router;\n this.base = normalizeBase(base);\n // start with a route object that stands for \"nowhere\"\n this.current = START;\n this.pending = null;\n this.ready = false;\n this.readyCbs = [];\n this.readyErrorCbs = [];\n this.errorCbs = [];\n this.listeners = [];\n};\n\nHistory.prototype.listen = function listen (cb) {\n this.cb = cb;\n};\n\nHistory.prototype.onReady = function onReady (cb, errorCb) {\n if (this.ready) {\n cb();\n } else {\n this.readyCbs.push(cb);\n if (errorCb) {\n this.readyErrorCbs.push(errorCb);\n }\n }\n};\n\nHistory.prototype.onError = function onError (errorCb) {\n this.errorCbs.push(errorCb);\n};\n\nHistory.prototype.transitionTo = function transitionTo (\n location,\n onComplete,\n onAbort\n) {\n var this$1 = this;\n\n var route;\n // catch redirect option https://github.com/vuejs/vue-router/issues/3201\n try {\n route = this.router.match(location, this.current);\n } catch (e) {\n this.errorCbs.forEach(function (cb) {\n cb(e);\n });\n // Exception should still be thrown\n throw e\n }\n this.confirmTransition(\n route,\n function () {\n var prev = this$1.current;\n this$1.updateRoute(route);\n onComplete && onComplete(route);\n this$1.ensureURL();\n this$1.router.afterHooks.forEach(function (hook) {\n hook && hook(route, prev);\n });\n\n // fire ready cbs once\n if (!this$1.ready) {\n this$1.ready = true;\n this$1.readyCbs.forEach(function (cb) {\n cb(route);\n });\n }\n },\n function (err) {\n if (onAbort) {\n onAbort(err);\n }\n if (err && !this$1.ready) {\n this$1.ready = true;\n // Initial redirection should still trigger the onReady onSuccess\n // https://github.com/vuejs/vue-router/issues/3225\n if (!isNavigationFailure(err, NavigationFailureType.redirected)) {\n this$1.readyErrorCbs.forEach(function (cb) {\n cb(err);\n });\n } else {\n this$1.readyCbs.forEach(function (cb) {\n cb(route);\n });\n }\n }\n }\n );\n};\n\nHistory.prototype.confirmTransition = function confirmTransition (route, onComplete, onAbort) {\n var this$1 = this;\n\n var current = this.current;\n var abort = function (err) {\n // changed after adding errors with\n // https://github.com/vuejs/vue-router/pull/3047 before that change,\n // redirect and aborted navigation would produce an err == null\n if (!isNavigationFailure(err) && isError(err)) {\n if (this$1.errorCbs.length) {\n this$1.errorCbs.forEach(function (cb) {\n cb(err);\n });\n } else {\n warn(false, 'uncaught error during route navigation:');\n console.error(err);\n }\n }\n onAbort && onAbort(err);\n };\n var lastRouteIndex = route.matched.length - 1;\n var lastCurrentIndex = current.matched.length - 1;\n if (\n isSameRoute(route, current) &&\n // in the case the route map has been dynamically appended to\n lastRouteIndex === lastCurrentIndex &&\n route.matched[lastRouteIndex] === current.matched[lastCurrentIndex]\n ) {\n this.ensureURL();\n return abort(createNavigationDuplicatedError(current, route))\n }\n\n var ref = resolveQueue(\n this.current.matched,\n route.matched\n );\n var updated = ref.updated;\n var deactivated = ref.deactivated;\n var activated = ref.activated;\n\n var queue = [].concat(\n // in-component leave guards\n extractLeaveGuards(deactivated),\n // global before hooks\n this.router.beforeHooks,\n // in-component update hooks\n extractUpdateHooks(updated),\n // in-config enter guards\n activated.map(function (m) { return m.beforeEnter; }),\n // async components\n resolveAsyncComponents(activated)\n );\n\n this.pending = route;\n var iterator = function (hook, next) {\n if (this$1.pending !== route) {\n return abort(createNavigationCancelledError(current, route))\n }\n try {\n hook(route, current, function (to) {\n if (to === false) {\n // next(false) -> abort navigation, ensure current URL\n this$1.ensureURL(true);\n abort(createNavigationAbortedError(current, route));\n } else if (isError(to)) {\n this$1.ensureURL(true);\n abort(to);\n } else if (\n typeof to === 'string' ||\n (typeof to === 'object' &&\n (typeof to.path === 'string' || typeof to.name === 'string'))\n ) {\n // next('/') or next({ path: '/' }) -> redirect\n abort(createNavigationRedirectedError(current, route));\n if (typeof to === 'object' && to.replace) {\n this$1.replace(to);\n } else {\n this$1.push(to);\n }\n } else {\n // confirm transition and pass on the value\n next(to);\n }\n });\n } catch (e) {\n abort(e);\n }\n };\n\n runQueue(queue, iterator, function () {\n var postEnterCbs = [];\n var isValid = function () { return this$1.current === route; };\n // wait until async components are resolved before\n // extracting in-component enter guards\n var enterGuards = extractEnterGuards(activated, postEnterCbs, isValid);\n var queue = enterGuards.concat(this$1.router.resolveHooks);\n runQueue(queue, iterator, function () {\n if (this$1.pending !== route) {\n return abort(createNavigationCancelledError(current, route))\n }\n this$1.pending = null;\n onComplete(route);\n if (this$1.router.app) {\n this$1.router.app.$nextTick(function () {\n postEnterCbs.forEach(function (cb) {\n cb();\n });\n });\n }\n });\n });\n};\n\nHistory.prototype.updateRoute = function updateRoute (route) {\n this.current = route;\n this.cb && this.cb(route);\n};\n\nHistory.prototype.setupListeners = function setupListeners () {\n // Default implementation is empty\n};\n\nHistory.prototype.teardownListeners = function teardownListeners () {\n this.listeners.forEach(function (cleanupListener) {\n cleanupListener();\n });\n this.listeners = [];\n};\n\nfunction normalizeBase (base) {\n if (!base) {\n if (inBrowser) {\n // respect <base> tag\n var baseEl = document.querySelector('base');\n base = (baseEl && baseEl.getAttribute('href')) || '/';\n // strip full URL origin\n base = base.replace(/^https?:\\/\\/[^\\/]+/, '');\n } else {\n base = '/';\n }\n }\n // make sure there's the starting slash\n if (base.charAt(0) !== '/') {\n base = '/' + base;\n }\n // remove trailing slash\n return base.replace(/\\/$/, '')\n}\n\nfunction resolveQueue (\n current,\n next\n) {\n var i;\n var max = Math.max(current.length, next.length);\n for (i = 0; i < max; i++) {\n if (current[i] !== next[i]) {\n break\n }\n }\n return {\n updated: next.slice(0, i),\n activated: next.slice(i),\n deactivated: current.slice(i)\n }\n}\n\nfunction extractGuards (\n records,\n name,\n bind,\n reverse\n) {\n var guards = flatMapComponents(records, function (def, instance, match, key) {\n var guard = extractGuard(def, name);\n if (guard) {\n return Array.isArray(guard)\n ? guard.map(function (guard) { return bind(guard, instance, match, key); })\n : bind(guard, instance, match, key)\n }\n });\n return flatten(reverse ? guards.reverse() : guards)\n}\n\nfunction extractGuard (\n def,\n key\n) {\n if (typeof def !== 'function') {\n // extend now so that global mixins are applied.\n def = _Vue.extend(def);\n }\n return def.options[key]\n}\n\nfunction extractLeaveGuards (deactivated) {\n return extractGuards(deactivated, 'beforeRouteLeave', bindGuard, true)\n}\n\nfunction extractUpdateHooks (updated) {\n return extractGuards(updated, 'beforeRouteUpdate', bindGuard)\n}\n\nfunction bindGuard (guard, instance) {\n if (instance) {\n return function boundRouteGuard () {\n return guard.apply(instance, arguments)\n }\n }\n}\n\nfunction extractEnterGuards (\n activated,\n cbs,\n isValid\n) {\n return extractGuards(\n activated,\n 'beforeRouteEnter',\n function (guard, _, match, key) {\n return bindEnterGuard(guard, match, key, cbs, isValid)\n }\n )\n}\n\nfunction bindEnterGuard (\n guard,\n match,\n key,\n cbs,\n isValid\n) {\n return function routeEnterGuard (to, from, next) {\n return guard(to, from, function (cb) {\n if (typeof cb === 'function') {\n cbs.push(function () {\n // #750\n // if a router-view is wrapped with an out-in transition,\n // the instance may not have been registered at this time.\n // we will need to poll for registration until current route\n // is no longer valid.\n poll(cb, match.instances, key, isValid);\n });\n }\n next(cb);\n })\n }\n}\n\nfunction poll (\n cb, // somehow flow cannot infer this is a function\n instances,\n key,\n isValid\n) {\n if (\n instances[key] &&\n !instances[key]._isBeingDestroyed // do not reuse being destroyed instance\n ) {\n cb(instances[key]);\n } else if (isValid()) {\n setTimeout(function () {\n poll(cb, instances, key, isValid);\n }, 16);\n }\n}\n\n/* */\n\nvar HTML5History = /*@__PURE__*/(function (History) {\n function HTML5History (router, base) {\n History.call(this, router, base);\n\n this._startLocation = getLocation(this.base);\n }\n\n if ( History ) HTML5History.__proto__ = History;\n HTML5History.prototype = Object.create( History && History.prototype );\n HTML5History.prototype.constructor = HTML5History;\n\n HTML5History.prototype.setupListeners = function setupListeners () {\n var this$1 = this;\n\n if (this.listeners.length > 0) {\n return\n }\n\n var router = this.router;\n var expectScroll = router.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll) {\n this.listeners.push(setupScroll());\n }\n\n var handleRoutingEvent = function () {\n var current = this$1.current;\n\n // Avoiding first `popstate` event dispatched in some browsers but first\n // history route not updated since async guard at the same time.\n var location = getLocation(this$1.base);\n if (this$1.current === START && location === this$1._startLocation) {\n return\n }\n\n this$1.transitionTo(location, function (route) {\n if (supportsScroll) {\n handleScroll(router, route, current, true);\n }\n });\n };\n window.addEventListener('popstate', handleRoutingEvent);\n this.listeners.push(function () {\n window.removeEventListener('popstate', handleRoutingEvent);\n });\n };\n\n HTML5History.prototype.go = function go (n) {\n window.history.go(n);\n };\n\n HTML5History.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n pushState(cleanPath(this$1.base + route.fullPath));\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n replaceState(cleanPath(this$1.base + route.fullPath));\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.ensureURL = function ensureURL (push) {\n if (getLocation(this.base) !== this.current.fullPath) {\n var current = cleanPath(this.base + this.current.fullPath);\n push ? pushState(current) : replaceState(current);\n }\n };\n\n HTML5History.prototype.getCurrentLocation = function getCurrentLocation () {\n return getLocation(this.base)\n };\n\n return HTML5History;\n}(History));\n\nfunction getLocation (base) {\n var path = decodeURI(window.location.pathname);\n if (base && path.toLowerCase().indexOf(base.toLowerCase()) === 0) {\n path = path.slice(base.length);\n }\n return (path || '/') + window.location.search + window.location.hash\n}\n\n/* */\n\nvar HashHistory = /*@__PURE__*/(function (History) {\n function HashHistory (router, base, fallback) {\n History.call(this, router, base);\n // check history fallback deeplinking\n if (fallback && checkFallback(this.base)) {\n return\n }\n ensureSlash();\n }\n\n if ( History ) HashHistory.__proto__ = History;\n HashHistory.prototype = Object.create( History && History.prototype );\n HashHistory.prototype.constructor = HashHistory;\n\n // this is delayed until the app mounts\n // to avoid the hashchange listener being fired too early\n HashHistory.prototype.setupListeners = function setupListeners () {\n var this$1 = this;\n\n if (this.listeners.length > 0) {\n return\n }\n\n var router = this.router;\n var expectScroll = router.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll) {\n this.listeners.push(setupScroll());\n }\n\n var handleRoutingEvent = function () {\n var current = this$1.current;\n if (!ensureSlash()) {\n return\n }\n this$1.transitionTo(getHash(), function (route) {\n if (supportsScroll) {\n handleScroll(this$1.router, route, current, true);\n }\n if (!supportsPushState) {\n replaceHash(route.fullPath);\n }\n });\n };\n var eventType = supportsPushState ? 'popstate' : 'hashchange';\n window.addEventListener(\n eventType,\n handleRoutingEvent\n );\n this.listeners.push(function () {\n window.removeEventListener(eventType, handleRoutingEvent);\n });\n };\n\n HashHistory.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(\n location,\n function (route) {\n pushHash(route.fullPath);\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n HashHistory.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(\n location,\n function (route) {\n replaceHash(route.fullPath);\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n HashHistory.prototype.go = function go (n) {\n window.history.go(n);\n };\n\n HashHistory.prototype.ensureURL = function ensureURL (push) {\n var current = this.current.fullPath;\n if (getHash() !== current) {\n push ? pushHash(current) : replaceHash(current);\n }\n };\n\n HashHistory.prototype.getCurrentLocation = function getCurrentLocation () {\n return getHash()\n };\n\n return HashHistory;\n}(History));\n\nfunction checkFallback (base) {\n var location = getLocation(base);\n if (!/^\\/#/.test(location)) {\n window.location.replace(cleanPath(base + '/#' + location));\n return true\n }\n}\n\nfunction ensureSlash () {\n var path = getHash();\n if (path.charAt(0) === '/') {\n return true\n }\n replaceHash('/' + path);\n return false\n}\n\nfunction getHash () {\n // We can't use window.location.hash here because it's not\n // consistent across browsers - Firefox will pre-decode it!\n var href = window.location.href;\n var index = href.indexOf('#');\n // empty path\n if (index < 0) { return '' }\n\n href = href.slice(index + 1);\n // decode the hash but not the search or hash\n // as search(query) is already decoded\n // https://github.com/vuejs/vue-router/issues/2708\n var searchIndex = href.indexOf('?');\n if (searchIndex < 0) {\n var hashIndex = href.indexOf('#');\n if (hashIndex > -1) {\n href = decodeURI(href.slice(0, hashIndex)) + href.slice(hashIndex);\n } else { href = decodeURI(href); }\n } else {\n href = decodeURI(href.slice(0, searchIndex)) + href.slice(searchIndex);\n }\n\n return href\n}\n\nfunction getUrl (path) {\n var href = window.location.href;\n var i = href.indexOf('#');\n var base = i >= 0 ? href.slice(0, i) : href;\n return (base + \"#\" + path)\n}\n\nfunction pushHash (path) {\n if (supportsPushState) {\n pushState(getUrl(path));\n } else {\n window.location.hash = path;\n }\n}\n\nfunction replaceHash (path) {\n if (supportsPushState) {\n replaceState(getUrl(path));\n } else {\n window.location.replace(getUrl(path));\n }\n}\n\n/* */\n\nvar AbstractHistory = /*@__PURE__*/(function (History) {\n function AbstractHistory (router, base) {\n History.call(this, router, base);\n this.stack = [];\n this.index = -1;\n }\n\n if ( History ) AbstractHistory.__proto__ = History;\n AbstractHistory.prototype = Object.create( History && History.prototype );\n AbstractHistory.prototype.constructor = AbstractHistory;\n\n AbstractHistory.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n this.transitionTo(\n location,\n function (route) {\n this$1.stack = this$1.stack.slice(0, this$1.index + 1).concat(route);\n this$1.index++;\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n AbstractHistory.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n this.transitionTo(\n location,\n function (route) {\n this$1.stack = this$1.stack.slice(0, this$1.index).concat(route);\n onComplete && onComplete(route);\n },\n onAbort\n );\n };\n\n AbstractHistory.prototype.go = function go (n) {\n var this$1 = this;\n\n var targetIndex = this.index + n;\n if (targetIndex < 0 || targetIndex >= this.stack.length) {\n return\n }\n var route = this.stack[targetIndex];\n this.confirmTransition(\n route,\n function () {\n this$1.index = targetIndex;\n this$1.updateRoute(route);\n },\n function (err) {\n if (isNavigationFailure(err, NavigationFailureType.duplicated)) {\n this$1.index = targetIndex;\n }\n }\n );\n };\n\n AbstractHistory.prototype.getCurrentLocation = function getCurrentLocation () {\n var current = this.stack[this.stack.length - 1];\n return current ? current.fullPath : '/'\n };\n\n AbstractHistory.prototype.ensureURL = function ensureURL () {\n // noop\n };\n\n return AbstractHistory;\n}(History));\n\n/* */\n\nvar VueRouter = function VueRouter (options) {\n if ( options === void 0 ) options = {};\n\n this.app = null;\n this.apps = [];\n this.options = options;\n this.beforeHooks = [];\n this.resolveHooks = [];\n this.afterHooks = [];\n this.matcher = createMatcher(options.routes || [], this);\n\n var mode = options.mode || 'hash';\n this.fallback =\n mode === 'history' && !supportsPushState && options.fallback !== false;\n if (this.fallback) {\n mode = 'hash';\n }\n if (!inBrowser) {\n mode = 'abstract';\n }\n this.mode = mode;\n\n switch (mode) {\n case 'history':\n this.history = new HTML5History(this, options.base);\n break\n case 'hash':\n this.history = new HashHistory(this, options.base, this.fallback);\n break\n case 'abstract':\n this.history = new AbstractHistory(this, options.base);\n break\n default:\n if (process.env.NODE_ENV !== 'production') {\n assert(false, (\"invalid mode: \" + mode));\n }\n }\n};\n\nvar prototypeAccessors = { currentRoute: { configurable: true } };\n\nVueRouter.prototype.match = function match (raw, current, redirectedFrom) {\n return this.matcher.match(raw, current, redirectedFrom)\n};\n\nprototypeAccessors.currentRoute.get = function () {\n return this.history && this.history.current\n};\n\nVueRouter.prototype.init = function init (app /* Vue component instance */) {\n var this$1 = this;\n\n process.env.NODE_ENV !== 'production' &&\n assert(\n install.installed,\n \"not installed. Make sure to call `Vue.use(VueRouter)` \" +\n \"before creating root instance.\"\n );\n\n this.apps.push(app);\n\n // set up app destroyed handler\n // https://github.com/vuejs/vue-router/issues/2639\n app.$once('hook:destroyed', function () {\n // clean out app from this.apps array once destroyed\n var index = this$1.apps.indexOf(app);\n if (index > -1) { this$1.apps.splice(index, 1); }\n // ensure we still have a main app or null if no apps\n // we do not release the router so it can be reused\n if (this$1.app === app) { this$1.app = this$1.apps[0] || null; }\n\n if (!this$1.app) {\n // clean up event listeners\n // https://github.com/vuejs/vue-router/issues/2341\n this$1.history.teardownListeners();\n }\n });\n\n // main app previously initialized\n // return as we don't need to set up new history listener\n if (this.app) {\n return\n }\n\n this.app = app;\n\n var history = this.history;\n\n if (history instanceof HTML5History || history instanceof HashHistory) {\n var handleInitialScroll = function (routeOrError) {\n var from = history.current;\n var expectScroll = this$1.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll && 'fullPath' in routeOrError) {\n handleScroll(this$1, routeOrError, from, false);\n }\n };\n var setupListeners = function (routeOrError) {\n history.setupListeners();\n handleInitialScroll(routeOrError);\n };\n history.transitionTo(\n history.getCurrentLocation(),\n setupListeners,\n setupListeners\n );\n }\n\n history.listen(function (route) {\n this$1.apps.forEach(function (app) {\n app._route = route;\n });\n });\n};\n\nVueRouter.prototype.beforeEach = function beforeEach (fn) {\n return registerHook(this.beforeHooks, fn)\n};\n\nVueRouter.prototype.beforeResolve = function beforeResolve (fn) {\n return registerHook(this.resolveHooks, fn)\n};\n\nVueRouter.prototype.afterEach = function afterEach (fn) {\n return registerHook(this.afterHooks, fn)\n};\n\nVueRouter.prototype.onReady = function onReady (cb, errorCb) {\n this.history.onReady(cb, errorCb);\n};\n\nVueRouter.prototype.onError = function onError (errorCb) {\n this.history.onError(errorCb);\n};\n\nVueRouter.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n // $flow-disable-line\n if (!onComplete && !onAbort && typeof Promise !== 'undefined') {\n return new Promise(function (resolve, reject) {\n this$1.history.push(location, resolve, reject);\n })\n } else {\n this.history.push(location, onComplete, onAbort);\n }\n};\n\nVueRouter.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n // $flow-disable-line\n if (!onComplete && !onAbort && typeof Promise !== 'undefined') {\n return new Promise(function (resolve, reject) {\n this$1.history.replace(location, resolve, reject);\n })\n } else {\n this.history.replace(location, onComplete, onAbort);\n }\n};\n\nVueRouter.prototype.go = function go (n) {\n this.history.go(n);\n};\n\nVueRouter.prototype.back = function back () {\n this.go(-1);\n};\n\nVueRouter.prototype.forward = function forward () {\n this.go(1);\n};\n\nVueRouter.prototype.getMatchedComponents = function getMatchedComponents (to) {\n var route = to\n ? to.matched\n ? to\n : this.resolve(to).route\n : this.currentRoute;\n if (!route) {\n return []\n }\n return [].concat.apply(\n [],\n route.matched.map(function (m) {\n return Object.keys(m.components).map(function (key) {\n return m.components[key]\n })\n })\n )\n};\n\nVueRouter.prototype.resolve = function resolve (\n to,\n current,\n append\n) {\n current = current || this.history.current;\n var location = normalizeLocation(to, current, append, this);\n var route = this.match(location, current);\n var fullPath = route.redirectedFrom || route.fullPath;\n var base = this.history.base;\n var href = createHref(base, fullPath, this.mode);\n return {\n location: location,\n route: route,\n href: href,\n // for backwards compat\n normalizedTo: location,\n resolved: route\n }\n};\n\nVueRouter.prototype.addRoutes = function addRoutes (routes) {\n this.matcher.addRoutes(routes);\n if (this.history.current !== START) {\n this.history.transitionTo(this.history.getCurrentLocation());\n }\n};\n\nObject.defineProperties( VueRouter.prototype, prototypeAccessors );\n\nfunction registerHook (list, fn) {\n list.push(fn);\n return function () {\n var i = list.indexOf(fn);\n if (i > -1) { list.splice(i, 1); }\n }\n}\n\nfunction createHref (base, fullPath, mode) {\n var path = mode === 'hash' ? '#' + fullPath : fullPath;\n return base ? cleanPath(base + '/' + path) : path\n}\n\nVueRouter.install = install;\nVueRouter.version = '3.4.3';\nVueRouter.isNavigationFailure = isNavigationFailure;\nVueRouter.NavigationFailureType = NavigationFailureType;\n\nif (inBrowser && window.Vue) {\n window.Vue.use(VueRouter);\n}\n\nexport default VueRouter;\n","import Vue from \"vue\";\nimport VueRouter from \"vue-router\";\n// import Idle from \"../views/Idle.vue\";\n\nVue.use(VueRouter);\n\nconst routes = [];\n\nconst router = new VueRouter({\n routes\n});\n\nexport default router;\n","import { Machine, assign } from \"xstate\";\n\nconst isAmended = context => {\n return context.isAmended === true;\n};\n\nconst isNotAmended = context => {\n return context.isAmended === false;\n};\n\nconst isAmending = assign({\n isAmended: () => true\n});\n\nexport const procedureMachine = Machine(\n {\n id: \"motions\",\n initial: \"idle\",\n context: {\n isAmended: false\n },\n states: {\n idle: {\n meta: {\n component: \"Idle\"\n },\n on: {\n MOTION_MADE: \"discussion\",\n VOTE: \"voting\"\n }\n },\n discussion: {\n meta: {\n component: \"MotionDiscussion\"\n },\n on: {\n VOTE: \"voting\",\n AMEND: {\n target: \"amending\",\n actions: \"isAmending\",\n cond: isNotAmended\n },\n TABLE: \"idle\"\n }\n },\n voting: {\n meta: {\n component: \"MotionVoting\"\n },\n on: {\n VOTE_SUBMITTED: \"waiting\",\n VOTE_COMPLETED: \"waiting\",\n CLEAR_MOTION: \"idle\"\n }\n },\n amending: {\n meta: {\n component: \"Amending\"\n },\n on: {\n VOTE: \"amendmentVote\"\n }\n },\n amendmentVote: {\n on: {\n VOTE_SUBMITTED: \"amendmentWaiting\"\n }\n },\n amendmentWaiting: {\n on: {\n RESULTS_ANNOUNCED: \"amendmentResults\"\n }\n },\n amendmentResults: {\n on: {\n RECORDED: \"discussion\"\n }\n },\n waiting: {\n meta: {\n component: \"MotionWaiting\"\n },\n on: {\n RESULTS_ANNOUNCED: \"results\",\n MOTION_MADE: \"discussion\"\n }\n },\n results: {\n on: {\n RECORDED: \"idle\"\n }\n }\n }\n },\n { actions: { isAmending }, guards: { isAmended, isNotAmended } }\n);\n","import { Machine } from \"xstate\";\n\nconst GET_FLOOR = \"loading\";\nconst IN_DISCUSSION = \"discussing\";\nconst VOTING_OPEN = \"Voting.open\";\nconst SHOW_RESULTS = \"#Floor.showResults\";\nconst NO_MOTION = \"idle\";\n\nconst resultsStates = {\n id: \"Results\",\n initial: \"waiting\",\n states: {\n waiting: {\n on: {\n GET_RESULTS: \"loading\",\n SHOW_RESULTS,\n IN_DISCUSSION: \"#Floor.discussing\",\n VOTING_OPEN: \"#Floor.Voting.open\",\n ALREADY_VOTED: \"#Floor.Voting.alreadyVoted\",\n DID_NOT_VOTE: \"#Floor.Voting.didNotVote\",\n CAN_CHANGE_VOTE: \"#Floor.Voting.thanksForVoting\"\n }\n },\n loading: {\n on: {\n RESULTS_AVAILABLE: \"#Floor.showResults\",\n STILL_OPEN: \"stillOpen\",\n DICUSSING_DIFFERENT_MOTION: \"differentMotionDiscussing\",\n VOTING_DIFFERENT_MOTION: \"differentMotionVoting\",\n CAN_CHANGE_VOTE: \"#Floor.Voting.thanksForVoting\"\n }\n },\n stillOpen: {\n meta: {\n title: \"Voting is still open.\",\n message: \"Please wait for the results to be made available.\"\n },\n on: {\n CLOSE_MESSAGE: \"waiting\"\n }\n },\n differentMotionDiscussing: {\n meta: {\n title: \"Discussion began on a different motion.\",\n message: \"Close this message to view the current motion on the floor.\"\n },\n on: {\n CLOSE_MESSAGE: \"#Floor.discussing\"\n }\n },\n differentMotionVoting: {\n meta: {\n title: \"Voting is now open on a different motion.\",\n message: \"Close this message to view the current motion being voted on.\"\n },\n on: {\n CLOSE_MESSAGE: \"#Floor.Voting.open\"\n }\n }\n }\n};\n\nconst resultsResubmitStates = {\n id: \"ResultsResubmit\",\n initial: \"waiting\",\n states: {\n waiting: {\n on: {\n GET_RESULTS: \"loading\",\n CHANGE_VOTE: \"#Floor.Voting.changeVote\",\n SHOW_RESULTS,\n DID_NOT_VOTE: \"#Floor.Voting.didNotVote\",\n NO_MOTION: \"#Floor.idle\"\n }\n },\n loading: {\n on: {\n RESULTS_AVAILABLE: \"#Floor.showResults\",\n STILL_OPEN: \"stillOpen\",\n DICUSSING_DIFFERENT_MOTION: \"differentMotionDiscussing\",\n VOTING_DIFFERENT_MOTION: \"differentMotionVoting\"\n }\n },\n stillOpen: {\n meta: {\n title: \"Voting is still open.\",\n message: \"Please wait for the results to be made available.\"\n },\n on: {\n CLOSE_MESSAGE: \"waiting\"\n }\n },\n differentMotionDiscussing: {\n meta: {\n title: \"Discussion began on a different motion.\",\n message: \"Close this message to view the current motion on the floor.\"\n },\n on: {\n CLOSE_MESSAGE: \"#Floor.discussing\"\n }\n },\n differentMotionVoting: {\n meta: {\n title: \"Voting is now open on a different motion.\",\n message: \"Close this message to view the current motion being voted on.\"\n },\n on: {\n CLOSE_MESSAGE: \"#Floor.Voting.open\"\n }\n }\n }\n};\n\nexport const floorMachine = Machine({\n id: \"Floor\",\n initial: \"idle\",\n states: {\n idle: {\n on: {\n GET_FLOOR,\n IN_DISCUSSION,\n VOTING_OPEN: \"Voting.open\",\n ALREADY_VOTED: \"Voting.alreadyVoted\",\n CAN_CHANGE_VOTE: \"Voting.thanksForVoting\",\n DID_NOT_VOTE: \"Voting.didNotVote\",\n SHOW_RESULTS: \"showResults\"\n },\n meta: {\n view: \"Waiting\"\n }\n },\n loading: {\n on: {\n NO_MOTION,\n IN_DISCUSSION: \"discussing\",\n VOTING_OPEN: \"Voting.open\",\n ALREADY_VOTED: \"Voting.alreadyVoted\",\n CAN_CHANGE_VOTE: \"Voting.thanksForVoting\",\n DID_NOT_VOTE: \"Voting.didNotVote\",\n SHOW_RESULTS: \"showResults\"\n },\n meta: {\n view: \"Waiting\"\n }\n },\n no_motion: {\n on: {\n IDLE: \"idle\"\n },\n meta: {\n // view: \"Waiting\",\n // error: {\n // content: {\n // title: \"No Motion Available\",\n // message:\n // \"There is currently no motion on the floor. Please wait for the next motion to be on the floor.\"\n // },\n // nextState: \"IDLE\"\n // }\n view: \"Waiting\"\n }\n },\n discussing: {\n on: {\n GET_FLOOR,\n VOTING_OPEN,\n NO_MOTION,\n ALREADY_VOTED: \"Voting.alreadyVoted\",\n DID_NOT_VOTE: \"Voting.didNotVote\",\n SHOW_RESULTS: \"showResults\"\n },\n meta: {\n view: \"MotionDiscussionTwo\"\n }\n },\n Voting: {\n states: {\n open: {\n on: {\n SUBMIT_VOTE: \"submitting\",\n DID_NOT_VOTE: \"didNotVote\",\n ALREADY_VOTED: \"alreadyVoted\",\n SHOW_RESULTS: \"#Floor.showResults\",\n IN_DISCUSSION: \"#Floor.discussing\",\n NO_MOTION: \"#Floor.idle\"\n },\n meta: {\n view: \"MotionVotingTwo\"\n }\n },\n submitting: {\n on: {\n SUCCESS: \"thanksForVoting\",\n ALREADY_VOTED: \"alreadyVoted\",\n NO_MOTION: \"no_motion\",\n WRONG_MOTION: \"wrong_motion\",\n DID_NOT_VOTE: \"didNotVote\"\n },\n meta: {\n view: \"MotionVotingTwo\",\n component: \"LoadingMessage\",\n message: \"Please wait as your vote is submitted\"\n }\n },\n changeVote: {\n on: {\n SUCCESS: \"thanksForVoting\",\n COULD_NOT_CHANGE: \"could_not_change\",\n DID_NOT_VOTE: \"#Floor.Voting.didNotVote\",\n SHOW_RESULTS: \"#Floor.showResults\"\n },\n meta: {\n view: \"MotionVotingChange\"\n }\n },\n could_not_change: {\n on: {\n CLOSE: \"thanksForVoting\"\n },\n meta: {\n view: \"MotionVotingChange\",\n error: {\n content: {\n title: \"Voting Closed Before Vote Change Received\",\n message:\n \"Your last submitted vote will be counted for the results.\"\n },\n nextState: \"CLOSE\"\n }\n }\n },\n no_motion: {\n on: {\n CLOSE: \"#Floor.idle\"\n },\n meta: {\n view: \"MotionVotingTwo\",\n error: {\n content: {\n title: \"No Active Motion\",\n message:\n \"There is currently no active motion. Please check for the latest motion.\"\n },\n nextState: \"CLOSE\"\n }\n }\n },\n wrong_motion: {\n on: {\n CLOSE: \"#Floor.idle\"\n },\n meta: {\n view: \"MotionVotingTwo\",\n error: {\n content: {\n title: \"Wrong Motion\",\n message:\n \"You are submitting a vote for a motion that is not active. Please check for the latest motion\"\n },\n nextState: \"CLOSE\"\n }\n }\n },\n thanksForVoting: {\n ...resultsResubmitStates,\n meta: {\n view: \"ThanksForVoting\"\n }\n },\n alreadyVoted: {\n ...resultsStates,\n meta: {\n view: \"AlreadyVoted\"\n }\n },\n didNotVote: {\n ...resultsStates,\n meta: {\n view: \"DidNotVote\"\n }\n }\n }\n },\n showResults: {\n on: {\n GET_FLOOR,\n NO_MOTION,\n IN_DISCUSSION,\n ALREADY_VOTED: \"Voting.alreadyVoted\",\n DID_NOT_VOTE: \"Voting.didNotVote\",\n VOTING_OPEN: \"Voting.open\",\n },\n meta: {\n view: \"VotingResults\"\n }\n }\n }\n});\n\nexport const ogfloorMachine = Machine({\n id: \"Floor\",\n initial: \"idle\",\n states: {\n idle: {\n on: {\n GET_FLOOR\n },\n meta: {\n view: \"Waiting\"\n }\n },\n loading: {\n on: {\n NO_MOTION: \"no_motion\",\n IN_DISCUSSION: \"discussing\",\n VOTING_OPEN: \"Voting.open\",\n ALREADY_VOTED: \"Voting.alreadyVoted\",\n DID_NOT_VOTE: \"Voting.didNotVote\",\n SHOW_RESULTS: \"showResults\"\n },\n meta: {\n view: \"Waiting\"\n }\n },\n no_motion: {\n on: {\n IDLE: \"idle\"\n },\n meta: {\n view: \"Waiting\",\n error: {\n content: {\n title: \"No Motion Available\",\n message:\n \"There is currently no motion on the floor. Please wait for the next motion to be on the floor.\"\n },\n nextState: \"IDLE\"\n }\n }\n },\n discussing: {\n on: {\n GET_FLOOR\n },\n meta: {\n view: \"MotionDiscussionTwo\"\n }\n },\n Voting: {\n states: {\n open: {\n on: {\n SUBMIT_VOTE: \"submitting\"\n },\n meta: {\n view: \"MotionVotingTwo\"\n }\n },\n submitting: {\n on: {\n SUCCESS: \"thanksForVoting\",\n ALREADY_VOTED: \"alreadyVoted\",\n NO_MOTION: \"no_motion\",\n WRONG_MOTION: \"wrong_motion\",\n DID_NOT_VOTE: \"didNotVote\"\n },\n meta: {\n view: \"MotionVotingTwo\",\n component: \"LoadingMessage\",\n message: \"Please wait as your vote is submitted\"\n }\n },\n changeVote: {\n on: {\n SUCCESS: \"thanksForVoting\",\n COULD_NOT_CHANGE: \"could_not_change\"\n },\n meta: {\n view: \"MotionVotingChange\"\n }\n },\n could_not_change: {\n on: {\n CLOSE: \"thanksForVoting\"\n },\n meta: {\n view: \"MotionVotingChange\",\n error: {\n content: {\n title: \"Voting Closed Before Vote Change Received\",\n message:\n \"Your last submitted vote will be counted for the results.\"\n },\n nextState: \"CLOSE\"\n }\n }\n },\n no_motion: {\n on: {\n CLOSE: \"#Floor.idle\"\n },\n meta: {\n view: \"MotionVotingTwo\",\n error: {\n content: {\n title: \"No Active Motion\",\n message:\n \"There is currently no active motion. Please check for the latest motion.\"\n },\n nextState: \"CLOSE\"\n }\n }\n },\n wrong_motion: {\n on: {\n CLOSE: \"#Floor.idle\"\n },\n meta: {\n view: \"MotionVotingTwo\",\n error: {\n content: {\n title: \"Wrong Motion\",\n message:\n \"You are submitting a vote for a motion that is not active. Please check for the latest motion\"\n },\n nextState: \"CLOSE\"\n }\n }\n },\n thanksForVoting: {\n ...resultsResubmitStates,\n meta: {\n view: \"ThanksForVoting\"\n }\n },\n alreadyVoted: {\n ...resultsStates,\n meta: {\n view: \"AlreadyVoted\"\n }\n },\n didNotVote: {\n ...resultsStates,\n meta: {\n view: \"DidNotVote\"\n }\n }\n }\n },\n showResults: {\n on: {\n GET_FLOOR\n },\n meta: {\n view: \"VotingResults\"\n }\n }\n }\n});\n","import Vue from \"vue\";\n\nconst state = {\n session: null,\n lastVote: null,\n};\nconst mutations = {\n setSession(state, session) {\n state.session = session;\n },\n SET(state, { field, value }) {\n Vue.set(state, field, value);\n },\n};\nconst actions = {\n async submitElectionVote({ commit }, { vote, voteDescription }) {\n let response = await fetch(`/wp-json/senate/v1/submit-election-vote`, {\n cache: \"no-store\",\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n \"X-WP-Nonce\": window.SENATE_REST.nonce,\n },\n body: JSON.stringify(vote),\n });\n response = await response.json();\n if (response.code) {\n return response;\n }\n commit(\"SET\", {\n field: \"lastVote\",\n value: voteDescription,\n });\n commit(\"setSession\", response);\n return response;\n },\n async getSession({ commit }) {\n let response = await fetch(\n `/wp-json/senate/v1/election-session?_wpnonce=${window.SENATE_REST.nonce}&election=${window.SENATE_REST.postid}`,\n { cache: \"no-store\" }\n );\n response = await response.json();\n commit(\"setSession\", response);\n },\n};\nconst getters = {\n sessionVotingStatus: (state) => {\n const session = state.session;\n if (session.vote_completed === true) {\n return \"show_result\";\n } else {\n if (session.senator_already_voted === true) {\n if (state.lastVote) {\n return \"thanks_for_voting\";\n }\n return \"already_voted\";\n }\n }\n return \"idle\";\n },\n};\n\nexport default {\n namespaced: true,\n state,\n mutations,\n actions,\n getters,\n};\n","import Vue from \"vue\";\nimport Vuex from \"vuex\";\n\nVue.use(Vuex);\n\nimport { interpret } from \"xstate\";\nimport { procedureMachine } from \"@/machines/procedureMachine\";\nimport { floorMachine } from \"@/machines/floorMachine\";\nimport { mergeMeta } from \"@/helpers\";\nimport elections from \"@/store/elections\";\n\nexport default new Vuex.Store({\n state: {\n activeMotion: null,\n procedureService: interpret(procedureMachine),\n floorService: interpret(floorMachine),\n currentFloor: floorMachine.initialState,\n current: procedureMachine.initialState,\n floor: null,\n lastVote: null,\n voteCounts: null,\n },\n mutations: {\n SET(state, { field, value }) {\n Vue.set(state, field, value);\n },\n TRANSITION(state, action) {\n state.current = procedureMachine.transition(state.current, action);\n },\n updateActiveMotion(state, { field, value }) {\n state.activeMotion = { ...state.activeMotion, [field]: value };\n },\n },\n actions: {\n async clearMotion({ commit }) {\n commit(\"SET\", {\n field: \"activeMotion\",\n value: null,\n });\n commit(\"TRANSITION\", \"CLEAR_MOTION\");\n },\n async showMotionResults({ commit }) {\n commit(\"TRANSITION\", \"VOTE_COMPLETED\");\n },\n async fetchMotion({ commit }) {\n let response = await fetch(\n `/wp-json/senate/v1/motion?_wpnonce=${window.SENATE_REST.nonce}`,\n { cache: \"no-store\" }\n );\n response = await response.json();\n if (response.code === \"no_motion\") {\n return response;\n }\n\n switch (response.status_label) {\n case \"Debating\":\n commit(\"TRANSITION\", \"MOTION_MADE\");\n break;\n case \"Voting Closed\":\n commit(\"TRANSITION\", \"MOTION_MADE\");\n break;\n case \"Voting Open\":\n commit(\"TRANSITION\", \"VOTE\");\n break;\n }\n commit(\"SET\", {\n field: \"activeMotion\",\n value: response,\n });\n\n // if (state.activeMotion && response.id === state.activeMotion.id) {\n // return {\n // code: \"is_current\"\n // };\n // }\n\n return response;\n },\n async canVoteOnMotion({ commit }) {\n let response = await fetch(\n `/wp-json/senate/v1/motion-vote-ready?_wpnonce=${window.SENATE_REST.nonce}`,\n { cache: \"no-store\" }\n );\n response = await response.json();\n const wrongCodes = [\"no_motion\", \"still_discussing\", \"being_amended\"];\n if (response.code && wrongCodes.includes(response.code)) {\n return response;\n }\n commit(\"updateActiveMotion\", {\n field: \"motion_actions\",\n value: \"vote\",\n });\n commit(\"TRANSITION\", \"VOTE\");\n return response;\n },\n async motionIsAmended({ commit }) {\n let response = await fetch(\n `/wp-json/senate/v1/motion-amended-ready?_wpnonce=${window.SENATE_REST.nonce}`,\n { cache: \"no-store\" }\n );\n response = await response.json();\n if (response.code === \"no_motion\" || response.code === \"not_amended\") {\n return response;\n }\n commit(\"updateActiveMotion\", {\n field: \"amendment\",\n value: response,\n });\n commit(\"TRANSITION\", \"AMEND\");\n return response;\n },\n async submitVote({ commit }, vote) {\n let response = await fetch(`/wp-json/senate/v1/submit-vote`, {\n cache: \"no-store\",\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n \"X-WP-Nonce\": window.SENATE_REST.nonce,\n },\n body: JSON.stringify(vote),\n });\n response = await response.json();\n const wrongCodes = [\n \"no_motion\",\n \"wrong_motion\",\n \"voting_not_open\",\n \"voting_completed\",\n \"already_voted\",\n ];\n if (response.code && wrongCodes.includes(response.code)) {\n return response;\n }\n commit(\"TRANSITION\", \"VOTE_SUBMITTED\");\n },\n async getFloor({ state, commit }) {\n let response = await fetch(\n `/wp-json/senate/v1/floor?_wpnonce=${window.SENATE_REST.nonce}`,\n { cache: \"no-store\" }\n );\n response = await response.json();\n commit(\"SET\", {\n field: \"floor\",\n value: response,\n });\n state.floorService.send(response.floor_status);\n },\n async submitFloorVote({ commit }, vote) {\n let response = await fetch(`/wp-json/senate/v1/submit-floor-vote`, {\n cache: \"no-store\",\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n \"X-WP-Nonce\": window.SENATE_REST.nonce,\n },\n body: JSON.stringify(vote),\n });\n response = await response.json();\n if (response.code) {\n return response;\n }\n commit(\"SET\", {\n field: \"lastVote\",\n value: vote,\n });\n return response;\n },\n async changeFloorVote({ commit }, vote) {\n let response = await fetch(`/wp-json/senate/v1/change-floor-vote`, {\n cache: \"no-store\",\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n \"X-WP-Nonce\": window.SENATE_REST.nonce,\n },\n body: JSON.stringify(vote),\n });\n response = await response.json();\n if (response.code) {\n return response;\n }\n commit(\"SET\", {\n field: \"lastVote\",\n value: vote,\n });\n return response;\n },\n async getAdminResults({ commit }) {\n let response = await fetch(\n `/wp-json/senate/v1/voting-results?_wpnonce=${window.SENATE_REST.nonce}`,\n { cache: \"no-store\" }\n );\n response = await response.json();\n commit(\"SET\", {\n field: \"voteCounts\",\n value: response,\n });\n },\n },\n getters: {\n currentComponent: (state) => {\n const meta = mergeMeta(state.current.meta);\n if (meta) return meta.component;\n return \"NoComponent\";\n },\n currentFloorView: (state) => {\n const meta = mergeMeta(state.currentFloor.meta);\n if (meta) return meta.view;\n return \"NoViewFound\";\n },\n },\n modules: {\n elections,\n },\n});\n","// import { inspect } from '@xstate/inspect';\n\n// inspect({\n// // options\n// // url: 'https://statecharts.io/inspect', // (default)\n// iframe: false // open in new window\n// });\n\nimport Vue from \"vue\";\nimport App from \"./App.vue\";\nimport router from \"./router\";\nimport store from \"./store\";\n\nVue.config.productionTip = false;\n\nnew Vue({\n router,\n store,\n render: h => h(App),\n async created() {\n this.$store.state.procedureService\n .onTransition(state => {\n this.$store.commit(\"SET\", {\n field: \"current\",\n value: state\n });\n })\n .start();\n this.$store.state.floorService\n .onTransition(state => {\n this.$store.commit(\"SET\", {\n field: \"currentFloor\",\n value: state\n });\n })\n .start();\n // this.$store.state.floorService.send(\"GET_FLOOR\");\n // await this.$store.dispatch(\"getFloor\");\n }\n}).$mount(\"#senateVotingApp\");\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","var NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n // eslint-disable-next-line no-undef\n && !Symbol.sham\n // eslint-disable-next-line no-undef\n && typeof Symbol.iterator == 'symbol';\n","var global = require('../internals/global');\n\nmodule.exports = global.Promise;\n"],"sourceRoot":""}