@gogocat/data-bind 1.12.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (271) hide show
  1. package/.editorconfig +14 -14
  2. package/.vscode/launch.json +12 -12
  3. package/CONFIGURATION.md +294 -0
  4. package/REACTIVE_MODE.md +553 -0
  5. package/README.md +266 -829
  6. package/babel.config.json +30 -0
  7. package/dist/js/_escape.d.ts +14 -0
  8. package/dist/js/_escape.d.ts.map +1 -0
  9. package/dist/js/applyBinding.d.ts +11 -0
  10. package/dist/js/applyBinding.d.ts.map +1 -0
  11. package/dist/js/attrBinding.d.ts +12 -0
  12. package/dist/js/attrBinding.d.ts.map +1 -0
  13. package/dist/js/binder.d.ts +67 -0
  14. package/dist/js/binder.d.ts.map +1 -0
  15. package/dist/js/changeBinding.d.ts +19 -0
  16. package/dist/js/changeBinding.d.ts.map +1 -0
  17. package/dist/js/commentWrapper.d.ts +39 -0
  18. package/dist/js/commentWrapper.d.ts.map +1 -0
  19. package/dist/js/config.d.ts +55 -0
  20. package/dist/js/config.d.ts.map +1 -0
  21. package/dist/js/createBindingOption.d.ts +32 -0
  22. package/dist/js/createBindingOption.d.ts.map +1 -0
  23. package/dist/js/createEventBinding.d.ts +10 -0
  24. package/dist/js/createEventBinding.d.ts.map +1 -0
  25. package/dist/js/cssBinding.d.ts +15 -0
  26. package/dist/js/cssBinding.d.ts.map +1 -0
  27. package/dist/js/dataBind.js +2756 -2530
  28. package/dist/js/dataBind.min.js +8 -1
  29. package/dist/js/dataBind.min.js.map +1 -1
  30. package/dist/js/domWalker.d.ts +9 -0
  31. package/dist/js/domWalker.d.ts.map +1 -0
  32. package/dist/js/forOfBinding.d.ts +12 -0
  33. package/dist/js/forOfBinding.d.ts.map +1 -0
  34. package/dist/js/hoverBinding.d.ts +13 -0
  35. package/dist/js/hoverBinding.d.ts.map +1 -0
  36. package/dist/js/ifBinding.d.ts +12 -0
  37. package/dist/js/ifBinding.d.ts.map +1 -0
  38. package/dist/js/index.d.ts +10 -0
  39. package/dist/js/index.d.ts.map +1 -0
  40. package/dist/js/modelBinding.d.ts +12 -0
  41. package/dist/js/modelBinding.d.ts.map +1 -0
  42. package/dist/js/postProcess.d.ts +3 -0
  43. package/dist/js/postProcess.d.ts.map +1 -0
  44. package/dist/js/pubSub.d.ts +11 -0
  45. package/dist/js/pubSub.d.ts.map +1 -0
  46. package/dist/js/reactiveProxy.d.ts +28 -0
  47. package/dist/js/reactiveProxy.d.ts.map +1 -0
  48. package/dist/js/renderForOfBinding.d.ts +8 -0
  49. package/dist/js/renderForOfBinding.d.ts.map +1 -0
  50. package/dist/js/renderIfBinding.d.ts +22 -0
  51. package/dist/js/renderIfBinding.d.ts.map +1 -0
  52. package/dist/js/renderIteration.d.ts +16 -0
  53. package/dist/js/renderIteration.d.ts.map +1 -0
  54. package/dist/js/renderTemplate.d.ts +14 -0
  55. package/dist/js/renderTemplate.d.ts.map +1 -0
  56. package/dist/js/renderTemplatesBinding.d.ts +19 -0
  57. package/dist/js/renderTemplatesBinding.d.ts.map +1 -0
  58. package/dist/js/showBinding.d.ts +13 -0
  59. package/dist/js/showBinding.d.ts.map +1 -0
  60. package/dist/js/switchBinding.d.ts +13 -0
  61. package/dist/js/switchBinding.d.ts.map +1 -0
  62. package/dist/js/textBinding.d.ts +13 -0
  63. package/dist/js/textBinding.d.ts.map +1 -0
  64. package/dist/js/types/_escape.d.ts +14 -0
  65. package/dist/js/types/_escape.d.ts.map +1 -0
  66. package/dist/js/types/applyBinding.d.ts +11 -0
  67. package/dist/js/types/applyBinding.d.ts.map +1 -0
  68. package/dist/js/types/attrBinding.d.ts +12 -0
  69. package/dist/js/types/attrBinding.d.ts.map +1 -0
  70. package/dist/js/types/binder.d.ts +67 -0
  71. package/dist/js/types/binder.d.ts.map +1 -0
  72. package/dist/js/types/changeBinding.d.ts +19 -0
  73. package/dist/js/types/changeBinding.d.ts.map +1 -0
  74. package/dist/js/types/commentWrapper.d.ts +39 -0
  75. package/dist/js/types/commentWrapper.d.ts.map +1 -0
  76. package/dist/js/types/config.d.ts +55 -0
  77. package/dist/js/types/config.d.ts.map +1 -0
  78. package/dist/js/types/createBindingOption.d.ts +32 -0
  79. package/dist/js/types/createBindingOption.d.ts.map +1 -0
  80. package/dist/js/types/createEventBinding.d.ts +10 -0
  81. package/dist/js/types/createEventBinding.d.ts.map +1 -0
  82. package/dist/js/types/cssBinding.d.ts +15 -0
  83. package/dist/js/types/cssBinding.d.ts.map +1 -0
  84. package/dist/js/types/domWalker.d.ts +9 -0
  85. package/dist/js/types/domWalker.d.ts.map +1 -0
  86. package/dist/js/types/forOfBinding.d.ts +12 -0
  87. package/dist/js/types/forOfBinding.d.ts.map +1 -0
  88. package/dist/js/types/hoverBinding.d.ts +13 -0
  89. package/dist/js/types/hoverBinding.d.ts.map +1 -0
  90. package/dist/js/types/ifBinding.d.ts +12 -0
  91. package/dist/js/types/ifBinding.d.ts.map +1 -0
  92. package/dist/js/types/index.d.ts +10 -0
  93. package/dist/js/types/index.d.ts.map +1 -0
  94. package/dist/js/types/modelBinding.d.ts +12 -0
  95. package/dist/js/types/modelBinding.d.ts.map +1 -0
  96. package/dist/js/types/postProcess.d.ts +3 -0
  97. package/dist/js/types/postProcess.d.ts.map +1 -0
  98. package/dist/js/types/pubSub.d.ts +11 -0
  99. package/dist/js/types/pubSub.d.ts.map +1 -0
  100. package/dist/js/types/reactiveProxy.d.ts +28 -0
  101. package/dist/js/types/reactiveProxy.d.ts.map +1 -0
  102. package/dist/js/types/renderForOfBinding.d.ts +8 -0
  103. package/dist/js/types/renderForOfBinding.d.ts.map +1 -0
  104. package/dist/js/types/renderIfBinding.d.ts +22 -0
  105. package/dist/js/types/renderIfBinding.d.ts.map +1 -0
  106. package/dist/js/types/renderIteration.d.ts +16 -0
  107. package/dist/js/types/renderIteration.d.ts.map +1 -0
  108. package/dist/js/types/renderTemplate.d.ts +14 -0
  109. package/dist/js/types/renderTemplate.d.ts.map +1 -0
  110. package/dist/js/types/renderTemplatesBinding.d.ts +19 -0
  111. package/dist/js/types/renderTemplatesBinding.d.ts.map +1 -0
  112. package/dist/js/types/showBinding.d.ts +13 -0
  113. package/dist/js/types/showBinding.d.ts.map +1 -0
  114. package/dist/js/types/switchBinding.d.ts +13 -0
  115. package/dist/js/types/switchBinding.d.ts.map +1 -0
  116. package/dist/js/types/textBinding.d.ts +13 -0
  117. package/dist/js/types/textBinding.d.ts.map +1 -0
  118. package/dist/js/types/types.d.ts +111 -0
  119. package/dist/js/types/types.d.ts.map +1 -0
  120. package/dist/js/types/util.d.ts +119 -0
  121. package/dist/js/types/util.d.ts.map +1 -0
  122. package/dist/js/types.d.ts +111 -0
  123. package/dist/js/types.d.ts.map +1 -0
  124. package/dist/js/util.d.ts +119 -0
  125. package/dist/js/util.d.ts.map +1 -0
  126. package/eslint.config.js +124 -0
  127. package/examples/DBMONSTER_COMPARISON.md +123 -0
  128. package/examples/afterRenderDemo.html +119 -0
  129. package/examples/bootstrap/css/animate.css +1579 -1579
  130. package/examples/bootstrap/css/bootstrap.min.css +6 -6
  131. package/examples/bootstrap/css/homeservices.css +378 -390
  132. package/examples/bootstrap/css/open-iconic.css +511 -511
  133. package/examples/bootstrap/fonts/open-iconic.svg +543 -543
  134. package/examples/bootstrap/js/compMessageDialog.js +20 -19
  135. package/examples/bootstrap/js/compSearchBar.js +12 -19
  136. package/examples/bootstrap/js/compSearchResults.js +50 -46
  137. package/examples/bootstrap/js/featureAdsResult.json +65 -65
  138. package/examples/bootstrap/js/searchResult.json +57 -57
  139. package/examples/bootstrap.html +343 -332
  140. package/examples/css/baseTodo.css +141 -141
  141. package/examples/css/dbMonsterStyles.css +27 -27
  142. package/examples/css/indexTodo.css +374 -374
  143. package/examples/dbmonsterForOfReactive.html +40 -0
  144. package/examples/dbmonsterReact.html +19 -0
  145. package/examples/forOfBindingSimpleDebug.html +45 -0
  146. package/examples/globalConfig.html +131 -0
  147. package/examples/js/afterRenderDemo.js +190 -0
  148. package/examples/js/appTodo.js +46 -46
  149. package/examples/js/attrBindingDemo.js +2 -2
  150. package/examples/js/dbMonApp.js +24 -26
  151. package/examples/js/dbMonAppReact.jsx +79 -0
  152. package/examples/js/dbMonAppReactive.js +28 -0
  153. package/examples/js/fiberDemo.js +4 -4
  154. package/examples/js/filtersDemo.js +8 -8
  155. package/examples/js/forOfDemo.js +7 -9
  156. package/examples/js/forOfDemoComplex.js +44 -17
  157. package/examples/js/form.js +14 -14
  158. package/examples/js/globalConfig.js +117 -0
  159. package/examples/js/ifBindingDemo.js +16 -16
  160. package/examples/js/reactiveDemo.js +119 -0
  161. package/examples/js/switchBindingDemo.js +8 -8
  162. package/examples/react-dbmonster/dist/bundle.js +43 -0
  163. package/examples/react-dbmonster/package-lock.json +537 -0
  164. package/examples/react-dbmonster/package.json +16 -0
  165. package/examples/react-dbmonster/src/index.jsx +80 -0
  166. package/examples/reactiveDemo.html +127 -0
  167. package/examples/refreshRateTest.html +75 -75
  168. package/index.html +841 -0
  169. package/package.json +31 -34
  170. package/rollup.config.js +79 -36
  171. package/src/{_escape.js → _escape.ts} +19 -17
  172. package/src/{applyBinding.js → applyBinding.ts} +27 -18
  173. package/src/{attrBinding.js → attrBinding.ts} +14 -13
  174. package/src/{binder.js → binder.ts} +289 -181
  175. package/src/changeBinding.ts +93 -0
  176. package/src/{commentWrapper.js → commentWrapper.ts} +33 -30
  177. package/src/config.ts +107 -0
  178. package/src/{createBindingOption.js → createBindingOption.ts} +39 -15
  179. package/src/createEventBinding.ts +88 -0
  180. package/src/{cssBinding.js → cssBinding.ts} +13 -11
  181. package/src/{domWalker.js → domWalker.ts} +44 -30
  182. package/src/{forOfBinding.js → forOfBinding.ts} +4 -3
  183. package/src/hoverBinding.ts +84 -0
  184. package/src/{ifBinding.js → ifBinding.ts} +14 -12
  185. package/src/index.ts +53 -0
  186. package/src/{modelBinding.js → modelBinding.ts} +11 -9
  187. package/src/{postProcess.js → postProcess.ts} +6 -4
  188. package/src/{pubSub.js → pubSub.ts} +24 -21
  189. package/src/reactiveProxy.ts +285 -0
  190. package/src/{renderForOfBinding.js → renderForOfBinding.ts} +54 -32
  191. package/src/{renderIfBinding.js → renderIfBinding.ts} +41 -19
  192. package/src/{renderIteration.js → renderIteration.ts} +24 -8
  193. package/src/renderTemplate.ts +165 -0
  194. package/src/renderTemplatesBinding.ts +73 -0
  195. package/src/{showBinding.js → showBinding.ts} +4 -3
  196. package/src/{switchBinding.js → switchBinding.ts} +18 -15
  197. package/src/{textBinding.js → textBinding.ts} +5 -4
  198. package/src/types.ts +124 -0
  199. package/src/util.ts +810 -0
  200. package/test/css/reporter.css +9 -9
  201. package/test/globals.d.ts +19 -0
  202. package/test/helpers/testHelper.js +46 -11
  203. package/test/mocks/featureAdsResult.json +65 -65
  204. package/test/mocks/searchResult.json +57 -57
  205. package/test/specs/{attrBinding.spec.js → attrBinding.spec.ts} +103 -106
  206. package/test/specs/{binder.spec.js → binder.spec.ts} +29 -27
  207. package/test/specs/blurBinding.spec.ts +60 -0
  208. package/test/specs/chainableUse.spec.ts +125 -0
  209. package/test/specs/clickBinding.spec.ts +194 -0
  210. package/test/specs/{cssBinding.spec.js → cssBinding.spec.ts} +72 -79
  211. package/test/specs/{dataBindBootstrap.spec.js → dataBindBootstrap.spec.ts} +332 -313
  212. package/test/specs/{filter.spec.js → filter.spec.ts} +75 -76
  213. package/test/specs/{forOfBinding.spec.js → forOfBinding.spec.ts} +208 -219
  214. package/test/specs/formBinding.spec.ts +272 -0
  215. package/test/specs/ifBinding.spec.ts +165 -0
  216. package/test/specs/{nestedComponent.spec.js → nestedComponent.spec.ts} +88 -88
  217. package/test/specs/reactiveProxy.spec.ts +465 -0
  218. package/test/specs/{showBinding.spec.js → showBinding.spec.ts} +148 -149
  219. package/test/specs/{switchBinding.spec.js → switchBinding.spec.ts} +172 -173
  220. package/test/specs/templateBinding.spec.ts +273 -0
  221. package/test/specs/{textBinding.spec.js → textBinding.spec.ts} +47 -48
  222. package/test/tsconfig.json +31 -0
  223. package/test-output.txt +200 -0
  224. package/test-reactive.html +224 -0
  225. package/tsconfig.json +28 -0
  226. package/vendors/lodash.custom.js +4577 -4577
  227. package/vendors/lodash.custom.min.js +45 -45
  228. package/vitest.config.js +27 -0
  229. package/.eslintrc.js +0 -1
  230. package/.grunt/grunt-contrib-jasmine/boot.js +0 -161
  231. package/.grunt/grunt-contrib-jasmine/dist/js/dataBind.js +0 -9
  232. package/.grunt/grunt-contrib-jasmine/grunt-template-jasmine-istanbul/reporter.js +0 -23
  233. package/.grunt/grunt-contrib-jasmine/jasmine-html.js +0 -853
  234. package/.grunt/grunt-contrib-jasmine/jasmine.css +0 -271
  235. package/.grunt/grunt-contrib-jasmine/jasmine.js +0 -9761
  236. package/.grunt/grunt-contrib-jasmine/jasmine_favicon.png +0 -0
  237. package/.grunt/grunt-contrib-jasmine/json2.js +0 -489
  238. package/.grunt/grunt-contrib-jasmine/reporter.js +0 -107
  239. package/coverage/coverage.json +0 -1
  240. package/coverage/lcov/lcov-report/base.css +0 -213
  241. package/coverage/lcov/lcov-report/index.html +0 -93
  242. package/coverage/lcov/lcov-report/js/dataBind.js.html +0 -6596
  243. package/coverage/lcov/lcov-report/js/index.html +0 -93
  244. package/coverage/lcov/lcov-report/prettify.css +0 -1
  245. package/coverage/lcov/lcov-report/prettify.js +0 -1
  246. package/coverage/lcov/lcov-report/sort-arrow-sprite.png +0 -0
  247. package/coverage/lcov/lcov-report/sorter.js +0 -158
  248. package/coverage/lcov/lcov.info +0 -1991
  249. package/eslintrc.json +0 -40
  250. package/examples/bootstrap/js/bootstrap.min.js +0 -6
  251. package/examples/bootstrap/js/popper.min.js +0 -5
  252. package/examples/bootstrap/js/searchSuggestion.js +0 -58
  253. package/examples/bootstrap/js/typeahead.jquery.js +0 -1538
  254. package/gruntfile.js +0 -92
  255. package/gulpfile.js +0 -32
  256. package/src/applyBindingExport.js +0 -5
  257. package/src/changeBinding.js +0 -63
  258. package/src/config.js +0 -66
  259. package/src/createEventBinding.js +0 -46
  260. package/src/eventSystem.js +0 -46
  261. package/src/hoverBinding.js +0 -57
  262. package/src/index.js +0 -26
  263. package/src/renderTemplate.js +0 -128
  264. package/src/renderTemplatesBinding.js +0 -44
  265. package/src/util.js +0 -648
  266. package/test/specs/blurBinding.spec.js +0 -57
  267. package/test/specs/formBinding.spec.js +0 -316
  268. package/test/specs/ifBinding.spec.js +0 -169
  269. package/test/specs/templateBinding.spec.js +0 -117
  270. package/vendors/jasmine-jquery.js +0 -841
  271. package/vendors/jquery-3.2.1.min.js +0 -4
@@ -1,46 +1,46 @@
1
- /**
2
- * @license
3
- * Lodash (Custom Build) lodash.com/license | Underscore.js 1.8.3 underscorejs.org/LICENSE
4
- * Build: `lodash include="set,get,template,uniq,each"`
5
- */
6
- ;(function(){function t(t,n,r){switch(r.length){case 0:return t.call(n);case 1:return t.call(n,r[0]);case 2:return t.call(n,r[0],r[1]);case 3:return t.call(n,r[0],r[1],r[2])}return t.apply(n,r)}function n(t,n){for(var r=-1,e=null==t?0:t.length;++r<e&&n(t[r],r,t)!==false;);return t}function r(t,n){for(var r=-1,e=null==t?0:t.length,u=0,o=[];++r<e;){var i=t[r];n(i,r,t)&&(o[u++]=i)}return o}function e(t,n){return!!(null==t?0:t.length)&&f(t,n,0)>-1}function u(t,n,r){for(var e=-1,u=null==t?0:t.length;++e<u;)if(r(n,t[e]))return true;
7
- return false}function o(t,n){for(var r=-1,e=null==t?0:t.length,u=Array(e);++r<e;)u[r]=n(t[r],r,t);return u}function i(t,n){for(var r=-1,e=n.length,u=t.length;++r<e;)t[u+r]=n[r];return t}function c(t,n){for(var r=-1,e=null==t?0:t.length;++r<e;)if(n(t[r],r,t))return true;return false}function a(t,n,r,e){for(var u=t.length,o=r+(e?1:-1);e?o--:++o<u;)if(n(t[o],o,t))return o;return-1}function f(t,n,r){return n===n?m(t,n,r):a(t,s,r)}function s(t){return t!==t}function l(t){return function(n){return null==n?Vn:n[t];
8
- }}function p(t){return function(n){return null==t?Vn:t[n]}}function h(t,n){for(var r=-1,e=Array(t);++r<t;)e[r]=n(r);return e}function _(t){return function(n){return t(n)}}function v(t,n){return o(n,function(n){return t[n]})}function y(t,n){return t.has(n)}function b(t){return"\\"+ie[t]}function g(t,n){return null==t?Vn:t[n]}function d(t){var n=-1,r=Array(t.size);return t.forEach(function(t,e){r[++n]=[e,t]}),r}function j(t,n){return function(r){return t(n(r))}}function w(t){var n=-1,r=Array(t.size);
9
- return t.forEach(function(t){r[++n]=t}),r}function m(t,n,r){for(var e=r-1,u=t.length;++e<u;)if(t[e]===n)return e;return-1}function O(){}function A(t){var n=-1,r=null==t?0:t.length;for(this.clear();++n<r;){var e=t[n];this.set(e[0],e[1])}}function z(){this.__data__=Ke?Ke(null):{},this.size=0}function S(t){var n=this.has(t)&&delete this.__data__[t];return this.size-=n?1:0,n}function x(t){var n=this.__data__;if(Ke){var r=n[t];return r===Kn?Vn:r}return Ae.call(n,t)?n[t]:Vn}function E(t){var n=this.__data__;
10
- return Ke?n[t]!==Vn:Ae.call(n,t)}function $(t,n){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=Ke&&n===Vn?Kn:n,this}function k(t){var n=-1,r=null==t?0:t.length;for(this.clear();++n<r;){var e=t[n];this.set(e[0],e[1])}}function L(){this.__data__=[],this.size=0}function I(t){var n=this.__data__,r=Z(n,t);return!(r<0)&&(r==n.length-1?n.pop():Re.call(n,r,1),--this.size,true)}function F(t){var n=this.__data__,r=Z(n,t);return r<0?Vn:n[r][1]}function P(t){return Z(this.__data__,t)>-1}function U(t,n){
11
- var r=this.__data__,e=Z(r,t);return e<0?(++this.size,r.push([t,n])):r[e][1]=n,this}function R(t){var n=-1,r=null==t?0:t.length;for(this.clear();++n<r;){var e=t[n];this.set(e[0],e[1])}}function M(){this.size=0,this.__data__={hash:new A,map:new(Ve||k),string:new A}}function T(t){var n=Jt(this,t).delete(t);return this.size-=n?1:0,n}function B(t){return Jt(this,t).get(t)}function C(t){return Jt(this,t).has(t)}function D(t,n){var r=Jt(this,t),e=r.size;return r.set(t,n),this.size+=r.size==e?0:1,this}function W(t){
12
- var n=-1,r=null==t?0:t.length;for(this.__data__=new R;++n<r;)this.add(t[n])}function q(t){return this.__data__.set(t,Kn),this}function N(t){return this.__data__.has(t)}function V(t){this.size=(this.__data__=new k(t)).size}function G(){this.__data__=new k,this.size=0}function H(t){var n=this.__data__,r=n.delete(t);return this.size=n.size,r}function J(t){return this.__data__.get(t)}function K(t){return this.__data__.has(t)}function Q(t,n){var r=this.__data__;if(r instanceof k){var e=r.__data__;if(!Ve||e.length<Hn-1)return e.push([t,n]),
13
- this.size=++r.size,this;r=this.__data__=new R(e)}return r.set(t,n),this.size=r.size,this}function X(t,n){var r=vu(t),e=!r&&_u(t),u=!r&&!e&&yu(t),o=!r&&!e&&!u&&du(t),i=r||e||u||o,c=i?h(t.length,String):[],a=c.length;for(var f in t)!n&&!Ae.call(t,f)||i&&("length"==f||u&&("offset"==f||"parent"==f)||o&&("buffer"==f||"byteLength"==f||"byteOffset"==f)||rn(f,a))||c.push(f);return c}function Y(t,n,r){var e=t[n];Ae.call(t,n)&&wn(e,r)&&(r!==Vn||n in t)||rt(t,n,r)}function Z(t,n){for(var r=t.length;r--;)if(wn(t[r][0],n))return r;
14
- return-1}function tt(t,n){return t&&Ut(n,Fn(n),t)}function nt(t,n){return t&&Ut(n,Pn(n),t)}function rt(t,n,r){"__proto__"==n&&Te?Te(t,n,{configurable:true,enumerable:true,value:r,writable:true}):t[n]=r}function et(t,r,e,u,o,i){var c,a=r&Xn,f=r&Yn,s=r&Zn;if(e&&(c=o?e(t,u,o,i):e(t)),c!==Vn)return c;if(!Sn(t))return t;var l=vu(t);if(l){if(c=Zt(t),!a)return Pt(t,c)}else{var p=lu(t),h=p==hr||p==_r;if(yu(t))return Et(t,a);if(p==gr||p==ir||h&&!o){if(c=f||h?{}:tn(t),!a)return f?Mt(t,nt(c,t)):Rt(t,tt(c,t))}else{
15
- if(!ue[p])return o?t:{};c=nn(t,p,a)}}i||(i=new V);var _=i.get(t);if(_)return _;if(i.set(t,c),gu(t))return t.forEach(function(n){c.add(et(n,r,e,n,t,i))}),c;if(bu(t))return t.forEach(function(n,u){c.set(u,et(n,r,e,u,t,i))}),c;var v=s?f?Gt:Vt:f?Pn:Fn,y=l?Vn:v(t);return n(y||t,function(n,u){y&&(u=n,n=t[u]),Y(c,u,et(n,r,e,u,t,i))}),c}function ut(t,n){return t&&iu(t,n,Fn)}function ot(t,n){n=xt(n,t);for(var r=0,e=n.length;null!=t&&r<e;)t=t[yn(n[r++])];return r&&r==e?t:Vn}function it(t,n,r){var e=n(t);return vu(t)?e:i(e,r(t));
16
- }function ct(t){return null==t?t===Vn?zr:br:Me&&Me in Object(t)?Xt(t):hn(t)}function at(t,n){return null!=t&&n in Object(t)}function ft(t){return xn(t)&&ct(t)==ir}function st(t,n,r,e,u){return t===n||(null==t||null==n||!xn(t)&&!xn(n)?t!==t&&n!==n:lt(t,n,r,e,st,u))}function lt(t,n,r,e,u,o){var i=vu(t),c=vu(n),a=i?cr:lu(t),f=c?cr:lu(n);a=a==ir?gr:a,f=f==ir?gr:f;var s=a==gr,l=f==gr,p=a==f;if(p&&yu(t)){if(!yu(n))return false;i=true,s=false}if(p&&!s)return o||(o=new V),i||du(t)?Wt(t,n,r,e,u,o):qt(t,n,a,r,e,u,o);
17
- if(!(r&tr)){var h=s&&Ae.call(t,"__wrapped__"),_=l&&Ae.call(n,"__wrapped__");if(h||_){var v=h?t.value():t,y=_?n.value():n;return o||(o=new V),u(v,y,r,e,o)}}return!!p&&(o||(o=new V),Nt(t,n,r,e,u,o))}function pt(t){return xn(t)&&lu(t)==vr}function ht(t,n,r,e){var u=r.length,o=u,i=!e;if(null==t)return!o;for(t=Object(t);u--;){var c=r[u];if(i&&c[2]?c[1]!==t[c[0]]:!(c[0]in t))return false}for(;++u<o;){c=r[u];var a=c[0],f=t[a],s=c[1];if(i&&c[2]){if(f===Vn&&!(a in t))return false}else{var l=new V;if(e)var p=e(f,s,a,t,n,l);
18
- if(!(p===Vn?st(s,f,tr|nr,e,l):p))return false}}return true}function _t(t){return!(!Sn(t)||cn(t))&&(An(t)?Ee:Zr).test(bn(t))}function vt(t){return xn(t)&&lu(t)==mr}function yt(t){return xn(t)&&zn(t.length)&&!!ee[ct(t)]}function bt(t){return typeof t=="function"?t:null==t?Bn:typeof t=="object"?vu(t)?wt(t[0],t[1]):jt(t):Wn(t)}function gt(t){if(!an(t))return De(t);var n=[];for(var r in Object(t))Ae.call(t,r)&&"constructor"!=r&&n.push(r);return n}function dt(t){if(!Sn(t))return pn(t);var n=an(t),r=[];for(var e in t)("constructor"!=e||!n&&Ae.call(t,e))&&r.push(e);
19
- return r}function jt(t){var n=Kt(t);return 1==n.length&&n[0][2]?sn(n[0][0],n[0][1]):function(r){return r===t||ht(r,t,n)}}function wt(t,n){return un(t)&&fn(n)?sn(yn(t),n):function(r){var e=Ln(r,t);return e===Vn&&e===n?In(r,t):st(n,e,tr|nr)}}function mt(t){return function(n){return ot(n,t)}}function Ot(t,n){return pu(_n(t,n,Bn),t+"")}function At(t,n,r,e){if(!Sn(t))return t;n=xt(n,t);for(var u=-1,o=n.length,i=o-1,c=t;null!=c&&++u<o;){var a=yn(n[u]),f=r;if(u!=i){var s=c[a];f=e?e(s,a,c):Vn,f===Vn&&(f=Sn(s)?s:rn(n[u+1])?[]:{});
20
- }Y(c,a,f),c=c[a]}return t}function zt(t){if(typeof t=="string")return t;if(vu(t))return o(t,zt)+"";if($n(t))return eu?eu.call(t):"";var n=t+"";return"0"==n&&1/t==-ur?"-0":n}function St(t,n,r){var o=-1,i=e,c=t.length,a=true,f=[],s=f;if(r)a=false,i=u;else if(c>=Hn){var l=n?null:au(t);if(l)return w(l);a=false,i=y,s=new W}else s=n?[]:f;t:for(;++o<c;){var p=t[o],h=n?n(p):p;if(p=r||0!==p?p:0,a&&h===h){for(var _=s.length;_--;)if(s[_]===h)continue t;n&&s.push(h),f.push(p)}else i(s,h,r)||(s!==f&&s.push(h),f.push(p));
21
- }return f}function xt(t,n){return vu(t)?t:un(t,n)?[t]:hu(kn(t))}function Et(t,n){if(n)return t.slice();var r=t.length,e=Ie?Ie(r):new t.constructor(r);return t.copy(e),e}function $t(t){var n=new t.constructor(t.byteLength);return new Le(n).set(new Le(t)),n}function kt(t,n){return new t.constructor(n?$t(t.buffer):t.buffer,t.byteOffset,t.byteLength)}function Lt(t){var n=new t.constructor(t.source,Yr.exec(t));return n.lastIndex=t.lastIndex,n}function It(t){return ru?Object(ru.call(t)):{}}function Ft(t,n){
22
- return new t.constructor(n?$t(t.buffer):t.buffer,t.byteOffset,t.length)}function Pt(t,n){var r=-1,e=t.length;for(n||(n=Array(e));++r<e;)n[r]=t[r];return n}function Ut(t,n,r,e){var u=!r;r||(r={});for(var o=-1,i=n.length;++o<i;){var c=n[o],a=e?e(r[c],t[c],c,r,t):Vn;a===Vn&&(a=t[c]),u?rt(r,c,a):Y(r,c,a)}return r}function Rt(t,n){return Ut(t,fu(t),n)}function Mt(t,n){return Ut(t,su(t),n)}function Tt(t){return Ot(function(n,r){var e=-1,u=r.length,o=u>1?r[u-1]:Vn,i=u>2?r[2]:Vn;for(o=t.length>3&&typeof o=="function"?(u--,
23
- o):Vn,i&&en(r[0],r[1],i)&&(o=u<3?Vn:o,u=1),n=Object(n);++e<u;){var c=r[e];c&&t(n,c,e,o)}return n})}function Bt(t,n){return function(r,e){if(null==r)return r;if(!mn(r))return t(r,e);for(var u=r.length,o=n?u:-1,i=Object(r);(n?o--:++o<u)&&e(i[o],o,i)!==false;);return r}}function Ct(t){return function(n,r,e){for(var u=-1,o=Object(n),i=e(n),c=i.length;c--;){var a=i[t?c:++u];if(r(o[a],a,o)===false)break}return n}}function Dt(t,n,r,e){return t===Vn||wn(t,we[r])&&!Ae.call(e,r)?n:t}function Wt(t,n,r,e,u,o){var i=r&tr,a=t.length,f=n.length;
24
- if(a!=f&&!(i&&f>a))return false;var s=o.get(t);if(s&&o.get(n))return s==n;var l=-1,p=true,h=r&nr?new W:Vn;for(o.set(t,n),o.set(n,t);++l<a;){var _=t[l],v=n[l];if(e)var b=i?e(v,_,l,n,t,o):e(_,v,l,t,n,o);if(b!==Vn){if(b)continue;p=false;break}if(h){if(!c(n,function(t,n){if(!y(h,n)&&(_===t||u(_,t,r,e,o)))return h.push(n)})){p=false;break}}else if(_!==v&&!u(_,v,r,e,o)){p=false;break}}return o.delete(t),o.delete(n),p}function qt(t,n,r,e,u,o,i){switch(r){case Er:if(t.byteLength!=n.byteLength||t.byteOffset!=n.byteOffset)return false;
25
- t=t.buffer,n=n.buffer;case xr:return!(t.byteLength!=n.byteLength||!o(new Le(t),new Le(n)));case fr:case sr:case yr:return wn(+t,+n);case pr:return t.name==n.name&&t.message==n.message;case wr:case Or:return t==n+"";case vr:var c=d;case mr:var a=e&tr;if(c||(c=w),t.size!=n.size&&!a)return false;var f=i.get(t);if(f)return f==n;e|=nr,i.set(t,n);var s=Wt(c(t),c(n),e,u,o,i);return i.delete(t),s;case Ar:if(ru)return ru.call(t)==ru.call(n)}return false}function Nt(t,n,r,e,u,o){var i=r&tr,c=Vt(t),a=c.length;if(a!=Vt(n).length&&!i)return false;
26
- for(var f=a;f--;){var s=c[f];if(!(i?s in n:Ae.call(n,s)))return false}var l=o.get(t);if(l&&o.get(n))return l==n;var p=true;o.set(t,n),o.set(n,t);for(var h=i;++f<a;){s=c[f];var _=t[s],v=n[s];if(e)var y=i?e(v,_,s,n,t,o):e(_,v,s,t,n,o);if(!(y===Vn?_===v||u(_,v,r,e,o):y)){p=false;break}h||(h="constructor"==s)}if(p&&!h){var b=t.constructor,g=n.constructor;b!=g&&"constructor"in t&&"constructor"in n&&!(typeof b=="function"&&b instanceof b&&typeof g=="function"&&g instanceof g)&&(p=false)}return o.delete(t),o.delete(n),
27
- p}function Vt(t){return it(t,Fn,fu)}function Gt(t){return it(t,Pn,su)}function Ht(){var t=O.iteratee||Cn;return t=t===Cn?bt:t,arguments.length?t(arguments[0],arguments[1]):t}function Jt(t,n){var r=t.__data__;return on(n)?r[typeof n=="string"?"string":"hash"]:r.map}function Kt(t){for(var n=Fn(t),r=n.length;r--;){var e=n[r],u=t[e];n[r]=[e,u,fn(u)]}return n}function Qt(t,n){var r=g(t,n);return _t(r)?r:Vn}function Xt(t){var n=Ae.call(t,Me),r=t[Me];try{t[Me]=Vn;var e=true}catch(t){}var u=Se.call(t);return e&&(n?t[Me]=r:delete t[Me]),
28
- u}function Yt(t,n,r){n=xt(n,t);for(var e=-1,u=n.length,o=false;++e<u;){var i=yn(n[e]);if(!(o=null!=t&&r(t,i)))break;t=t[i]}return o||++e!=u?o:(u=null==t?0:t.length,!!u&&zn(u)&&rn(i,u)&&(vu(t)||_u(t)))}function Zt(t){var n=t.length,r=new t.constructor(n);return n&&"string"==typeof t[0]&&Ae.call(t,"index")&&(r.index=t.index,r.input=t.input),r}function tn(t){return typeof t.constructor!="function"||an(t)?{}:uu(Fe(t))}function nn(t,n,r){var e=t.constructor;switch(n){case xr:return $t(t);case fr:case sr:return new e(+t);
29
- case Er:return kt(t,r);case $r:case kr:case Lr:case Ir:case Fr:case Pr:case Ur:case Rr:case Mr:return Ft(t,r);case vr:return new e;case yr:case Or:return new e(t);case wr:return Lt(t);case mr:return new e;case Ar:return It(t)}}function rn(t,n){var r=typeof t;return n=null==n?or:n,!!n&&("number"==r||"symbol"!=r&&te.test(t))&&t>-1&&t%1==0&&t<n}function en(t,n,r){if(!Sn(r))return false;var e=typeof n;return!!("number"==e?mn(r)&&rn(n,r.length):"string"==e&&n in r)&&wn(r[n],t)}function un(t,n){if(vu(t))return false;
30
- var r=typeof t;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=t&&!$n(t))||(Hr.test(t)||!Gr.test(t)||null!=n&&t in Object(n))}function on(t){var n=typeof t;return"string"==n||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==t:null===t}function cn(t){return!!ze&&ze in t}function an(t){var n=t&&t.constructor;return t===(typeof n=="function"&&n.prototype||we)}function fn(t){return t===t&&!Sn(t)}function sn(t,n){return function(r){return null!=r&&(r[t]===n&&(n!==Vn||t in Object(r)))}}function ln(t){
31
- var n=jn(t,function(t){return r.size===Qn&&r.clear(),t}),r=n.cache;return n}function pn(t){var n=[];if(null!=t)for(var r in Object(t))n.push(r);return n}function hn(t){return Se.call(t)}function _n(n,r,e){return r=We(r===Vn?n.length-1:r,0),function(){for(var u=arguments,o=-1,i=We(u.length-r,0),c=Array(i);++o<i;)c[o]=u[r+o];o=-1;for(var a=Array(r+1);++o<r;)a[o]=u[o];return a[r]=e(c),t(n,this,a)}}function vn(t){var n=0,r=0;return function(){var e=qe(),u=er-(e-r);if(r=e,u>0){if(++n>=rr)return arguments[0];
32
- }else n=0;return t.apply(Vn,arguments)}}function yn(t){if(typeof t=="string"||$n(t))return t;var n=t+"";return"0"==n&&1/t==-ur?"-0":n}function bn(t){if(null!=t){try{return Oe.call(t)}catch(t){}try{return t+""}catch(t){}}return""}function gn(t){return t&&t.length?St(t):[]}function dn(t,r){return(vu(t)?n:ou)(t,Ht(r,3))}function jn(t,n){if(typeof t!="function"||null!=n&&typeof n!="function")throw new TypeError(Jn);var r=function(){var e=arguments,u=n?n.apply(this,e):e[0],o=r.cache;if(o.has(u))return o.get(u);
33
- var i=t.apply(this,e);return r.cache=o.set(u,i)||o,i};return r.cache=new(jn.Cache||R),r}function wn(t,n){return t===n||t!==t&&n!==n}function mn(t){return null!=t&&zn(t.length)&&!An(t)}function On(t){if(!xn(t))return false;var n=ct(t);return n==pr||n==lr||typeof t.message=="string"&&typeof t.name=="string"&&!En(t)}function An(t){if(!Sn(t))return false;var n=ct(t);return n==hr||n==_r||n==ar||n==jr}function zn(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=or}function Sn(t){var n=typeof t;return null!=t&&("object"==n||"function"==n);
34
- }function xn(t){return null!=t&&typeof t=="object"}function En(t){if(!xn(t)||ct(t)!=gr)return false;var n=Fe(t);if(null===n)return true;var r=Ae.call(n,"constructor")&&n.constructor;return typeof r=="function"&&r instanceof r&&Oe.call(r)==xe}function $n(t){return typeof t=="symbol"||xn(t)&&ct(t)==Ar}function kn(t){return null==t?"":zt(t)}function Ln(t,n,r){var e=null==t?Vn:ot(t,n);return e===Vn?r:e}function In(t,n){return null!=t&&Yt(t,n,at)}function Fn(t){return mn(t)?X(t):gt(t)}function Pn(t){return mn(t)?X(t,true):dt(t);
35
- }function Un(t,n,r){return null==t?t:At(t,n,r)}function Rn(t){return t=kn(t),t&&Wr.test(t)?t.replace(Dr,ge):t}function Mn(t,n,r){var e=O.templateSettings;r&&en(t,n,r)&&(n=Vn),t=kn(t),n=ju({},n,e,Dt);var u,o,i=ju({},n.imports,e.imports,Dt),c=Fn(i),a=v(i,c),f=0,s=n.interpolate||ne,l="__p+='",p="sourceURL"in n?"//# sourceURL="+n.sourceURL+"\n":"";t.replace(RegExp((n.escape||ne).source+"|"+s.source+"|"+(s===Vr?Xr:ne).source+"|"+(n.evaluate||ne).source+"|$","g"),function(n,r,e,i,c,a){return e||(e=i),l+=t.slice(f,a).replace(re,b),
36
- r&&(u=true,l+="'+__e("+r+")+'"),c&&(o=true,l+="';"+c+";\n__p+='"),e&&(l+="'+((__t=("+e+"))==null?'':__t)+'"),f=a+n.length,n}),l+="';";var h=n.variable;h||(l="with(obj){"+l+"}"),l=(o?l.replace(Tr,""):l).replace(Br,"$1").replace(Cr,"$1;"),l="function("+(h||"obj")+"){"+(h?"":"obj||(obj={});")+"var __t,__p=''"+(u?",__e=_.escape":"")+(o?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+l+"return __p}";var _=wu(function(){return Function(c,p+"return "+l).apply(Vn,a)});if(_.source=l,
37
- On(_))throw _;return _}function Tn(t){return function(){return t}}function Bn(t){return t}function Cn(t){return bt(typeof t=="function"?t:et(t,Xn))}function Dn(){}function Wn(t){return un(t)?l(yn(t)):mt(t)}function qn(){return[]}function Nn(){return false}var Vn,Gn="4.17.5",Hn=200,Jn="Expected a function",Kn="__lodash_hash_undefined__",Qn=500,Xn=1,Yn=2,Zn=4,tr=1,nr=2,rr=800,er=16,ur=1/0,or=9007199254740991,ir="[object Arguments]",cr="[object Array]",ar="[object AsyncFunction]",fr="[object Boolean]",sr="[object Date]",lr="[object DOMException]",pr="[object Error]",hr="[object Function]",_r="[object GeneratorFunction]",vr="[object Map]",yr="[object Number]",br="[object Null]",gr="[object Object]",dr="[object Promise]",jr="[object Proxy]",wr="[object RegExp]",mr="[object Set]",Or="[object String]",Ar="[object Symbol]",zr="[object Undefined]",Sr="[object WeakMap]",xr="[object ArrayBuffer]",Er="[object DataView]",$r="[object Float32Array]",kr="[object Float64Array]",Lr="[object Int8Array]",Ir="[object Int16Array]",Fr="[object Int32Array]",Pr="[object Uint8Array]",Ur="[object Uint8ClampedArray]",Rr="[object Uint16Array]",Mr="[object Uint32Array]",Tr=/\b__p\+='';/g,Br=/\b(__p\+=)''\+/g,Cr=/(__e\(.*?\)|\b__t\))\+'';/g,Dr=/[&<>"']/g,Wr=RegExp(Dr.source),qr=/<%-([\s\S]+?)%>/g,Nr=/<%([\s\S]+?)%>/g,Vr=/<%=([\s\S]+?)%>/g,Gr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Hr=/^\w*$/,Jr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Kr=/[\\^$.*+?()[\]{}|]/g,Qr=/\\(\\)?/g,Xr=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Yr=/\w*$/,Zr=/^\[object .+?Constructor\]$/,te=/^(?:0|[1-9]\d*)$/,ne=/($^)/,re=/['\n\r\u2028\u2029\\]/g,ee={};
38
- ee[$r]=ee[kr]=ee[Lr]=ee[Ir]=ee[Fr]=ee[Pr]=ee[Ur]=ee[Rr]=ee[Mr]=true,ee[ir]=ee[cr]=ee[xr]=ee[fr]=ee[Er]=ee[sr]=ee[pr]=ee[hr]=ee[vr]=ee[yr]=ee[gr]=ee[wr]=ee[mr]=ee[Or]=ee[Sr]=false;var ue={};ue[ir]=ue[cr]=ue[xr]=ue[Er]=ue[fr]=ue[sr]=ue[$r]=ue[kr]=ue[Lr]=ue[Ir]=ue[Fr]=ue[vr]=ue[yr]=ue[gr]=ue[wr]=ue[mr]=ue[Or]=ue[Ar]=ue[Pr]=ue[Ur]=ue[Rr]=ue[Mr]=true,ue[pr]=ue[hr]=ue[Sr]=false;var oe={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},ie={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"
39
- },ce=typeof global=="object"&&global&&global.Object===Object&&global,ae=typeof self=="object"&&self&&self.Object===Object&&self,fe=ce||ae||Function("return this")(),se=typeof exports=="object"&&exports&&!exports.nodeType&&exports,le=se&&typeof module=="object"&&module&&!module.nodeType&&module,pe=le&&le.exports===se,he=pe&&ce.process,_e=function(){try{return he&&he.binding&&he.binding("util")}catch(t){}}(),ve=_e&&_e.isMap,ye=_e&&_e.isSet,be=_e&&_e.isTypedArray,ge=p(oe),de=Array.prototype,je=Function.prototype,we=Object.prototype,me=fe["__core-js_shared__"],Oe=je.toString,Ae=we.hasOwnProperty,ze=function(){
40
- var t=/[^.]+$/.exec(me&&me.keys&&me.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}(),Se=we.toString,xe=Oe.call(Object),Ee=RegExp("^"+Oe.call(Ae).replace(Kr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),$e=pe?fe.Buffer:Vn,ke=fe.Symbol,Le=fe.Uint8Array,Ie=$e?$e.allocUnsafe:Vn,Fe=j(Object.getPrototypeOf,Object),Pe=Object.create,Ue=we.propertyIsEnumerable,Re=de.splice,Me=ke?ke.toStringTag:Vn,Te=function(){try{var t=Qt(Object,"defineProperty");return t({},"",{}),
41
- t}catch(t){}}(),Be=Object.getOwnPropertySymbols,Ce=$e?$e.isBuffer:Vn,De=j(Object.keys,Object),We=Math.max,qe=Date.now,Ne=Qt(fe,"DataView"),Ve=Qt(fe,"Map"),Ge=Qt(fe,"Promise"),He=Qt(fe,"Set"),Je=Qt(fe,"WeakMap"),Ke=Qt(Object,"create"),Qe=bn(Ne),Xe=bn(Ve),Ye=bn(Ge),Ze=bn(He),tu=bn(Je),nu=ke?ke.prototype:Vn,ru=nu?nu.valueOf:Vn,eu=nu?nu.toString:Vn,uu=function(){function t(){}return function(n){if(!Sn(n))return{};if(Pe)return Pe(n);t.prototype=n;var r=new t;return t.prototype=Vn,r}}();O.templateSettings={
42
- escape:qr,evaluate:Nr,interpolate:Vr,variable:"",imports:{_:O}},A.prototype.clear=z,A.prototype.delete=S,A.prototype.get=x,A.prototype.has=E,A.prototype.set=$,k.prototype.clear=L,k.prototype.delete=I,k.prototype.get=F,k.prototype.has=P,k.prototype.set=U,R.prototype.clear=M,R.prototype.delete=T,R.prototype.get=B,R.prototype.has=C,R.prototype.set=D,W.prototype.add=W.prototype.push=q,W.prototype.has=N,V.prototype.clear=G,V.prototype.delete=H,V.prototype.get=J,V.prototype.has=K,V.prototype.set=Q;var ou=Bt(ut),iu=Ct(),cu=Te?function(t,n){
43
- return Te(t,"toString",{configurable:true,enumerable:false,value:Tn(n),writable:true})}:Bn,au=He&&1/w(new He([,-0]))[1]==ur?function(t){return new He(t)}:Dn,fu=Be?function(t){return null==t?[]:(t=Object(t),r(Be(t),function(n){return Ue.call(t,n)}))}:qn,su=Be?function(t){for(var n=[];t;)i(n,fu(t)),t=Fe(t);return n}:qn,lu=ct;(Ne&&lu(new Ne(new ArrayBuffer(1)))!=Er||Ve&&lu(new Ve)!=vr||Ge&&lu(Ge.resolve())!=dr||He&&lu(new He)!=mr||Je&&lu(new Je)!=Sr)&&(lu=function(t){var n=ct(t),r=n==gr?t.constructor:Vn,e=r?bn(r):"";
44
- if(e)switch(e){case Qe:return Er;case Xe:return vr;case Ye:return dr;case Ze:return mr;case tu:return Sr}return n});var pu=vn(cu),hu=ln(function(t){var n=[];return 46===t.charCodeAt(0)&&n.push(""),t.replace(Jr,function(t,r,e,u){n.push(e?u.replace(Qr,"$1"):r||t)}),n});jn.Cache=R;var _u=ft(function(){return arguments}())?ft:function(t){return xn(t)&&Ae.call(t,"callee")&&!Ue.call(t,"callee")},vu=Array.isArray,yu=Ce||Nn,bu=ve?_(ve):pt,gu=ye?_(ye):vt,du=be?_(be):yt,ju=Tt(function(t,n,r,e){Ut(n,Pn(n),t,e);
45
- }),wu=Ot(function(n,r){try{return t(n,Vn,r)}catch(t){return On(t)?t:Error(t)}});O.assignInWith=ju,O.constant=Tn,O.iteratee=Cn,O.keys=Fn,O.keysIn=Pn,O.memoize=jn,O.property=Wn,O.set=Un,O.uniq=gn,O.extendWith=ju,O.attempt=wu,O.eq=wn,O.escape=Rn,O.forEach=dn,O.get=Ln,O.hasIn=In,O.identity=Bn,O.isArguments=_u,O.isArray=vu,O.isArrayLike=mn,O.isBuffer=yu,O.isError=On,O.isFunction=An,O.isLength=zn,O.isMap=bu,O.isObject=Sn,O.isObjectLike=xn,O.isPlainObject=En,O.isSet=gu,O.isSymbol=$n,O.isTypedArray=du,O.stubArray=qn,
1
+ /**
2
+ * @license
3
+ * Lodash (Custom Build) lodash.com/license | Underscore.js 1.8.3 underscorejs.org/LICENSE
4
+ * Build: `lodash include="set,get,template,uniq,each"`
5
+ */
6
+ ;(function(){function t(t,n,r){switch(r.length){case 0:return t.call(n);case 1:return t.call(n,r[0]);case 2:return t.call(n,r[0],r[1]);case 3:return t.call(n,r[0],r[1],r[2])}return t.apply(n,r)}function n(t,n){for(var r=-1,e=null==t?0:t.length;++r<e&&n(t[r],r,t)!==false;);return t}function r(t,n){for(var r=-1,e=null==t?0:t.length,u=0,o=[];++r<e;){var i=t[r];n(i,r,t)&&(o[u++]=i)}return o}function e(t,n){return!!(null==t?0:t.length)&&f(t,n,0)>-1}function u(t,n,r){for(var e=-1,u=null==t?0:t.length;++e<u;)if(r(n,t[e]))return true;
7
+ return false}function o(t,n){for(var r=-1,e=null==t?0:t.length,u=Array(e);++r<e;)u[r]=n(t[r],r,t);return u}function i(t,n){for(var r=-1,e=n.length,u=t.length;++r<e;)t[u+r]=n[r];return t}function c(t,n){for(var r=-1,e=null==t?0:t.length;++r<e;)if(n(t[r],r,t))return true;return false}function a(t,n,r,e){for(var u=t.length,o=r+(e?1:-1);e?o--:++o<u;)if(n(t[o],o,t))return o;return-1}function f(t,n,r){return n===n?m(t,n,r):a(t,s,r)}function s(t){return t!==t}function l(t){return function(n){return null==n?Vn:n[t];
8
+ }}function p(t){return function(n){return null==t?Vn:t[n]}}function h(t,n){for(var r=-1,e=Array(t);++r<t;)e[r]=n(r);return e}function _(t){return function(n){return t(n)}}function v(t,n){return o(n,function(n){return t[n]})}function y(t,n){return t.has(n)}function b(t){return"\\"+ie[t]}function g(t,n){return null==t?Vn:t[n]}function d(t){var n=-1,r=Array(t.size);return t.forEach(function(t,e){r[++n]=[e,t]}),r}function j(t,n){return function(r){return t(n(r))}}function w(t){var n=-1,r=Array(t.size);
9
+ return t.forEach(function(t){r[++n]=t}),r}function m(t,n,r){for(var e=r-1,u=t.length;++e<u;)if(t[e]===n)return e;return-1}function O(){}function A(t){var n=-1,r=null==t?0:t.length;for(this.clear();++n<r;){var e=t[n];this.set(e[0],e[1])}}function z(){this.__data__=Ke?Ke(null):{},this.size=0}function S(t){var n=this.has(t)&&delete this.__data__[t];return this.size-=n?1:0,n}function x(t){var n=this.__data__;if(Ke){var r=n[t];return r===Kn?Vn:r}return Ae.call(n,t)?n[t]:Vn}function E(t){var n=this.__data__;
10
+ return Ke?n[t]!==Vn:Ae.call(n,t)}function $(t,n){var r=this.__data__;return this.size+=this.has(t)?0:1,r[t]=Ke&&n===Vn?Kn:n,this}function k(t){var n=-1,r=null==t?0:t.length;for(this.clear();++n<r;){var e=t[n];this.set(e[0],e[1])}}function L(){this.__data__=[],this.size=0}function I(t){var n=this.__data__,r=Z(n,t);return!(r<0)&&(r==n.length-1?n.pop():Re.call(n,r,1),--this.size,true)}function F(t){var n=this.__data__,r=Z(n,t);return r<0?Vn:n[r][1]}function P(t){return Z(this.__data__,t)>-1}function U(t,n){
11
+ var r=this.__data__,e=Z(r,t);return e<0?(++this.size,r.push([t,n])):r[e][1]=n,this}function R(t){var n=-1,r=null==t?0:t.length;for(this.clear();++n<r;){var e=t[n];this.set(e[0],e[1])}}function M(){this.size=0,this.__data__={hash:new A,map:new(Ve||k),string:new A}}function T(t){var n=Jt(this,t).delete(t);return this.size-=n?1:0,n}function B(t){return Jt(this,t).get(t)}function C(t){return Jt(this,t).has(t)}function D(t,n){var r=Jt(this,t),e=r.size;return r.set(t,n),this.size+=r.size==e?0:1,this}function W(t){
12
+ var n=-1,r=null==t?0:t.length;for(this.__data__=new R;++n<r;)this.add(t[n])}function q(t){return this.__data__.set(t,Kn),this}function N(t){return this.__data__.has(t)}function V(t){this.size=(this.__data__=new k(t)).size}function G(){this.__data__=new k,this.size=0}function H(t){var n=this.__data__,r=n.delete(t);return this.size=n.size,r}function J(t){return this.__data__.get(t)}function K(t){return this.__data__.has(t)}function Q(t,n){var r=this.__data__;if(r instanceof k){var e=r.__data__;if(!Ve||e.length<Hn-1)return e.push([t,n]),
13
+ this.size=++r.size,this;r=this.__data__=new R(e)}return r.set(t,n),this.size=r.size,this}function X(t,n){var r=vu(t),e=!r&&_u(t),u=!r&&!e&&yu(t),o=!r&&!e&&!u&&du(t),i=r||e||u||o,c=i?h(t.length,String):[],a=c.length;for(var f in t)!n&&!Ae.call(t,f)||i&&("length"==f||u&&("offset"==f||"parent"==f)||o&&("buffer"==f||"byteLength"==f||"byteOffset"==f)||rn(f,a))||c.push(f);return c}function Y(t,n,r){var e=t[n];Ae.call(t,n)&&wn(e,r)&&(r!==Vn||n in t)||rt(t,n,r)}function Z(t,n){for(var r=t.length;r--;)if(wn(t[r][0],n))return r;
14
+ return-1}function tt(t,n){return t&&Ut(n,Fn(n),t)}function nt(t,n){return t&&Ut(n,Pn(n),t)}function rt(t,n,r){"__proto__"==n&&Te?Te(t,n,{configurable:true,enumerable:true,value:r,writable:true}):t[n]=r}function et(t,r,e,u,o,i){var c,a=r&Xn,f=r&Yn,s=r&Zn;if(e&&(c=o?e(t,u,o,i):e(t)),c!==Vn)return c;if(!Sn(t))return t;var l=vu(t);if(l){if(c=Zt(t),!a)return Pt(t,c)}else{var p=lu(t),h=p==hr||p==_r;if(yu(t))return Et(t,a);if(p==gr||p==ir||h&&!o){if(c=f||h?{}:tn(t),!a)return f?Mt(t,nt(c,t)):Rt(t,tt(c,t))}else{
15
+ if(!ue[p])return o?t:{};c=nn(t,p,a)}}i||(i=new V);var _=i.get(t);if(_)return _;if(i.set(t,c),gu(t))return t.forEach(function(n){c.add(et(n,r,e,n,t,i))}),c;if(bu(t))return t.forEach(function(n,u){c.set(u,et(n,r,e,u,t,i))}),c;var v=s?f?Gt:Vt:f?Pn:Fn,y=l?Vn:v(t);return n(y||t,function(n,u){y&&(u=n,n=t[u]),Y(c,u,et(n,r,e,u,t,i))}),c}function ut(t,n){return t&&iu(t,n,Fn)}function ot(t,n){n=xt(n,t);for(var r=0,e=n.length;null!=t&&r<e;)t=t[yn(n[r++])];return r&&r==e?t:Vn}function it(t,n,r){var e=n(t);return vu(t)?e:i(e,r(t));
16
+ }function ct(t){return null==t?t===Vn?zr:br:Me&&Me in Object(t)?Xt(t):hn(t)}function at(t,n){return null!=t&&n in Object(t)}function ft(t){return xn(t)&&ct(t)==ir}function st(t,n,r,e,u){return t===n||(null==t||null==n||!xn(t)&&!xn(n)?t!==t&&n!==n:lt(t,n,r,e,st,u))}function lt(t,n,r,e,u,o){var i=vu(t),c=vu(n),a=i?cr:lu(t),f=c?cr:lu(n);a=a==ir?gr:a,f=f==ir?gr:f;var s=a==gr,l=f==gr,p=a==f;if(p&&yu(t)){if(!yu(n))return false;i=true,s=false}if(p&&!s)return o||(o=new V),i||du(t)?Wt(t,n,r,e,u,o):qt(t,n,a,r,e,u,o);
17
+ if(!(r&tr)){var h=s&&Ae.call(t,"__wrapped__"),_=l&&Ae.call(n,"__wrapped__");if(h||_){var v=h?t.value():t,y=_?n.value():n;return o||(o=new V),u(v,y,r,e,o)}}return!!p&&(o||(o=new V),Nt(t,n,r,e,u,o))}function pt(t){return xn(t)&&lu(t)==vr}function ht(t,n,r,e){var u=r.length,o=u,i=!e;if(null==t)return!o;for(t=Object(t);u--;){var c=r[u];if(i&&c[2]?c[1]!==t[c[0]]:!(c[0]in t))return false}for(;++u<o;){c=r[u];var a=c[0],f=t[a],s=c[1];if(i&&c[2]){if(f===Vn&&!(a in t))return false}else{var l=new V;if(e)var p=e(f,s,a,t,n,l);
18
+ if(!(p===Vn?st(s,f,tr|nr,e,l):p))return false}}return true}function _t(t){return!(!Sn(t)||cn(t))&&(An(t)?Ee:Zr).test(bn(t))}function vt(t){return xn(t)&&lu(t)==mr}function yt(t){return xn(t)&&zn(t.length)&&!!ee[ct(t)]}function bt(t){return typeof t=="function"?t:null==t?Bn:typeof t=="object"?vu(t)?wt(t[0],t[1]):jt(t):Wn(t)}function gt(t){if(!an(t))return De(t);var n=[];for(var r in Object(t))Ae.call(t,r)&&"constructor"!=r&&n.push(r);return n}function dt(t){if(!Sn(t))return pn(t);var n=an(t),r=[];for(var e in t)("constructor"!=e||!n&&Ae.call(t,e))&&r.push(e);
19
+ return r}function jt(t){var n=Kt(t);return 1==n.length&&n[0][2]?sn(n[0][0],n[0][1]):function(r){return r===t||ht(r,t,n)}}function wt(t,n){return un(t)&&fn(n)?sn(yn(t),n):function(r){var e=Ln(r,t);return e===Vn&&e===n?In(r,t):st(n,e,tr|nr)}}function mt(t){return function(n){return ot(n,t)}}function Ot(t,n){return pu(_n(t,n,Bn),t+"")}function At(t,n,r,e){if(!Sn(t))return t;n=xt(n,t);for(var u=-1,o=n.length,i=o-1,c=t;null!=c&&++u<o;){var a=yn(n[u]),f=r;if(u!=i){var s=c[a];f=e?e(s,a,c):Vn,f===Vn&&(f=Sn(s)?s:rn(n[u+1])?[]:{});
20
+ }Y(c,a,f),c=c[a]}return t}function zt(t){if(typeof t=="string")return t;if(vu(t))return o(t,zt)+"";if($n(t))return eu?eu.call(t):"";var n=t+"";return"0"==n&&1/t==-ur?"-0":n}function St(t,n,r){var o=-1,i=e,c=t.length,a=true,f=[],s=f;if(r)a=false,i=u;else if(c>=Hn){var l=n?null:au(t);if(l)return w(l);a=false,i=y,s=new W}else s=n?[]:f;t:for(;++o<c;){var p=t[o],h=n?n(p):p;if(p=r||0!==p?p:0,a&&h===h){for(var _=s.length;_--;)if(s[_]===h)continue t;n&&s.push(h),f.push(p)}else i(s,h,r)||(s!==f&&s.push(h),f.push(p));
21
+ }return f}function xt(t,n){return vu(t)?t:un(t,n)?[t]:hu(kn(t))}function Et(t,n){if(n)return t.slice();var r=t.length,e=Ie?Ie(r):new t.constructor(r);return t.copy(e),e}function $t(t){var n=new t.constructor(t.byteLength);return new Le(n).set(new Le(t)),n}function kt(t,n){return new t.constructor(n?$t(t.buffer):t.buffer,t.byteOffset,t.byteLength)}function Lt(t){var n=new t.constructor(t.source,Yr.exec(t));return n.lastIndex=t.lastIndex,n}function It(t){return ru?Object(ru.call(t)):{}}function Ft(t,n){
22
+ return new t.constructor(n?$t(t.buffer):t.buffer,t.byteOffset,t.length)}function Pt(t,n){var r=-1,e=t.length;for(n||(n=Array(e));++r<e;)n[r]=t[r];return n}function Ut(t,n,r,e){var u=!r;r||(r={});for(var o=-1,i=n.length;++o<i;){var c=n[o],a=e?e(r[c],t[c],c,r,t):Vn;a===Vn&&(a=t[c]),u?rt(r,c,a):Y(r,c,a)}return r}function Rt(t,n){return Ut(t,fu(t),n)}function Mt(t,n){return Ut(t,su(t),n)}function Tt(t){return Ot(function(n,r){var e=-1,u=r.length,o=u>1?r[u-1]:Vn,i=u>2?r[2]:Vn;for(o=t.length>3&&typeof o=="function"?(u--,
23
+ o):Vn,i&&en(r[0],r[1],i)&&(o=u<3?Vn:o,u=1),n=Object(n);++e<u;){var c=r[e];c&&t(n,c,e,o)}return n})}function Bt(t,n){return function(r,e){if(null==r)return r;if(!mn(r))return t(r,e);for(var u=r.length,o=n?u:-1,i=Object(r);(n?o--:++o<u)&&e(i[o],o,i)!==false;);return r}}function Ct(t){return function(n,r,e){for(var u=-1,o=Object(n),i=e(n),c=i.length;c--;){var a=i[t?c:++u];if(r(o[a],a,o)===false)break}return n}}function Dt(t,n,r,e){return t===Vn||wn(t,we[r])&&!Ae.call(e,r)?n:t}function Wt(t,n,r,e,u,o){var i=r&tr,a=t.length,f=n.length;
24
+ if(a!=f&&!(i&&f>a))return false;var s=o.get(t);if(s&&o.get(n))return s==n;var l=-1,p=true,h=r&nr?new W:Vn;for(o.set(t,n),o.set(n,t);++l<a;){var _=t[l],v=n[l];if(e)var b=i?e(v,_,l,n,t,o):e(_,v,l,t,n,o);if(b!==Vn){if(b)continue;p=false;break}if(h){if(!c(n,function(t,n){if(!y(h,n)&&(_===t||u(_,t,r,e,o)))return h.push(n)})){p=false;break}}else if(_!==v&&!u(_,v,r,e,o)){p=false;break}}return o.delete(t),o.delete(n),p}function qt(t,n,r,e,u,o,i){switch(r){case Er:if(t.byteLength!=n.byteLength||t.byteOffset!=n.byteOffset)return false;
25
+ t=t.buffer,n=n.buffer;case xr:return!(t.byteLength!=n.byteLength||!o(new Le(t),new Le(n)));case fr:case sr:case yr:return wn(+t,+n);case pr:return t.name==n.name&&t.message==n.message;case wr:case Or:return t==n+"";case vr:var c=d;case mr:var a=e&tr;if(c||(c=w),t.size!=n.size&&!a)return false;var f=i.get(t);if(f)return f==n;e|=nr,i.set(t,n);var s=Wt(c(t),c(n),e,u,o,i);return i.delete(t),s;case Ar:if(ru)return ru.call(t)==ru.call(n)}return false}function Nt(t,n,r,e,u,o){var i=r&tr,c=Vt(t),a=c.length;if(a!=Vt(n).length&&!i)return false;
26
+ for(var f=a;f--;){var s=c[f];if(!(i?s in n:Ae.call(n,s)))return false}var l=o.get(t);if(l&&o.get(n))return l==n;var p=true;o.set(t,n),o.set(n,t);for(var h=i;++f<a;){s=c[f];var _=t[s],v=n[s];if(e)var y=i?e(v,_,s,n,t,o):e(_,v,s,t,n,o);if(!(y===Vn?_===v||u(_,v,r,e,o):y)){p=false;break}h||(h="constructor"==s)}if(p&&!h){var b=t.constructor,g=n.constructor;b!=g&&"constructor"in t&&"constructor"in n&&!(typeof b=="function"&&b instanceof b&&typeof g=="function"&&g instanceof g)&&(p=false)}return o.delete(t),o.delete(n),
27
+ p}function Vt(t){return it(t,Fn,fu)}function Gt(t){return it(t,Pn,su)}function Ht(){var t=O.iteratee||Cn;return t=t===Cn?bt:t,arguments.length?t(arguments[0],arguments[1]):t}function Jt(t,n){var r=t.__data__;return on(n)?r[typeof n=="string"?"string":"hash"]:r.map}function Kt(t){for(var n=Fn(t),r=n.length;r--;){var e=n[r],u=t[e];n[r]=[e,u,fn(u)]}return n}function Qt(t,n){var r=g(t,n);return _t(r)?r:Vn}function Xt(t){var n=Ae.call(t,Me),r=t[Me];try{t[Me]=Vn;var e=true}catch(t){}var u=Se.call(t);return e&&(n?t[Me]=r:delete t[Me]),
28
+ u}function Yt(t,n,r){n=xt(n,t);for(var e=-1,u=n.length,o=false;++e<u;){var i=yn(n[e]);if(!(o=null!=t&&r(t,i)))break;t=t[i]}return o||++e!=u?o:(u=null==t?0:t.length,!!u&&zn(u)&&rn(i,u)&&(vu(t)||_u(t)))}function Zt(t){var n=t.length,r=new t.constructor(n);return n&&"string"==typeof t[0]&&Ae.call(t,"index")&&(r.index=t.index,r.input=t.input),r}function tn(t){return typeof t.constructor!="function"||an(t)?{}:uu(Fe(t))}function nn(t,n,r){var e=t.constructor;switch(n){case xr:return $t(t);case fr:case sr:return new e(+t);
29
+ case Er:return kt(t,r);case $r:case kr:case Lr:case Ir:case Fr:case Pr:case Ur:case Rr:case Mr:return Ft(t,r);case vr:return new e;case yr:case Or:return new e(t);case wr:return Lt(t);case mr:return new e;case Ar:return It(t)}}function rn(t,n){var r=typeof t;return n=null==n?or:n,!!n&&("number"==r||"symbol"!=r&&te.test(t))&&t>-1&&t%1==0&&t<n}function en(t,n,r){if(!Sn(r))return false;var e=typeof n;return!!("number"==e?mn(r)&&rn(n,r.length):"string"==e&&n in r)&&wn(r[n],t)}function un(t,n){if(vu(t))return false;
30
+ var r=typeof t;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=t&&!$n(t))||(Hr.test(t)||!Gr.test(t)||null!=n&&t in Object(n))}function on(t){var n=typeof t;return"string"==n||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==t:null===t}function cn(t){return!!ze&&ze in t}function an(t){var n=t&&t.constructor;return t===(typeof n=="function"&&n.prototype||we)}function fn(t){return t===t&&!Sn(t)}function sn(t,n){return function(r){return null!=r&&(r[t]===n&&(n!==Vn||t in Object(r)))}}function ln(t){
31
+ var n=jn(t,function(t){return r.size===Qn&&r.clear(),t}),r=n.cache;return n}function pn(t){var n=[];if(null!=t)for(var r in Object(t))n.push(r);return n}function hn(t){return Se.call(t)}function _n(n,r,e){return r=We(r===Vn?n.length-1:r,0),function(){for(var u=arguments,o=-1,i=We(u.length-r,0),c=Array(i);++o<i;)c[o]=u[r+o];o=-1;for(var a=Array(r+1);++o<r;)a[o]=u[o];return a[r]=e(c),t(n,this,a)}}function vn(t){var n=0,r=0;return function(){var e=qe(),u=er-(e-r);if(r=e,u>0){if(++n>=rr)return arguments[0];
32
+ }else n=0;return t.apply(Vn,arguments)}}function yn(t){if(typeof t=="string"||$n(t))return t;var n=t+"";return"0"==n&&1/t==-ur?"-0":n}function bn(t){if(null!=t){try{return Oe.call(t)}catch(t){}try{return t+""}catch(t){}}return""}function gn(t){return t&&t.length?St(t):[]}function dn(t,r){return(vu(t)?n:ou)(t,Ht(r,3))}function jn(t,n){if(typeof t!="function"||null!=n&&typeof n!="function")throw new TypeError(Jn);var r=function(){var e=arguments,u=n?n.apply(this,e):e[0],o=r.cache;if(o.has(u))return o.get(u);
33
+ var i=t.apply(this,e);return r.cache=o.set(u,i)||o,i};return r.cache=new(jn.Cache||R),r}function wn(t,n){return t===n||t!==t&&n!==n}function mn(t){return null!=t&&zn(t.length)&&!An(t)}function On(t){if(!xn(t))return false;var n=ct(t);return n==pr||n==lr||typeof t.message=="string"&&typeof t.name=="string"&&!En(t)}function An(t){if(!Sn(t))return false;var n=ct(t);return n==hr||n==_r||n==ar||n==jr}function zn(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=or}function Sn(t){var n=typeof t;return null!=t&&("object"==n||"function"==n);
34
+ }function xn(t){return null!=t&&typeof t=="object"}function En(t){if(!xn(t)||ct(t)!=gr)return false;var n=Fe(t);if(null===n)return true;var r=Ae.call(n,"constructor")&&n.constructor;return typeof r=="function"&&r instanceof r&&Oe.call(r)==xe}function $n(t){return typeof t=="symbol"||xn(t)&&ct(t)==Ar}function kn(t){return null==t?"":zt(t)}function Ln(t,n,r){var e=null==t?Vn:ot(t,n);return e===Vn?r:e}function In(t,n){return null!=t&&Yt(t,n,at)}function Fn(t){return mn(t)?X(t):gt(t)}function Pn(t){return mn(t)?X(t,true):dt(t);
35
+ }function Un(t,n,r){return null==t?t:At(t,n,r)}function Rn(t){return t=kn(t),t&&Wr.test(t)?t.replace(Dr,ge):t}function Mn(t,n,r){var e=O.templateSettings;r&&en(t,n,r)&&(n=Vn),t=kn(t),n=ju({},n,e,Dt);var u,o,i=ju({},n.imports,e.imports,Dt),c=Fn(i),a=v(i,c),f=0,s=n.interpolate||ne,l="__p+='",p="sourceURL"in n?"//# sourceURL="+n.sourceURL+"\n":"";t.replace(RegExp((n.escape||ne).source+"|"+s.source+"|"+(s===Vr?Xr:ne).source+"|"+(n.evaluate||ne).source+"|$","g"),function(n,r,e,i,c,a){return e||(e=i),l+=t.slice(f,a).replace(re,b),
36
+ r&&(u=true,l+="'+__e("+r+")+'"),c&&(o=true,l+="';"+c+";\n__p+='"),e&&(l+="'+((__t=("+e+"))==null?'':__t)+'"),f=a+n.length,n}),l+="';";var h=n.variable;h||(l="with(obj){"+l+"}"),l=(o?l.replace(Tr,""):l).replace(Br,"$1").replace(Cr,"$1;"),l="function("+(h||"obj")+"){"+(h?"":"obj||(obj={});")+"var __t,__p=''"+(u?",__e=_.escape":"")+(o?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+l+"return __p}";var _=wu(function(){return Function(c,p+"return "+l).apply(Vn,a)});if(_.source=l,
37
+ On(_))throw _;return _}function Tn(t){return function(){return t}}function Bn(t){return t}function Cn(t){return bt(typeof t=="function"?t:et(t,Xn))}function Dn(){}function Wn(t){return un(t)?l(yn(t)):mt(t)}function qn(){return[]}function Nn(){return false}var Vn,Gn="4.17.5",Hn=200,Jn="Expected a function",Kn="__lodash_hash_undefined__",Qn=500,Xn=1,Yn=2,Zn=4,tr=1,nr=2,rr=800,er=16,ur=1/0,or=9007199254740991,ir="[object Arguments]",cr="[object Array]",ar="[object AsyncFunction]",fr="[object Boolean]",sr="[object Date]",lr="[object DOMException]",pr="[object Error]",hr="[object Function]",_r="[object GeneratorFunction]",vr="[object Map]",yr="[object Number]",br="[object Null]",gr="[object Object]",dr="[object Promise]",jr="[object Proxy]",wr="[object RegExp]",mr="[object Set]",Or="[object String]",Ar="[object Symbol]",zr="[object Undefined]",Sr="[object WeakMap]",xr="[object ArrayBuffer]",Er="[object DataView]",$r="[object Float32Array]",kr="[object Float64Array]",Lr="[object Int8Array]",Ir="[object Int16Array]",Fr="[object Int32Array]",Pr="[object Uint8Array]",Ur="[object Uint8ClampedArray]",Rr="[object Uint16Array]",Mr="[object Uint32Array]",Tr=/\b__p\+='';/g,Br=/\b(__p\+=)''\+/g,Cr=/(__e\(.*?\)|\b__t\))\+'';/g,Dr=/[&<>"']/g,Wr=RegExp(Dr.source),qr=/<%-([\s\S]+?)%>/g,Nr=/<%([\s\S]+?)%>/g,Vr=/<%=([\s\S]+?)%>/g,Gr=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Hr=/^\w*$/,Jr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Kr=/[\\^$.*+?()[\]{}|]/g,Qr=/\\(\\)?/g,Xr=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Yr=/\w*$/,Zr=/^\[object .+?Constructor\]$/,te=/^(?:0|[1-9]\d*)$/,ne=/($^)/,re=/['\n\r\u2028\u2029\\]/g,ee={};
38
+ ee[$r]=ee[kr]=ee[Lr]=ee[Ir]=ee[Fr]=ee[Pr]=ee[Ur]=ee[Rr]=ee[Mr]=true,ee[ir]=ee[cr]=ee[xr]=ee[fr]=ee[Er]=ee[sr]=ee[pr]=ee[hr]=ee[vr]=ee[yr]=ee[gr]=ee[wr]=ee[mr]=ee[Or]=ee[Sr]=false;var ue={};ue[ir]=ue[cr]=ue[xr]=ue[Er]=ue[fr]=ue[sr]=ue[$r]=ue[kr]=ue[Lr]=ue[Ir]=ue[Fr]=ue[vr]=ue[yr]=ue[gr]=ue[wr]=ue[mr]=ue[Or]=ue[Ar]=ue[Pr]=ue[Ur]=ue[Rr]=ue[Mr]=true,ue[pr]=ue[hr]=ue[Sr]=false;var oe={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},ie={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"
39
+ },ce=typeof global=="object"&&global&&global.Object===Object&&global,ae=typeof self=="object"&&self&&self.Object===Object&&self,fe=ce||ae||Function("return this")(),se=typeof exports=="object"&&exports&&!exports.nodeType&&exports,le=se&&typeof module=="object"&&module&&!module.nodeType&&module,pe=le&&le.exports===se,he=pe&&ce.process,_e=function(){try{return he&&he.binding&&he.binding("util")}catch(t){}}(),ve=_e&&_e.isMap,ye=_e&&_e.isSet,be=_e&&_e.isTypedArray,ge=p(oe),de=Array.prototype,je=Function.prototype,we=Object.prototype,me=fe["__core-js_shared__"],Oe=je.toString,Ae=we.hasOwnProperty,ze=function(){
40
+ var t=/[^.]+$/.exec(me&&me.keys&&me.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}(),Se=we.toString,xe=Oe.call(Object),Ee=RegExp("^"+Oe.call(Ae).replace(Kr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),$e=pe?fe.Buffer:Vn,ke=fe.Symbol,Le=fe.Uint8Array,Ie=$e?$e.allocUnsafe:Vn,Fe=j(Object.getPrototypeOf,Object),Pe=Object.create,Ue=we.propertyIsEnumerable,Re=de.splice,Me=ke?ke.toStringTag:Vn,Te=function(){try{var t=Qt(Object,"defineProperty");return t({},"",{}),
41
+ t}catch(t){}}(),Be=Object.getOwnPropertySymbols,Ce=$e?$e.isBuffer:Vn,De=j(Object.keys,Object),We=Math.max,qe=Date.now,Ne=Qt(fe,"DataView"),Ve=Qt(fe,"Map"),Ge=Qt(fe,"Promise"),He=Qt(fe,"Set"),Je=Qt(fe,"WeakMap"),Ke=Qt(Object,"create"),Qe=bn(Ne),Xe=bn(Ve),Ye=bn(Ge),Ze=bn(He),tu=bn(Je),nu=ke?ke.prototype:Vn,ru=nu?nu.valueOf:Vn,eu=nu?nu.toString:Vn,uu=function(){function t(){}return function(n){if(!Sn(n))return{};if(Pe)return Pe(n);t.prototype=n;var r=new t;return t.prototype=Vn,r}}();O.templateSettings={
42
+ escape:qr,evaluate:Nr,interpolate:Vr,variable:"",imports:{_:O}},A.prototype.clear=z,A.prototype.delete=S,A.prototype.get=x,A.prototype.has=E,A.prototype.set=$,k.prototype.clear=L,k.prototype.delete=I,k.prototype.get=F,k.prototype.has=P,k.prototype.set=U,R.prototype.clear=M,R.prototype.delete=T,R.prototype.get=B,R.prototype.has=C,R.prototype.set=D,W.prototype.add=W.prototype.push=q,W.prototype.has=N,V.prototype.clear=G,V.prototype.delete=H,V.prototype.get=J,V.prototype.has=K,V.prototype.set=Q;var ou=Bt(ut),iu=Ct(),cu=Te?function(t,n){
43
+ return Te(t,"toString",{configurable:true,enumerable:false,value:Tn(n),writable:true})}:Bn,au=He&&1/w(new He([,-0]))[1]==ur?function(t){return new He(t)}:Dn,fu=Be?function(t){return null==t?[]:(t=Object(t),r(Be(t),function(n){return Ue.call(t,n)}))}:qn,su=Be?function(t){for(var n=[];t;)i(n,fu(t)),t=Fe(t);return n}:qn,lu=ct;(Ne&&lu(new Ne(new ArrayBuffer(1)))!=Er||Ve&&lu(new Ve)!=vr||Ge&&lu(Ge.resolve())!=dr||He&&lu(new He)!=mr||Je&&lu(new Je)!=Sr)&&(lu=function(t){var n=ct(t),r=n==gr?t.constructor:Vn,e=r?bn(r):"";
44
+ if(e)switch(e){case Qe:return Er;case Xe:return vr;case Ye:return dr;case Ze:return mr;case tu:return Sr}return n});var pu=vn(cu),hu=ln(function(t){var n=[];return 46===t.charCodeAt(0)&&n.push(""),t.replace(Jr,function(t,r,e,u){n.push(e?u.replace(Qr,"$1"):r||t)}),n});jn.Cache=R;var _u=ft(function(){return arguments}())?ft:function(t){return xn(t)&&Ae.call(t,"callee")&&!Ue.call(t,"callee")},vu=Array.isArray,yu=Ce||Nn,bu=ve?_(ve):pt,gu=ye?_(ye):vt,du=be?_(be):yt,ju=Tt(function(t,n,r,e){Ut(n,Pn(n),t,e);
45
+ }),wu=Ot(function(n,r){try{return t(n,Vn,r)}catch(t){return On(t)?t:Error(t)}});O.assignInWith=ju,O.constant=Tn,O.iteratee=Cn,O.keys=Fn,O.keysIn=Pn,O.memoize=jn,O.property=Wn,O.set=Un,O.uniq=gn,O.extendWith=ju,O.attempt=wu,O.eq=wn,O.escape=Rn,O.forEach=dn,O.get=Ln,O.hasIn=In,O.identity=Bn,O.isArguments=_u,O.isArray=vu,O.isArrayLike=mn,O.isBuffer=yu,O.isError=On,O.isFunction=An,O.isLength=zn,O.isMap=bu,O.isObject=Sn,O.isObjectLike=xn,O.isPlainObject=En,O.isSet=gu,O.isSymbol=$n,O.isTypedArray=du,O.stubArray=qn,
46
46
  O.stubFalse=Nn,O.noop=Dn,O.template=Mn,O.toString=kn,O.each=dn,O.VERSION=Gn,typeof define=="function"&&typeof define.amd=="object"&&define.amd?(fe._=O, define(function(){return O})):le?((le.exports=O)._=O,se._=O):fe._=O}).call(this);
@@ -0,0 +1,27 @@
1
+ import { defineConfig } from 'vitest/config';
2
+
3
+ export default defineConfig({
4
+ test: {
5
+ environment: 'jsdom',
6
+ globals: true,
7
+ setupFiles: ['./test/helpers/testHelper.js'],
8
+ coverage: {
9
+ provider: 'v8',
10
+ reporter: ['text', 'json', 'html', 'lcov'],
11
+ reportsDirectory: './coverage',
12
+ include: ['src/**/*.js'],
13
+ exclude: ['node_modules', 'test', 'dist'],
14
+ },
15
+ include: ['test/specs/**/*.spec.ts', 'test/specs/**/*.spec.js'],
16
+ // Increase timeout for async operations
17
+ testTimeout: 10000,
18
+ },
19
+ // Configure esbuild to handle modern JS syntax
20
+ esbuild: {
21
+ target: 'es2017',
22
+ },
23
+ // Optimize dependency pre-bundling to handle circular dependencies
24
+ optimizeDeps: {
25
+ force: true,
26
+ },
27
+ });
package/.eslintrc.js DELETED
@@ -1 +0,0 @@
1
- module.exports = require('./eslintrc.json');
@@ -1,161 +0,0 @@
1
- /*
2
- Copyright (c) 2008-2021 Pivotal Labs
3
-
4
- Permission is hereby granted, free of charge, to any person obtaining
5
- a copy of this software and associated documentation files (the
6
- "Software"), to deal in the Software without restriction, including
7
- without limitation the rights to use, copy, modify, merge, publish,
8
- distribute, sublicense, and/or sell copies of the Software, and to
9
- permit persons to whom the Software is furnished to do so, subject to
10
- the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be
13
- included in all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
19
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
20
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
- */
23
- /**
24
- Starting with version 2.0, this file "boots" Jasmine, performing all of the necessary initialization before executing the loaded environment and all of a project's specs. This file should be loaded after `jasmine.js` and `jasmine_html.js`, but before any project source files or spec files are loaded. Thus this file can also be used to customize Jasmine for a project.
25
-
26
- If a project is using Jasmine via the standalone distribution, this file can be customized directly. If a project is using Jasmine via the [Ruby gem][jasmine-gem], this file can be copied into the support directory via `jasmine copy_boot_js`. Other environments (e.g., Python) will have different mechanisms.
27
-
28
- The location of `boot.js` can be specified and/or overridden in `jasmine.yml`.
29
-
30
- [jasmine-gem]: http://github.com/pivotal/jasmine-gem
31
- */
32
-
33
- (function() {
34
- var jasmineRequire = window.jasmineRequire || require('./jasmine.js');
35
-
36
- /**
37
- * ## Require &amp; Instantiate
38
- *
39
- * Require Jasmine's core files. Specifically, this requires and attaches all of Jasmine's code to the `jasmine` reference.
40
- */
41
- var jasmine = jasmineRequire.core(jasmineRequire),
42
- global = jasmine.getGlobal();
43
- global.jasmine = jasmine;
44
-
45
- /**
46
- * Since this is being run in a browser and the results should populate to an HTML page, require the HTML-specific Jasmine code, injecting the same reference.
47
- */
48
- jasmineRequire.html(jasmine);
49
-
50
- /**
51
- * Create the Jasmine environment. This is used to run all specs in a project.
52
- */
53
- var env = jasmine.getEnv();
54
-
55
- /**
56
- * ## The Global Interface
57
- *
58
- * Build up the functions that will be exposed as the Jasmine public interface. A project can customize, rename or alias any of these functions as desired, provided the implementation remains unchanged.
59
- */
60
- var jasmineInterface = jasmineRequire.interface(jasmine, env);
61
-
62
- /**
63
- * Add all of the Jasmine global/public interface to the global scope, so a project can use the public interface directly. For example, calling `describe` in specs instead of `jasmine.getEnv().describe`.
64
- */
65
- extend(global, jasmineInterface);
66
-
67
- /**
68
- * ## Runner Parameters
69
- *
70
- * More browser specific code - wrap the query string in an object and to allow for getting/setting parameters from the runner user interface.
71
- */
72
-
73
- var queryString = new jasmine.QueryString({
74
- getWindowLocation: function() { return window.location; }
75
- });
76
-
77
- var filterSpecs = !!queryString.getParam("spec");
78
-
79
- var config = {
80
- failFast: queryString.getParam("failFast"),
81
- oneFailurePerSpec: queryString.getParam("oneFailurePerSpec"),
82
- hideDisabled: queryString.getParam("hideDisabled")
83
- };
84
-
85
- var random = queryString.getParam("random");
86
-
87
- if (random !== undefined && random !== "") {
88
- config.random = random;
89
- }
90
-
91
- var seed = queryString.getParam("seed");
92
- if (seed) {
93
- config.seed = seed;
94
- }
95
-
96
- /**
97
- * ## Reporters
98
- * The `HtmlReporter` builds all of the HTML UI for the runner page. This reporter paints the dots, stars, and x's for specs, as well as all spec names and all failures (if any).
99
- */
100
- var htmlReporter = new jasmine.HtmlReporter({
101
- env: env,
102
- navigateWithNewParam: function(key, value) { return queryString.navigateWithNewParam(key, value); },
103
- addToExistingQueryString: function(key, value) { return queryString.fullStringWithNewParam(key, value); },
104
- getContainer: function() { return document.body; },
105
- createElement: function() { return document.createElement.apply(document, arguments); },
106
- createTextNode: function() { return document.createTextNode.apply(document, arguments); },
107
- timer: new jasmine.Timer(),
108
- filterSpecs: filterSpecs
109
- });
110
-
111
- /**
112
- * The `jsApiReporter` also receives spec results, and is used by any environment that needs to extract the results from JavaScript.
113
- */
114
- env.addReporter(jasmineInterface.jsApiReporter);
115
- env.addReporter(htmlReporter);
116
-
117
- /**
118
- * Filter which specs will be run by matching the start of the full name against the `spec` query param.
119
- */
120
- var specFilter = new jasmine.HtmlSpecFilter({
121
- filterString: function() { return queryString.getParam("spec"); }
122
- });
123
-
124
- config.specFilter = function(spec) {
125
- return specFilter.matches(spec.getFullName());
126
- };
127
-
128
- env.configure(config);
129
-
130
- /**
131
- * Setting up timing functions to be able to be overridden. Certain browsers (Safari, IE 8, phantomjs) require this hack.
132
- */
133
- window.setTimeout = window.setTimeout;
134
- window.setInterval = window.setInterval;
135
- window.clearTimeout = window.clearTimeout;
136
- window.clearInterval = window.clearInterval;
137
-
138
- /**
139
- * ## Execution
140
- *
141
- * Replace the browser window's `onload`, ensure it's called, and then run all of the loaded specs. This includes initializing the `HtmlReporter` instance and then executing the loaded Jasmine environment. All of this will happen after all of the specs are loaded.
142
- */
143
- var currentWindowOnload = window.onload;
144
-
145
- window.onload = function() {
146
- if (currentWindowOnload) {
147
- currentWindowOnload();
148
- }
149
- htmlReporter.initialize();
150
- env.execute();
151
- };
152
-
153
- /**
154
- * Helper function for readability above.
155
- */
156
- function extend(destination, source) {
157
- for (var property in source) destination[property] = source[property];
158
- return destination;
159
- }
160
-
161
- }());