grainjs 1.0.2 → 1.1.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.
- package/README.md +23 -71
- package/dist/cjs/index.js +5 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/PriorityQueue.d.ts +1 -1
- package/dist/cjs/lib/_computed_queue.js +3 -3
- package/dist/cjs/lib/_computed_queue.js.map +1 -1
- package/dist/cjs/lib/binding.d.ts +11 -4
- package/dist/cjs/lib/binding.js +5 -5
- package/dist/cjs/lib/binding.js.map +1 -1
- package/dist/cjs/lib/computed.d.ts +49 -28
- package/dist/cjs/lib/computed.js +38 -52
- package/dist/cjs/lib/computed.js.map +1 -1
- package/dist/cjs/lib/dispose.d.ts +109 -96
- package/dist/cjs/lib/dispose.js +106 -80
- package/dist/cjs/lib/dispose.js.map +1 -1
- package/dist/cjs/lib/dom.d.ts +38 -18
- package/dist/cjs/lib/dom.js +44 -20
- package/dist/cjs/lib/dom.js.map +1 -1
- package/dist/cjs/lib/domComponent.d.ts +56 -48
- package/dist/cjs/lib/domComponent.js +66 -1
- package/dist/cjs/lib/domComponent.js.map +1 -1
- package/dist/cjs/lib/domComputed.d.ts +31 -21
- package/dist/cjs/lib/domComputed.js +14 -11
- package/dist/cjs/lib/domComputed.js.map +1 -1
- package/dist/cjs/lib/domDispose.d.ts +27 -12
- package/dist/cjs/lib/domDispose.js +26 -11
- package/dist/cjs/lib/domDispose.js.map +1 -1
- package/dist/cjs/lib/domForEach.d.ts +4 -3
- package/dist/cjs/lib/domForEach.js +10 -9
- package/dist/cjs/lib/domForEach.js.map +1 -1
- package/dist/cjs/lib/domImpl.d.ts +33 -10
- package/dist/cjs/lib/domImpl.js +28 -9
- package/dist/cjs/lib/domImpl.js.map +1 -1
- package/dist/cjs/lib/domMethods.d.ts +93 -47
- package/dist/cjs/lib/domMethods.js +88 -46
- package/dist/cjs/lib/domMethods.js.map +1 -1
- package/dist/cjs/lib/domevent.d.ts +87 -62
- package/dist/cjs/lib/domevent.js +84 -59
- package/dist/cjs/lib/domevent.js.map +1 -1
- package/dist/cjs/lib/emit.d.ts +62 -32
- package/dist/cjs/lib/emit.js +67 -53
- package/dist/cjs/lib/emit.js.map +1 -1
- package/dist/cjs/lib/kowrap.d.ts +6 -3
- package/dist/cjs/lib/kowrap.js +6 -3
- package/dist/cjs/lib/kowrap.js.map +1 -1
- package/dist/cjs/lib/obsArray.d.ts +91 -53
- package/dist/cjs/lib/obsArray.js +87 -55
- package/dist/cjs/lib/obsArray.js.map +1 -1
- package/dist/cjs/lib/observable.d.ts +25 -15
- package/dist/cjs/lib/observable.js +29 -18
- package/dist/cjs/lib/observable.js.map +1 -1
- package/dist/cjs/lib/pureComputed.d.ts +12 -15
- package/dist/cjs/lib/pureComputed.js +15 -18
- package/dist/cjs/lib/pureComputed.js.map +1 -1
- package/dist/cjs/lib/styled.d.ts +78 -61
- package/dist/cjs/lib/styled.js +26 -79
- package/dist/cjs/lib/styled.js.map +1 -1
- package/dist/cjs/lib/subscribe.d.ts +41 -37
- package/dist/cjs/lib/subscribe.js +31 -40
- package/dist/cjs/lib/subscribe.js.map +1 -1
- package/dist/cjs/lib/util.js +1 -0
- package/dist/cjs/lib/util.js.map +1 -1
- package/dist/cjs/lib/widgets/input.d.ts +3 -1
- package/dist/cjs/lib/widgets/input.js +6 -4
- package/dist/cjs/lib/widgets/input.js.map +1 -1
- package/dist/cjs/lib/widgets/select.d.ts +4 -2
- package/dist/cjs/lib/widgets/select.js +7 -5
- package/dist/cjs/lib/widgets/select.js.map +1 -1
- package/dist/esm/lib/_computed_queue.js +3 -3
- package/dist/esm/lib/_computed_queue.js.map +1 -1
- package/dist/esm/lib/binding.js +2 -2
- package/dist/esm/lib/binding.js.map +1 -1
- package/dist/esm/lib/computed.js +36 -50
- package/dist/esm/lib/computed.js.map +1 -1
- package/dist/esm/lib/dispose.js +104 -78
- package/dist/esm/lib/dispose.js.map +1 -1
- package/dist/esm/lib/dom.js +38 -18
- package/dist/esm/lib/dom.js.map +1 -1
- package/dist/esm/lib/domComponent.js +65 -0
- package/dist/esm/lib/domComponent.js.map +1 -1
- package/dist/esm/lib/domComputed.js +10 -7
- package/dist/esm/lib/domComputed.js.map +1 -1
- package/dist/esm/lib/domDispose.js +26 -11
- package/dist/esm/lib/domDispose.js.map +1 -1
- package/dist/esm/lib/domForEach.js +3 -2
- package/dist/esm/lib/domForEach.js.map +1 -1
- package/dist/esm/lib/domImpl.js +26 -7
- package/dist/esm/lib/domImpl.js.map +1 -1
- package/dist/esm/lib/domMethods.js +77 -35
- package/dist/esm/lib/domMethods.js.map +1 -1
- package/dist/esm/lib/domevent.js +84 -59
- package/dist/esm/lib/domevent.js.map +1 -1
- package/dist/esm/lib/emit.js +67 -53
- package/dist/esm/lib/emit.js.map +1 -1
- package/dist/esm/lib/kowrap.js +5 -2
- package/dist/esm/lib/kowrap.js.map +1 -1
- package/dist/esm/lib/obsArray.js +82 -50
- package/dist/esm/lib/obsArray.js.map +1 -1
- package/dist/esm/lib/observable.js +26 -15
- package/dist/esm/lib/observable.js.map +1 -1
- package/dist/esm/lib/pureComputed.js +15 -18
- package/dist/esm/lib/pureComputed.js.map +1 -1
- package/dist/esm/lib/styled.js +24 -77
- package/dist/esm/lib/styled.js.map +1 -1
- package/dist/esm/lib/subscribe.js +27 -36
- package/dist/esm/lib/subscribe.js.map +1 -1
- package/dist/esm/lib/util.js +1 -0
- package/dist/esm/lib/util.js.map +1 -1
- package/dist/esm/lib/widgets/input.js +3 -1
- package/dist/esm/lib/widgets/input.js.map +1 -1
- package/dist/esm/lib/widgets/select.js +3 -1
- package/dist/esm/lib/widgets/select.js.map +1 -1
- package/dist/grain-full.debug.js +2146 -3062
- package/dist/grain-full.debug.js.map +7 -0
- package/dist/grain-full.min.js +6 -2
- package/dist/grain-full.min.js.map +7 -1
- package/lib/binding.ts +9 -2
- package/lib/computed.ts +56 -56
- package/lib/dispose.ts +110 -85
- package/lib/dom.ts +39 -20
- package/lib/domComponent.ts +66 -57
- package/lib/domComputed.ts +29 -19
- package/lib/domDispose.ts +28 -11
- package/lib/domForEach.ts +7 -3
- package/lib/domImpl.ts +30 -7
- package/lib/domMethods.ts +101 -46
- package/lib/domevent.ts +85 -60
- package/lib/emit.ts +64 -50
- package/lib/kowrap.ts +5 -2
- package/lib/obsArray.ts +89 -54
- package/lib/observable.ts +26 -15
- package/lib/pureComputed.ts +16 -22
- package/lib/styled.ts +85 -71
- package/lib/subscribe.ts +41 -45
- package/lib/util.ts +1 -0
- package/lib/widgets/input.ts +3 -1
- package/lib/widgets/select.ts +3 -1
- package/package.json +38 -27
package/dist/grain-full.min.js
CHANGED
|
@@ -1,2 +1,6 @@
|
|
|
1
|
-
!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).grainjs=e()}}(function(){return function(){return function e(t,s,n){function i(r,u){if(!s[r]){if(!t[r]){var l="function"==typeof require&&require;if(!u&&l)return l(r,!0);if(o)return o(r,!0);var d=new Error("Cannot find module '"+r+"'");throw d.code="MODULE_NOT_FOUND",d}var c=s[r]={exports:{}};t[r][0].call(c.exports,function(e){return i(t[r][1][e]||e)},c,c.exports,e,t,s,n)}return s[r].exports}for(var o="function"==typeof require&&require,r=0;r<n.length;r++)i(n[r]);return i}}()({1:[function(e,t,s){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,s,n){void 0===n&&(n=s),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,n){void 0===n&&(n=s),e[n]=t[s]}),i=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||n(t,e,s)};Object.defineProperty(s,"__esModule",{value:!0}),i(e("./lib/binding"),s),i(e("./lib/computed"),s),i(e("./lib/dispose"),s),i(e("./lib/dom"),s),i(e("./lib/emit"),s),i(e("./lib/kowrap"),s),i(e("./lib/obsArray"),s),i(e("./lib/observable"),s),i(e("./lib/pureComputed"),s),i(e("./lib/styled"),s),i(e("./lib/subscribe"),s),i(e("./lib/util"),s),i(e("./lib/widgets/input"),s),i(e("./lib/widgets/select"),s)},{"./lib/binding":4,"./lib/computed":6,"./lib/dispose":7,"./lib/dom":8,"./lib/emit":16,"./lib/kowrap":17,"./lib/obsArray":18,"./lib/observable":19,"./lib/pureComputed":20,"./lib/styled":21,"./lib/subscribe":22,"./lib/util":23,"./lib/widgets/input":24,"./lib/widgets/select":25}],2:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.PriorityQueue=void 0;s.PriorityQueue=class{constructor(e){this._isPrior=e,this._items=[]}get size(){return this._items.length}push(e){const t=this._items,s=this._isPrior;let n=this._items.length;for(;n>0;){const i=n-1>>1,o=t[i];if(s(o,e))break;t[n]=o,n=i}t[n]=e}peek(){return this._items[0]}pop(){if(this._items.length<=1)return this._items.pop();const e=this._items,t=this._isPrior,s=e[0],n=e.pop(),i=this._items.length;let o=0,r=1;for(;r<i;){const s=r+1,u=s<i&&t(e[s],e[r])?s:r;if(t(n,e[u]))break;e[o]=e[u],r=(o=u)+o+1}return e[o]=n,s}}},{}],3:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.bundleChanges=s.compute=s._getPriority=s.DepItem=void 0;const n=e("./PriorityQueue");class i{constructor(e,t){this._priority=0,this._enqueued=!1,this._creation=++r,this._callback=e,this._context=t}static isPrioritySmaller(e,t){return e._priority<t._priority||e._priority===t._priority&&e._creation<t._creation}useDep(e){const t=e?e._priority:0;t>=this._priority&&(this._priority=t+1)}recompute(){this._priority=0,this._callback.call(this._context)}enqueue(){this._enqueued||(this._enqueued=!0,o.push(this))}}s.DepItem=i;const o=new n.PriorityQueue(i.isPrioritySmaller);let r=0;const u=[];let l=0;function d(){if(0===l&&o.size>0){l++;try{do{const e=o.pop();u.push(e),e.recompute()}while(o.size>0)}finally{for(const e of u)e._enqueued=!1;u.length=0,l--}}}s._getPriority=function(e){const t=e._getDepItem();return t?t._priority:0},s.compute=d,s.bundleChanges=function(e){try{return l++,e()}finally{l--,d()}}},{"./PriorityQueue":2}],4:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.subscribeElem=s.subscribeBindable=void 0;const n=e("./computed"),i=e("./domDispose"),o=e("./observable"),r=e("./subscribe");function u(e,t){if("function"==typeof e){const s=e;if("function"==typeof s.peek){const e=s.subscribe(e=>t(e));return t(s.peek()),e}const i=n.computed(e);return i.addListener(e=>t(e)),t(i.get()),i}return e instanceof o.BaseObservable?r.subscribe(e,(e,s)=>t(s)):(t(e),null)}s.subscribeBindable=u,s.subscribeElem=function(e,t,s){i.autoDisposeElem(e,u(t,s))}},{"./computed":6,"./domDispose":11,"./observable":19,"./subscribe":22}],5:[function(e,t,s){"use strict";function n(e,t){e.DocumentFragment=t.DocumentFragment,e.Element=t.Element,e.Node=t.Node,e.document=t.document,e.window=t.window}Object.defineProperty(s,"__esModule",{value:!0}),s.popGlobals=s.pushGlobals=s.G=void 0;const i={};n(i,"undefined"!=typeof window?window:{}),s.G=Object.assign({},i);const o=[i];s.pushGlobals=function(e){o.push(e),n(s.G,e)},s.popGlobals=function(){o.length>1&&o.pop(),n(s.G,o[o.length-1])}},{}],6:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.computed=s.Computed=void 0;const n=e("./dispose"),i=e("./observable"),o=e("./subscribe");function r(){throw new Error("Can't write to non-writable computed")}class u extends i.Observable{constructor(e,t){super(void 0),this._callback=e,this._write=r,this._sub=new o.Subscription(this._read.bind(this),t,this)}static create(e,...t){const s=t.pop();return n.setDisposeOwner(e,new u(s,t))}_getDepItem(){return this._sub._getDepItem()}set(e){this._write(e)}onWrite(e){return this._write=e,this}dispose(){this._sub.dispose(),super.dispose()}_read(e,...t){super.set(this._callback(e,...t))}}s.Computed=u,s.computed=function(...e){const t=e.pop();return new u(t,e)}},{"./dispose":7,"./observable":19,"./subscribe":22}],7:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.setDisposeOwner=s.MultiHolder=s.Holder=s.Disposable=void 0;const n=e("./emit"),i={autoDispose(e){}};let o=i;class r{constructor(){this._disposalList=new c,o.autoDispose(this),o=i}static create(e,...t){const s=o,n=new u;try{return o=n,l(e,new this(...t))}catch(e){try{n.clear()}catch(e){console.error("Error disposing partially constructed %s:",this.name,e)}throw e}finally{n.release(),o=s}}autoDispose(e){return this.onDispose(e.dispose,e),e}onDispose(e,t){return this._disposalList.addListener(e,t)}wipeOnDispose(){this.onDispose(this._wipeOutObject,this)}isDisposed(){return null===this._disposalList}dispose(){const e=this._disposalList;e?(this._disposalList=null,e.callAndDispose(this)):console.error("Error disposing %s which is already disposed",d(this))}_wipeOutObject(){for(const e of Object.keys(this))this[e]=null}}s.Disposable=r;class u{constructor(){this._owned=null,this._disposalListener=void 0}static create(e){return l(e,new u)}autoDispose(e){return this.clear(),this._owned=e,e instanceof r&&(this._disposalListener=e.onDispose(this._onOutsideDispose,this)),e}release(){this._unlisten();const e=this._owned;return this._owned=null,e}clear(){this._unlisten();const e=this._owned;e&&(this._owned=null,e.dispose())}get(){return this._owned}isEmpty(){return!this._owned}dispose(){this.clear()}_unlisten(){const e=this._disposalListener;e&&(this._disposalListener=void 0,e.dispose())}_onOutsideDispose(){this._disposalListener=void 0,this._owned=null}}s.Holder=u;function l(e,t){return e&&e.autoDispose(t),t}function d(e){return e&&e.constructor&&e.constructor.name?e.constructor.name:""+e}s.MultiHolder=class extends r{},s.setDisposeOwner=l;class c extends n.LLink{constructor(){super()}addListener(e,t){const s=new a(e,t);return this._insertBefore(this._next,s),s}callAndDispose(e){try{a.callAll(this._next,this,e)}finally{this._disposeList()}}}class a extends n.LLink{constructor(e,t){super(),this.callback=e,this.context=t}static callAll(e,t,s){for(;e!==t;){const t=e;try{t.callback.call(t.context)}catch(e){console.error("While disposing %s, error disposing %s: %s",d(s),d(this),e)}e=t._next}}dispose(){this.isDisposed()||this._removeNode(this)}}},{"./emit":16}],8:[function(e,t,s){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,s,n){void 0===n&&(n=s),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[s]}})}:function(e,t,s,n){void 0===n&&(n=s),e[n]=t[s]}),i=this&&this.__exportStar||function(e,t){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(t,s)||n(t,e,s)};Object.defineProperty(s,"__esModule",{value:!0}),s.dom=void 0,i(e("./domImpl"),s),i(e("./domComponent"),s),i(e("./domComputed"),s),i(e("./domDispose"),s),i(e("./domForEach"),s),i(e("./domMethods"),s),i(e("./domevent"),s);const o=e("./domComponent"),r=e("./domComputed"),u=e("./domDispose"),l=e("./domForEach"),d=e("./domImpl"),c=e("./domMethods"),a=e("./domevent"),p=e("./domImpl");function h(e,...t){return p.dom(e,...t)}s.dom=h,function(e){e.svg=d.svg,e.frag=d.frag,e.update=d.update,e.find=d.find,e.findAll=d.findAll,e.domDispose=u.domDispose,e.onDisposeElem=u.onDisposeElem,e.onDispose=u.onDispose,e.autoDisposeElem=u.autoDisposeElem,e.autoDispose=u.autoDispose,e.attrsElem=c.attrsElem,e.attrs=c.attrs,e.attrElem=c.attrElem,e.attr=c.attr,e.boolAttrElem=c.boolAttrElem,e.boolAttr=c.boolAttr,e.textElem=c.textElem,e.text=c.text,e.styleElem=c.styleElem,e.style=c.style,e.propElem=c.propElem,e.prop=c.prop,e.showElem=c.showElem,e.show=c.show,e.hideElem=c.hideElem,e.hide=c.hide,e.clsElem=c.clsElem,e.cls=c.cls,e.clsPrefix=c.clsPrefix,e.dataElem=c.dataElem,e.data=c.data,e.getData=c.getData,e.replaceContent=r.replaceContent,e.domComputed=r.domComputed,e.domComputedOwned=r.domComputedOwned,e.maybe=r.maybe,e.maybeOwned=r.maybeOwned,e.forEach=l.forEach,e.create=o.create,e.onElem=a.onElem,e.on=a.on,e.onMatchElem=a.onMatchElem,e.onMatch=a.onMatch,e.onKeyElem=a.onKeyElem,e.onKeyPress=a.onKeyPress,e.onKeyDown=a.onKeyDown}(h=s.dom||(s.dom={}))},{"./domComponent":9,"./domComputed":10,"./domDispose":11,"./domForEach":12,"./domImpl":13,"./domMethods":14,"./domevent":15}],9:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.create=void 0;const n=e("./domComputed");s.create=function(e,...t){return n.domComputedOwned(null,s=>{const n="create"in e?e.create(s,...t):e(s,...t);return n&&"object"==typeof n&&"buildDom"in n?n.buildDom():n})}},{"./domComputed":10}],10:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.maybeOwned=s.maybe=s.domComputedOwned=s.domComputed=s.replaceContent=void 0;const n=e("./binding"),i=e("./dispose"),o=e("./domDispose"),r=e("./domImpl"),u=e("./browserGlobals");function l(e,t,s){const n=e.parentNode;if(n){let i;for(let s=e.nextSibling;s&&s!==t;s=i)i=s.nextSibling,o.domDispose(s),n.removeChild(s);s&&n.insertBefore(s instanceof u.G.Node?s:r.frag(s),t)}}function d(e,t=function(e){return e}){const s=u.G.document.createComment("a"),i=u.G.document.createComment("b");return[s,i,o=>{n.subscribeElem(i,e,e=>l(s,i,t(e)))}]}function c(e,t){const s=i.Holder.create(null),[n,r,u]=d(e,e=>t(i.MultiHolder.create(s),e));return o.autoDisposeElem(r,s),[n,r,u]}s.replaceContent=l,s.domComputed=d,s.domComputedOwned=c,s.maybe=function(e,t){return d(e,e=>e?t(e):null)},s.maybeOwned=function(e,t){return c(e,(e,s)=>s?t(e,s):null)}},{"./binding":4,"./browserGlobals":5,"./dispose":7,"./domDispose":11,"./domImpl":13}],11:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.autoDispose=s.autoDisposeElem=s.onDispose=s.onDisposeElem=s.domDispose=s.domDisposeHooks=s._disposeNode=void 0;const n=new WeakMap;function i(e){let t=n.get(e);if(t){let s=e;do{n.delete(s),t(e),s=t,t=n.get(s)}while(t)}}function o(e,t){const s=n.get(e);n.set(e,t),s&&n.set(t,s)}function r(e,t){t&&o(e,()=>t.dispose())}s._disposeNode=i,s.domDisposeHooks={disposeNode:i,disposeRecursive:function(e){!function e(t,s){let n=t.firstChild;for(;n;)e(n,s),n=n.nextSibling;s(t)}(e,s.domDisposeHooks.disposeNode)}},s.domDispose=function(e){s.domDisposeHooks.disposeRecursive(e)},s.onDisposeElem=o,s.onDispose=function(e){return t=>o(t,e)},s.autoDisposeElem=r,s.autoDispose=function(e){if(e)return t=>r(t,e)}},{}],12:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.forEach=void 0;const n=e("./domComputed"),i=e("./domDispose"),o=e("./domImpl"),r=e("./obsArray"),u=e("./browserGlobals");s.forEach=function(e,t){const s=u.G.document.createComment("a"),l=u.G.document.createComment("b");return[s,l,u=>{if(Array.isArray(e))return void n.replaceContent(s,l,e.map(t));const d=r.computedArray(e,t);i.autoDisposeElem(l,d),d.addListener((e,t,r)=>{if(r){for(const e of r.deleted)e&&e.parentNode===u&&(i.domDispose(e),u.removeChild(e));if(r.numAdded>0){const t=r.start+r.numAdded;let s=l;for(let n=t;n<e.length;n++){const t=e[n];if(t&&t.parentNode===u){s=t;break}}const n=o.frag(e.slice(r.start,t));u.insertBefore(n,s)}}else n.replaceContent(s,l,e)}),n.replaceContent(s,l,d.get())}]}},{"./browserGlobals":5,"./domComputed":10,"./domDispose":11,"./domImpl":13,"./obsArray":18}],13:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.findAll=s.find=s.frag=s.update=s.svg=s.dom=void 0;const n=e("./domDispose"),i=e("./domMethods"),o=e("./browserGlobals");function r(e){return o.G.document.createElement(e)}function u(e){return o.G.document.createElementNS("http://www.w3.org/2000/svg",e)}function l(e,t){let s,n,i,o=t.indexOf(".");const r=t.indexOf("#");if(-1===o?o=t.length:i=t.substring(o+1).replace(/\./g," "),-1===r)s=t.substring(0,o);else{if(r>o)throw new Error(`ID must come before classes in dom("${t}")`);s=t.substring(0,r),n=t.substring(r+1,o)}const u=e(s);return n&&u.setAttribute("id",n),i&&u.setAttribute("class",i),u}function d(e,t){for(const s of t)a(e,s);return e}function c(e,t){try{return d(e,t)}catch(t){throw n.domDispose(e),t}}function a(e,t){if("function"==typeof t){const s=t(e);void 0!==s&&null!==s&&a(e,s)}else Array.isArray(t)?d(e,t):void 0===t||null===t||(t instanceof o.G.Node?e.appendChild(t):"object"==typeof t?i.attrsElem(e,t):e.appendChild(o.G.document.createTextNode(t)))}s.dom=function(e,...t){return c(l(r,e),t)},s.svg=function(e,...t){return c(l(u,e),t)},s.update=function(e,...t){return d(e,t)},s.frag=function(...e){return c(o.G.document.createDocumentFragment(),e)},s.find=function(e){return o.G.document.querySelector(e)},s.findAll=function(e){return o.G.document.querySelectorAll(e)}},{"./browserGlobals":5,"./domDispose":11,"./domMethods":14}],14:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.noTestId=s.makeTestId=s.getData=s.data=s.dataElem=s.clsPrefix=s.cls=s.clsElem=s.hide=s.hideElem=s.show=s.showElem=s.prop=s.propElem=s.style=s.styleElem=s.text=s.textElem=s.boolAttr=s.boolAttrElem=s.attr=s.attrElem=s.attrs=s.attrsElem=void 0;const n=e("./binding"),i=e("./domDispose"),o=e("./browserGlobals"),r=new WeakMap;function u(e,t){for(const s of Object.keys(t)){const n=t[s];null!=n&&!1!==n&&e.setAttribute(s,!0===n?"":n)}}function l(e,t,s){null===s||void 0===s?e.removeAttribute(t):e.setAttribute(t,s)}function d(e,t,s){l(e,t,s?"":null)}function c(e,t,s){e.style[t]=s}function a(e,t,s){e[t]=s}function p(e,t){e.style.display=t?"":"none"}function h(e,t){e.style.display=t?"none":""}function m(e,t,s=!0){e.classList.toggle(t,Boolean(s))}function _(e,t){return"string"!=typeof e?f("",e):t&&"boolean"!=typeof t?s=>n.subscribeElem(s,t,t=>m(s,e,t)):s=>m(s,e,t)}function b(e,t,s){return"string"!=typeof t?f(e,t):_(e+t,s)}function f(e,t){return s=>{let i=null;n.subscribeElem(s,t,t=>{i&&s.classList.remove(i),(i=t?e+t:null)&&s.classList.add(i)})}}function g(e,t,s){const n=r.get(e);n?n[t]=s:(i.onDisposeElem(e,()=>r.delete(e)),r.set(e,{[t]:s}))}s.attrsElem=u,s.attrs=function(e){return t=>u(t,e)},s.attrElem=l,s.attr=function(e,t){return s=>n.subscribeElem(s,t,t=>l(s,e,t))},s.boolAttrElem=d,s.boolAttr=function(e,t){return s=>n.subscribeElem(s,t,t=>d(s,e,t))},s.textElem=function(e,t){e.appendChild(o.G.document.createTextNode(t))},s.text=function(e){return t=>{const s=o.G.document.createTextNode("");n.subscribeElem(t,e,e=>{s.nodeValue=e}),t.appendChild(s)}},s.styleElem=c,s.style=function(e,t){return s=>n.subscribeElem(s,t,t=>c(s,e,t))},s.propElem=a,s.prop=function(e,t){return s=>n.subscribeElem(s,t,t=>a(s,e,t))},s.showElem=p,s.show=function(e){return t=>n.subscribeElem(t,e,e=>p(t,e))},s.hideElem=h,s.hide=function(e){return t=>n.subscribeElem(t,e,e=>h(t,e))},s.clsElem=m,s.cls=_,s.clsPrefix=b,s.dataElem=g,s.data=function(e,t){return s=>n.subscribeElem(s,t,t=>g(s,e,t))},s.getData=function(e,t){const s=r.get(e);return s&&s[t]},s.makeTestId=function(e){return b.bind(null,e)};s.noTestId=(e=>null)},{"./binding":4,"./browserGlobals":5,"./domDispose":11}],15:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.onKeyDown=s.onKeyPress=s.onKeyElem=s.onMatch=s.onMatchElem=s.on=s.onElem=void 0;class n{constructor(e,t,s,n,i){this.elem=e,this.eventType=t,this.callback=s,this.useCapture=n,this.selector=i,this.elem.addEventListener(this.eventType,this,this.useCapture)}handleEvent(e){(0,this.callback)(e,this.elem)}dispose(){this.elem.removeEventListener(this.eventType,this,this.useCapture)}}class i extends n{handleEvent(e){const t=function(e,t,s){for(let n=e;n&&n!==t;n=n.parentElement)if(n.matches(s))return n;return null}(e.target,this.elem,this.selector);if(t){(0,this.callback)(e,t)}}}function o(e,t,s,{useCapture:i=!1}={}){return new n(e,t,s,i)}function r(e,t,s){return e.tabIndex>=0||e.setAttribute("tabindex","-1"),o(e,t,(e,t)=>{const n=s[e.key],i=n||s[e.key+"$"];i&&(n&&(e.stopPropagation(),e.preventDefault()),i(e,t))})}s.onElem=o,s.on=function(e,t,{useCapture:s=!1}={}){return i=>{new n(i,e,t,s)}},s.onMatchElem=function(e,t,s,n,{useCapture:o=!1}={}){return new i(e,s,n,o,t)},s.onMatch=function(e,t,s,{useCapture:n=!1}={}){return o=>{new i(o,t,s,n,e)}},s.onKeyElem=r,s.onKeyPress=function(e){return t=>{r(t,"keypress",e)}},s.onKeyDown=function(e){return t=>{r(t,"keydown",e)}}},{}],16:[function(e,t,s){"use strict";function n(){}Object.defineProperty(s,"__esModule",{value:!0}),s.Listener=s.Emitter=s.LLink=void 0;class i{constructor(){this._next=null,this._prev=null,this._next=this,this._prev=this}isDisposed(){return!this._next}_insertBefore(e,t){const s=e._prev;s._next=t,e._prev=t,t._prev=s,t._next=e}_removeNode(e){e._prev&&(e._prev._next=e._next,e._next._prev=e._prev),e._prev=e._next=null}_disposeList(){let e=this,t=e._next;for(;null!==t;)e._next=e._prev=null,t=(e=t)._next}}s.LLink=i;s.Emitter=class extends i{constructor(){super(),this._changeCB=n,this._changeCBContext=void 0}addListener(e,t){return new o(this,e,t)}emit(...e){o.callAll(this._next,this,e)}setChangeCB(e,t){this._changeCB=e||n,this._changeCBContext=t}_triggerChangeCB(){this._changeCB.call(this._changeCBContext,this.hasListeners())}hasListeners(){return this._next!==this}dispose(){this._disposeList(),this._changeCB=n,this._changeCBContext=void 0}};class o extends i{constructor(e,t,s){super(),this.emitter=e,this.callback=t,this.context=s,this._insertBefore(e,this),e._triggerChangeCB()}static callAll(e,t,s){for(;e!==t;){const t=e;t.callback.call(t.context,...s),e=t._next}}dispose(){this.isDisposed()||(this._removeNode(this),this.emitter._triggerChangeCB())}}s.Listener=o},{}],17:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.setupKoDisposal=s.toKo=s.KoWrapObs=s.fromKo=void 0;const n=e("./domDispose"),i=e("./observable"),o=new WeakMap,r=new WeakMap;s.fromKo=function(e){return o.get(e)||o.set(e,new u(e)).get(e)};class u extends i.Observable{constructor(e){super(e.peek()),this._koObs=e,this._koSub=null,this.setListenerChangeCB(e=>{e?this._koSub||(this._value=this._koObs.peek(),this._koSub=this._koObs.subscribe(e=>this.setAndTrigger(e))):(this._koSub.dispose(),this._koSub=null)})}get(){return this._koObs.peek()}set(e){i.bundleChanges(()=>this._koObs(e))}dispose(){throw new Error("KoWrapObs should not be disposed")}}s.KoWrapObs=u,s.toKo=function(e,t){const s=r.get(t);if(s)return s;const n=e.observable(t.get());return r.set(t,n),t.addListener(e=>n(e)),n};let l=!1;s.setupKoDisposal=function(e){if(l)return;l=!0;const t=e.utils.domNodeDisposal,s=t.cleanExternalData,i=n.domDisposeHooks.disposeRecursive;function o(e){s(e),n.domDisposeHooks.disposeNode(e)}t.cleanExternalData=o,n.domDisposeHooks.disposeRecursive=function(n){i(n),t.cleanExternalData=s;try{e.cleanNode(n)}finally{t.cleanExternalData=o}}}},{"./domDispose":11,"./observable":19}],18:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.LiveIndex=s.makeLiveIndex=s.computedArray=s.ComputedArray=s.obsArray=s.MutableObsArray=s.ObsArray=void 0;const n=e("./dispose"),i=e("./observable"),o=e("./subscribe");class r extends i.BaseObservable{constructor(){super(...arguments),this._ownedItems=void 0}addListener(e,t){return super.addListener(e,t)}autoDispose(e){return this._ownedItems||(this._ownedItems=new Set),this._ownedItems.add(e),e}dispose(){if(this._ownedItems){for(const e of this.get())this._ownedItems.delete(e)&&e.dispose();this._ownedItems=void 0}super.dispose()}_setWithSplice(e,t){return this._setWithArg(e,t)}_disposeOwned(e){if(this._ownedItems)if(e)for(const t of e.deleted)this._ownedItems.delete(t)&&t.dispose();else{const e=this._ownedItems;this._ownedItems=new Set;for(const t of this.get())e.delete(t)&&this._ownedItems.add(t);for(const t of e)t.dispose()}}}s.ObsArray=r;class u extends r{push(...e){const t=this.get(),s=t.length,n=t.push(...e);return this._setWithSplice(t,{start:s,numAdded:e.length,deleted:[]}),n}pop(){const e=this.get();if(0===e.length)return;const t=e.pop();return this._setWithSplice(e,{start:e.length,numAdded:0,deleted:[t]}),t}unshift(...e){const t=this.get(),s=t.unshift(...e);return this._setWithSplice(t,{start:0,numAdded:e.length,deleted:[]}),s}shift(){const e=this.get();if(0===e.length)return;const t=e.shift();return this._setWithSplice(e,{start:0,numAdded:0,deleted:[t]}),t}splice(e,t=1/0,...s){const n=this.get(),i=n.length;e=Math.min(i,Math.max(0,e<0?i+e:e));const o=n.splice(e,t,...s);return this._setWithSplice(n,{start:e,numAdded:s.length,deleted:o}),o}}s.MutableObsArray=u,s.obsArray=function(e=[]){return new u(e)};class l extends r{constructor(e,t){var s;super([]),this._mapper=t,this._sub=(s=e,Array.isArray(s.get())?o.subscribe(e,t=>this._syncMap(e)):o.subscribe(e,(e,t)=>(e(t),this._syncMap(t))))}dispose(){this._unsync(),this._sub.dispose(),super.dispose()}_syncMap(e){this._source!==e?(this._unsync(),this._listener=e.addListener(this._recordChange,this),this._source=e,this._rebuild(e)):this._lastSplice?this._applySplice(e,this._lastSplice):this._rebuild(e),this._lastSplice=void 0}_unsync(){this._listener&&(this._listener.dispose(),this._listener=void 0,this._source=void 0)}_rebuild(e){this.set(e.get().map((e,t)=>this._mapper.call(void 0,e,t,this)))}_applySplice(e,t){const s=e.get(),n=[];for(let e=t.start,i=0;i<t.numAdded;e++,i++)n.push(this._mapper.call(void 0,s[e],e,this));const i=this.get(),o=i.splice(t.start,t.deleted.length,...n);this._setWithSplice(i,{start:t.start,numAdded:n.length,deleted:o})}_recordChange(e,t,s){s&&void 0===this._lastSplice?this._lastSplice=s:this._lastSplice=!1}}s.ComputedArray=l,s.computedArray=function(e,t){return new l(e,t)},s.makeLiveIndex=function(e,t,s=0){return n.setDisposeOwner(e,new d(t,s))};class d extends i.Observable{constructor(e,t=0){super(null),this._obsArray=e,this._isLive=!0,this.set(t),this._listener=e.addListener(this._onArrayChange,this)}set(e){const t=this._obsArray.get().length;super.set(0===t?null:Math.max(0,Math.min(t-1,e||0)))}setLive(e){this._isLive=e}dispose(){this._listener.dispose(),super.dispose()}_onArrayChange(e,t,s){const n=this.get();this.set(null!==n&&s?this._isLive&&n>=s.start+s.deleted.length?n+s.numAdded-s.deleted.length:this._isLive&&n>=s.start+s.numAdded?s.start+s.numAdded:n:0)}}s.LiveIndex=d},{"./dispose":7,"./observable":19,"./subscribe":22}],19:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.obsHolder=s.observable=s.Observable=s.BaseObservable=s.bundleChanges=void 0;const n=e("./_computed_queue"),i=e("./dispose"),o=e("./emit");var r=e("./_computed_queue");Object.defineProperty(s,"bundleChanges",{enumerable:!0,get:function(){return r.bundleChanges}});class u{constructor(e){this._onChange=new o.Emitter,this._value=e}get(){return this._value}set(e){e!==this._value&&this.setAndTrigger(e)}setAndTrigger(e){const t=this._value;this._value=e,this._onChange.emit(e,t),this._disposeOwned(),n.compute()}addListener(e,t){return this._onChange.addListener(e,t)}hasListeners(){return this._onChange.hasListeners()}setListenerChangeCB(e,t){this._onChange.setChangeCB(e,t)}_getDepItem(){return null}dispose(){this._disposeOwned(),this._onChange.dispose(),this._value=void 0}isDisposed(){return this._onChange.isDisposed()}_disposeOwned(e){}_setWithArg(e,t){const s=this._value;this._value=e,this._onChange.emit(e,s,t),this._disposeOwned(t),n.compute()}}s.BaseObservable=u;class l extends u{constructor(){super(...arguments),this._owned=void 0}static holder(e){const t=new l(e);return t._owned=e,t}static create(e,t){return i.setDisposeOwner(e,new l(t))}autoDispose(e){return this.setAndTrigger(e),this._owned=e,e}_disposeOwned(){this._owned&&(this._owned.dispose(),this._owned=void 0)}}s.Observable=l,s.observable=function(e){return new l(e)},s.obsHolder=function(e){return l.holder(e)}},{"./_computed_queue":3,"./dispose":7,"./emit":16}],20:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.pureComputed=s.PureComputed=void 0;const n=e("./observable"),i=e("./subscribe");function o(){throw new Error("Can't write to non-writable pureComputed")}function r(e){return"get"in e?e.get():e.peek()}const u=[];class l extends n.Observable{constructor(e,t){super(void 0),this._callback=e,this._write=o,this._dependencies=t.length>0?t:u,this._sub=null,this._inCall=!1,this.setListenerChangeCB(this._onListenerChange,this)}_getDepItem(){return this._activate(),this._sub._getDepItem()}get(){if(!this._sub&&!this._inCall){this._inCall=!0;try{const e=[r];for(let t=0,s=this._dependencies.length;t<s;t++)e[t+1]=this._dependencies[t].get();super.set(this._callback.apply(void 0,e))}finally{this._inCall=!1}}return super.get()}set(e){this._write(e)}onWrite(e){return this._write=e,this}dispose(){this._sub&&this._sub.dispose(),this._sub=!0,super.dispose()}_activate(){this._sub||(this._sub=new i.Subscription(this._read.bind(this),this._dependencies))}_onListenerChange(e){e?this._activate():this._sub&&(this._sub.dispose(),this._sub=null)}_read(e,...t){super.set(this._callback(e,...t))}}s.PureComputed=l,s.pureComputed=function(...e){const t=e.pop();return new l(t,e)}},{"./observable":19,"./subscribe":22}],21:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.keyframes=s.styled=void 0;const n=e("./browserGlobals"),i=e("./domImpl"),o=e("./domMethods");s.styled=function(e,t){const s=new u(t),n="string"==typeof e?(...t)=>s.addToElem(i.dom(e,...t)):(...t)=>s.addToElem(e(...t));return Object.assign(n,{className:s.className,cls:o.clsPrefix.bind(null,s.className)})},s.keyframes=function(e){return new l(e).className};const r={};class u{constructor(e){this._styles=e,this._mounted=!1,this.className=u._nextClassName(),u._unmounted.add(this)}static _nextClassName(){return`_grain${function(){const e=n.G.window||r;return e._grainNextStyleNum=(e._grainNextStyleNum||0)+1}()}_`}static _mountAll(){const e=Array.from(this._unmounted,e=>e._createRules()).join("\n\n");n.G.document.head.appendChild(i.dom("style",e));for(const e of this._unmounted)e._mounted=!0;this._unmounted.clear()}addToElem(e){return this._mounted||u._mountAll(),e.classList.add(this.className),e}_createRules(){return function(e,t){const s=t.search(/[^;]*\{/);return`& {${s<0?t:t.slice(0,s)}\n}\n${s<0?"":t.slice(s)}`.replace(/&/g,e)}("."+this.className,this._styles)}}u._unmounted=new Set;class l extends u{_createRules(){return`@keyframes ${this.className} {${this._styles}}`}}},{"./browserGlobals":5,"./domImpl":13,"./domMethods":14}],22:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.subscribe=s.Subscription=void 0;const n=e("./_computed_queue"),i=e("./kowrap"),o=[];class r{constructor(e,t,s){this._depItem=new n.DepItem(this._evaluate,this),this._dependencies=t.length>0?t:o,this._depListeners=t.length>0?t.map(e=>this._subscribeTo(e)):o,this._dynDeps=new Map,this._callback=e,this._useFunc=this._useDependency.bind(this),s&&(this._useFunc.owner=s),this._evaluate()}dispose(){this._callback=null;for(const e of this._depListeners)e.dispose();for(const e of this._dynDeps.values())e.dispose()}_getDepItem(){return this._depItem}_useDependency(e){const t="_getDepItem"in e?e:i.fromKo(e);let s=this._dynDeps.get(t);return s||(s=this._subscribeTo(t),this._dynDeps.set(t,s)),s._inUse=!0,this._depItem.useDep(t._getDepItem()),t.get()}_evaluate(){if(null!==this._callback)try{const e=[this._useFunc];for(let t=0,s=this._dependencies.length;t<s;t++)e[t+1]=this._dependencies[t].get(),this._depItem.useDep(this._dependencies[t]._getDepItem());return this._callback.apply(void 0,e)}finally{this._dynDeps.forEach((e,t)=>{e._inUse?e._inUse=!1:(this._dynDeps.delete(t),e.dispose())})}}_subscribeTo(e){return("_getDepItem"in e?e:i.fromKo(e)).addListener(this._enqueue,this)}_enqueue(){this._depItem.enqueue()}}s.Subscription=r,s.subscribe=function(...e){const t=e.pop();return new r(t,e)}},{"./_computed_queue":3,"./kowrap":17}],23:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.bindBU=s.bindUB=s.bindB=void 0,s.bindB=function(e,t){switch(t.length){case 0:return()=>e();case 1:return()=>e(t[0]);case 2:return()=>e(t[0],t[1]);case 3:return()=>e(t[0],t[1],t[2]);case 4:return()=>e(t[0],t[1],t[2],t[3]);case 5:return()=>e(t[0],t[1],t[2],t[3],t[4]);case 6:return()=>e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return()=>e(t[0],t[1],t[2],t[3],t[4],t[5],t[6]);case 8:return()=>e(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7]);default:return()=>e.apply(void 0,t)}},s.bindUB=function(e,t){switch(t.length){case 0:return t=>e(t);case 1:return s=>e(s,t[0]);case 2:return s=>e(s,t[0],t[1]);case 3:return s=>e(s,t[0],t[1],t[2]);case 4:return s=>e(s,t[0],t[1],t[2],t[3]);case 5:return s=>e(s,t[0],t[1],t[2],t[3],t[4]);case 6:return s=>e(s,t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return s=>e(s,t[0],t[1],t[2],t[3],t[4],t[5],t[6]);case 8:return s=>e(s,t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7]);default:return s=>e(s,...t)}},s.bindBU=function(e,t){switch(t.length){case 0:return t=>e(t);case 1:return s=>e(t[0],s);case 2:return s=>e(t[0],t[1],s);case 3:return s=>e(t[0],t[1],t[2],s);case 4:return s=>e(t[0],t[1],t[2],t[3],s);case 5:return s=>e(t[0],t[1],t[2],t[3],t[4],s);case 6:return s=>e(t[0],t[1],t[2],t[3],t[4],t[5],s);case 7:return s=>e(t[0],t[1],t[2],t[3],t[4],t[5],t[6],s);case 8:return s=>e(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],s);default:return s=>e(...t,s)}}},{}],24:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.input=void 0;const n=e("../../index");s.input=function(e,t,...s){const i=t.isValid;function o(t){n.bundleChanges(()=>{e.set(t.value),i&&i.set(t.validity.valid)})}return n.dom("input",...s,n.dom.prop("value",e),i?t=>n.dom.autoDisposeElem(t,n.subscribe(e,e=>i.set(t.checkValidity()))):null,t.onInput?n.dom.on("input",(e,t)=>o(t)):null,n.dom.on("change",(e,t)=>o(t)),n.dom.onKeyPress({Enter:(e,t)=>o(t)}))}},{"../../index":1}],25:[function(e,t,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.select=void 0;const n=e("../../index");function i(e){return Array.isArray(e)?e:e.get()}function o(e){return"string"==typeof e?e:e.value}s.select=function(e,t,s={}){const{defLabel:r=""}=s;return n.dom("select",n.dom("option",n.dom.hide(!0),r),n.dom.forEach(t,t=>{const s="string"==typeof t?{value:t,label:t}:t;return n.dom("option",{disabled:s.disabled,selected:s.value===e.get()},s.label)}),s=>n.dom.autoDisposeElem(s,n.subscribe(e,(e,n)=>{const r=i(t).findIndex(e=>o(e)===n);s.selectedIndex=r+1})),n.dom.on("change",(s,n)=>{const r=n.selectedIndex,u=i(t)[r-1];void 0!==u&&e.set(o(u))}))}},{"../../index":1}]},{},[1])(1)});
|
|
2
|
-
|
|
1
|
+
"use strict";var grainjs=(()=>{var l=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var ue=l(I=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});I.Listener=I.Emitter=I.LLink=void 0;function Le(){}var F=class{constructor(){this._next=null,this._prev=null,this._next=this,this._prev=this}isDisposed(){return!this._next}_insertBefore(e,s){let i=e._prev;i._next=s,e._prev=s,s._prev=i,s._next=e}_removeNode(e){e._prev&&(e._prev._next=e._next,e._next._prev=e._prev),e._prev=e._next=null}_disposeList(){let e=this,s=e._next;for(;s!==null;)e._next=e._prev=null,e=s,s=e._next}};I.LLink=F;var ke=class extends F{constructor(){super(...arguments),this._changeCB=Le,this._changeCBContext=void 0}addListener(e,s){return new z(this,e,s)}emit(...e){z.callAll(this._next,this,e)}setChangeCB(e,s){this._changeCB=e||Le,this._changeCBContext=s}_triggerChangeCB(){this._changeCB.call(this._changeCBContext,this.hasListeners())}hasListeners(){return this._next!==this}dispose(){this._disposeList(),this._changeCB=Le,this._changeCBContext=void 0}};I.Emitter=ke;var z=class extends F{static callAll(e,s,i){for(;e!==s;){let n=e;n.callback.call(n.context,...i),e=n._next}}constructor(e,s,i){super(),this.emitter=e,this.callback=s,this.context=i,this._insertBefore(e,this),e._triggerChangeCB()}dispose(){this.isDisposed()||(this._removeNode(this),this.emitter._triggerChangeCB())}};I.Listener=z});var N=l(D=>{"use strict";Object.defineProperty(D,"__esModule",{value:!0});D.setDisposeOwner=D.MultiHolder=D.Holder=D.Disposable=void 0;var ot=ue(),ut={autoDispose(t){}},Q=ut,J=class{static create(e,...s){let i=Q,n=new le;try{return Q=n,je(e,new this(...s))}catch(r){try{n.clear()}catch(u){console.error("Error disposing partially constructed %s:",this.name,u)}throw r}finally{n.release(),Q=i}}constructor(){this._disposalList=new Se,Q.autoDispose(this),Q=ut}autoDispose(e){return this.onDispose(e.dispose,e),e}onDispose(e,s){return this._disposalList.addListener(e,s)}wipeOnDispose(){this.onDispose(this._wipeOutObject,this)}isDisposed(){return this._disposalList===null}dispose(){let e=this._disposalList;e?(this._disposalList=null,e.callAndDispose(this)):console.error("Error disposing %s which is already disposed",Be(this))}_wipeOutObject(){for(let e of Object.keys(this))this[e]=null}};D.Disposable=J;var le=class t{constructor(){this._owned=null,this._disposalListener=void 0}static create(e){return je(e,new t)}autoDispose(e){return this.clear(),this._owned=e,e instanceof J&&(this._disposalListener=e.onDispose(this._onOutsideDispose,this)),e}release(){this._unlisten();let e=this._owned;return this._owned=null,e}clear(){this._unlisten();let e=this._owned;e&&(this._owned=null,e.dispose())}get(){return this._owned}isEmpty(){return!this._owned}dispose(){this.clear()}_unlisten(){let e=this._disposalListener;e&&(this._disposalListener=void 0,e.dispose())}_onOutsideDispose(){this._disposalListener=void 0,this._owned=null}};D.Holder=le;var Me=class extends J{};D.MultiHolder=Me;function je(t,e){return t&&t.autoDispose(e),e}D.setDisposeOwner=je;function Be(t){return t&&t.constructor&&t.constructor.name?t.constructor.name:""+t}var Se=class extends ot.LLink{constructor(){super()}addListener(e,s){let i=new ce(e,s);return this._insertBefore(this._next,i),i}callAndDispose(e){try{ce.callAll(this._next,this,e)}finally{this._disposeList()}}},ce=class extends ot.LLink{static callAll(e,s,i){for(;e!==s;){let n=e;try{n.callback.call(n.context)}catch(r){console.error("While disposing %s, error disposing %s: %s",Be(i),Be(this),r)}e=n._next}}constructor(e,s){super(),this.callback=e,this.context=s}dispose(){this.isDisposed()||this._removeNode(this)}}});var lt=l(de=>{"use strict";Object.defineProperty(de,"__esModule",{value:!0});de.PriorityQueue=void 0;var Ne=class{constructor(e){this._isPrior=e,this._items=[]}get size(){return this._items.length}push(e){let s=this._items,i=this._isPrior,n=this._items.length;for(;n>0;){let r=n-1>>1,u=s[r];if(i(u,e))break;s[n]=u,n=r}s[n]=e}peek(){return this._items[0]}pop(){if(this._items.length<=1)return this._items.pop();let e=this._items,s=this._isPrior,i=e[0],n=e.pop(),r=this._items.length,u=0,a=1;for(;a<r;){let m=a+1,g=m<r&&s(e[m],e[a])?m:a;if(s(n,e[g]))break;e[u]=e[g],u=g,a=u+u+1}return e[u]=n,i}};de.PriorityQueue=Ne});var he=l(E=>{"use strict";Object.defineProperty(E,"__esModule",{value:!0});E.bundleChanges=E.compute=E._getPriority=E.DepItem=void 0;var ts=lt(),pe=class{static isPrioritySmaller(e,s){return e._priority<s._priority||e._priority===s._priority&&e._creation<s._creation}constructor(e,s){this._priority=0,this._enqueued=!1,this._creation=++ss,this._callback=e,this._context=s}useDep(e){let s=e?e._priority:0;s>=this._priority&&(this._priority=s+1)}recompute(){this._priority=0,this._callback.call(this._context)}enqueue(){this._enqueued||(this._enqueued=!0,ae.push(this))}};E.DepItem=pe;var ae=new ts.PriorityQueue(pe.isPrioritySmaller),ss=0,Ge=[],V=0;function is(t){let e=t._getDepItem();return e?e._priority:0}E._getPriority=is;function ct(){if(V===0&&ae.size>0){V++;try{do{let t=ae.pop();Ge.push(t),t.recompute()}while(ae.size>0)}finally{for(let t of Ge)t._enqueued=!1;Ge.length=0,V--}}}E.compute=ct;function ns(t){try{return V++,t()}finally{V--,ct()}}E.bundleChanges=ns});var k=l(b=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});b.obsHolder=b.observable=b.Observable=b.BaseObservable=b.bundleChanges=void 0;var dt=he(),rs=N(),os=ue(),us=he();Object.defineProperty(b,"bundleChanges",{enumerable:!0,get:function(){return us.bundleChanges}});var _e=class{constructor(e){this._onChange=new os.Emitter,this._value=e}get(){return this._value}set(e){e!==this._value&&this.setAndTrigger(e)}setAndTrigger(e){let s=this._value;this._value=e,this._onChange.emit(e,s),this._disposeOwned(),(0,dt.compute)()}addListener(e,s){return this._onChange.addListener(e,s)}hasListeners(){return this._onChange.hasListeners()}setListenerChangeCB(e,s){this._onChange.setChangeCB(e,s)}_getDepItem(){return null}dispose(){this._disposeOwned(),this._onChange.dispose(),this._value=void 0}isDisposed(){return this._onChange.isDisposed()}_disposeOwned(e){}_setWithArg(e,s){let i=this._value;this._value=e,this._onChange.emit(e,i,s),this._disposeOwned(s),(0,dt.compute)()}};b.BaseObservable=_e;var X=class t extends _e{constructor(){super(...arguments),this._owned=void 0}static holder(e){let s=new t(e);return s._owned=e,s}static create(e,s){return(0,rs.setDisposeOwner)(e,new t(s))}autoDispose(e){return this.setAndTrigger(e),this._owned=e,e}_disposeOwned(){this._owned&&(this._owned.dispose(),this._owned=void 0)}};b.Observable=X;function ls(t){return new X(t)}b.observable=ls;function cs(t){return X.holder(t)}b.obsHolder=cs});var q=l(p=>{"use strict";Object.defineProperty(p,"__esModule",{value:!0});p.autoDispose=p.autoDisposeElem=p.onDispose=p.onDisposeElem=p.domDispose=p.domDisposeHooks=p._disposeNode=void 0;var G=new WeakMap;function at(t,e){let s=t.firstChild;for(;s;)at(s,e),s=s.nextSibling;e(t)}function pt(t){let e=G.get(t);if(e){let s=t;do G.delete(s),e(t),s=e,e=G.get(s);while(e)}}p._disposeNode=pt;function ds(t){at(t,p.domDisposeHooks.disposeNode)}p.domDisposeHooks={disposeNode:pt,disposeRecursive:ds};function as(t){p.domDisposeHooks.disposeRecursive(t)}p.domDispose=as;function Ke(t,e){let s=G.get(t);G.set(t,e),s&&G.set(e,s)}p.onDisposeElem=Ke;function ps(t){return e=>Ke(e,t)}p.onDispose=ps;function ht(t,e){e&&Ke(t,()=>e.dispose())}p.autoDisposeElem=ht;function hs(t){if(t)return e=>ht(e,t)}p.autoDispose=hs});var Te=l(C=>{"use strict";Object.defineProperty(C,"__esModule",{value:!0});C.setupKoDisposal=C.toKo=C.KoWrapObs=C.fromKo=void 0;var We=q(),_t=k(),ft=new WeakMap,mt=new WeakMap;function _s(t){return ft.get(t)||ft.set(t,new fe(t)).get(t)}C.fromKo=_s;var fe=class extends _t.Observable{constructor(e){super(e.peek()),this._koObs=e,this._koSub=null,this.setListenerChangeCB(s=>{s?this._koSub||(this._value=this._koObs.peek(),this._koSub=this._koObs.subscribe(i=>this.setAndTrigger(i))):(this._koSub.dispose(),this._koSub=null)})}get(){return this._koObs.peek()}set(e){(0,_t.bundleChanges)(()=>this._koObs(e))}dispose(){throw new Error("KoWrapObs should not be disposed")}};C.KoWrapObs=fe;function fs(t,e){let s=mt.get(e);if(s)return s;let i=t.observable(e.get());return mt.set(e,i),e.addListener(n=>i(n)),i}C.toKo=fs;var yt=!1;function ms(t){if(yt)return;yt=!0;let e=t.utils.domNodeDisposal,s=e.cleanExternalData,i=We.domDisposeHooks.disposeRecursive;function n(u){s(u),We.domDisposeHooks.disposeNode(u)}function r(u){i(u),e.cleanExternalData=s;try{t.cleanNode(u)}finally{e.cleanExternalData=n}}e.cleanExternalData=n,We.domDisposeHooks.disposeRecursive=r}C.setupKoDisposal=ms});var W=l(K=>{"use strict";Object.defineProperty(K,"__esModule",{value:!0});K.subscribe=K.Subscription=void 0;var ys=he(),wt=Te(),gt=[],me=class{constructor(e,s,i){this._depItem=new ys.DepItem(this._evaluate,this),this._dependencies=s.length>0?s:gt,this._depListeners=s.length>0?s.map(n=>this._subscribeTo(n)):gt,this._dynDeps=new Map,this._callback=e,this._useFunc=this._useDependency.bind(this),i&&(this._useFunc.owner=i),this._evaluate()}dispose(){this._callback=null;for(let e of this._depListeners)e.dispose();for(let e of this._dynDeps.values())e.dispose()}_getDepItem(){return this._depItem}_useDependency(e){let s="_getDepItem"in e?e:(0,wt.fromKo)(e),i=this._dynDeps.get(s);return i||(i=this._subscribeTo(s),this._dynDeps.set(s,i)),i._inUse=!0,this._depItem.useDep(s._getDepItem()),s.get()}_evaluate(){if(this._callback!==null)try{let e=[this._useFunc];for(let s=0,i=this._dependencies.length;s<i;s++)e[s+1]=this._dependencies[s].get(),this._depItem.useDep(this._dependencies[s]._getDepItem());return this._callback.apply(void 0,e)}finally{this._dynDeps.forEach((e,s)=>{e._inUse?e._inUse=!1:(this._dynDeps.delete(s),e.dispose())})}}_subscribeTo(e){return("_getDepItem"in e?e:(0,wt.fromKo)(e)).addListener(this._enqueue,this)}_enqueue(){this._depItem.enqueue()}};K.Subscription=me;function ws(...t){let e=t.pop();return new me(e,t)}K.subscribe=ws});var He=l(T=>{"use strict";Object.defineProperty(T,"__esModule",{value:!0});T.computed=T.Computed=void 0;var gs=N(),bs=k(),vs=W();function Ds(){throw new Error("Can't write to non-writable computed")}var ye=class t extends bs.Observable{static create(e,...s){let i=s.pop();return(0,gs.setDisposeOwner)(e,new t(i,s))}constructor(e,s){super(void 0),this._callback=e,this._write=Ds,this._sub=new vs.Subscription(this._read.bind(this),s,this)}_getDepItem(){return this._sub._getDepItem()}set(e){this._write(e)}onWrite(e){return this._write=e,this}dispose(){this._sub.dispose(),super.dispose()}_read(e,...s){super.set(this._callback(e,...s))}};T.Computed=ye;function Es(...t){let e=t.pop();return new ye(e,t)}T.computed=Es});var we=l(H=>{"use strict";Object.defineProperty(H,"__esModule",{value:!0});H.subscribeElem=H.subscribeBindable=void 0;var Cs=He(),xs=q(),Os=k(),qs=W();function bt(t,e){if(typeof t=="function"){let s=t;if(typeof s.peek=="function"){let n=s.subscribe(r=>e(r));return e(s.peek()),n}let i=(0,Cs.computed)(t);return i.addListener(n=>e(n)),e(i.get()),i}return t instanceof Os.BaseObservable?(0,qs.subscribe)(t,(s,i)=>e(i)):(e(t),null)}H.subscribeBindable=bt;function Is(t,e,s){(0,xs.autoDisposeElem)(t,bt(e,s))}H.subscribeElem=Is});var R=l(x=>{"use strict";Object.defineProperty(x,"__esModule",{value:!0});x.popGlobals=x.pushGlobals=x.G=void 0;function Re(t,e){t.DocumentFragment=e.DocumentFragment,t.Element=e.Element,t.Node=e.Node,t.document=e.document,t.window=e.window}var Ue={};Re(Ue,typeof window!="undefined"?window:{});x.G=Object.assign({},Ue);var Y=[Ue];function Ps(t){Y.push(t),Re(x.G,t)}x.pushGlobals=Ps;function As(){Y.length>1&&Y.pop(),Re(x.G,Y[Y.length-1])}x.popGlobals=As});var Z=l(o=>{"use strict";Object.defineProperty(o,"__esModule",{value:!0});o.noTestId=o.makeTestId=o.getData=o.data=o.dataElem=o.clsPrefix=o.cls=o.clsElem=o.hide=o.hideElem=o.show=o.showElem=o.prop=o.propElem=o.style=o.styleElem=o.text=o.textElem=o.boolAttr=o.boolAttrElem=o.attr=o.attrElem=o.attrs=o.attrsElem=void 0;var O=we(),Ls=q(),vt=R(),ge=new WeakMap;function Dt(t,e){for(let s of Object.keys(e)){let i=e[s];i!=null&&i!==!1&&t.setAttribute(s,i===!0?"":i)}}o.attrsElem=Dt;function ks(t){return e=>Dt(e,t)}o.attrs=ks;function Fe(t,e,s){s==null?t.removeAttribute(e):t.setAttribute(e,s)}o.attrElem=Fe;function Ms(t,e){return s=>(0,O.subscribeElem)(s,e,i=>Fe(s,t,i))}o.attr=Ms;function Et(t,e,s){Fe(t,e,s?"":null)}o.boolAttrElem=Et;function Bs(t,e){return s=>(0,O.subscribeElem)(s,e,i=>Et(s,t,i))}o.boolAttr=Bs;function Ss(t,e){t.appendChild(vt.G.document.createTextNode(e))}o.textElem=Ss;function js(t){return e=>{let s=vt.G.document.createTextNode("");(0,O.subscribeElem)(e,t,i=>{s.nodeValue=i}),e.appendChild(s)}}o.text=js;function Ct(t,e,s){t.style[e]=s}o.styleElem=Ct;function Ns(t,e){return s=>(0,O.subscribeElem)(s,e,i=>Ct(s,t,i))}o.style=Ns;function xt(t,e,s){t[e]=s}o.propElem=xt;function Gs(t,e){return s=>(0,O.subscribeElem)(s,e,i=>xt(s,t,i))}o.prop=Gs;function Ot(t,e){t.style.display=e?"":"none"}o.showElem=Ot;function Ks(t){return e=>(0,O.subscribeElem)(e,t,s=>Ot(e,s))}o.show=Ks;function qt(t,e){t.style.display=e?"none":""}o.hideElem=qt;function Ws(t){return e=>(0,O.subscribeElem)(e,t,s=>qt(e,s))}o.hide=Ws;function $e(t,e,s=!0){t.classList.toggle(e,!!s)}o.clsElem=$e;function It(t,e){return typeof t!="string"?At("",t):!e||typeof e=="boolean"?s=>$e(s,t,e):s=>(0,O.subscribeElem)(s,e,i=>$e(s,t,i))}o.cls=It;function Pt(t,e,s){return typeof e!="string"?At(t,e):It(t+e,s)}o.clsPrefix=Pt;function At(t,e){return s=>{let i=null;(0,O.subscribeElem)(s,e,n=>{i&&s.classList.remove(i),i=n?t+n:null,i&&s.classList.add(i)})}}function Lt(t,e,s){let i=ge.get(t);i?i[e]=s:((0,Ls.onDisposeElem)(t,()=>ge.delete(t)),ge.set(t,{[e]:s}))}o.dataElem=Lt;function Ts(t,e){return s=>(0,O.subscribeElem)(s,e,i=>Lt(s,t,i))}o.data=Ts;function Hs(t,e){let s=ge.get(t);return s&&s[e]}o.getData=Hs;function Rs(t){return Pt.bind(null,t)}o.makeTestId=Rs;var Us=t=>null;o.noTestId=Us});var B=l(y=>{"use strict";Object.defineProperty(y,"__esModule",{value:!0});y.findAll=y.find=y.frag=y.update=y.svg=y.dom=void 0;var $s=q(),Fs=Z(),M=R();function zs(t,...e){return Qe(kt(Js,t),e)}y.dom=zs;function Qs(t,...e){return Qe(kt(Vs,t),e)}y.svg=Qs;function Js(t){return M.G.document.createElement(t)}function Vs(t){return M.G.document.createElementNS("http://www.w3.org/2000/svg",t)}function kt(t,e){let s,i,n,r=e.indexOf("."),u=e.indexOf("#");if(r===-1?r=e.length:n=e.substring(r+1).replace(/\./g," "),u===-1)s=e.substring(0,r);else{if(u>r)throw new Error(`ID must come before classes in dom("${e}")`);s=e.substring(0,u),i=e.substring(u+1,r)}let a=t(s);return i&&a.setAttribute("id",i),n&&a.setAttribute("class",n),a}function Xs(t,...e){return ze(t,e)}y.update=Xs;function ze(t,e){for(let s of e)Mt(t,s);return t}function Qe(t,e){try{return ze(t,e)}catch(s){throw(0,$s.domDispose)(t),s}}function Mt(t,e){if(typeof e=="function"){let s=e(t);s!=null&&Mt(t,s)}else Array.isArray(e)?ze(t,e):e==null||(e instanceof M.G.Node?t.appendChild(e):typeof e=="object"?(0,Fs.attrsElem)(t,e):t.appendChild(M.G.document.createTextNode(e)))}function Ys(...t){let e=M.G.document.createDocumentFragment();return Qe(e,t)}y.frag=Ys;function Zs(t){return M.G.document.querySelector(t)}y.find=Zs;function ei(t){return M.G.document.querySelectorAll(t)}y.findAll=ei});var ee=l(v=>{"use strict";Object.defineProperty(v,"__esModule",{value:!0});v.maybeOwned=v.maybe=v.domComputedOwned=v.domComputed=v.replaceContent=void 0;var ti=we(),Bt=N(),St=q(),si=B(),Je=R();function jt(t,e,s){let i=t.parentNode;if(i){let n;for(let r=t.nextSibling;r&&r!==e;r=n)n=r.nextSibling,(0,St.domDispose)(r),i.removeChild(r);s&&i.insertBefore(s instanceof Je.G.Node?s:(0,si.frag)(s),e)}}v.replaceContent=jt;function Ve(t,e=ii){let s=Je.G.document.createComment("a"),i=Je.G.document.createComment("b");return[s,i,n=>{(0,ti.subscribeElem)(i,t,r=>jt(s,i,e(r)))}]}v.domComputed=Ve;function Nt(t,e){let s=Bt.Holder.create(null),[i,n,r]=Ve(t,u=>e(Bt.MultiHolder.create(s),u));return(0,St.autoDisposeElem)(n,s),[i,n,r]}v.domComputedOwned=Nt;function ii(t){return t}function ni(t,e){return Ve(t,s=>s?e(s):null)}v.maybe=ni;function ri(t,e){return Nt(t,(s,i)=>i?e(s,i):null)}v.maybeOwned=ri});var Xe=l(be=>{"use strict";Object.defineProperty(be,"__esModule",{value:!0});be.create=void 0;var oi=ee();function ui(t,...e){return(0,oi.domComputedOwned)(null,s=>{let i="create"in t?t.create(s,...e):t(s,...e);return i&&typeof i=="object"&&"buildDom"in i?i.buildDom():i})}be.create=ui});var Ye=l(_=>{"use strict";Object.defineProperty(_,"__esModule",{value:!0});_.LiveIndex=_.makeLiveIndex=_.computedArray=_.ComputedArray=_.obsArray=_.MutableObsArray=_.ObsArray=void 0;var li=N(),Kt=k(),Gt=W(),te=class extends Kt.BaseObservable{constructor(){super(...arguments),this._ownedItems=void 0}addListener(e,s){return super.addListener(e,s)}autoDispose(e){return this._ownedItems||(this._ownedItems=new Set),this._ownedItems.add(e),e}dispose(){if(this._ownedItems){for(let e of this.get())this._ownedItems.delete(e)&&e.dispose();this._ownedItems=void 0}super.dispose()}_setWithSplice(e,s){return this._setWithArg(e,s)}_disposeOwned(e){if(this._ownedItems)if(e)for(let s of e.deleted)this._ownedItems.delete(s)&&s.dispose();else{let s=this._ownedItems;this._ownedItems=new Set;for(let i of this.get())s.delete(i)&&this._ownedItems.add(i);for(let i of s)i.dispose()}}};_.ObsArray=te;var ve=class extends te{push(...e){let s=this.get(),i=s.length,n=s.push(...e);return this._setWithSplice(s,{start:i,numAdded:e.length,deleted:[]}),n}pop(){let e=this.get();if(e.length===0)return;let s=e.pop();return this._setWithSplice(e,{start:e.length,numAdded:0,deleted:[s]}),s}unshift(...e){let s=this.get(),i=s.unshift(...e);return this._setWithSplice(s,{start:0,numAdded:e.length,deleted:[]}),i}shift(){let e=this.get();if(e.length===0)return;let s=e.shift();return this._setWithSplice(e,{start:0,numAdded:0,deleted:[s]}),s}splice(e,s=1/0,...i){let n=this.get(),r=n.length;e=Math.min(r,Math.max(0,e<0?r+e:e));let u=n.splice(e,s,...i);return this._setWithSplice(n,{start:e,numAdded:i.length,deleted:u}),u}};_.MutableObsArray=ve;function ci(t=[]){return new ve(t)}_.obsArray=ci;function di(t){return Array.isArray(t.get())}var De=class extends te{constructor(e,s){super([]),this._mapper=s,this._sub=di(e)?(0,Gt.subscribe)(e,i=>this._syncMap(e)):(0,Gt.subscribe)(e,(i,n)=>(i(n),this._syncMap(n)))}dispose(){this._unsync(),this._sub.dispose(),super.dispose()}_syncMap(e){this._source!==e?(this._unsync(),this._listener=e.addListener(this._recordChange,this),this._source=e,this._rebuild(e)):this._lastSplice?this._applySplice(e,this._lastSplice):this._rebuild(e),this._lastSplice=void 0}_unsync(){this._listener&&(this._listener.dispose(),this._listener=void 0,this._source=void 0)}_rebuild(e){this.set(e.get().map((s,i)=>this._mapper.call(void 0,s,i,this)))}_applySplice(e,s){let i=e.get(),n=[];for(let a=s.start,m=0;m<s.numAdded;a++,m++)n.push(this._mapper.call(void 0,i[a],a,this));let r=this.get(),u=r.splice(s.start,s.deleted.length,...n);this._setWithSplice(r,{start:s.start,numAdded:n.length,deleted:u})}_recordChange(e,s,i){i&&this._lastSplice===void 0?this._lastSplice=i:this._lastSplice=!1}};_.ComputedArray=De;function ai(t,e){return new De(t,e)}_.computedArray=ai;function pi(t,e,s=0){return(0,li.setDisposeOwner)(t,new Ee(e,s))}_.makeLiveIndex=pi;var Ee=class extends Kt.Observable{constructor(e,s=0){super(null),this._obsArray=e,this._isLive=!0,this.set(s),this._listener=e.addListener(this._onArrayChange,this)}set(e){let s=this._obsArray.get().length;super.set(s===0?null:Math.max(0,Math.min(s-1,e||0)))}setLive(e){this._isLive=e}dispose(){this._listener.dispose(),super.dispose()}_onArrayChange(e,s,i){let n=this.get();this.set(n===null||!i?0:this._isLive&&n>=i.start+i.deleted.length?n+i.numAdded-i.deleted.length:this._isLive&&n>=i.start+i.numAdded?i.start+i.numAdded:n)}};_.LiveIndex=Ee});var et=l(Ce=>{"use strict";Object.defineProperty(Ce,"__esModule",{value:!0});Ce.forEach=void 0;var Ze=ee(),Wt=q(),hi=B(),_i=Ye(),Tt=R();function fi(t,e){let s=Tt.G.document.createComment("a"),i=Tt.G.document.createComment("b");return[s,i,n=>{if(Array.isArray(t)){(0,Ze.replaceContent)(s,i,t.map(e));return}let r=(0,_i.computedArray)(t,e);(0,Wt.autoDisposeElem)(i,r),r.addListener((u,a,m)=>{if(m){for(let g of m.deleted)g&&g.parentNode===n&&((0,Wt.domDispose)(g),n.removeChild(g));if(m.numAdded>0){let g=m.start+m.numAdded,rt=i;for(let Pe=g;Pe<u.length;Pe++){let Ae=u[Pe];if(Ae&&Ae.parentNode===n){rt=Ae;break}}let es=(0,hi.frag)(u.slice(m.start,g));n.insertBefore(es,rt)}}else(0,Ze.replaceContent)(s,i,u)}),(0,Ze.replaceContent)(s,i,r.get())}]}Ce.forEach=fi});var st=l(f=>{"use strict";Object.defineProperty(f,"__esModule",{value:!0});f.onKeyDown=f.onKeyPress=f.onKeyElem=f.onMatch=f.onMatchElem=f.on=f.onElem=void 0;function mi(t,e,s){for(let i=t;i&&i!==e;i=i.parentElement)if(i.matches(s))return i;return null}var se=class{constructor(e,s,i,n,r){this.elem=e,this.eventType=s,this.callback=i,this.useCapture=n,this.selector=r,this.elem.addEventListener(this.eventType,this,this.useCapture)}handleEvent(e){let s=this.callback;s(e,this.elem)}dispose(){this.elem.removeEventListener(this.eventType,this,this.useCapture)}},xe=class extends se{handleEvent(e){let s=mi(e.target,this.elem,this.selector);if(s){let i=this.callback;i(e,s)}}};function Ht(t,e,s,{useCapture:i=!1}={}){return new se(t,e,s,i)}f.onElem=Ht;function yi(t,e,{useCapture:s=!1}={}){return i=>{new se(i,t,e,s)}}f.on=yi;function wi(t,e,s,i,{useCapture:n=!1}={}){return new xe(t,s,i,n,e)}f.onMatchElem=wi;function gi(t,e,s,{useCapture:i=!1}={}){return n=>{new xe(n,e,s,i,t)}}f.onMatch=gi;function tt(t,e,s){return t.tabIndex>=0||t.setAttribute("tabindex","-1"),Ht(t,e,(i,n)=>{let r=s[i.key],u=r||s[i.key+"$"];u&&(r&&(i.stopPropagation(),i.preventDefault()),u(i,n))})}f.onKeyElem=tt;function bi(t){return e=>{tt(e,"keypress",t)}}f.onKeyPress=bi;function vi(t){return e=>{tt(e,"keydown",t)}}f.onKeyDown=vi});var Ut=l(h=>{"use strict";var Di=h&&h.__createBinding||(Object.create?(function(t,e,s,i){i===void 0&&(i=s);var n=Object.getOwnPropertyDescriptor(e,s);(!n||("get"in n?!e.__esModule:n.writable||n.configurable))&&(n={enumerable:!0,get:function(){return e[s]}}),Object.defineProperty(t,i,n)}):(function(t,e,s,i){i===void 0&&(i=s),t[i]=e[s]})),j=h&&h.__exportStar||function(t,e){for(var s in t)s!=="default"&&!Object.prototype.hasOwnProperty.call(e,s)&&Di(e,t,s)};Object.defineProperty(h,"__esModule",{value:!0});h.dom=void 0;j(B(),h);j(Xe(),h);j(ee(),h);j(q(),h);j(et(),h);j(Z(),h);j(st(),h);var Ei=Xe(),ie=ee(),ne=q(),Ci=et(),re=B(),c=Z(),S=st(),xi=B();function Rt(t,...e){return(0,xi.dom)(t,...e)}h.dom=Rt;(function(t){t.svg=re.svg,t.frag=re.frag,t.update=re.update,t.find=re.find,t.findAll=re.findAll,t.domDispose=ne.domDispose,t.onDisposeElem=ne.onDisposeElem,t.onDispose=ne.onDispose,t.autoDisposeElem=ne.autoDisposeElem,t.autoDispose=ne.autoDispose,t.attrsElem=c.attrsElem,t.attrs=c.attrs,t.attrElem=c.attrElem,t.attr=c.attr,t.boolAttrElem=c.boolAttrElem,t.boolAttr=c.boolAttr,t.textElem=c.textElem,t.text=c.text,t.styleElem=c.styleElem,t.style=c.style,t.propElem=c.propElem,t.prop=c.prop,t.showElem=c.showElem,t.show=c.show,t.hideElem=c.hideElem,t.hide=c.hide,t.clsElem=c.clsElem,t.cls=c.cls,t.clsPrefix=c.clsPrefix,t.dataElem=c.dataElem,t.data=c.data,t.getData=c.getData,t.replaceContent=ie.replaceContent,t.domComputed=ie.domComputed,t.domComputedOwned=ie.domComputedOwned,t.maybe=ie.maybe,t.maybeOwned=ie.maybeOwned,t.forEach=Ci.forEach,t.create=Ei.create,t.onElem=S.onElem,t.on=S.on,t.onMatchElem=S.onMatchElem,t.onMatch=S.onMatch,t.onKeyElem=S.onKeyElem,t.onKeyPress=S.onKeyPress,t.onKeyDown=S.onKeyDown})(Rt=h.dom||(h.dom={}))});var $t=l(U=>{"use strict";Object.defineProperty(U,"__esModule",{value:!0});U.pureComputed=U.PureComputed=void 0;var Oi=k(),qi=W();function Ii(){throw new Error("Can't write to non-writable pureComputed")}function Pi(t){return"get"in t?t.get():t.peek()}var Ai=[],Oe=class extends Oi.Observable{constructor(e,s){super(void 0),this._callback=e,this._write=Ii,this._dependencies=s.length>0?s:Ai,this._sub=null,this._inCall=!1,this.setListenerChangeCB(this._onListenerChange,this)}_getDepItem(){return this._activate(),this._sub._getDepItem()}get(){if(!this._sub&&!this._inCall){this._inCall=!0;try{let e=[Pi];for(let s=0,i=this._dependencies.length;s<i;s++)e[s+1]=this._dependencies[s].get();super.set(this._callback.apply(void 0,e))}finally{this._inCall=!1}}return super.get()}set(e){this._write(e)}onWrite(e){return this._write=e,this}dispose(){this._sub&&this._sub.dispose(),this._sub=!0,super.dispose()}_activate(){this._sub||(this._sub=new qi.Subscription(this._read.bind(this),this._dependencies))}_onListenerChange(e){e?this._activate():this._sub&&(this._sub.dispose(),this._sub=null)}_read(e,...s){super.set(this._callback(e,...s))}};U.PureComputed=Oe;function Li(...t){let e=t.pop();return new Oe(e,t)}U.pureComputed=Li});var Qt=l($=>{"use strict";Object.defineProperty($,"__esModule",{value:!0});$.keyframes=$.styled=void 0;var Ft=R(),zt=B(),ki=Z();function Mi(t,e){let s=new oe(e);return Object.assign(typeof t=="string"?(...n)=>s.addToElem((0,zt.dom)(t,...n)):(...n)=>s.addToElem(t(...n)),{className:s.className,cls:ki.clsPrefix.bind(null,s.className)})}$.styled=Mi;function Bi(t){return new it(t).className}$.keyframes=Bi;function Si(t,e){let s=e.search(/[^;]*\{/),i=s<0?e:e.slice(0,s),n=s<0?"":e.slice(s);return`& {${i}
|
|
2
|
+
}
|
|
3
|
+
${n}`.replace(/&/g,t)}var ji={};function Ni(){let t=Ft.G.window||ji;return t._grainNextStyleNum=(t._grainNextStyleNum||0)+1}var oe=class t{static _nextClassName(){return`_grain${Ni()}_`}static _mountAll(){let e=Array.from(this._unmounted,s=>s._createRules()).join(`
|
|
4
|
+
|
|
5
|
+
`);Ft.G.document.head.appendChild((0,zt.dom)("style",e));for(let s of this._unmounted)s._mounted=!0;this._unmounted.clear()}constructor(e){this._styles=e,this._mounted=!1,this.className=t._nextClassName(),t._unmounted.add(this)}addToElem(e){return this._mounted||t._mountAll(),e.classList.add(this.className),e}_createRules(){return Si("."+this.className,this._styles)}};oe._unmounted=new Set;var it=class extends oe{_createRules(){return`@keyframes ${this.className} {${this._styles}}`}}});var Jt=l(P=>{"use strict";Object.defineProperty(P,"__esModule",{value:!0});P.bindBU=P.bindUB=P.bindB=void 0;function Gi(t,e){switch(e.length){case 0:return()=>t();case 1:return()=>t(e[0]);case 2:return()=>t(e[0],e[1]);case 3:return()=>t(e[0],e[1],e[2]);case 4:return()=>t(e[0],e[1],e[2],e[3]);case 5:return()=>t(e[0],e[1],e[2],e[3],e[4]);case 6:return()=>t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return()=>t(e[0],e[1],e[2],e[3],e[4],e[5],e[6]);case 8:return()=>t(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]);default:return()=>t.apply(void 0,e)}}P.bindB=Gi;function Ki(t,e){switch(e.length){case 0:return s=>t(s);case 1:return s=>t(s,e[0]);case 2:return s=>t(s,e[0],e[1]);case 3:return s=>t(s,e[0],e[1],e[2]);case 4:return s=>t(s,e[0],e[1],e[2],e[3]);case 5:return s=>t(s,e[0],e[1],e[2],e[3],e[4]);case 6:return s=>t(s,e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return s=>t(s,e[0],e[1],e[2],e[3],e[4],e[5],e[6]);case 8:return s=>t(s,e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]);default:return s=>t(s,...e)}}P.bindUB=Ki;function Wi(t,e){switch(e.length){case 0:return s=>t(s);case 1:return s=>t(e[0],s);case 2:return s=>t(e[0],e[1],s);case 3:return s=>t(e[0],e[1],e[2],s);case 4:return s=>t(e[0],e[1],e[2],e[3],s);case 5:return s=>t(e[0],e[1],e[2],e[3],e[4],s);case 6:return s=>t(e[0],e[1],e[2],e[3],e[4],e[5],s);case 7:return s=>t(e[0],e[1],e[2],e[3],e[4],e[5],e[6],s);case 8:return s=>t(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],s);default:return s=>t(...e,s)}}P.bindBU=Wi});var Vt=l(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.input=void 0;var A=nt();function Ti(t,e,...s){let i=e.isValid;function n(r){(0,A.bundleChanges)(()=>{t.set(r.value),i&&i.set(r.validity.valid)})}return(0,A.dom)("input",...s,A.dom.prop("value",t),i?r=>A.dom.autoDisposeElem(r,(0,A.subscribe)(t,u=>i.set(r.checkValidity()))):null,e.onInput?A.dom.on("input",(r,u)=>n(u)):null,A.dom.on("change",(r,u)=>n(u)),A.dom.onKeyPress({Enter:(r,u)=>n(u)}))}qe.input=Ti});var Zt=l(Ie=>{"use strict";Object.defineProperty(Ie,"__esModule",{value:!0});Ie.select=void 0;var L=nt();function Xt(t){return Array.isArray(t)?t:t.get()}function Yt(t){return typeof t=="string"?t:t.value}function Hi(t,e,s={}){let{defLabel:i=""}=s;return(0,L.dom)("select",(0,L.dom)("option",L.dom.hide(!0),i),L.dom.forEach(e,n=>{let r=typeof n=="string"?{value:n,label:n}:n;return(0,L.dom)("option",{disabled:r.disabled,selected:r.value===t.get()},r.label)}),n=>L.dom.autoDisposeElem(n,(0,L.subscribe)(t,(r,u)=>{let m=Xt(e).findIndex(g=>Yt(g)===u);n.selectedIndex=m+1})),L.dom.on("change",(n,r)=>{let u=r.selectedIndex,a=Xt(e)[u-1];a!==void 0&&t.set(Yt(a))}))}Ie.select=Hi});var nt=l(d=>{var Ri=d&&d.__createBinding||(Object.create?(function(t,e,s,i){i===void 0&&(i=s);var n=Object.getOwnPropertyDescriptor(e,s);(!n||("get"in n?!e.__esModule:n.writable||n.configurable))&&(n={enumerable:!0,get:function(){return e[s]}}),Object.defineProperty(t,i,n)}):(function(t,e,s,i){i===void 0&&(i=s),t[i]=e[s]})),w=d&&d.__exportStar||function(t,e){for(var s in t)s!=="default"&&!Object.prototype.hasOwnProperty.call(e,s)&&Ri(e,t,s)};Object.defineProperty(d,"__esModule",{value:!0});w(we(),d);w(He(),d);w(N(),d);w(Ut(),d);w(ue(),d);w(Te(),d);w(Ye(),d);w(k(),d);w($t(),d);w(Qt(),d);w(W(),d);w(Jt(),d);w(Vt(),d);w(Zt(),d)});return nt();})();
|
|
6
|
+
//# sourceMappingURL=grain-full.min.js.map
|