logster 2.3.3 → 2.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/assets/javascript/client-app.js +36 -36
- data/assets/javascript/vendor.js +43 -45
- data/assets/stylesheets/client-app.css +1 -1
- data/client-app/app/components/patterns-list.js +6 -1
- data/client-app/app/styles/app.css +9 -0
- data/client-app/app/templates/components/patterns-list.hbs +8 -0
- data/client-app/app/templates/settings.hbs +1 -0
- data/client-app/package-lock.json +12 -12
- data/client-app/package.json +1 -1
- data/lib/logster/base_store.rb +10 -0
- data/lib/logster/middleware/viewer.rb +5 -1
- data/lib/logster/pattern.rb +1 -1
- data/lib/logster/redis_store.rb +15 -0
- data/lib/logster/suppression_pattern.rb +16 -1
- data/lib/logster/version.rb +1 -1
- data/test/logster/middleware/test_viewer.rb +31 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e0b7d537afb560db43baeed0d1de845c84df83b499fe6fd84f8a803133b9219d
|
4
|
+
data.tar.gz: 36d7b21799023ce9af8005a115d60809ea606d5170ee4a908ad3764ed9a49a59
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 865760766f7429c9610e66042f6d463bf3423a7f73f07c78eec36ee815fa20883870f1300a234be886731b5da6716a7ef50d6ceecc14b190b01e2385ae32e71f
|
7
|
+
data.tar.gz: 3f2ef09d8b21224b1d90af7a1775f8fbcbb7205e7b6315bba25e605d706c777c604361ec011b60a1814a8347eab7166c95e8f1324953564d27d8121303d60691
|
data/CHANGELOG.md
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
"use strict"
|
2
2
|
define("client-app/app",["exports","client-app/resolver","ember-load-initializers","client-app/config/environment"],function(e,t,n,a){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
3
3
|
var s=Ember.Application.extend({modulePrefix:a.default.modulePrefix,podModulePrefix:a.default.podModulePrefix,Resolver:t.default});(0,n.default)(s,a.default.modulePrefix)
|
4
|
-
var
|
5
|
-
e.default=
|
4
|
+
var r=s
|
5
|
+
e.default=r}),define("client-app/components/actions-menu",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
6
6
|
var t=Ember.Component.extend({showMenu:!1,tagName:"span",init:function(){this._super.apply(this,arguments),this.bindingFunction=this.bindingFunction.bind(this)},bindingFunction:function(e){var t=this.$()[0]
|
7
7
|
Em.$.contains(t,e.target)||t===e.target||this.set("showMenu",!1)},bindDocument:Ember.observer("showMenu",function(){var e=Em.$(document)
|
8
8
|
this.get("showMenu")?e.on("click",this.get("bindingFunction")):e.off("click",this.get("bindingFunction"))}),willDestroyElement:function(){this._super.apply(this,arguments),Em.$(document).off("click",this.get("bindingFunction"))},actions:{expandMenu:function(){this.toggleProperty("showMenu")},share:function(){this.share()}}})
|
@@ -18,25 +18,25 @@ var t=Ember.Component.extend({buttons:Ember.computed("currentMessage.{canSolve,p
|
|
18
18
|
return!t&&e&&n.push({klass:"solve",action:"solve",icon:"check-square-o",label:"Solve",danger:!0}),t?n.push({klass:"unprotect",action:"unprotect",icon:"unlock",label:"Unprotect"}):n.push({klass:"remove",action:"remove",icon:"trash-o",label:"Remove",danger:!0},{klass:"protect",action:"protect",icon:"lock",label:"Protect"}),n}),actions:{protect:function(){this.get("currentMessage").protect()},unprotect:function(){this.get("currentMessage").unprotect()},remove:function(){this.removeMessage(this.get("currentMessage"))},solve:function(){this.solveMessage(this.get("currentMessage"))},share:function(){window.location.pathname=this.get("currentMessage.shareUrl")}}})
|
19
19
|
e.default=t}),define("client-app/components/message-row",["exports"],function(e){var t,n
|
20
20
|
Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
21
|
-
var a=Ember.Component.extend({tagName:"div",classNameBindings:["model.rowClass",":message-row","model.selected:selected"],click:function(){this.selectedMessage(this.get("model"))},willInsertElement:function(){if(!t){var e=Em.$("#top-panel"),a=e.scrollTop(),s=e.height(),
|
22
|
-
n=
|
21
|
+
var a=Ember.Component.extend({tagName:"div",classNameBindings:["model.rowClass",":message-row","model.selected:selected"],click:function(){this.selectedMessage(this.get("model"))},willInsertElement:function(){if(!t){var e=Em.$("#top-panel"),a=e.scrollTop(),s=e.height(),r=e[0].scrollHeight
|
22
|
+
n=r-20<s+a,t=!0}},didInsertElement:function(){var e=Em.$("#top-panel")
|
23
23
|
Em.run.next(function(){t=!1,n&&(n=!1,e.scrollTop(e[0].scrollHeight-e.height()))})}})
|
24
24
|
e.default=a}),define("client-app/components/panel-resizer",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
25
25
|
var t=["touchmove","mousemove"],n=["touchend","mouseup"],a=["touchstart","mousedown"],s=Ember.Component.extend({classNames:["divider"],divideView:function(e,t){var n=t||Em.$(window),a=n.height(),s=n.height()-e
|
26
26
|
e<100||e+170>a||(this.divider.css("bottom",s-5),this.events.trigger("panelResized",s))},didInsertElement:function(){var e=this
|
27
27
|
this.divider=Em.$(".divider")
|
28
|
-
var s=Em.$(window),
|
28
|
+
var s=Em.$(window),r=!1,i=function(t){r&&e.divideView(t.clientY||t.touches&&t.touches[0]&&t.touches[0].clientY,s)},o=function a(){Em.$("#overlay").remove(),r=!1,localStorage&&(localStorage.logster_divider_bottom=parseInt(e.divider.css("bottom"),10))
|
29
29
|
var s=Em.$(document)
|
30
|
-
t.forEach(function(e){return s.unbind(e,
|
31
|
-
this.divider.on(a.join(" "),function(e){e.preventDefault(),Em.$("<div id='overlay'></div>").appendTo(Em.$("body")),
|
30
|
+
t.forEach(function(e){return s.unbind(e,i)}),n.forEach(function(e){return s.unbind(e,a)})}
|
31
|
+
this.divider.on(a.join(" "),function(e){e.preventDefault(),Em.$("<div id='overlay'></div>").appendTo(Em.$("body")),r=!0,Em.$(document).on(t.join(" "),_.throttle(i,25)).on(n.join(" "),o)}),Em.run.next(function(){var t=localStorage&&localStorage.logster_divider_bottom||300,n=s.height()-parseInt(t,10)
|
32
32
|
e.divideView(n,s)})},willDestroyElement:function(){Em.$(".divider").off(a.join(" "))}})
|
33
33
|
e.default=s}),define("client-app/components/patterns-list",["exports","@babel/runtime/helpers/esm/toConsumableArray","client-app/models/pattern-item","client-app/lib/utilities"],function(e,t,n,a){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
34
34
|
var s=Ember.Component.extend({immutable:Ember.computed.not("mutable"),init:function(){this._super.apply(this,arguments),this.get("patterns.length")<1&&this.get("mutable")&&this.send("create")},allPatterns:Ember.computed("patterns.[]","newPatterns.[]",function(){var e=this.get("patterns"),n=this.get("newPatterns")||[]
|
35
35
|
return[].concat((0,t.default)(n.reverse()),(0,t.default)(e.reverse()))}),makeAPICall:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.method
|
36
36
|
return delete e.method,(0,a.ajax)("/patterns/".concat(this.get("key"),".json"),{method:t,data:e})},alwaysBlock:function(e){e.set("saving",!1)},catchBlock:function(e,t){t.responseText?e.set("error",t.responseText):e.set("error","Unkown error occured. Please see dev console.")},requestInit:function(e){e.setProperties({saving:!0,error:null})},actions:{create:function(){this.get("newPatterns")||this.set("newPatterns",[]),this.get("newPatterns").pushObject(n.default.create({isNew:!0}))},trash:function(e){var t=this
|
37
37
|
e.get("isNew")?(this.get("newPatterns").removeObject(e),e.destroy()):(this.requestInit(e),this.makeAPICall({method:"DELETE",pattern:e.get("value")}).then(function(){t.get("patterns").removeObject(e),e.destroy()}).catch(function(n){return t.catchBlock(e,n)}).always(function(){return t.alwaysBlock(e)}))},save:function(e){var t=this
|
38
|
-
this.requestInit(e),(e.get("isNew")?this.makeAPICall({method:"POST",pattern:e.get("valueBuffer")}).then(function(n){e.updateValue(n.pattern),e.set("isNew",!1),t.get("patterns").pushObject(e),t.get("newPatterns").removeObject(e)}):this.makeAPICall({method:"PUT",pattern:e.get("value"),new_pattern:e.get("valueBuffer")}).then(function(t){e.updateValue(t.pattern),e.set("count",0)})).catch(function(n){t.catchBlock(e,n)}).always(function(){return t.alwaysBlock(e)})},resetCount:function(e){var t=this
|
39
|
-
e.set("saving",!0),(0,a.ajax)("/reset-count.json",{method:"PUT",data:{pattern:e.get("value"),hard:!!e.get("hard")}}).then(function(){e.set("count",0)}).catch(function(n){return t.catchBlock(e,n)}).always(function(){return t.alwaysBlock(e)})}}})
|
38
|
+
this.requestInit(e),(e.get("isNew")?this.makeAPICall({method:"POST",pattern:e.get("valueBuffer"),retroactive:e.retroactive}).then(function(n){e.updateValue(n.pattern),e.set("isNew",!1),t.get("patterns").pushObject(e),t.get("newPatterns").removeObject(e)}):this.makeAPICall({method:"PUT",pattern:e.get("value"),new_pattern:e.get("valueBuffer")}).then(function(t){e.updateValue(t.pattern),e.set("count",0)})).catch(function(n){t.catchBlock(e,n)}).always(function(){return t.alwaysBlock(e)})},resetCount:function(e){var t=this
|
39
|
+
e.set("saving",!0),(0,a.ajax)("/reset-count.json",{method:"PUT",data:{pattern:e.get("value"),hard:!!e.get("hard")}}).then(function(){e.set("count",0)}).catch(function(n){return t.catchBlock(e,n)}).always(function(){return t.alwaysBlock(e)})},checkboxChanged:function(e){e.toggleProperty("retroactive")}}})
|
40
40
|
e.default=s}),define("client-app/components/tab-contents",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
41
41
|
var t=Ember.Component.extend({classNameBindings:["active",":content","name"],isLink:!1,invokeParent:function(e){for(var t=this.get("parentView");t&&!t[e];)t=t.get("parentView")
|
42
42
|
t&&t[e](this)},didInsertElement:function(){this.invokeParent("addTab"),this.get("defaultTab")&&this.invokeParent("selectTab")},willDestroyElement:function(){this.invokeParent("removeTab")}})
|
@@ -60,8 +60,8 @@ n.set("filter",t),t&&this.get("initialized")&&n.reload().then(function(){return
|
|
60
60
|
n.set("search",t),this.get("initialized")&&n.reload().then(function(){return e.updateSelectedMessage()})})})
|
61
61
|
e.default=a}),define("client-app/controllers/show",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
62
62
|
var t=Ember.Controller.extend({actions:{protect:function(){this.get("model").protect()},unprotect:function(){this.get("model").unprotect()}}})
|
63
|
-
e.default=t}),define("client-app/helpers/app-version",["exports","client-app/config/environment","ember-cli-app-version/utils/regexp"],function(e,t,n){function a(e){var a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=t.default.APP.version,
|
64
|
-
return
|
63
|
+
e.default=t}),define("client-app/helpers/app-version",["exports","client-app/config/environment","ember-cli-app-version/utils/regexp"],function(e,t,n){function a(e){var a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=t.default.APP.version,r=a.versionOnly||a.hideSha,i=a.shaOnly||a.hideVersion,o=null
|
64
|
+
return r&&(a.showExtended&&(o=s.match(n.versionExtendedRegExp)),o||(o=s.match(n.versionRegExp))),i&&(o=s.match(n.shaRegExp)),o?o[0]:s}Object.defineProperty(e,"__esModule",{value:!0}),e.appVersion=a,e.default=void 0
|
65
65
|
var s=Ember.Helper.helper(a)
|
66
66
|
e.default=s}),define("client-app/helpers/logster-url",["exports","client-app/lib/preload"],function(e,t){function n(e){var n=e[0]
|
67
67
|
return"/"!==n[0]&&(n="/".concat(n)),t.default.get("rootPath")+n}Object.defineProperty(e,"__esModule",{value:!0}),e.logsterUrl=n,e.default=void 0
|
@@ -77,12 +77,12 @@ var n=["component","route"]
|
|
77
77
|
function a(e){var a,s
|
78
78
|
moment.updateLocale("en",{relativeTime:{future:"in %s",past:"%s ago",s:"secs",m:"a min",mm:"%d mins",h:"an hr",hh:"%d hrs",d:"a day",dd:"%d days",M:"a mth",MM:"%d mths",y:"a yr",yy:"%d yrs"}}),["","webkit","ms","moz","ms"].forEach(function(e){var t=e+(""===e?"hidden":"Hidden")
|
79
79
|
void 0===document[t]||a||(a=t,s=e+"visibilitychange")}),(0,t.updateHiddenProperty)(a),document.addEventListener(s,function(){(0,t.resetTitleCount)()},!1),e.register("events:main",Ember.Object.extend(Ember.Evented).create(),{instantiate:!1}),n.forEach(function(t){return e.inject(t,"events","events:main")})
|
80
|
-
var
|
81
|
-
|
80
|
+
var r=/mobile/i.test(navigator.userAgent)&&!/iPad/.test(navigator.userAgent)
|
81
|
+
r&&Em.$("body").addClass("mobile"),e.register("site:main",{isMobile:r},{instantiate:!1}),e.inject("controller","site","site:main")}var s={initialize:a}
|
82
82
|
e.default=s}),define("client-app/initializers/app-version",["exports","ember-cli-app-version/initializer-factory","client-app/config/environment"],function(e,t,n){var a,s
|
83
83
|
Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,n.default.APP&&(a=n.default.APP.name,s=n.default.APP.version)
|
84
|
-
var
|
85
|
-
e.default=
|
84
|
+
var r={name:"App Version",initialize:(0,t.default)(a,s)}
|
85
|
+
e.default=r}),define("client-app/initializers/container-debug-adapter",["exports","ember-resolver/resolvers/classic/container-debug-adapter"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
86
86
|
var n={name:"container-debug-adapter",initialize:function(){var e=arguments[1]||arguments[0]
|
87
87
|
e.register("container-debug-adapter:main",t.default),e.inject("container-debug-adapter:main","namespace","application:main")}}
|
88
88
|
e.default=n}),define("client-app/initializers/ember-data",["exports","ember-data/setup-container","ember-data"],function(e,t,n){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
@@ -103,23 +103,23 @@ var n=!1
|
|
103
103
|
function a(){var e=document.getElementById("preloaded-data").dataset
|
104
104
|
t=Em.$.extend(JSON.parse(e.preloaded),{rootPath:e.rootPath}),n=!0}var s={get:function(e){return n||a(),Em.get(t,e)}}
|
105
105
|
e.default=s}),define("client-app/lib/utilities",["exports","@babel/runtime/helpers/esm/typeof","client-app/lib/preload"],function(e,t,n){Object.defineProperty(e,"__esModule",{value:!0}),e.escapeHtml=o,e.ajax=l,e.preloadOrAjax=function(e,t){var a=n.default.get(e.replace(".json",""))
|
106
|
-
return a?Em.RSVP.resolve(a):l(e,t)},e.updateHiddenProperty=function(e){a=e},e.isHidden=
|
107
|
-
s=s||document.title,
|
106
|
+
return a?Em.RSVP.resolve(a):l(e,t)},e.updateHiddenProperty=function(e){a=e},e.isHidden=c,e.increaseTitleCount=function(e){if(!c())return
|
107
|
+
s=s||document.title,r=r||0,r+=e,document.title="".concat(s," (").concat(r,")")},e.resetTitleCount=function(){r=0,document.title=s||document.title},e.formatTime=u,e.buildArrayString=d,e.buildHashString=function e(a,s){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[]
|
108
108
|
if(!a)return""
|
109
|
-
var
|
109
|
+
var i=[]
|
110
110
|
var l=[]
|
111
|
-
var
|
112
|
-
_.each(a,function(e,n){if(null===e)
|
111
|
+
var c=n.default.get("env_expandable_keys")||[]
|
112
|
+
_.each(a,function(e,n){if(null===e)i.push("null")
|
113
113
|
else if("[object Array]"===Object.prototype.toString.call(e)){var a=""
|
114
|
-
a=-1!==
|
115
|
-
else if("time"===n&&"number"==typeof e){var p=moment(e).format(),f=
|
116
|
-
|
114
|
+
a=-1!==c.indexOf(n)&&!s&&-1===r.indexOf(n)&&e.length>3?"".concat(o(e[0]),', <a class="expand-list" data-key=').concat(n,">").concat(e.length-1," more</a>"):d(e),i.push("<tr><td>"+o(n)+"</td><td>"+a+"</td></tr>")}else if("object"===(0,t.default)(e))l.push(n)
|
115
|
+
else if("time"===n&&"number"==typeof e){var p=moment(e).format(),f=u(e)
|
116
|
+
i.push('<tr title="'.concat(p,'"><td>').concat(n,"</td><td>").concat(f,"</td></tr>"))}else i.push("<tr><td>".concat(o(n),"</td><td>").concat(o(e),"</td></tr>"))})
|
117
117
|
_.size(l)>0&&_.each(l,function(t){var n=a[t]
|
118
|
-
|
118
|
+
i.push("<tr><td></td><td><table>"),i.push("<td>"+o(t)+"</td><td>"+e(n,!0)+"</td>"),i.push("</table></td></tr>")})
|
119
119
|
var p=s?"":"env-table"
|
120
|
-
return"<table class='"+p+"'>"+
|
121
|
-
var a,s,i
|
122
|
-
function o(e){return String(e).replace(/[&<>"'\/]/g,function(e){return
|
120
|
+
return"<table class='"+p+"'>"+i.join("\n")+"</table>"}
|
121
|
+
var a,s,r,i={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"}
|
122
|
+
function o(e){return String(e).replace(/[&<>"'\/]/g,function(e){return i[e]})}function l(e,t){return(t=t||{}).headers=t.headers||{},t.headers["X-SILENCE-LOGGER"]=!0,Em.$.ajax(n.default.get("rootPath")+e,t)}function c(){return void 0!==a?document[a]:!document.hasFocus}function u(e){var t=moment(e),n=moment()
|
123
123
|
return t.diff(n.startOf("day"))>0?t.format("h:mm a"):t.diff(n.startOf("week"))>0?t.format("dd h:mm a"):t.diff(n.startOf("year"))>0?t.format("D MMM h:mm a"):t.format("D MMM YY")}function d(e){var t=[]
|
124
124
|
return e.forEach(function(e){null===e?t.push("null"):"[object Array]"===Object.prototype.toString.call(e)?t.push(d(e)):t.push(o(e.toString()))}),"["+t.join(", ")+"]"}}),define("client-app/models/message-collection",["exports","client-app/lib/utilities","client-app/models/message"],function(e,t,n){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
125
125
|
var a=Em.Object.extend({messages:Em.A(),currentMessage:null,total:0,solve:function(e){var t=this
|
@@ -128,8 +128,8 @@ e.destroy(),e.set("selected",!1),this.set("total",this.get("total")-1),this.get(
|
|
128
128
|
e=e||{}
|
129
129
|
var a={filter:this.get("filter").join("_")},s=this.get("search")
|
130
130
|
_.isEmpty(s)||(a.search=s,this.get("regexSearch")&&(a.regex_search="true"))
|
131
|
-
return e.before&&(a.before=e.before),e.after&&(a.after=e.after),(0,t.ajax)("/messages.json",{data:a}).then(function(a){if(0==Ember.compare(a.filter,n.get("filter"))&&0==Ember.compare(a.search,n.get("search"))){if(a.messages.length>0){var s=n.toMessages(a.messages),
|
132
|
-
e.before?
|
131
|
+
return e.before&&(a.before=e.before),e.after&&(a.after=e.after),(0,t.ajax)("/messages.json",{data:a}).then(function(a){if(0==Ember.compare(a.filter,n.get("filter"))&&0==Ember.compare(a.search,n.get("search"))){if(a.messages.length>0){var s=n.toMessages(a.messages),r=n.get("messages")
|
132
|
+
e.before?r.unshiftObjects(s):(s.forEach(function(e){r.forEach(function(t){t.key==e.key&&(r.removeObject(t),n.get("currentMessage")===t&&(n.set("currentMessage",e),e.set("selected",t.get("selected"))))})}),r.addObjects(s),s.length>0&&(0,t.increaseTitleCount)(s.length))}return n.set("total",a.total),a}})},reload:function(){var e=this
|
133
133
|
return this.set("total",0),this.get("messages").clear(),this.load().then(function(t){return e.updateCanLoadMore(t)})},updateCanLoadMore:function(e){e&&(e.messages.length<50?this.set("canLoadMore",!1):this.set("canLoadMore",!0))},loadMore:function(){var e=this.get("messages")
|
134
134
|
if(0!==e.length){var t=e[e.length-1].get("key")
|
135
135
|
this.load({after:t})}else this.load({})},hideCountInLoadMore:Ember.computed("search","filter",function(){var e=this.get("search"),t=this.get("filter")
|
@@ -162,12 +162,12 @@ e.default=a}),define("client-app/routes/index",["exports","client-app/models/mes
|
|
162
162
|
var a=Ember.Route.extend({model:function(){return t.default.create()},setupController:function(e,t){this._super(e,t),t.setProperties(e.getProperties("filter","search")),t.reload(),e.set("initialized",!0)
|
163
163
|
var a=0,s=1
|
164
164
|
this.refreshInterval=setInterval(function(){a+=1
|
165
|
-
var e=(0,n.isHidden)(),
|
166
|
-
e&&a%s==0&&(
|
165
|
+
var e=(0,n.isHidden)(),r=!e
|
166
|
+
e&&a%s==0&&(r=!0,s<20&&s++),r&&(t.loadMore(),e||(s=1))},3e3),this.events.on("panelResized",function(t){e.resizePanels(t)})},deactivate:function(){clearInterval(this.refreshInterval)}})
|
167
167
|
e.default=a}),define("client-app/routes/settings",["exports","client-app/lib/utilities","client-app/models/pattern-item"],function(e,t,n){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
168
168
|
var a=Ember.Route.extend({model:function(){return(0,t.ajax)("/settings.json")},setupController:function(e,t){this._super.apply(this,arguments)
|
169
|
-
var a=t.suppression,s=a.filter(function(e){return e.hard}).map(function(e){return n.default.create(e)}),
|
170
|
-
e.setProperties({showCodedSuppression:
|
169
|
+
var a=t.suppression,s=a.filter(function(e){return e.hard}).map(function(e){return n.default.create(e)}),r=a.reject(function(e){return e.hard}).map(function(e){return n.default.create(e)}),i=s.length>0
|
170
|
+
e.setProperties({showCodedSuppression:i,codedSuppression:s,customSuppression:r})}})
|
171
171
|
e.default=a}),define("client-app/routes/show",["exports","client-app/models/message","client-app/lib/utilities"],function(e,t,n){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
172
172
|
var a=Ember.Route.extend({model:function(e){return(0,n.preloadOrAjax)("/show/"+e.id+".json")},setupController:function(e,n){this._super.apply(this,arguments),e.set("model",t.default.create(n))}})
|
173
173
|
e.default=a}),define("client-app/services/ajax",["exports","ember-ajax/services/ajax"],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})}),define("client-app/templates/application",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
@@ -183,7 +183,7 @@ var t=Ember.HTMLBars.template({id:"pF0hQ9a+",block:'{"symbols":[],"statements":[
|
|
183
183
|
e.default=t}),define("client-app/templates/components/panel-resizer",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
184
184
|
var t=Ember.HTMLBars.template({id:"FLUzT7ST",block:'{"symbols":[],"statements":[[7,"div"],[11,"class","line-1"],[9],[10],[0,"\\n"],[7,"div"],[11,"class","line-2"],[9],[10],[0,"\\n"],[7,"div"],[11,"class","line-3"],[9],[10],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"client-app/templates/components/panel-resizer.hbs"}})
|
185
185
|
e.default=t}),define("client-app/templates/components/patterns-list",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
186
|
-
var t=Ember.HTMLBars.template({id:"
|
186
|
+
var t=Ember.HTMLBars.template({id:"iH8xfmgn",block:'{"symbols":["pattern"],"statements":[[4,"if",[[23,["mutable"]]],null,{"statements":[[0," "],[7,"button"],[11,"class","btn new-pattern"],[9],[7,"i"],[11,"class","fa fa-plus"],[9],[10],[0," New"],[3,"action",[[22,0,[]],"create"]],[10],[0,"\\n"]],"parameters":[]},null],[4,"each",[[23,["allPatterns"]]],null,{"statements":[[0," "],[7,"div"],[11,"class","pattern-wrapper"],[9],[0,"\\n "],[1,[27,"input",null,[["type","class","placeholder","value","disabled"],["textfield","pattern-input","Enter regular expression…",[22,1,["valueBuffer"]],[27,"or",[[23,["immutable"]],[22,1,["saving"]]],null]]]],false],[0,"\\n"],[4,"if",[[23,["mutable"]]],null,{"statements":[[4,"if",[[22,1,["hasBuffer"]]],null,{"statements":[[0," "],[7,"button"],[12,"disabled",[22,1,["saving"]]],[11,"class","btn ok no-text save shrink"],[9],[0,"\\n "],[7,"i"],[11,"class","fa fa-check"],[9],[10],[0,"\\n "],[3,"action",[[22,0,[]],"save",[22,1,[]]]],[10],[0,"\\n"]],"parameters":[]},null],[0," "],[7,"button"],[12,"disabled",[22,1,["saving"]]],[11,"class","btn no-text trash shrink"],[9],[0,"\\n "],[7,"i"],[11,"class","fa fa-trash"],[9],[10],[0,"\\n "],[3,"action",[[22,0,[]],"trash",[22,1,[]]]],[10],[0,"\\n"]],"parameters":[]},null],[0,"\\n "],[7,"input"],[11,"disabled","true"],[11,"title","Number of logs that have been suppressed by this pattern"],[11,"class","count shrink"],[12,"value",[22,1,["count"]]],[9],[10],[0,"\\n "],[7,"button"],[11,"class","btn no-text reset shrink"],[11,"title","Reset count of suppressed logs"],[12,"disabled",[22,1,["zeroCount"]]],[9],[0,"\\n "],[7,"i"],[11,"class","fa fa-rotate-right"],[9],[10],[0,"\\n "],[3,"action",[[22,0,[]],"resetCount",[22,1,[]]]],[10],[0,"\\n "],[10],[0,"\\n"],[4,"if",[[23,["applyRetroactivelyCheckbox"]]],null,{"statements":[[4,"if",[[22,1,["isNew"]]],null,{"statements":[[0," "],[7,"div"],[11,"class","retro-checkbox"],[9],[0,"\\n "],[7,"input"],[12,"checked",[22,1,["retroactive"]]],[11,"class","checkbox"],[12,"onclick",[27,"action",[[22,0,[]],"checkboxChanged",[22,1,[]]],null]],[11,"type","checkbox"],[9],[10],[0,"\\n Apply retroactively\\n "],[10],[0,"\\n"]],"parameters":[]},null]],"parameters":[]},null],[4,"if",[[22,1,["error"]]],null,{"statements":[[7,"pre"],[11,"class","api-error"],[9],[1,[22,1,["error"]],false],[10]],"parameters":[]},null]],"parameters":[1]},null]],"hasEval":false}',meta:{moduleName:"client-app/templates/components/patterns-list.hbs"}})
|
187
187
|
e.default=t}),define("client-app/templates/components/tabbed-section",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
188
188
|
var t=Ember.HTMLBars.template({id:"zCP0V00P",block:'{"symbols":["tab","&default"],"statements":[[14,2],[0,"\\n"],[7,"ul"],[11,"class","tabs"],[9],[0,"\\n"],[4,"each",[[23,["tabs"]]],null,{"statements":[[0," "],[7,"li"],[9],[0,"\\n "],[7,"a"],[12,"title",[28,[[27,"unbound",[[22,1,["hint"]]],null]]]],[11,"href","#"],[12,"class",[28,[[27,"if",[[22,1,["active"]],"active"],null]]]],[9],[0,"\\n "],[1,[27,"unbound",[[22,1,["name"]]],null],false],[0,"\\n "],[3,"action",[[22,0,[]],[23,["selectTab"]],[22,1,[]]]],[10],[0,"\\n "],[10],[0,"\\n"]],"parameters":[1]},null],[10],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"client-app/templates/components/tabbed-section.hbs"}})
|
189
189
|
e.default=t}),define("client-app/templates/components/time-formatter",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
@@ -191,8 +191,8 @@ var t=Ember.HTMLBars.template({id:"sp53cTcH",block:'{"symbols":[],"statements":[
|
|
191
191
|
e.default=t}),define("client-app/templates/index",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
192
192
|
var t=Ember.HTMLBars.template({id:"i9LWBRFJ",block:'{"symbols":["message"],"statements":[[7,"div"],[11,"id","top-panel"],[9],[0,"\\n "],[7,"div"],[11,"id","log-table"],[9],[0,"\\n"],[4,"if",[[23,["model","moreBefore"]]],null,{"statements":[[0," "],[7,"div"],[11,"class","show-more"],[9],[0,"\\n"],[4,"if",[[23,["model","hideCountInLoadMore"]]],null,{"statements":[[0," Load more\\n"]],"parameters":[]},{"statements":[[0," Select to see "],[1,[23,["model","totalBefore"]],false],[0," more\\n"]],"parameters":[]}],[0," "],[3,"action",[[22,0,[]],"showMoreBefore"]],[10],[0,"\\n"]],"parameters":[]},null],[4,"each",[[23,["model","messages"]]],null,{"statements":[[0," "],[1,[27,"message-row",null,[["model","selectedMessage"],[[22,1,[]],[27,"action",[[22,0,[]],"selectMessage"],null]]]],false],[0,"\\n"]],"parameters":[1]},null],[0," "],[10],[0,"\\n"],[10],[0,"\\n"],[7,"div"],[11,"id","bottom-panel"],[9],[0,"\\n "],[1,[27,"message-info",null,[["currentMessage","removeMessage","solveMessage","actionsInMenu"],[[23,["currentMessage"]],[27,"action",[[22,0,[]],"removeMessage"],null],[27,"action",[[22,0,[]],"solveMessage"],null],[23,["actionsInMenu"]]]]],false],[0,"\\n\\n "],[7,"div"],[11,"class","action-panel"],[9],[0,"\\n "],[7,"div"],[11,"class","severity-filters"],[9],[0,"\\n "],[7,"div"],[11,"class","more-wrapping"],[9],[0,"\\n "],[7,"label"],[11,"class","debug"],[9],[0,"\\n "],[1,[27,"input",null,[["type","checked"],["checkbox",[23,["showDebug"]]]]],false],[0,"\\n "],[7,"span"],[9],[0,"Debug"],[10],[0,"\\n "],[10],[0,"\\n "],[7,"label"],[11,"class","info"],[9],[0,"\\n "],[1,[27,"input",null,[["type","checked"],["checkbox",[23,["showInfo"]]]]],false],[0,"\\n "],[7,"span"],[9],[0,"Info"],[10],[0,"\\n "],[10],[0,"\\n "],[7,"label"],[11,"class","warn"],[9],[0,"\\n "],[1,[27,"input",null,[["type","checked"],["checkbox",[23,["showWarn"]]]]],false],[0,"\\n "],[7,"i"],[11,"class","fa fa-exclamation-circle warning"],[9],[10],[0,"\\n "],[7,"span"],[9],[0,"Warning"],[10],[0,"\\n "],[10],[0,"\\n "],[7,"label"],[11,"class","error"],[9],[0,"\\n "],[1,[27,"input",null,[["type","checked"],["checkbox",[23,["showErr"]]]]],false],[0,"\\n "],[7,"i"],[11,"class","fa fa-times-circle error"],[9],[10],[0,"\\n "],[7,"span"],[9],[0,"Error"],[10],[0,"\\n "],[10],[0,"\\n "],[7,"label"],[11,"class","fatal"],[9],[0,"\\n "],[1,[27,"input",null,[["type","checked"],["checkbox",[23,["showFatal"]]]]],false],[0,"\\n "],[7,"i"],[11,"class","fa fa-times-circle fatal"],[9],[10],[0,"\\n "],[7,"span"],[9],[0,"Fatal"],[10],[0,"\\n "],[10],[0,"\\n "],[10],[0,"\\n "],[10],[0,"\\n "],[7,"div"],[11,"class","search-clear-all"],[9],[0,"\\n "],[1,[27,"input",null,[["type","class","placeholder","value"],["textfield","search","Search",[23,["search"]]]]],false],[0,"\\n "],[7,"div"],[11,"class","footer-btns"],[9],[0,"\\n"],[4,"if",[[23,["showSettings"]]],null,{"statements":[[4,"link-to",["settings"],[["class"],["settings btn no-text"]],{"statements":[[0," "],[7,"i"],[11,"class","fa fa-cog"],[9],[10],[0,"\\n"]],"parameters":[]},null]],"parameters":[]},null],[0," "],[7,"button"],[11,"class","clear btn danger"],[9],[7,"i"],[11,"class","fa fa-trash-o"],[9],[10],[7,"span"],[9],[0,"Clear logs"],[10],[3,"action",[[22,0,[]],"clear"]],[10],[0,"\\n "],[10],[0,"\\n "],[10],[0,"\\n "],[10],[0,"\\n"],[10],[0,"\\n"],[1,[21,"panel-resizer"],false],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"client-app/templates/index.hbs"}})
|
193
193
|
e.default=t}),define("client-app/templates/settings",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
194
|
-
var t=Ember.HTMLBars.template({id:"
|
194
|
+
var t=Ember.HTMLBars.template({id:"ZVQ4fCm0",block:'{"symbols":[],"statements":[[7,"div"],[11,"class","settings-page"],[9],[0,"\\n "],[4,"link-to",["index"],null,{"statements":[[0,"Home"]],"parameters":[]},null],[0,"\\n "],[7,"div"],[11,"class","settings-header"],[9],[0,"\\n "],[7,"h1"],[11,"class","header-title"],[9],[0,"Settings"],[10],[0,"\\n "],[7,"img"],[11,"class","header-logo"],[12,"src",[27,"logster-url",["images/icon_144x144.png"],null]],[9],[10],[0,"\\n "],[10],[0,"\\n\\n "],[7,"div"],[11,"class","settings-section suppression-patterns"],[9],[0,"\\n "],[7,"h2"],[11,"class","section-title"],[9],[0,"Suppression Patterns"],[10],[0,"\\n "],[7,"div"],[9],[0,"New messages that match these Regular Expression patterns will be suppressed."],[10],[0,"\\n\\n"],[4,"if",[[23,["showCodedSuppression"]]],null,{"statements":[[0," "],[7,"h3"],[11,"class","subsection-title"],[9],[0,"Hard-coded patterns:"],[10],[0,"\\n "],[7,"div"],[11,"class","tip"],[9],[0,"These patterns can\'t be removed via the UI because they are commited to the source code of your app."],[10],[0,"\\n "],[1,[27,"patterns-list",null,[["patterns","mutable"],[[23,["codedSuppression"]],false]]],false],[0,"\\n"]],"parameters":[]},null],[0,"\\n "],[7,"h3"],[11,"class","subsection-title"],[9],[0,"Custom patterns:"],[10],[0,"\\n "],[1,[27,"patterns-list",null,[["patterns","key","applyRetroactivelyCheckbox","mutable"],[[23,["customSuppression"]],"suppression",true,true]]],false],[0,"\\n "],[10],[0,"\\n"],[10],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"client-app/templates/settings.hbs"}})
|
195
195
|
e.default=t}),define("client-app/templates/show",["exports"],function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0
|
196
196
|
var t=Ember.HTMLBars.template({id:"V916vpg9",block:'{"symbols":[],"statements":[[4,"link-to",["index"],null,{"statements":[[0,"Recent"]],"parameters":[]},null],[0,"\\n"],[7,"div"],[11,"id","bottom-panel"],[11,"class","full"],[9],[0,"\\n "],[1,[27,"message-info",null,[["currentMessage","showTitle","actionsInMenu"],[[23,["model"]],"true",false]]],false],[0,"\\n"],[10],[0,"\\n"]],"hasEval":false}',meta:{moduleName:"client-app/templates/show.hbs"}})
|
197
197
|
e.default=t}),define("client-app/config/environment",[],function(){try{var e="client-app/config/environment",t=document.querySelector('meta[name="'+e+'"]').getAttribute("content"),n={default:JSON.parse(decodeURIComponent(t))}
|
198
|
-
return Object.defineProperty(n,"__esModule",{value:!0}),n}catch(a){throw new Error('Could not read config from meta tag with name "'+e+'".')}}),runningTests||require("client-app/app").default.create({name:"client-app",version:"
|
198
|
+
return Object.defineProperty(n,"__esModule",{value:!0}),n}catch(a){throw new Error('Could not read config from meta tag with name "'+e+'".')}}),runningTests||require("client-app/app").default.create({name:"client-app",version:"0.0.0+ce647650"})
|
data/assets/javascript/vendor.js
CHANGED
@@ -4360,7 +4360,7 @@ return e}function j(e){return xe.test(e)?e.match(Ee)||[]:e.split("")}var N,I=1/0
|
|
4360
4360
|
ke["[object Float32Array]"]=ke["[object Float64Array]"]=ke["[object Int8Array]"]=ke["[object Int16Array]"]=ke["[object Int32Array]"]=ke["[object Uint8Array]"]=ke["[object Uint8ClampedArray]"]=ke["[object Uint16Array]"]=ke["[object Uint32Array]"]=!0,ke["[object Arguments]"]=ke["[object Array]"]=ke["[object ArrayBuffer]"]=ke["[object Boolean]"]=ke["[object DataView]"]=ke["[object Date]"]=ke["[object Error]"]=ke["[object Function]"]=ke["[object Map]"]=ke["[object Number]"]=ke["[object Object]"]=ke["[object RegExp]"]=ke["[object Set]"]=ke["[object String]"]=ke["[object WeakMap]"]=!1
|
4361
4361
|
var Oe={}
|
4362
4362
|
Oe["[object Arguments]"]=Oe["[object Array]"]=Oe["[object ArrayBuffer]"]=Oe["[object DataView]"]=Oe["[object Boolean]"]=Oe["[object Date]"]=Oe["[object Float32Array]"]=Oe["[object Float64Array]"]=Oe["[object Int8Array]"]=Oe["[object Int16Array]"]=Oe["[object Int32Array]"]=Oe["[object Map]"]=Oe["[object Number]"]=Oe["[object Object]"]=Oe["[object RegExp]"]=Oe["[object Set]"]=Oe["[object String]"]=Oe["[object Symbol]"]=Oe["[object Uint8Array]"]=Oe["[object Uint8ClampedArray]"]=Oe["[object Uint16Array]"]=Oe["[object Uint32Array]"]=!0,Oe["[object Error]"]=Oe["[object Function]"]=Oe["[object WeakMap]"]=!1
|
4363
|
-
var Te={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Me=parseFloat,Ce=parseInt,De="object"==typeof global&&global&&global.Object===Object&&global,Pe="object"==typeof self&&self&&self.Object===Object&&self,je=De||Pe||Function("return this")(),Ne="object"==typeof exports&&exports&&!exports.nodeType&&exports,Ie=Ne&&"object"==typeof module&&module&&!module.nodeType&&module,Le=Ie&&Ie.exports===Ne,Fe=Le&&De.process,ze=function(){try{var e=Ie&&Ie.
|
4363
|
+
var Te={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Me=parseFloat,Ce=parseInt,De="object"==typeof global&&global&&global.Object===Object&&global,Pe="object"==typeof self&&self&&self.Object===Object&&self,je=De||Pe||Function("return this")(),Ne="object"==typeof exports&&exports&&!exports.nodeType&&exports,Ie=Ne&&"object"==typeof module&&module&&!module.nodeType&&module,Le=Ie&&Ie.exports===Ne,Fe=Le&&De.process,ze=function(){try{var e=Ie&&Ie.f&&Ie.f("util").types
|
4364
4364
|
return e||Fe&&Fe.binding&&Fe.binding("util")}catch(e){}}(),Be=ze&&ze.isArrayBuffer,Ue=ze&&ze.isDate,He=ze&&ze.isMap,qe=ze&&ze.isRegExp,Ve=ze&&ze.isSet,We=ze&&ze.isTypedArray,Ye=y("length"),Ge=b({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),$e=b({"&":"&","<":"<",">":">",'"':""","'":"'"}),Ke=b({"&":"&","<":"<",">":">",""":'"',"'":"'"}),Qe=function b(ye){function be(e){if(qr(e)&&!Ca(e)&&!(e instanceof De)){if(e instanceof Te)return e
|
4365
4365
|
if(Ci.call(e,"__wrapped__"))return mr(e)}return new Te(e)}function Ee(){}function Te(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=N}function De(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function Pe(e){var t=-1,n=null==e?0:e.length
|
4366
4366
|
for(this.clear();++t<n;){var r=e[t]
|
@@ -4392,8 +4392,7 @@ case"[object Number]":case"[object String]":return new r(e)
|
|
4392
4392
|
case"[object RegExp]":return(t=new e.constructor(e.source,le.exec(e))).lastIndex=e.lastIndex,t
|
4393
4393
|
case"[object Set]":return new r
|
4394
4394
|
case"[object Symbol]":return ko?Ri(ko.call(e)):{}}}(e,h,u)}}if(a||(a=new ze),o=a.get(e))return o
|
4395
|
-
|
4396
|
-
if(Na(e))return e.forEach(function(n,i){s.set(i,at(n,t,r,i,e,a))}),s
|
4395
|
+
a.set(e,s),La(e)?e.forEach(function(n){s.add(at(n,t,r,n,e,a))}):Na(e)&&e.forEach(function(n,i){s.set(i,at(n,t,r,i,e,a))})
|
4397
4396
|
l=c?l?Wn:Vn:l?ii:ri
|
4398
4397
|
var d=i?N:l(e)
|
4399
4398
|
return n(d||e,function(n,i){d&&(n=e[i=n]),Je(s,i,at(n,t,r,i,e,a))}),s}function st(e,t,n){var r=n.length
|
@@ -4412,8 +4411,8 @@ if(null!=a&&(s===N?a==a&&!Gr(a):n(a,s)))var s=a,u=o}return u}function ft(e,t){va
|
|
4412
4411
|
return Mo(e,function(e,r,i){t(e,r,i)&&n.push(e)}),n}function dt(e,t,n,r,i){var o=-1,a=e.length
|
4413
4412
|
for(n||(n=er),i||(i=[]);++o<a;){var s=e[o]
|
4414
4413
|
0<t&&n(s)?1<t?dt(s,t-1,n,r,i):u(i,s):r||(i[i.length]=s)}return i}function pt(e,t){return e&&Do(e,t,ri)}function mt(e,t){return e&&Po(e,t,ri)}function vt(e,t){return i(t,function(t){return zr(e[t])})}function gt(e,t){for(var n=0,r=(t=sn(t,e)).length;null!=e&&n<r;)e=e[fr(t[n++])]
|
4415
|
-
return n&&n==r?e:N}function yt(e,t,n){return t=t(e),Ca(e)?t:u(t,n(e))}function bt(e){if(null==e)
|
4416
|
-
if($i&&$i in Ri(e)){var t=Ci.call(e,$i),n=e[$i]
|
4414
|
+
return n&&n==r?e:N}function yt(e,t,n){return t=t(e),Ca(e)?t:u(t,n(e))}function bt(e){if(null==e)e=e===N?"[object Undefined]":"[object Null]"
|
4415
|
+
else if($i&&$i in Ri(e)){var t=Ci.call(e,$i),n=e[$i]
|
4417
4416
|
try{e[$i]=N
|
4418
4417
|
var r=!0}catch(e){}var i=ji.call(e)
|
4419
4418
|
r&&(t?e[$i]=n:delete e[$i]),e=i}else e=ji.call(e)
|
@@ -4423,9 +4422,9 @@ var p=-1,m=c[0]
|
|
4423
4422
|
e:for(;++p<i&&f.length<h;){var v=d[p],g=t?t(v):v
|
4424
4423
|
v=n||0!==v?v:0
|
4425
4424
|
if(m?!S(m,g):!r(f,g,n)){for(l=u;--l;){var y=c[l]
|
4426
|
-
if(y?!S(y,g):!r(e[l],g,n))continue e}m&&m.push(g),f.push(v)}}return f}function xt(t,n,r){return null==(n=null==(t=2>(n=sn(n,t)).length?t:gt(t,Wt(n,0,-1)))?t:t[fr(_r(n))])?N:e(n,t,r)}function St(e){return qr(e)&&"[object Arguments]"==bt(e)}function At(e,t,n,r,i){if(e===t)
|
4427
|
-
if(null==e||null==t||!qr(e)&&!qr(t))
|
4428
|
-
e:{var o,a,s=Ca(e),u=Ca(t),l="[object Object]"==(o="[object Arguments]"==(o=s?"[object Array]":Uo(e))?"[object Object]":o)
|
4425
|
+
if(y?!S(y,g):!r(e[l],g,n))continue e}m&&m.push(g),f.push(v)}}return f}function xt(t,n,r){return null==(n=null==(t=2>(n=sn(n,t)).length?t:gt(t,Wt(n,0,-1)))?t:t[fr(_r(n))])?N:e(n,t,r)}function St(e){return qr(e)&&"[object Arguments]"==bt(e)}function At(e,t,n,r,i){if(e===t)t=!0
|
4426
|
+
else if(null==e||null==t||!qr(e)&&!qr(t))t=e!=e&&t!=t
|
4427
|
+
else e:{var o,a,s=Ca(e),u=Ca(t),l="[object Object]"==(o="[object Arguments]"==(o=s?"[object Array]":Uo(e))?"[object Object]":o)
|
4429
4428
|
u="[object Object]"==(a="[object Arguments]"==(a=u?"[object Array]":Uo(t))?"[object Object]":a)
|
4430
4429
|
if((a=o==a)&&Pa(e)){if(!Pa(t)){t=!1
|
4431
4430
|
break e}s=!0,l=!1}if(a&&!l)i||(i=new ze),t=s||Fa(e)?Hn(e,t,n,r,At,i):function(e,t,n,r,i,o,a){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)break
|
@@ -4459,25 +4458,24 @@ for(t in Ri(e))Ci.call(e,t)&&"constructor"!=t&&n.push(t)
|
|
4459
4458
|
return n}function Ct(e,t){return e<t}function Dt(e,t){var n=-1,r=Ir(e)?yi(e.length):[]
|
4460
4459
|
return Mo(e,function(e,i,o){r[++n]=t(e,i,o)}),r}function Pt(e){var t=Qn(e)
|
4461
4460
|
return 1==t.length&&t[0][2]?ar(t[0][0],t[0][1]):function(n){return n===e||kt(n,e,t)}}function jt(e,t){return rr(e)&&t==t&&!Hr(t)?ar(fr(e),t):function(n){var r=ti(n,e)
|
4462
|
-
return r===N&&r===t?ni(n,e):At(t,r,3)}}function Nt(e,t,n,r,i){e!==t&&Do(t,function(o,a){if(Hr(o)){i
|
4463
|
-
|
4464
|
-
|
4461
|
+
return r===N&&r===t?ni(n,e):At(t,r,3)}}function Nt(e,t,n,r,i){e!==t&&Do(t,function(o,a){if(i||(i=new ze),Hr(o)){var s=i,u=ur(e,a),l=ur(t,a)
|
4462
|
+
if(p=s.get(l))Ze(e,a,p)
|
4463
|
+
else{var c=(p=r?r(u,l,a+"",e,t,s):N)===N
|
4465
4464
|
if(c){var h=Ca(l),f=!h&&Pa(l),d=!h&&!f&&Fa(l),p=l
|
4466
|
-
h||f||d?Ca(u)?p=u:Lr(u)?p=mn(u):f?(c=!1,p=ln(l,!0)):d?(c=!1,p=hn(l,!0)):p=[]:Wr(l)||Ma(l)?(p=u,Ma(u)?p=Jr(u):Hr(u)&&!zr(u)||(p=Jn(l))):c=!1}c&&(s.set(l,p),Nt(p,l,n,r,s),s.delete(l))
|
4465
|
+
h||f||d?Ca(u)?p=u:Lr(u)?p=mn(u):f?(c=!1,p=ln(l,!0)):d?(c=!1,p=hn(l,!0)):p=[]:Wr(l)||Ma(l)?(p=u,Ma(u)?p=Jr(u):Hr(u)&&!zr(u)||(p=Jn(l))):c=!1}c&&(s.set(l,p),Nt(p,l,n,r,s),s.delete(l)),Ze(e,a,p)}}else(s=r?r(ur(e,a),o,a+"",e,t,i):N)===N&&(s=o),Ze(e,a,s)},ii)}function It(e,t){var n=e.length
|
4467
4466
|
if(n)return tr(t+=0>t?n:0,n)?e[t]:N}function Lt(e,t,n){var r=-1
|
4468
4467
|
return t=s(t.length?t:[hi],R($n())),function(e,t){var n=e.length
|
4469
4468
|
for(e.sort(t);n--;)e[n]=e[n].c
|
4470
|
-
return e}(e=Dt(e,function(e
|
4469
|
+
return e}(e=Dt(e,function(e){return{a:s(t,function(t){return t(e)}),b:++r,c:e}}),function(e,t){var r
|
4471
4470
|
e:{r=-1
|
4472
4471
|
for(var i=e.a,o=t.a,a=i.length,s=n.length;++r<a;){var u=fn(i[r],o[r])
|
4473
|
-
if(u){
|
4474
|
-
break e}r=u*("desc"==n[r]?-1:1)
|
4472
|
+
if(u){r=r>=s?u:u*("desc"==n[r]?-1:1)
|
4475
4473
|
break e}}r=e.b-t.b}return r})}function Ft(e,t,n){for(var r=-1,i=t.length,o={};++r<i;){var a=t[r],s=gt(e,a)
|
4476
4474
|
n(s,a)&&Vt(o,sn(a,e),s)}return o}function zt(e,t,n,r){var i=r?m:p,o=-1,a=t.length,u=e
|
4477
4475
|
for(e===t&&(t=mn(t)),n&&(u=s(e,R(n)));++o<a;){var l=0,c=t[o]
|
4478
4476
|
for(c=n?n(c):c;-1<(l=i(u,c,l,r));)u!==e&&Wi.call(u,l,1),Wi.call(e,l,1)}return e}function Bt(e,t){for(var n=e?t.length:0,r=n-1;n--;){var i=t[n]
|
4479
4477
|
if(n==r||i!==o){var o=i
|
4480
|
-
tr(i)?Wi.call(e,i,1):Jt(e,i)}}
|
4478
|
+
tr(i)?Wi.call(e,i,1):Jt(e,i)}}}function Ut(e,t){return e+eo(co()*(t-e+1))}function Ht(e,t){var n=""
|
4481
4479
|
if(!e||1>t||9007199254740991<t)return n
|
4482
4480
|
do{t%2&&(n+=e),(t=eo(t/2))&&(e+=e)}while(t)
|
4483
4481
|
return n}function qt(e,t){return Wo(sr(e,t,hi),e+"")}function Vt(e,t,n,r){if(!Hr(e))return e
|
@@ -4560,7 +4558,8 @@ for(b=y.length,_=0;b--;)y[b]===w&&++_}if(r&&(y=dn(y,r,i,d)),o&&(y=pn(y,o,a,d)),g
|
|
4560
4558
|
if(w=h?n:this,b=f?w[e]:e,g=y.length,s){_=y.length
|
4561
4559
|
for(var E=so(s.length,_),R=mn(y);E--;){var x=s[E]
|
4562
4560
|
y[E]=tr(x,_)?R[x]:N}}else p&&1<g&&y.reverse()
|
4563
|
-
return c&&u<g&&(y.length=u),this&&this!==je&&this instanceof v&&(b=m||Rn(b)),b.apply(w,y)}}function On(e,t){return function(n,r){return function(e,t,n
|
4561
|
+
return c&&u<g&&(y.length=u),this&&this!==je&&this instanceof v&&(b=m||Rn(b)),b.apply(w,y)}}function On(e,t){return function(n,r){return function(e,t,n){var r={}
|
4562
|
+
return pt(e,function(e,i,o){t(r,n(e),i,o)}),r}(n,e,t(r))}}function Tn(e,t){return function(n,r){var i
|
4564
4563
|
if(n===N&&r===N)return t
|
4565
4564
|
if(n!==N&&(i=n),r!==N){if(i===N)return r
|
4566
4565
|
"string"==typeof n||"string"==typeof r?(n=Xt(n),r=Xt(r)):(n=Qt(n),r=Qt(r)),i=e(n,r)}return i}}function Mn(t){return qn(function(n){return n=s(n,R($n())),qt(function(r){var i=this
|
@@ -4574,7 +4573,7 @@ n=ao(Ji((n-t)/(r||1)),0)
|
|
4574
4573
|
for(var o=yi(n);n--;)o[e?n:++i]=t,t+=r
|
4575
4574
|
return o}}function jn(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=Zr(t),n=Zr(n)),e(t,n)}}function Nn(e,t,n,r,i,o,a,s,u,l){var c=8&t
|
4576
4575
|
return 4&(t=(t|(c?32:64))&~(c?64:32))||(t&=-4),i=[e,t,i,c?o:N,c?a:N,o=c?N:o,a=c?N:a,s,u,l],n=n.apply(N,i),ir(e)&&qo(n,i),n.placeholder=r,lr(n,e,t)}function In(e){var t=Ei[e]
|
4577
|
-
return function(e,n){if(e=Zr(e),n=null==n?0:so(Qr(n),292)){var r=(ei(e)+"e").split("e")
|
4576
|
+
return function(e,n){if(e=Zr(e),(n=null==n?0:so(Qr(n),292))&&ro(e)){var r=(ei(e)+"e").split("e")
|
4578
4577
|
return+((r=(ei(r=t(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}function Ln(e){return function(t){var n=Uo(t)
|
4579
4578
|
return"[object Map]"==n?T(t):"[object Set]"==n?function(e){var t=-1,n=Array(e.size)
|
4580
4579
|
return e.forEach(function(e){n[++t]=[e,e]}),n}(t):function(e,t){return s(t,function(t){return[t,e[t]]})}(t,e(t))}}function Fn(e,t,n,r,i,o,a,s){var u=2&t
|
@@ -4582,8 +4581,8 @@ if(!u&&"function"!=typeof e)throw new Ai("Expected a function")
|
|
4582
4581
|
var l=r?r.length:0
|
4583
4582
|
if(l||(t&=-97,r=i=N),a=a===N?a:ao(Qr(a),0),s=s===N?s:Qr(s),l-=i?i.length:0,64&t){var c=r,h=i
|
4584
4583
|
r=i=N}var f=u?N:Fo(e)
|
4585
|
-
return o=[e,t,n,r,i,c,h,o,a,s],f&&(t=(n=o[1])|(e=f[1]),r=128==e&&8==n||128==e&&256==n&&o[7].length<=f[8]||384==e&&f[7].length<=f[8]&&8==n,131>t||r)&&(1&e&&(o[2]=f[2],t|=1&n?0:4),(n=f[3])&&(r=o[3],o[3]=r?dn(r,n,f[4]):n,o[4]=r?C(o[3],"__lodash_placeholder__"):f[4]),(n=f[5])&&(r=o[5],o[5]=r?pn(r,n,f[6]):n,o[6]=r?C(o[5],"__lodash_placeholder__"):f[6]),(n=f[7])&&(o[7]=n),128&e&&(o[8]=null==o[8]?f[8]:so(o[8],f[8])),null==o[9]&&(o[9]=f[9]),o[0]=f[0],o[1]=t),e=o[0],t=o[1],n=o[2],r=o[3],i=o[4],!(s=o[9]=o[9]===N?u?0:e.length:ao(o[9]-l,0))&&24&t&&(t&=-25),
|
4586
|
-
return function t(){return(this&&this!==je&&this instanceof t?i:e).apply(r?n:this,arguments)}}(e,t,n),
|
4584
|
+
return o=[e,t,n,r,i,c,h,o,a,s],f&&(t=(n=o[1])|(e=f[1]),r=128==e&&8==n||128==e&&256==n&&o[7].length<=f[8]||384==e&&f[7].length<=f[8]&&8==n,131>t||r)&&(1&e&&(o[2]=f[2],t|=1&n?0:4),(n=f[3])&&(r=o[3],o[3]=r?dn(r,n,f[4]):n,o[4]=r?C(o[3],"__lodash_placeholder__"):f[4]),(n=f[5])&&(r=o[5],o[5]=r?pn(r,n,f[6]):n,o[6]=r?C(o[5],"__lodash_placeholder__"):f[6]),(n=f[7])&&(o[7]=n),128&e&&(o[8]=null==o[8]?f[8]:so(o[8],f[8])),null==o[9]&&(o[9]=f[9]),o[0]=f[0],o[1]=t),e=o[0],t=o[1],n=o[2],r=o[3],i=o[4],!(s=o[9]=o[9]===N?u?0:e.length:ao(o[9]-l,0))&&24&t&&(t&=-25),lr((f?jo:qo)(t&&1!=t?8==t||16==t?xn(e,t,s):32!=t&&33!=t||i.length?kn.apply(N,o):Dn(e,t,n,r):function(e,t,n){var r=1&t,i=Rn(e)
|
4585
|
+
return function t(){return(this&&this!==je&&this instanceof t?i:e).apply(r?n:this,arguments)}}(e,t,n),o),e,t)}function zn(e,t,n,r){return e===N||Nr(e,Oi[n])&&!Ci.call(r,n)?t:e}function Bn(e,t,n,r,i,o){return Hr(e)&&Hr(t)&&(o.set(t,e),Nt(e,t,N,Bn,o),o.delete(t)),e}function Un(e){return Wr(e)?N:e}function Hn(e,t,n,r,i,o){var a=1&n,s=e.length
|
4587
4586
|
if(s!=(u=t.length)&&!(a&&u>s))return!1
|
4588
4587
|
if((u=o.get(e))&&o.get(t))return u==t
|
4589
4588
|
var u=-1,l=!0,c=2&n?new Fe:N
|
@@ -4609,7 +4608,7 @@ return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!Gr(e))||Q.test(e)||!K.
|
|
4609
4608
|
return"function"==typeof n&&t in De.prototype&&(e===n||!!(t=Fo(n))&&e===t[0])}function or(e){var t=e&&e.constructor
|
4610
4609
|
return e===("function"==typeof t&&t.prototype||Oi)}function ar(e,t){return function(n){return null!=n&&n[e]===t&&(t!==N||e in Ri(n))}}function sr(t,n,r){return n=ao(n===N?t.length-1:n,0),function(){for(var i=arguments,o=-1,a=ao(i.length-n,0),s=yi(a);++o<a;)s[o]=i[n+o]
|
4611
4610
|
for(o=-1,a=yi(n+1);++o<n;)a[o]=i[o]
|
4612
|
-
return a[n]=r(s),e(t,this,a)}}function ur(e,t){if("__proto__"!=t)return e[t]}function lr(e,t,n){var r=t+""
|
4611
|
+
return a[n]=r(s),e(t,this,a)}}function ur(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}function lr(e,t,n){var r=t+""
|
4613
4612
|
t=Wo
|
4614
4613
|
var i,o=pr
|
4615
4614
|
return n=o(i=(i=r.match(ie))?i[1].split(oe):[],n),(o=n.length)&&(n[i=o-1]=(1<o?"& ":"")+n[i],n=n.join(2<o?", ":" "),r=r.replace(re,"{\n/* [wrapped with "+n+"] */\n")),t(e,r)}function cr(e){var t=0,n=0
|
@@ -4640,11 +4639,10 @@ if(i(e))return a(e)
|
|
4640
4639
|
var n,r=Vo
|
4641
4640
|
n=e-p,e=t-(e-d),n=v?so(e,c-n):e,f=r(o,n)}function a(e){return f=N,g&&u?r(e):(u=l=N,h)}function s(){var e=ba(),n=i(e)
|
4642
4641
|
if(u=arguments,l=this,d=e,n){if(f===N)return p=e=d,f=Vo(o,t),m?r(e):h
|
4643
|
-
if(v)return f=Vo(o,t),r(d)}return f===N&&(f=Vo(o,t)),h}var u,l,c,h,f,d,p=0,m=!1,v=!1,g=!0
|
4642
|
+
if(v)return Io(f),f=Vo(o,t),r(d)}return f===N&&(f=Vo(o,t)),h}var u,l,c,h,f,d,p=0,m=!1,v=!1,g=!0
|
4644
4643
|
if("function"!=typeof e)throw new Ai("Expected a function")
|
4645
|
-
return t=Zr(t)||0,Hr(n)&&(m=!!n.leading,c=(v="maxWait"in n)?ao(Zr(n.maxWait)||0,t):c,g="trailing"in n?!!n.trailing:g),s.cancel=function(){f!==N&&Io(f),p=0,u=d=l=f=N},s.flush=function(){return f===N?h:a(ba())},s}function Pr(e,t){
|
4646
|
-
|
4647
|
-
return o.has(i)?o.get(i):(r=e.apply(this,r),n.cache=o.set(i,r)||o,r)}
|
4644
|
+
return t=Zr(t)||0,Hr(n)&&(m=!!n.leading,c=(v="maxWait"in n)?ao(Zr(n.maxWait)||0,t):c,g="trailing"in n?!!n.trailing:g),s.cancel=function(){f!==N&&Io(f),p=0,u=d=l=f=N},s.flush=function(){return f===N?h:a(ba())},s}function Pr(e,t){function n(){var r=arguments,i=t?t.apply(this,r):r[0],o=n.cache
|
4645
|
+
return o.has(i)?o.get(i):(r=e.apply(this,r),n.cache=o.set(i,r)||o,r)}if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Ai("Expected a function")
|
4648
4646
|
return n.cache=new(Pr.Cache||Ie),n}function jr(e){if("function"!=typeof e)throw new Ai("Expected a function")
|
4649
4647
|
return function(){var t=arguments
|
4650
4648
|
switch(t.length){case 0:return!e.call(this)
|
@@ -4676,7 +4674,7 @@ return n(o,function(n){var r=t[n]
|
|
4676
4674
|
e[n]=r,s&&(e.prototype[n]=function(){var t=this.__chain__
|
4677
4675
|
if(a||t){var n=e(this.__wrapped__)
|
4678
4676
|
return(n.__actions__=mn(this.__actions__)).push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,u([this.value()],arguments))})}),e}function pi(){}function mi(e){return rr(e)?y(fr(e)):function(e){return function(t){return gt(t,e)}}(e)}function vi(){return[]}function gi(){return!1}var yi=(ye=null==ye?je:Qe.defaults(je.Object(),ye,Qe.pick(je,Ae))).Array,bi=ye.Date,_i=ye.Error,wi=ye.Function,Ei=ye.Math,Ri=ye.Object,xi=ye.RegExp,Si=ye.String,Ai=ye.TypeError,ki=yi.prototype,Oi=Ri.prototype,Ti=ye["__core-js_shared__"],Mi=wi.prototype.toString,Ci=Oi.hasOwnProperty,Di=0,Pi=function(){var e=/[^.]+$/.exec(Ti&&Ti.keys&&Ti.keys.IE_PROTO||"")
|
4679
|
-
return e?"Symbol(src)_1."+e:""}(),ji=Oi.toString,Ni=Mi.call(Ri),Ii=je._,Li=xi("^"+Mi.call(Ci).replace(Z,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Fi=Le?ye.Buffer:N,zi=ye.Symbol,Bi=ye.Uint8Array,Ui=Fi?Fi.
|
4677
|
+
return e?"Symbol(src)_1."+e:""}(),ji=Oi.toString,Ni=Mi.call(Ri),Ii=je._,Li=xi("^"+Mi.call(Ci).replace(Z,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Fi=Le?ye.Buffer:N,zi=ye.Symbol,Bi=ye.Uint8Array,Ui=Fi?Fi.g:N,Hi=M(Ri.getPrototypeOf,Ri),qi=Ri.create,Vi=Oi.propertyIsEnumerable,Wi=ki.splice,Yi=zi?zi.isConcatSpreadable:N,Gi=zi?zi.iterator:N,$i=zi?zi.toStringTag:N,Ki=function(){try{var e=Xn(Ri,"defineProperty")
|
4680
4678
|
return e({},"",{}),e}catch(e){}}(),Qi=ye.clearTimeout!==je.clearTimeout&&ye.clearTimeout,Xi=bi&&bi.now!==je.Date.now&&bi.now,Zi=ye.setTimeout!==je.setTimeout&&ye.setTimeout,Ji=Ei.ceil,eo=Ei.floor,to=Ri.getOwnPropertySymbols,no=Fi?Fi.isBuffer:N,ro=ye.isFinite,io=ki.join,oo=M(Ri.keys,Ri),ao=Ei.max,so=Ei.min,uo=bi.now,lo=ye.parseInt,co=Ei.random,ho=ki.reverse,fo=Xn(ye,"DataView"),po=Xn(ye,"Map"),mo=Xn(ye,"Promise"),vo=Xn(ye,"Set"),go=Xn(ye,"WeakMap"),yo=Xn(Ri,"create"),bo=go&&new go,_o={},wo=dr(fo),Eo=dr(po),Ro=dr(mo),xo=dr(vo),So=dr(go),Ao=zi?zi.prototype:N,ko=Ao?Ao.valueOf:N,Oo=Ao?Ao.toString:N,To=function(){function e(){}return function(t){return Hr(t)?qi?qi(t):(e.prototype=t,t=new e,e.prototype=N,t):{}}}()
|
4681
4679
|
be.templateSettings={escape:Y,evaluate:G,interpolate:$,variable:"",imports:{_:be}},be.prototype=Ee.prototype,be.prototype.constructor=be,Te.prototype=To(Ee.prototype),Te.prototype.constructor=Te,De.prototype=To(Ee.prototype),De.prototype.constructor=De,Pe.prototype.clear=function(){this.__data__=yo?yo(null):{},this.size=0},Pe.prototype.delete=function(e){return e=this.has(e)&&delete this.__data__[e],this.size-=e?1:0,e},Pe.prototype.get=function(e){var t=this.__data__
|
4682
4680
|
return yo?"__lodash_hash_undefined__"===(e=t[e])?N:e:Ci.call(t,e)?t[e]:N},Pe.prototype.has=function(e){var t=this.__data__
|
@@ -4710,8 +4708,8 @@ return Lr(t)&&(t=N),Zt(dt(e,1,Lr,!0),$n(t,2))}),ra=qt(function(e){var t="functio
|
|
4710
4708
|
return Zt(dt(e,1,Lr,!0),N,t)}),ia=qt(function(e,t){return Lr(e)?lt(e,t):[]}),oa=qt(function(e){return nn(i(e,Lr))}),aa=qt(function(e){var t=_r(e)
|
4711
4709
|
return Lr(t)&&(t=N),nn(i(e,Lr),$n(t,2))}),sa=qt(function(e){var t="function"==typeof(t=_r(e))?t:N
|
4712
4710
|
return nn(i(e,Lr),N,t)}),ua=qt(Rr),la=qt(function(e){var t="function"==typeof(t=1<(t=e.length)?e[t-1]:N)?(e.pop(),t):N
|
4713
|
-
return xr(e,t)}),ca=qn(function(e){var
|
4714
|
-
return!(1<
|
4711
|
+
return xr(e,t)}),ca=qn(function(e){function t(t){return it(t,e)}var n=e.length,r=n?e[0]:0,i=this.__wrapped__
|
4712
|
+
return!(1<n||this.__actions__.length)&&i instanceof De&&tr(r)?((i=i.slice(r,+r+(n?1:0))).__actions__.push({func:Ar,args:[t],thisArg:N}),new Te(i,this.__chain__).thru(function(e){return n&&!e.length&&e.push(N),e})):this.thru(t)}),ha=gn(function(e,t,n){Ci.call(e,n)?++e[n]:rt(e,n,1)}),fa=Sn(vr),da=Sn(gr),pa=gn(function(e,t,n){Ci.call(e,n)?e[n].push(t):rt(e,n,[t])}),ma=qt(function(t,n,r){var i=-1,o="function"==typeof n,a=Ir(t)?yi(t.length):[]
|
4715
4713
|
return Mo(t,function(t){a[++i]=o?e(n,t,r):xt(t,n,r)}),a}),va=gn(function(e,t,n){rt(e,n,t)}),ga=gn(function(e,t,n){e[n?0:1].push(t)},function(){return[[],[]]}),ya=qt(function(e,t){if(null==e)return[]
|
4716
4714
|
var n=t.length
|
4717
4715
|
return 1<n&&nr(e,t[0],t[1])?t=[]:2<n&&nr(t[0],t[1],t[2])&&(t=[t[0]]),Lt(e,dt(t,1),[])}),ba=Xi||function(){return je.Date.now()},_a=qt(function(e,t,n){var r=1
|
@@ -4768,7 +4766,7 @@ return r?Wt(e,0>(t=r-(t=n||t===N?1:Qr(t)))?0:t,r):[]},be.takeRightWhile=function
|
|
4768
4766
|
if("function"!=typeof e)throw new Ai("Expected a function")
|
4769
4767
|
return Hr(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),Dr(e,t,{leading:r,maxWait:t,trailing:i})},be.thru=Ar,be.toArray=$r,be.toPairs=ts,be.toPairsIn=ns,be.toPath=function(e){return Ca(e)?s(e,fr):Gr(e)?[e]:mn(Yo(ei(e)))},be.toPlainObject=Jr,be.transform=function(e,t,r){var i=Ca(e),o=i||Pa(e)||Fa(e)
|
4770
4768
|
if(t=$n(t,4),null==r){var a=e&&e.constructor
|
4771
|
-
r=o?i?new a:[]:Hr(e)&&zr(a)?To(Hi(e)):{}}return(o?n:pt)(e,function(e,n,i){return t(r,e,n,i)}),r},be.unary=function(e){return Mr(e,1)},be.union=ta,be.unionBy=na,be.unionWith=ra,be.uniq=function(e){return e&&e.length?Zt(e):[]},be.uniqBy=function(e,t){return e&&e.length?Zt(e,$n(t,2)):[]},be.uniqWith=function(e,t){return t="function"==typeof t?t:N,e&&e.length?Zt(e,N,t):[]},be.unset=function(e,t){return null==e||Jt(e,t)},be.unzip=Rr,be.unzipWith=xr,be.update=function(e,t,n){return null
|
4769
|
+
r=o?i?new a:[]:Hr(e)&&zr(a)?To(Hi(e)):{}}return(o?n:pt)(e,function(e,n,i){return t(r,e,n,i)}),r},be.unary=function(e){return Mr(e,1)},be.union=ta,be.unionBy=na,be.unionWith=ra,be.uniq=function(e){return e&&e.length?Zt(e):[]},be.uniqBy=function(e,t){return e&&e.length?Zt(e,$n(t,2)):[]},be.uniqWith=function(e,t){return t="function"==typeof t?t:N,e&&e.length?Zt(e,N,t):[]},be.unset=function(e,t){return null==e||Jt(e,t)},be.unzip=Rr,be.unzipWith=xr,be.update=function(e,t,n){return null==e?e:Vt(e,t,an(n)(gt(e,t)),void 0)},be.updateWith=function(e,t,n,r){return r="function"==typeof r?r:N,null!=e&&(e=Vt(e,t,an(n)(gt(e,t)),r)),e},be.values=ai,be.valuesIn=function(e){return null==e?[]:x(e,ii(e))},be.without=ia,be.words=li,be.wrap=function(e,t){return Sa(an(t),e)},be.xor=oa,be.xorBy=aa,be.xorWith=sa,be.zip=ua,be.zipObject=function(e,t){return rn(e||[],t||[],Je)},be.zipObjectDeep=function(e,t){return rn(e||[],t||[],Vt)},be.zipWith=la,be.entries=ts,be.entriesIn=ns,be.extend=Ha,be.extendWith=qa,di(be,be),be.add=Es,be.attempt=hs,be.camelCase=rs,be.capitalize=si,be.ceil=Rs,be.clamp=function(e,t,n){return n===N&&(n=t,t=N),n!==N&&(n=(n=Zr(n))==n?n:0),t!==N&&(t=(t=Zr(t))==t?t:0),ot(Zr(e),t,n)},be.clone=function(e){return at(e,4)},be.cloneDeep=function(e){return at(e,5)},be.cloneDeepWith=function(e,t){return at(e,5,t="function"==typeof t?t:N)},be.cloneWith=function(e,t){return at(e,4,t="function"==typeof t?t:N)},be.conformsTo=function(e,t){return null==t||st(e,t,ri(t))},be.deburr=ui,be.defaultTo=function(e,t){return null==e||e!=e?t:e},be.divide=xs,be.endsWith=function(e,t,n){e=ei(e),t=Xt(t)
|
4772
4770
|
var r=e.length
|
4773
4771
|
r=n=n===N?r:ot(Qr(n),0,r)
|
4774
4772
|
return 0<=(n-=t.length)&&e.slice(n,r)==t},be.eq=Nr,be.escape=function(e){return(e=ei(e))&&W.test(e)?e.replace(q,$e):e},be.escapeRegExp=function(e){return(e=ei(e))&&J.test(e)?e.replace(Z,"\\$&"):e},be.every=function(e,t,n){var i=Ca(e)?r:ct
|
@@ -4784,8 +4782,7 @@ return r===N?At(e,t,N,n):!!r},be.isError=Fr,be.isFinite=function(e){return"numbe
|
|
4784
4782
|
return Ot(e)},be.isNil=function(e){return null==e},be.isNull=function(e){return null===e},be.isNumber=Vr,be.isObject=Hr,be.isObjectLike=qr,be.isPlainObject=Wr,be.isRegExp=Ia,be.isSafeInteger=function(e){return Br(e)&&-9007199254740991<=e&&9007199254740991>=e},be.isSet=La,be.isString=Yr,be.isSymbol=Gr,be.isTypedArray=Fa,be.isUndefined=function(e){return e===N},be.isWeakMap=function(e){return qr(e)&&"[object WeakMap]"==Uo(e)},be.isWeakSet=function(e){return qr(e)&&"[object WeakSet]"==bt(e)},be.join=function(e,t){return null==e?"":io.call(e,t)},be.kebabCase=is,be.last=_r,be.lastIndexOf=function(e,t,n){var r=null==e?0:e.length
|
4785
4783
|
if(!r)return-1
|
4786
4784
|
var i=r
|
4787
|
-
if(n!==N&&(i=0>(i=Qr(n))?ao(r+i,0):so(i,r-1)),t==t)
|
4788
|
-
break e}e=n}else e=d(e,v,i,!0)
|
4785
|
+
if(n!==N&&(i=0>(i=Qr(n))?ao(r+i,0):so(i,r-1)),t==t){for(n=i+1;n--&&e[n]!==t;);e=n}else e=d(e,v,i,!0)
|
4789
4786
|
return e},be.lowerCase=os,be.lowerFirst=as,be.lt=za,be.lte=Ba,be.max=function(e){return e&&e.length?ht(e,hi,_t):N},be.maxBy=function(e,t){return e&&e.length?ht(e,$n(t,2),_t):N},be.mean=function(e){return g(e,hi)},be.meanBy=function(e,t){return g(e,$n(t,2))},be.min=function(e){return e&&e.length?ht(e,hi,Ct):N},be.minBy=function(e,t){return e&&e.length?ht(e,$n(t,2),Ct):N},be.stubArray=vi,be.stubFalse=gi,be.stubObject=function(){return{}},be.stubString=function(){return""},be.stubTrue=function(){return!0},be.multiply=As,be.nth=function(e,t){return e&&e.length?It(e,Qr(t)):N},be.noConflict=function(){return je._===this&&(je._=Ii),this},be.noop=pi,be.now=ba,be.pad=function(e,t,n){e=ei(e)
|
4790
4787
|
var r=(t=Qr(t))?P(e):0
|
4791
4788
|
return!t||r>=t?e:Cn(eo(t=(t-r)/2),n)+e+Cn(Ji(t),n)},be.padEnd=function(e,t,n){e=ei(e)
|
@@ -4811,8 +4808,8 @@ var i,o,a=ri(n=qa({},t.imports,r.imports,zn)),s=x(n,a),u=0
|
|
4811
4808
|
n=t.interpolate||ve
|
4812
4809
|
var l="__p+='"
|
4813
4810
|
n=xi((t.escape||ve).source+"|"+n.source+"|"+(n===$?ue:ve).source+"|"+(t.evaluate||ve).source+"|$","g")
|
4814
|
-
var c="sourceURL"
|
4815
|
-
if(e.replace(n,function(t,n,r,a,s,c){return r||(r=a),l+=e.slice(u,c).replace(ge,O),n&&(i=!0,l+="'+__e("+n+")+'"),s&&(o=!0,l+="';"+s+";\n__p+='"),r&&(l+="'+((__t=("+r+"))==null?'':__t)+'"),u=c+t.length,t}),l+="';",(t=t.variable)||(l="with(obj){"+l+"}"),l=(o?l.replace(z,""):l).replace(B,"$1").replace(U,"$1;"),l="function("+(t||"obj")+"){"+(t?"":"obj||(obj={});")+"var __t,__p=''"+(i?",__e=_.escape":"")+(o?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+l+"return __p}",(t=hs(function(){return wi(a,c+"return "+l).apply(N,s)})).source=l,Fr(t))throw t
|
4811
|
+
var c=Ci.call(t,"sourceURL")?"//# sourceURL="+(t.sourceURL+"").replace(/[\r\n]/g," ")+"\n":""
|
4812
|
+
if(e.replace(n,function(t,n,r,a,s,c){return r||(r=a),l+=e.slice(u,c).replace(ge,O),n&&(i=!0,l+="'+__e("+n+")+'"),s&&(o=!0,l+="';"+s+";\n__p+='"),r&&(l+="'+((__t=("+r+"))==null?'':__t)+'"),u=c+t.length,t}),l+="';",(t=Ci.call(t,"variable")&&t.variable)||(l="with(obj){"+l+"}"),l=(o?l.replace(z,""):l).replace(B,"$1").replace(U,"$1;"),l="function("+(t||"obj")+"){"+(t?"":"obj||(obj={});")+"var __t,__p=''"+(i?",__e=_.escape":"")+(o?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+l+"return __p}",(t=hs(function(){return wi(a,c+"return "+l).apply(N,s)})).source=l,Fr(t))throw t
|
4816
4813
|
return t},be.times=function(e,t){if(1>(e=Qr(e))||9007199254740991<e)return[]
|
4817
4814
|
var n=4294967295,r=so(e,4294967295)
|
4818
4815
|
for(e-=4294967295,r=E(r,t=$n(t));++n<e;)t(n)
|
@@ -4828,7 +4825,7 @@ for(i.global||(i=xi(i.source,ei(le.exec(i))+"g")),i.lastIndex=0;a=i.exec(s);)var
|
|
4828
4825
|
n=n.slice(0,u===N?o:u)}}else e.indexOf(Xt(i),o)!=o&&(-1<(i=n.lastIndexOf(i))&&(n=n.slice(0,i)))
|
4829
4826
|
return n+r},be.unescape=function(e){return(e=ei(e))&&V.test(e)?e.replace(H,Ke):e},be.uniqueId=function(e){var t=++Di
|
4830
4827
|
return ei(e)+t},be.upperCase=ls,be.upperFirst=cs,be.each=kr,be.eachRight=Or,be.first=br,di(be,function(){var e={}
|
4831
|
-
return pt(be,function(t,n){Ci.call(be.prototype,n)||(e[n]=t)}),e}(),{chain:!1}),be.VERSION="4.17.
|
4828
|
+
return pt(be,function(t,n){Ci.call(be.prototype,n)||(e[n]=t)}),e}(),{chain:!1}),be.VERSION="4.17.13",n("bind bindKey curry curryRight partial partialRight".split(" "),function(e){be[e].placeholder=be}),n(["drop","take"],function(e,t){De.prototype[e]=function(n){n=n===N?1:ao(Qr(n),0)
|
4832
4829
|
var r=this.__filtered__&&!t?new De(this):this.clone()
|
4833
4830
|
return r.__filtered__?r.__takeCount__=so(n,r.__takeCount__):r.__views__.push({size:so(n,4294967295),type:e+(0>r.__dir__?"Right":"")}),r},De.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}}),n(["filter","map","takeWhile"],function(e,t){var n=t+1,r=1==n||3==n
|
4834
4831
|
De.prototype[e]=function(e){var t=this.clone()
|
@@ -4837,27 +4834,28 @@ De.prototype[e]=function(){return this[n](1).value()[0]}}),n(["initial","tail"],
|
|
4837
4834
|
De.prototype[e]=function(){return this.__filtered__?new De(this):this[n](1)}}),De.prototype.compact=function(){return this.filter(hi)},De.prototype.find=function(e){return this.filter(e).head()},De.prototype.findLast=function(e){return this.reverse().find(e)},De.prototype.invokeMap=qt(function(e,t){return"function"==typeof e?new De(this):this.map(function(n){return xt(n,e,t)})}),De.prototype.reject=function(e){return this.filter(jr($n(e)))},De.prototype.slice=function(e,t){e=Qr(e)
|
4838
4835
|
var n=this
|
4839
4836
|
return n.__filtered__&&(0<e||0>t)?new De(n):(0>e?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==N&&(n=0>(t=Qr(t))?n.dropRight(-t):n.take(t-e)),n)},De.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},De.prototype.toArray=function(){return this.take(4294967295)},pt(De.prototype,function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),i=be[r?"take"+("last"==t?"Right":""):t],o=r||/^find/.test(t)
|
4840
|
-
i&&(be.prototype[t]=function(){
|
4841
|
-
|
4837
|
+
i&&(be.prototype[t]=function(){function t(e){return e=i.apply(be,u([e],s)),r&&f?e[0]:e}var a=this.__wrapped__,s=r?[1]:arguments,l=a instanceof De,c=s[0],h=l||Ca(a)
|
4838
|
+
h&&n&&"function"==typeof c&&1!=c.length&&(l=h=!1)
|
4842
4839
|
var f=this.__chain__,d=!!this.__actions__.length
|
4843
|
-
|
4844
|
-
return!o&&
|
4840
|
+
c=o&&!f,l=l&&!d
|
4841
|
+
return!o&&h?(a=l?a:new De(this),(a=e.apply(a,s)).__actions__.push({func:Ar,args:[t],thisArg:N}),new Te(a,f)):c&&l?e.apply(this,s):(a=this.thru(t),c?r?a.value()[0]:a.value():a)})}),n("pop push shift sort splice unshift".split(" "),function(e){var t=ki[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e)
|
4845
4842
|
be.prototype[e]=function(){var e=arguments
|
4846
4843
|
if(r&&!this.__chain__){var i=this.value()
|
4847
4844
|
return t.apply(Ca(i)?i:[],e)}return this[n](function(n){return t.apply(Ca(n)?n:[],e)})}}),pt(De.prototype,function(e,t){var n=be[t]
|
4848
|
-
if(n){var r=n.name+""
|
4845
|
+
if(n){var r=n.name+""
|
4846
|
+
Ci.call(_o,r)||(_o[r]=[]),_o[r].push({name:t,func:n})}}),_o[kn(N,2).name]=[{name:"wrapper",func:N}],De.prototype.clone=function(){var e=new De(this.__wrapped__)
|
4849
4847
|
return e.__actions__=mn(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=mn(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=mn(this.__views__),e},De.prototype.reverse=function(){if(this.__filtered__){var e=new De(this)
|
4850
4848
|
e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1
|
4851
4849
|
return e},De.prototype.value=function(){var e,t=this.__wrapped__.value(),n=this.__dir__,r=Ca(t),i=0>n,o=r?t.length:0
|
4852
|
-
e=
|
4853
|
-
for(var a=
|
4854
|
-
switch(c.type){case"drop":
|
4850
|
+
e=o
|
4851
|
+
for(var a=this.__views__,s=0,u=-1,l=a.length;++u<l;){var c=a[u],h=c.size
|
4852
|
+
switch(c.type){case"drop":s+=h
|
4855
4853
|
break
|
4856
|
-
case"dropRight":
|
4854
|
+
case"dropRight":e-=h
|
4857
4855
|
break
|
4858
|
-
case"take":
|
4856
|
+
case"take":e=so(e,s+h)
|
4859
4857
|
break
|
4860
|
-
case"takeRight":
|
4858
|
+
case"takeRight":s=ao(s,e-h)}}if(a=(e={start:s,end:e}).start,e=(s=e.end)-a,a=i?s:a-1,u=(s=this.__iteratees__).length,l=0,c=so(e,this.__takeCount__),!r||!i&&o==e&&c==e)return tn(t,this.__actions__)
|
4861
4859
|
r=[]
|
4862
4860
|
e:for(;e--&&l<c;){for(i=-1,o=t[a+=n];++i<u;){h=(f=s[i]).type
|
4863
4861
|
var f=(0,f.iteratee)(o)
|
@@ -1 +1 @@
|
|
1
|
-
.divider,.message-info{border-bottom:1px solid #ddd}body{font-family:Arial,"Liberation Sans","DejaVu Sans",sans-serif;font-size:12px}body.mobile,body.mobile .message{font-size:14px}pre{font-family:"Roboto Mono",Consolas,Monaco,Ubuntu Mono,monospace}table.env-table tbody tr td{border-top:none;line-height:18px;height:18px;vertical-align:top}table.env-table,table.env-table table{border-spacing:0;border-collapse:collapse}table.env-table td{padding-right:5px}tbody tr{width:98%}.message-row{font-family:Roboto;display:flex}.pattern-wrapper .pattern-input,.settings-section .api-error{font-family:Consolas,"Roboto Mono",Monaco,Ubuntu Mono,monospace}.message-row .protected,.message-row .severity{text-align:center;width:25px;flex-grow:0;flex-shrink:0;font-size:12px}.message-row div{border-top:.5px #e9e9e9 solid;padding-top:1px;padding-bottom:1px;line-height:25px}.message-row .count{width:30px;flex-grow:0;flex-shrink:0;padding-right:4px;box-sizing:border-box;font-size:11px;font-weight:700;text-align:right}.message-row .message-body{flex-grow:1;flex-shrink:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px}.message-row .time{flex-grow:0;flex-shrink:0;color:#999;vertical-align:top;font-size:12px;padding-right:8px}.action-panel .search,.action-panel i.fa,.btn .fa,.btn span,.pattern-wrapper .shrink,.search-clear-all .clear,input,label span{vertical-align:middle}.message-row:hover{background-color:#f8f8f8;cursor:pointer}.message-row.selected{background-color:#dfdfdf}i.fatal{color:#e00}i.error{color:#900}i.warning{color:#feb800}.debug{color:#777}.btn,.tabs a{text-decoration:none;color:#333}.action-panel .search{border:1px solid #ddd;padding:3px;box-sizing:border-box}#log-table .show-more{text-align:center;height:30px;line-height:30px;text-decoration:none;background-color:#ddd;cursor:pointer;margin-top:8px}#overlay,.divider{cursor:row-resize}#bottom-panel{position:fixed;bottom:0;left:0;right:0;height:300px;background-color:#f1f1f1;padding:0 8px 8px;z-index:2}#bottom-panel.full{position:static;background-color:inherit;height:90%}#bottom-panel.full>div{padding-bottom:40px}#bottom-panel.full .tabs{display:none}#bottom-panel.full .message-info{position:static}#bottom-panel.full .message-info .content{display:block;position:static}#bottom-panel.full button.delete,.hidden{display:none}#bottom-panel.full .save,#bottom-panel.full .share{bottom:10px}#bottom-panel.full .message-actions button{margin-top:8px}#bottom-panel.full .message-actions{position:fixed;height:40px;width:100%;left:0;bottom:0;background-color:#eee;border-top:1px solid #dfdfdf;padding-left:10px}.divider,.tabs{border-top:1px solid #ddd}.message-actions{position:absolute;bottom:5px;right:0;margin-right:10px}.message-actions button{margin-left:5px}.divider{position:fixed;bottom:310px;left:0;right:0;height:15px;background-color:#fafafa}.divider div{margin:auto;width:24px;height:1px;background-color:#ccc;position:relative}.divider .line-1{top:5px}.divider .line-2{top:6px}.divider .line-3{top:7px}#top-panel{position:fixed;top:0;left:0;right:0;bottom:320px;overflow:auto}.action-panel,.message-info{position:absolute;left:0;right:0}.message-info{top:0}.action-panel{bottom:0;font-weight:700}.action-panel input{margin:0}.severity-filters label{margin-right:18px}.search-clear-all .clear{float:right}#log-table{margin:auto;width:99%}.message-info .env-table,.message-info pre{position:relative;margin:5px 10px 10px}#overlay{position:fixed;z-index:99999;top:0;bottom:0;left:0;right:0;opacity:0}.message-info .content,.tabs{position:absolute;left:0;right:0}.message-info .content{top:0;bottom:35px;overflow:auto;display:none}.message-info .content.active{display:block}.tabs{bottom:13px;list-style-type:none;margin:0 0 5px;padding:0 0 0 10px}.tabs a,.tabs li{position:relative}.tabs li{float:left;padding-right:5px;margin:0}.tabs a{top:6px;border:1px solid #ddd;border-top:none;border-bottom-left-radius:5px;border-bottom-right-radius:5px;padding:6px;background-color:#e1e1e1}.tabs a.active{border-top:1px solid #f1f1f1;background-color:#f1f1f1}.btn{display:inline-block;margin:0;padding:5px 12px;font-size:1em;line-height:0;text-align:center;cursor:pointer;transition:all .25s;background-color:#ddd;border:none;font-weight:400}.btn:hover{color:#000;background-color:#ccc}.btn .fa{margin-right:7px}.btn:active{text-shadow:none}.btn.danger:hover{background-color:#c63c1b;color:#eee}.btn.ok{background-color:#3781dc;color:#fff}.btn.ok:hover{background-color:#286dc2;color:#fff}.search-clear-all .clear,.search-clear-all .search{height:100%}.search-clear-all .clear,.search-clear-all .search,.severity-filters label{align-self:center}.search-clear-all .footer-btns .settings{margin:0 7px}.search-clear-all{display:flex;justify-content:space-between}.search-clear-all .search{min-width:0;flex-shrink:2}.footer-btns{flex-grow:0;flex-shrink:0}@media (min-width:770px){.search-clear-all,.severity-filters{height:100%}.more-wrapping,.severity-filters{display:flex}.severity-filters{float:left}.action-panel{padding:10px;box-sizing:border-box;height:42px}.message-info{bottom:42px}}@media (max-width:770px){.severity-filters{padding:10px}.search-clear-all{padding:0 10px 10px}.action-panel{height:69px}.message-info{bottom:69px}}@media (max-width:430px){.severity-filters{overflow-x:scroll;overflow-y:hidden;white-space:nowrap}.more-wrapping:after,.more-wrapping:before{content:"";position:absolute;height:18px}.more-wrapping:before{width:15px;margin-left:-10px;background:linear-gradient(to right,#f1f1f1 0,rgba(241,241,241,.001) 100%)}.more-wrapping:after{right:0;width:23px;background:linear-gradient(to left,#f1f1f1 0,rgba(241,241,241,.001) 100%)}}.btn.no-text .fa{margin:0}.btn[disabled]{opacity:.5}.actions-menu{position:absolute;background:#fafafa;display:inline-flex;flex-direction:column;bottom:27px;right:45px;width:115px;padding:5px 5px 0;box-shadow:0 4px 14px rgba(0,0,0,.15);z-index:3}.actions-menu button{margin:0 0 5px;height:27px}.nav-controls{padding:10px}#bottom-panel:not(.full) .nav-controls{position:sticky;position:-webkit-sticky;position:-moz-sticky;position:-ms-sticky;position:-o-sticky;top:0;background:#f1f1f1;z-index:1;border-bottom:1px solid #ddd}.env-number{margin:0 7px}.expand-list{text-decoration:underline;color:#00f;cursor:pointer}.settings-page{max-width:1110px;margin-right:auto;margin-left:auto;font-size:15px;padding:0 10px 70px}.settings-header{display:flex;align-items:center;margin-bottom:5px}.settings-header .header-title{flex-grow:1}.settings-header .header-logo{width:50px;height:50px}.settings-section{border-top:1px solid #ddd;padding-top:15px}.settings-section .section-title{margin-top:0}.settings-section .subsection-title{margin-bottom:10px}.settings-section .tip{font-style:italic;font-size:13px;color:grey}.settings-section .pattern-wrapper{margin-top:10px;font-size:16px;display:flex;height:33px}.settings-section .api-error{margin-top:5px;color:red}.pattern-wrapper .pattern-input{width:600px;font-size:inherit;padding:5px 0;height:100%;box-sizing:border-box;vertical-align:middle;flex-grow:1;flex-shrink:1}.btn.new-pattern{height:100%;line-height:18px}.pattern-wrapper .shrink{height:100%;width:40px;text-align:center;box-sizing:border-box;flex-grow:0;flex-shrink:0;margin-left:10px}.fa{opacity:.7}.pattern-wrapper .shrink.reset{background:unset;width:unset;padding:0;margin-left:8px}
|
1
|
+
.divider,.message-info{border-bottom:1px solid #ddd}body{font-family:Arial,"Liberation Sans","DejaVu Sans",sans-serif;font-size:12px}body.mobile,body.mobile .message{font-size:14px}pre{font-family:"Roboto Mono",Consolas,Monaco,Ubuntu Mono,monospace}table.env-table tbody tr td{border-top:none;line-height:18px;height:18px;vertical-align:top}table.env-table,table.env-table table{border-spacing:0;border-collapse:collapse}table.env-table td{padding-right:5px}tbody tr{width:98%}.message-row{font-family:Roboto;display:flex}.pattern-wrapper .pattern-input,.settings-section .api-error{font-family:Consolas,"Roboto Mono",Monaco,Ubuntu Mono,monospace}.message-row .protected,.message-row .severity{text-align:center;width:25px;flex-grow:0;flex-shrink:0;font-size:12px}.message-row div{border-top:.5px #e9e9e9 solid;padding-top:1px;padding-bottom:1px;line-height:25px}.message-row .count{width:30px;flex-grow:0;flex-shrink:0;padding-right:4px;box-sizing:border-box;font-size:11px;font-weight:700;text-align:right}.message-row .message-body{flex-grow:1;flex-shrink:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px}.message-row .time{flex-grow:0;flex-shrink:0;color:#999;vertical-align:top;font-size:12px;padding-right:8px}.action-panel .search,.action-panel i.fa,.btn .fa,.btn span,.pattern-wrapper .shrink,.search-clear-all .clear,input,label span{vertical-align:middle}.message-row:hover{background-color:#f8f8f8;cursor:pointer}.message-row.selected{background-color:#dfdfdf}i.fatal{color:#e00}i.error{color:#900}i.warning{color:#feb800}.debug{color:#777}.btn,.tabs a{text-decoration:none;color:#333}.action-panel .search{border:1px solid #ddd;padding:3px;box-sizing:border-box}#log-table .show-more{text-align:center;height:30px;line-height:30px;text-decoration:none;background-color:#ddd;cursor:pointer;margin-top:8px}#overlay,.divider{cursor:row-resize}#bottom-panel{position:fixed;bottom:0;left:0;right:0;height:300px;background-color:#f1f1f1;padding:0 8px 8px;z-index:2}#bottom-panel.full{position:static;background-color:inherit;height:90%}#bottom-panel.full>div{padding-bottom:40px}#bottom-panel.full .tabs{display:none}#bottom-panel.full .message-info{position:static}#bottom-panel.full .message-info .content{display:block;position:static}#bottom-panel.full button.delete,.hidden{display:none}#bottom-panel.full .save,#bottom-panel.full .share{bottom:10px}#bottom-panel.full .message-actions button{margin-top:8px}#bottom-panel.full .message-actions{position:fixed;height:40px;width:100%;left:0;bottom:0;background-color:#eee;border-top:1px solid #dfdfdf;padding-left:10px}.divider,.tabs{border-top:1px solid #ddd}.message-actions{position:absolute;bottom:5px;right:0;margin-right:10px}.message-actions button{margin-left:5px}.divider{position:fixed;bottom:310px;left:0;right:0;height:15px;background-color:#fafafa}.divider div{margin:auto;width:24px;height:1px;background-color:#ccc;position:relative}.divider .line-1{top:5px}.divider .line-2{top:6px}.divider .line-3{top:7px}#top-panel{position:fixed;top:0;left:0;right:0;bottom:320px;overflow:auto}.action-panel,.message-info{position:absolute;left:0;right:0}.message-info{top:0}.action-panel{bottom:0;font-weight:700}.action-panel input{margin:0}.severity-filters label{margin-right:18px}.search-clear-all .clear{float:right}#log-table{margin:auto;width:99%}.message-info .env-table,.message-info pre{position:relative;margin:5px 10px 10px}#overlay{position:fixed;z-index:99999;top:0;bottom:0;left:0;right:0;opacity:0}.message-info .content,.tabs{position:absolute;left:0;right:0}.message-info .content{top:0;bottom:35px;overflow:auto;display:none}.message-info .content.active{display:block}.tabs{bottom:13px;list-style-type:none;margin:0 0 5px;padding:0 0 0 10px}.tabs a,.tabs li{position:relative}.tabs li{float:left;padding-right:5px;margin:0}.tabs a{top:6px;border:1px solid #ddd;border-top:none;border-bottom-left-radius:5px;border-bottom-right-radius:5px;padding:6px;background-color:#e1e1e1}.tabs a.active{border-top:1px solid #f1f1f1;background-color:#f1f1f1}.btn{display:inline-block;margin:0;padding:5px 12px;font-size:1em;line-height:0;text-align:center;cursor:pointer;transition:all .25s;background-color:#ddd;border:none;font-weight:400}.btn:hover{color:#000;background-color:#ccc}.btn .fa{margin-right:7px}.btn:active{text-shadow:none}.btn.danger:hover{background-color:#c63c1b;color:#eee}.btn.ok{background-color:#3781dc;color:#fff}.btn.ok:hover{background-color:#286dc2;color:#fff}.search-clear-all .clear,.search-clear-all .search{height:100%}.search-clear-all .clear,.search-clear-all .search,.severity-filters label{align-self:center}.search-clear-all .footer-btns .settings{margin:0 7px}.search-clear-all{display:flex;justify-content:space-between}.search-clear-all .search{min-width:0;flex-shrink:2}.footer-btns{flex-grow:0;flex-shrink:0}@media (min-width:770px){.search-clear-all,.severity-filters{height:100%}.more-wrapping,.severity-filters{display:flex}.severity-filters{float:left}.action-panel{padding:10px;box-sizing:border-box;height:42px}.message-info{bottom:42px}}@media (max-width:770px){.severity-filters{padding:10px}.search-clear-all{padding:0 10px 10px}.action-panel{height:69px}.message-info{bottom:69px}}@media (max-width:430px){.severity-filters{overflow-x:scroll;overflow-y:hidden;white-space:nowrap}.more-wrapping:after,.more-wrapping:before{content:"";position:absolute;height:18px}.more-wrapping:before{width:15px;margin-left:-10px;background:linear-gradient(to right,#f1f1f1 0,rgba(241,241,241,.001) 100%)}.more-wrapping:after{right:0;width:23px;background:linear-gradient(to left,#f1f1f1 0,rgba(241,241,241,.001) 100%)}}.btn.no-text .fa{margin:0}.btn[disabled]{opacity:.5}.actions-menu{position:absolute;background:#fafafa;display:inline-flex;flex-direction:column;bottom:27px;right:45px;width:115px;padding:5px 5px 0;box-shadow:0 4px 14px rgba(0,0,0,.15);z-index:3}.actions-menu button{margin:0 0 5px;height:27px}.nav-controls{padding:10px}#bottom-panel:not(.full) .nav-controls{position:sticky;position:-webkit-sticky;position:-moz-sticky;position:-ms-sticky;position:-o-sticky;top:0;background:#f1f1f1;z-index:1;border-bottom:1px solid #ddd}.env-number{margin:0 7px}.expand-list{text-decoration:underline;color:#00f;cursor:pointer}.settings-page{max-width:1110px;margin-right:auto;margin-left:auto;font-size:15px;padding:0 10px 70px}.settings-header{display:flex;align-items:center;margin-bottom:5px}.settings-header .header-title{flex-grow:1}.settings-header .header-logo{width:50px;height:50px}.settings-section{border-top:1px solid #ddd;padding-top:15px}.settings-section .section-title{margin-top:0}.settings-section .subsection-title{margin-bottom:10px}.settings-section .tip{font-style:italic;font-size:13px;color:grey}.settings-section .pattern-wrapper{margin-top:10px;font-size:16px;display:flex;height:33px}.settings-section .api-error{margin-top:5px;color:red}.pattern-wrapper .pattern-input{width:600px;font-size:inherit;padding:5px 0;height:100%;box-sizing:border-box;vertical-align:middle;flex-grow:1;flex-shrink:1}.retro-checkbox .checkbox{margin:0}.retro-checkbox{margin-top:7px;margin-bottom:15px}.btn.new-pattern{height:100%;line-height:18px}.pattern-wrapper .shrink{height:100%;width:40px;text-align:center;box-sizing:border-box;flex-grow:0;flex-shrink:0;margin-left:10px}.fa{opacity:.7}.pattern-wrapper .shrink.reset{background:unset;width:unset;padding:0;margin-left:8px}
|
@@ -79,7 +79,8 @@ export default Component.extend({
|
|
79
79
|
if (pattern.get("isNew")) {
|
80
80
|
promise = this.makeAPICall({
|
81
81
|
method: "POST",
|
82
|
-
pattern: pattern.get("valueBuffer")
|
82
|
+
pattern: pattern.get("valueBuffer"),
|
83
|
+
retroactive: pattern.retroactive
|
83
84
|
}).then(response => {
|
84
85
|
pattern.updateValue(response.pattern);
|
85
86
|
pattern.set("isNew", false);
|
@@ -114,6 +115,10 @@ export default Component.extend({
|
|
114
115
|
})
|
115
116
|
.catch(response => this.catchBlock(pattern, response))
|
116
117
|
.always(() => this.alwaysBlock(pattern));
|
118
|
+
},
|
119
|
+
|
120
|
+
checkboxChanged(pattern) {
|
121
|
+
pattern.toggleProperty("retroactive");
|
117
122
|
}
|
118
123
|
}
|
119
124
|
});
|
@@ -619,6 +619,15 @@ label span {
|
|
619
619
|
flex-shrink: 1;
|
620
620
|
}
|
621
621
|
|
622
|
+
.retro-checkbox .checkbox {
|
623
|
+
margin: 0;
|
624
|
+
}
|
625
|
+
|
626
|
+
.retro-checkbox {
|
627
|
+
margin-top: 7px;
|
628
|
+
margin-bottom: 15px;
|
629
|
+
}
|
630
|
+
|
622
631
|
.btn.new-pattern {
|
623
632
|
height: 100%;
|
624
633
|
line-height: 18px;
|
@@ -26,6 +26,14 @@
|
|
26
26
|
<i class="fa fa-rotate-right"></i>
|
27
27
|
</button>
|
28
28
|
</div>
|
29
|
+
{{#if applyRetroactivelyCheckbox}}
|
30
|
+
{{#if pattern.isNew}}
|
31
|
+
<div class="retro-checkbox">
|
32
|
+
<input checked={{pattern.retroactive}} type="checkbox" class="checkbox" onclick={{action "checkboxChanged" pattern}}>
|
33
|
+
Apply retroactively
|
34
|
+
</div>
|
35
|
+
{{/if}}
|
36
|
+
{{/if}}
|
29
37
|
{{~#if pattern.error~}}
|
30
38
|
<pre class="api-error">
|
31
39
|
{{~pattern.error~}}
|
@@ -9927,9 +9927,9 @@
|
|
9927
9927
|
}
|
9928
9928
|
},
|
9929
9929
|
"lodash": {
|
9930
|
-
"version": "4.17.
|
9931
|
-
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.
|
9932
|
-
"integrity": "sha512-
|
9930
|
+
"version": "4.17.13",
|
9931
|
+
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.13.tgz",
|
9932
|
+
"integrity": "sha512-vm3/XWXfWtRua0FkUyEHBZy8kCPjErNBT9fJx8Zvs+U6zjqPbTUOpkaoum3O5uiA8sm+yNMHXfYkTUHFoMxFNA=="
|
9933
9933
|
},
|
9934
9934
|
"lodash._baseassign": {
|
9935
9935
|
"version": "3.2.0",
|
@@ -10203,9 +10203,9 @@
|
|
10203
10203
|
}
|
10204
10204
|
},
|
10205
10205
|
"lodash.defaultsdeep": {
|
10206
|
-
"version": "4.6.
|
10207
|
-
"resolved": "https://registry.npmjs.org/lodash.defaultsdeep/-/lodash.defaultsdeep-4.6.
|
10208
|
-
"integrity": "
|
10206
|
+
"version": "4.6.1",
|
10207
|
+
"resolved": "https://registry.npmjs.org/lodash.defaultsdeep/-/lodash.defaultsdeep-4.6.1.tgz",
|
10208
|
+
"integrity": "sha512-3j8wdDzYuWO3lM3Reg03MuQR957t287Rpcxp1njpEa8oDrikb+FwGdW3n+FELh/A6qib6yPit0j/pv9G/yeAqA==",
|
10209
10209
|
"dev": true
|
10210
10210
|
},
|
10211
10211
|
"lodash.escape": {
|
@@ -10301,9 +10301,9 @@
|
|
10301
10301
|
}
|
10302
10302
|
},
|
10303
10303
|
"lodash.merge": {
|
10304
|
-
"version": "4.6.
|
10305
|
-
"resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.
|
10306
|
-
"integrity": "sha512-
|
10304
|
+
"version": "4.6.2",
|
10305
|
+
"resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
|
10306
|
+
"integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
|
10307
10307
|
"dev": true
|
10308
10308
|
},
|
10309
10309
|
"lodash.noop": {
|
@@ -10712,9 +10712,9 @@
|
|
10712
10712
|
}
|
10713
10713
|
},
|
10714
10714
|
"mixin-deep": {
|
10715
|
-
"version": "1.3.
|
10716
|
-
"resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.
|
10717
|
-
"integrity": "sha512-
|
10715
|
+
"version": "1.3.2",
|
10716
|
+
"resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz",
|
10717
|
+
"integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==",
|
10718
10718
|
"dev": true,
|
10719
10719
|
"requires": {
|
10720
10720
|
"for-in": "^1.0.2",
|
data/client-app/package.json
CHANGED
data/lib/logster/base_store.rb
CHANGED
@@ -53,6 +53,11 @@ module Logster
|
|
53
53
|
not_implemented
|
54
54
|
end
|
55
55
|
|
56
|
+
# Get all messages that you have in the store
|
57
|
+
def get_all_messages
|
58
|
+
not_implemented
|
59
|
+
end
|
60
|
+
|
56
61
|
# Get a message's env by its message_key
|
57
62
|
def get_env(message_key)
|
58
63
|
not_implemented
|
@@ -67,6 +72,11 @@ module Logster
|
|
67
72
|
not_implemented
|
68
73
|
end
|
69
74
|
|
75
|
+
# Delete messages associated with given message_keys
|
76
|
+
def bulk_delete(message_keys, grouping_keys)
|
77
|
+
not_implemented
|
78
|
+
end
|
79
|
+
|
70
80
|
# Clear the protected mark for a message.
|
71
81
|
def unprotect(message_key)
|
72
82
|
not_implemented
|
@@ -214,7 +214,11 @@ module Logster
|
|
214
214
|
|
215
215
|
case request_method
|
216
216
|
when "POST"
|
217
|
-
|
217
|
+
args = {}
|
218
|
+
if Logster::SuppressionPattern === record && [true, "true"].include?(req.params["retroactive"])
|
219
|
+
args[:retroactive] = true
|
220
|
+
end
|
221
|
+
record.save(args)
|
218
222
|
when "PUT"
|
219
223
|
record.modify(req.params["new_pattern"])
|
220
224
|
when "DELETE"
|
data/lib/logster/pattern.rb
CHANGED
data/lib/logster/redis_store.rb
CHANGED
@@ -46,6 +46,17 @@ module Logster
|
|
46
46
|
end
|
47
47
|
end
|
48
48
|
|
49
|
+
def bulk_delete(message_keys, grouping_keys)
|
50
|
+
@redis.multi do
|
51
|
+
@redis.hdel(hash_key, message_keys)
|
52
|
+
@redis.hdel(env_key, message_keys)
|
53
|
+
@redis.hdel(grouping_key, grouping_keys)
|
54
|
+
message_keys.each do |k|
|
55
|
+
@redis.lrem(list_key, -1, k)
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
49
60
|
def replace_and_bump(message, save_env: true)
|
50
61
|
# TODO make it atomic
|
51
62
|
exists = @redis.hexists(hash_key, message.key)
|
@@ -189,6 +200,10 @@ module Logster
|
|
189
200
|
message
|
190
201
|
end
|
191
202
|
|
203
|
+
def get_all_messages
|
204
|
+
bulk_get(@redis.lrange(list_key, 0, -1))
|
205
|
+
end
|
206
|
+
|
192
207
|
def bulk_get(message_keys)
|
193
208
|
envs = @redis.hmget(env_key, message_keys)
|
194
209
|
@redis.hmget(hash_key, message_keys).map!.with_index do |json, ind|
|
@@ -4,9 +4,10 @@ module Logster
|
|
4
4
|
"__LOGSTER__suppression_patterns_set".freeze
|
5
5
|
end
|
6
6
|
|
7
|
-
def save
|
7
|
+
def save(args = {})
|
8
8
|
super
|
9
9
|
@store.clear_suppression_patterns_cache
|
10
|
+
retro_delete_messages if args[:retroactive]
|
10
11
|
end
|
11
12
|
|
12
13
|
def destroy(clear_cache: true) # arg used in tests
|
@@ -14,5 +15,19 @@ module Logster
|
|
14
15
|
@store.remove_ignore_count(self.to_s)
|
15
16
|
@store.clear_suppression_patterns_cache if clear_cache
|
16
17
|
end
|
18
|
+
|
19
|
+
private
|
20
|
+
|
21
|
+
def retro_delete_messages
|
22
|
+
keys = []
|
23
|
+
grouping_keys = []
|
24
|
+
@store.get_all_messages.each do |message|
|
25
|
+
if message =~ self.pattern
|
26
|
+
keys << message.key
|
27
|
+
grouping_keys << message.grouping_key
|
28
|
+
end
|
29
|
+
end
|
30
|
+
@store.bulk_delete(keys, grouping_keys) if keys.size > 0 && grouping_keys.size > 0
|
31
|
+
end
|
17
32
|
end
|
18
33
|
end
|
data/lib/logster/version.rb
CHANGED
@@ -148,6 +148,37 @@ class TestViewer < Minitest::Test
|
|
148
148
|
Logster.config.enable_custom_patterns_via_ui = false
|
149
149
|
end
|
150
150
|
|
151
|
+
def test_suppression_patterns_have_optional_retroactive_effect
|
152
|
+
Logster.config.enable_custom_patterns_via_ui = true
|
153
|
+
|
154
|
+
Logster.store.report(Logger::INFO, "test", "non-matching message")
|
155
|
+
Logster.store.report(Logger::INFO, "test", "apple orange")
|
156
|
+
Logster.store.report(Logger::INFO, "test", "apples oranges")
|
157
|
+
|
158
|
+
request.post("/logsie/patterns/suppression.json",
|
159
|
+
params: { pattern: "apple" }
|
160
|
+
)
|
161
|
+
messages = Logster.store.latest
|
162
|
+
assert_includes(messages.map(&:message), "apple orange")
|
163
|
+
assert_includes(messages.map(&:message), "apples oranges")
|
164
|
+
assert_includes(messages.map(&:message), "non-matching message")
|
165
|
+
|
166
|
+
request.post("/logsie/patterns/suppression.json",
|
167
|
+
params: { pattern: "orange", retroactive: true }
|
168
|
+
)
|
169
|
+
messages = Logster.store.latest
|
170
|
+
assert_equal(1, messages.size)
|
171
|
+
assert_equal("non-matching message", messages.first.message)
|
172
|
+
|
173
|
+
response = request.post("/logsie/patterns/suppression.json",
|
174
|
+
params: { pattern: "doesntmatchanything", retroactive: true }
|
175
|
+
)
|
176
|
+
# assert no error occures if it doesn't delete anything retroactively
|
177
|
+
assert_equal(200, response.status)
|
178
|
+
ensure
|
179
|
+
Logster.config.enable_custom_patterns_via_ui = false
|
180
|
+
end
|
181
|
+
|
151
182
|
def test_modifying_patterns_returns_404_for_non_existing_patterns
|
152
183
|
Logster.config.enable_custom_patterns_via_ui = true
|
153
184
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logster
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- UI for viewing logs in Rack
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-10-
|
11
|
+
date: 2019-10-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|