diff --git a/package-lock.json b/package-lock.json index 2bc766f..35839f6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "jobscraper", - "version": "1.0.0", + "version": "1.0.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index f6e82ef..a982fb4 100644 --- a/package.json +++ b/package.json @@ -1,11 +1,12 @@ { "name": "jobscraper", - "version": "1.0.1", + "version": "1.0.2", "description": "", "main": "index.js", "scripts": { "release": "vik patch -t", - "grabber": "node grabber.js" + "grabber": "node grabber.js", + "server" : "node server/server.js" }, "author": "", "license": "ISC", @@ -36,4 +37,4 @@ "express-session": "^1.17.1", "helmet": "^3.22.0" } -} \ No newline at end of file +} diff --git a/server/dist/3rdpartylicenses.txt b/server/dist/3rdpartylicenses.txt new file mode 100644 index 0000000..64cbe6f --- /dev/null +++ b/server/dist/3rdpartylicenses.txt @@ -0,0 +1,47 @@ +css-loader +MIT +Copyright JS Foundation and other contributors + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +'Software'), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +zone.js +MIT +The MIT License + +Copyright (c) 2010-2020 Google LLC. http://angular.io/license + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/server/dist/build/bundle.css b/server/dist/build/bundle.css deleted file mode 100644 index 68bfe2f..0000000 --- a/server/dist/build/bundle.css +++ /dev/null @@ -1,6 +0,0 @@ -@import url("https://fonts.googleapis.com/css?family=Roboto+Condensed");*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}body{height:100%;overflow-x:hidden;font-family:'Roboto Condensed', sans-serif;font-size:1rem;line-height:1.6}a{color:#5e81ac;text-decoration:none}a:hover{color:#666}a.active{color:#76404C}ul{list-style:none}img{width:100%}.container{max-width:1100px;margin:auto;overflow-y:scroll;padding:0 2rem}.fullWidth{max-width:100vw;padding:0 0}.noscroll{overflow:hidden}hr{margin-top:2.2rem;margin-bottom:2rem;border-width:0;border-top:1px solid #434c5e}.flex{display:flex}.pad{padding:0.5rem}.pad--1{padding:1rem}.pad--2{padding:2rem}.pad--3{padding:3rem}.pady{padding:0.5rem 0}.pady--top{padding-top:0.5rem}.pady--bottom{padding-bottom:0.5rem}.pady--1{padding:1rem 0}.pady--2{padding:2rem 0}.pady--3{padding:3rem 0}.padx{padding:0 0.5rem}.padx--right{padding-right:0.5rem}.padx--left{padding-left:0.5rem}.padx--1{padding:0 1rem}.padx--2{padding:0 2rem}.padx--3{padding:0 3rem}.grid{display:flex;display:-ms-flexbox;flex-wrap:wrap}.grid--1{display:grid;grid-template-columns:repeat(1, 1fr);grid-gap:1rem}.grid--2{display:grid;grid-template-columns:repeat(2, 1fr);grid-gap:1rem}.grid--3{display:grid;grid-template-columns:repeat(3, 1fr);grid-gap:1px}.grid--4{display:grid;grid-template-columns:repeat(4, 1fr);grid-gap:1rem}.row{margin-left:3px;margin-right:3px}.row:before,.row:after{content:" ";display:table}.row:after{clear:both}.column,.columns{margin-left:4%}.column:first-child,.columns:first-child{margin-left:0}.col-1{width:8.33333%}.col-2{width:16.66667%}.col-3{width:25%}.col-4{width:33.33333%}.col-5{width:41.66667%}.col-6{width:50%}.col-7{width:58.33333%}.col-8{width:66.66667%}.col-9{width:75%}.col-10{width:83.33333%}.col-11{width:91.66667%}.col-12{width:100%;margin-left:0}.col-1-3rd{width:32.666667%}.col-2-3rd{width:65.3333333333%}.col-half{width:48%}.offset-1-col{margin-left:8.66666666667%}.offset-2-col{margin-left:17.3333333333%}.offset-3-col{margin-left:26%}.offset-4-col{margin-left:34.6666666667%}.offset-5-col{margin-left:43.3333333333%}.offset-6-col{margin-left:52%}.offset-7-col{margin-left:60.6666666667%}.offset-8-col{margin-left:69.3333333333%}.offset-9-col{margin-left:78.0%}.offset-10-col{margin-left:86.6666666667%}.offset-11-col{margin-left:95.3333333333%}.offset-1-3rd-col{margin-left:34.6666666667%}.offset-2-3rd-col{margin-left:69.3333333333%}.offset-half-col{margin-left:52%}.x-large{font-size:4rem;line-height:1.2;margin-bottom:1rem}.large{font-size:3rem;line-height:1.2;margin-bottom:1rem}.lead{font-size:1.5rem;margin-bottom:1rem}.text-primary{color:#5e81ac}.text-dark{color:#434c5e}.text-light{color:#434c5e}.text-success{color:#a3be8c}.text-danger{color:#bf616a}.text-highlight{color:#76404C}.text-highlight2{color:#ebcb8b}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-display1,h1{font-weight:400;font-size:34px;line-height:40px}.text-title,h3{font-weight:400;font-size:20px;line-height:28px}.text-subhead,h4{font-weight:400;font-size:16px;line-height:24px}.text-body2,h5{font-weight:500;font-size:14px;line-height:24px}.text-body1{font-weight:400;font-size:14px;line-height:20px}.text-caption{font-weight:400;font-size:12px;line-height:16px}.align-middle{vertical-align:middle !important}.all-center{display:flex;flex-direction:column;width:100%;margin:auto;justify-content:center;align-items:center;text-align:center}.text-justify{text-align:justify !important}.text-nowrap{white-space:nowrap !important}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-bottom{vertical-align:bottom !important}.btn,.btn--slim{display:inline-block;background:#d8dee9;color:#333;padding:0.4rem 1.3rem;font-size:1rem;border:none;cursor:pointer;margin-right:0.5rem;transition:opacity 0.2s ease-in;outline:none}.btn:disabled,.btn--slim:disabled{cursor:not-allowed;pointer-events:none;opacity:0.60;box-shadow:none}.btn:enabled:hover,.btn--slim:enabled:hover{opacity:0.8}.btn--slim{padding:0.4rem}.btn-link{background:none;padding:0;margin:0}.btn-block{display:block;width:100%}.btn-sm,.btn-sm--slim{font-size:0.8rem;padding:0.3rem 1rem;margin-right:0.2rem}.btn-sm--slim{padding:0.3rem}.badge{display:inline-block;font-size:0.6rem;padding:0.1rem 0.4rem;text-align:center;margin:0.3rem;background:#d8dee9;color:#333;border-radius:3px}.alert{padding:0.7rem;margin:1rem 0;opacity:0.9;background:#d8dee9;color:#333}.btn-primary,.bg-primary,.badge-primary,.alert-primary{background:#5e81ac;color:#fff}.btn-light,.bg-light,.badge-light,.alert-light{background:#d8dee9;color:#333}.btn-dark,.bg-dark,.badge-dark,.alert-dark{background:#434c5e;color:#fff}.btn-danger,.bg-danger,.badge-danger,.alert-danger{background:#bf616a;color:#fff}.btn-success,.bg-success,.badge-success,.alert-success{background:#a3be8c;color:#fff}.btn-white,.bg-white,.badge-white,.alert-white{background:#fff;color:#333;border:#ccc solid 1px}.bg-light,.badge-light{border:#ccc solid 1px}.table-responsive{display:block;overflow-x:auto;width:100%}table{max-width:100%;width:100%;border:0;margin-bottom:1rem;border-collapse:collapse}tr{border-top:1px solid #ccc}tbody tr:nth-of-type(odd){background-color:rgba(0, 0, 0, 0.04)}tbody td{border-top:1px solid #e1e1e1}table th,table td{padding:1rem;text-align:left}table th{background:#d8dee9}.navbar{position:fixed;display:flex;justify-content:space-between;align-items:center;z-index:2;width:100%;opacity:0.9;margin-bottom:1rem;min-height:56px}.navbar ul{display:flex}.navbar a{color:#fff;padding:0.45rem;margin:0 0.25rem}.navbar a:hover{color:#d8dee9}.navbar .welcome span{margin-right:0.6rem}.navbar .navbar-section{align-items:center;display:flex;display:-ms-flexbox;flex:1 0 0;-ms-flex-align:center}.navbar .navbar-section:not(:first-child):last-child{justify-content:flex-end}.navbar .navbar-brand{font-size:200%;font-weight:bold}header + div.container{position:relative;top:56px;max-height:calc(100vh - 56px)}.m{margin:0.5rem}.m--1{margin:1rem}.m--2{margin:2rem}.m--3{margin:3rem}.mb{margin-bottom:.1rem !important}.mb--1{margin-bottom:.2rem !important}.mb--2{margin-bottom:.4rem !important}.ml{margin-left:.1rem !important}.ml--1{margin-left:.2rem !important}.ml--2{margin-left:.4rem !important}.mr{margin-right:.1rem !important}.mr--1{margin-right:.2rem !important}.mr .mr-2{margin-right:.4rem !important}.mt{margin-top:.1rem !important}.mt--1{margin-top:.2rem !important}.mt--2{margin-top:.4rem !important}.mx{margin-left:0.5rem !important;margin-right:0.5rem !important}.mx--1{margin-left:1rem !important;margin-right:1rem !important}.mx--2{margin-left:2rem !important;margin-right:2rem !important}.my{margin:0.5rem 0}.my--1{margin:1rem 0}.my--2{margin:2rem 0}.my--3{margin:3rem 0}.card,.card--slim{padding:1rem;border:#ccc 1px dotted;margin:0.7rem 0}.card--slim{padding:5px}.cardTitle{border-bottom-color:#eee;border-bottom-width:1px;border-bottom-style:solid;margin-bottom:15px}.cardV2{border-radius:4px;background-color:#fff;box-shadow:0 0 4px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);min-width:0}.seemore{font-size:14px;font-weight:500}.cardLink{color:#2196F3;margin-top:10px}@media(max-width: 480px){.container{max-width:98vw;padding:0 0;overflow-y:scroll}}@media(max-height: 480px){.navbar{min-height:36px}header + div.container{position:relative;top:36px;max-height:calc(100vh - 36px)}.navbar .navbar-brand{font-size:125%;font-weight:bold}}.view{height:100vh} -.detail.svelte-ewk0kd{width:100%;border-top:2px solid #e1e1e1;height:49.5vh;max-height:49.5vh;overflow-y:scroll}.detailHead.svelte-ewk0kd{box-sizing:border-box;margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.row.svelte-ewk0kd{margin:1% 0;overflow:auto;display:flex}.applied.svelte-ewk0kd{box-shadow:inset 0 0 5px 5px #f7de2f69} -.lister.svelte-hvjw8w{height:45vh;max-height:45vh;overflow-y:scroll}.hide.svelte-hvjw8w{display:none}.company.svelte-hvjw8w{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dataRow.svelte-hvjw8w{font-weight:bold;color:darkslategrey}.read.svelte-hvjw8w{font-weight:normal !important;color:dimgrey}.applied.svelte-hvjw8w{box-shadow:inset 0 0 5px 5px #f7de2f69}.dataRow.svelte-hvjw8w:hover{background-color:rgba(245, 238, 100, 0.54)}.small.svelte-hvjw8w{font-size:70%}.noOverflow.svelte-hvjw8w{white-space:nowrap;overflow:hidden;text-overflow:ellipsis} -.menu.svelte-s6mfqx{border-right:2px solid #e1e1e1;background-color:#f4f4f4;height:100vh} - -/*# sourceMappingURL=bundle.css.map */ \ No newline at end of file diff --git a/server/dist/build/bundle.css.map b/server/dist/build/bundle.css.map deleted file mode 100644 index 32bec9c..0000000 --- a/server/dist/build/bundle.css.map +++ /dev/null @@ -1,18 +0,0 @@ -{ - "version": 3, - "file": "bundle.css", - "sources": [ - "../../App.svelte", - "../../Detail.svelte", - "../../Lister.svelte", - "../../Menu.svelte" - ], - "sourcesContent": [ - "\n\n\n\n
\n
\n
\n \n \n
\n
\n\n", - "\n\n\n\n\n{#if visible}\n
\n
\n
\n
\n {$JobDetails.title}\n\n
\n\n {#if jobtype === 1}\n Contract\n {:else if jobtype === 2}\n Permanent\n {/if}\n\n
\n
\n
\n Company: {$JobDetails.company}\n
\n
\n Location: {$JobDetails.location}\n
\n
\n Applied:\n {#if !applied}\n \n {:else}\n Applied!\n {/if}\n\n
\n\n
\n\n
\n
\n Salary: {@html $JobDetails.salary}\n
\n
\n Scraped: {$JobDetails.date}\n
\n
\n Site: {$JobDetails.site}\n
\n\n
\n\n
\n
\n {#each $JobDetails.data.autoclass.words as word, _wid}\n {#if $JobDetails.data.autoclass.good.indexOf(word) !== -1}\n {word}\n {:else if $JobDetails.data.autoclass.bad.indexOf(word) !== -1}\n {word}\n {:else }\n {word}\n {/if}\n {/each}\n\n
\n \n\n
\n\n\n
\n
\n {@html $JobDetails.summary}\n
\n
\n\n{/if}\n", - "\n\n\n\n\n
\n \n \n \n \n \n \n \n \n \n \n {#each $JobList as item, _id}\n \n \n \n \n \n \n \n {/each}\n \n
\n Title\n \n Site\n \n Company\n \n Date\n
\n {item.title}\n \n {item.site}{ellipsisV2(item.company,25)}{timeOrDate(item.timestamp)}
\n
\n\n\n", - "\n\n\n\n
\n

Jobs

\n
\n
\n \n
\n\n
\n" - ], - "names": [], - "mappings": "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" -} \ No newline at end of file diff --git a/server/dist/build/bundle.js b/server/dist/build/bundle.js deleted file mode 100644 index fcf04ff..0000000 --- a/server/dist/build/bundle.js +++ /dev/null @@ -1 +0,0 @@ -var app=function(){"use strict";function t(){}function e(t){return t()}function n(){return Object.create(null)}function r(t){t.forEach(e)}function o(t){return"function"==typeof t}function a(t,e){return t!=t?e==e:t!==e||t&&"object"==typeof t||"function"==typeof t}function s(e,n,r){e.$$.on_destroy.push(function(e,...n){if(null==e)return t;const r=e.subscribe(...n);return r.unsubscribe?()=>r.unsubscribe():r}(n,r))}function c(t,e){t.appendChild(e)}function i(t,e,n){t.insertBefore(e,n||null)}function u(t){t.parentNode.removeChild(t)}function l(t,e){for(let n=0;nt.removeEventListener(e,n,r)}function g(t,e,n){null==n?t.removeAttribute(e):t.getAttribute(e)!==n&&t.setAttribute(e,n)}function b(t,e){e=""+e,t.data!==e&&(t.data=e)}let y;function v(t){y=t}const $=[],M=[],w=[],D=[],k=Promise.resolve();let S=!1;function x(t){w.push(t)}let Y=!1;const H=new Set;function T(){if(!Y){Y=!0;do{for(let t=0;t<$.length;t+=1){const e=$[t];v(e),J(e.$$)}for($.length=0;M.length;)M.pop()();for(let t=0;t{N.delete(t),r&&(n&&t.d(1),r())}),t.o(e)}}function C(t){t&&t.c()}function _(t,n,a){const{fragment:s,on_mount:c,on_destroy:i,after_update:u}=t.$$;s&&s.m(n,a),x(()=>{const n=c.map(e).filter(o);i?i.push(...n):r(n),t.$$.on_mount=[]}),u.forEach(x)}function O(t,e){const n=t.$$;null!==n.fragment&&(r(n.on_destroy),n.fragment&&n.fragment.d(e),n.on_destroy=n.fragment=null,n.ctx=[])}function L(t,e){-1===t.$$.dirty[0]&&($.push(t),S||(S=!0,k.then(T)),t.$$.dirty.fill(0)),t.$$.dirty[e/31|0]|=1<{const o=r.length?r[0]:n;return m.ctx&&c(m.ctx[t],m.ctx[t]=o)&&(m.bound[t]&&m.bound[t](o),p&&L(e,t)),n}):[],m.update(),p=!0,r(m.before_update),m.fragment=!!s&&s(m.ctx),o.target){if(o.hydrate){const t=function(t){return Array.from(t.childNodes)}(o.target);m.fragment&&m.fragment.l(t),t.forEach(u)}else m.fragment&&m.fragment.c();o.intro&&j(e.$$.fragment),_(e,o.target,o.anchor),T()}v(d)}class R{$destroy(){O(this,1),this.$destroy=t}$on(t,e){const n=this.$$.callbacks[t]||(this.$$.callbacks[t]=[]);return n.push(e),()=>{const t=n.indexOf(e);-1!==t&&n.splice(t,1)}}$set(){}}const E=[];function F(e,n=t){let r;const o=[];function s(t){if(a(e,t)&&(e=t,r)){const t=!E.length;for(let t=0;t{const t=o.indexOf(i);-1!==t&&o.splice(t,1),0===o.length&&(r(),r=null)}}}}var Z=function t(e){function n(t){return function(e,n){return a(e,Object.assign({method:t},n))}}function r(t){return function(e,n,r){return a(e,Object.assign({method:t,data:n},r))}}function o(t,e,n){if(Array.isArray(t))return t.concat(e);if(e&&"object"==typeof e){var r,a={};if(t)for(r in t)a[n?r.toLowerCase():r]=t[r];for(r in e){var s=n?r.toLowerCase():r;"headers"===s&&(n=!0),a[s]=r in a?o(a[s],e[r],n):e[r]}return a}return e}function a(t,n){"string"!=typeof t&&(t=(n=t).url);var r=o(e,n||{}),a=r.data;if(r.transformRequest)for(var s=0;s{const e=JSON.parse(t.data);I.set(e)}).catch(t=>{console.error("getJobList",t)})},loadJobDetail(t){if(console.log("loadJobDetail: "+t),t){const e=`${z.jobs}/${t}`;Z.get(e).then(t=>{const e=JSON.parse(t.data);U.set(e)}).catch(t=>{console.error("loadJobDetail",t)})}},async touchJob(t){if(console.log("touchJob: "+t),t){const e=`${z.jobs}/${t}`;await Z.put(e).then(t=>{200!==t.status&&console.error(t)}).catch(t=>{console.error("touchJob",t)}),I.update(e=>(e.map(e=>{if(e._id===t)return e.read=(new Date).getTime(),e}),e))}},async appliedJob(t){console.log("touchJob: "+t);const e=(new Date).getTime();if(t){console.log("Applying..");const n=`${z.apply}/${t}`;await Z.put(n).then(t=>{200!==t.status&&console.error(t)}).catch(t=>{console.error("appliedJob",t)});const r=t;I.update(t=>(t.map(t=>{if(t._id===r)return t.applied=e,t}),t)),U.update(t=>(t.data.applied=e,t))}},async markAllRead(){console.log(">> markAllRead");const t=""+z.readall;await Z.put(t).then(t=>{200!==t.status&&console.error(t)}).catch(t=>{console.error("markAllRead",t)}),this.getJobList()},killWord(t){console.log(">> killword:"+t);const e=`${z.kill}/${t}`;Z.put(e).then(t=>{200!==t.status&&console.error(t)}).catch(t=>{console.error("killword",t)})},upVote(t){console.log(">> upvote:"+t);const e=`${z.upvote}/${t}`;Z.put(e).then(t=>{200!==t.status&&console.error(t)}).catch(t=>{console.error("upvote",t)})},downVote(t){console.log(">> downvote:"+t);const e=`${z.downvote}/${t}`;Z.put(e).then(t=>{200!==t.status&&console.error(t)}).catch(t=>{console.error("downvote",t)})}};var V=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,B=/\[([^]*?)\]/gm;function G(t,e){for(var n=[],r=0,o=t.length;r3?0:(t-t%10!=10?1:0)*t%10]}}),nt=function(t,e){for(void 0===e&&(e=2),t=String(t);t.length0?"-":"+")+nt(100*Math.floor(Math.abs(e)/60)+Math.abs(e)%60,4)},Z:function(t){var e=t.getTimezoneOffset();return(e>0?"-":"+")+nt(Math.floor(Math.abs(e)/60),2)+":"+nt(Math.abs(e)%60,2)}},ot={default:"ddd MMM DD YYYY HH:mm:ss",shortDate:"M/D/YY",mediumDate:"MMM D, YYYY",longDate:"MMMM D, YYYY",fullDate:"dddd, MMMM D, YYYY",isoDate:"YYYY-MM-DD",isoDateTime:"YYYY-MM-DDTHH:mm:ssZ",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"},at=function(t,e,n){if(void 0===e&&(e=ot.default),void 0===n&&(n={}),"number"==typeof t&&(t=new Date(t)),"[object Date]"!==Object.prototype.toString.call(t)||isNaN(t.getTime()))throw new Error("Invalid Date pass to format");var r=[];e=(e=ot[e]||e).replace(B,(function(t,e){return r.push(e),"@@@"}));var o=K(K({},et),n);return(e=e.replace(V,(function(e){return rt[e](t,o)}))).replace(/@@@/g,(function(){return r.shift()}))};function st(t,e,n){const r=t.slice();return r[5]=e[n],r[7]=n,r}function ct(t){let e,n,r,o,a,s,l,p,y,v,$,M,w,D,k,S,x,Y,H=t[5].title+"",T=t[5].site+"",J=ut(t[5].company,25)+"",N=t[2](t[5].timestamp)+"";return{c(){e=d("tr"),n=d("td"),r=f(H),o=m(),a=d("td"),s=f(T),l=m(),p=d("td"),y=f(J),$=m(),M=d("td"),w=f(N),k=m(),g(n,"class","noOverflow svelte-hvjw8w"),g(p,"title",v=t[5].company),g(M,"title",D=ft(t[5].timestamp)),g(e,"class",S="dataRow "+lt(t[5])+" "+dt(t[5])+" svelte-hvjw8w"),g(e,"data-id",x=t[5]._id)},m(u,d,f){var m;i(u,e,d),c(e,n),c(n,r),c(e,o),c(e,a),c(a,s),c(e,l),c(e,p),c(p,y),c(e,$),c(e,M),c(M,w),c(e,k),f&&Y(),Y=h(e,"click",(m=t[1],function(t){return t.stopPropagation(),m.call(this,t)}))},p(t,n){1&n&&H!==(H=t[5].title+"")&&b(r,H),1&n&&T!==(T=t[5].site+"")&&b(s,T),1&n&&J!==(J=ut(t[5].company,25)+"")&&b(y,J),1&n&&v!==(v=t[5].company)&&g(p,"title",v),1&n&&N!==(N=t[2](t[5].timestamp)+"")&&b(w,N),1&n&&D!==(D=ft(t[5].timestamp))&&g(M,"title",D),1&n&&S!==(S="dataRow "+lt(t[5])+" "+dt(t[5])+" svelte-hvjw8w")&&g(e,"class",S),1&n&&x!==(x=t[5]._id)&&g(e,"data-id",x)},d(t){t&&u(e),Y()}}}function it(e){let n,r,o,a,s,f=e[0],p=[];for(let t=0;t\n Title\n \n \n Site\n \n \n Company\n \n \n Date\n ',a=m(),s=d("tbody");for(let t=0;tn(0,r=t)),[r,function(t){const e=t.target.parentElement.dataset.id;W.loadJobDetail(e),W.touchJob(e)},function(t){const e=864e5*~~(Date.now()/864e5);return at(new Date(t),t>e?"shortTime":"isoDate")}]}class pt extends R{constructor(t){super(),P(this,t,mt,it,a,{})}}function ht(t,e,n){const r=t.slice();return r[8]=e[n],r[10]=n,r}function gt(t){let e,n,r,o,a,s,p,h,y,v,$,M,w,D,k,S,x,Y,H,T,J,N,j,A,C,_,O,L,P,R,E,F,Z,q,z,I,U,W,V,B,G,K,Q=t[3].title+"",X=t[3].company+"",tt=t[3].location+"",et=t[3].salary+"",nt=t[3].date+"",rt=t[3].site+"",ot=t[3].summary+"";function at(t,e){return 1===t[2]?yt:2===t[2]?bt:void 0}let st=at(t),ct=st&&st(t);function it(t,e){return t[1]?vt:$t}let ut=it(t),lt=ut(t),dt=t[3].data.autoclass.words,ft=[];for(let e=0;e>kill",t)}function Ht(t,e,n){let r;s(t,U,t=>n(3,r=t));let o=!1,a=!1,c=0;return U.subscribe(t=>{n(0,o=!xt(t))}),t.$$.update=()=>{8&t.$$.dirty&&(xt(r)||(n(1,a="number"==typeof r.data.applied&&0!==r.data.applied),n(2,c=r.data.jobtype)))},[o,a,c,r,function(){W.appliedJob(r._id)}]}class Tt extends R{constructor(t){super(),P(this,t,Ht,St,a,{})}}function Jt(e){let n,r,o,a,s,l,f;return{c(){n=d("header"),r=d("section"),o=d("span"),o.textContent=""+Nt,a=m(),s=d("section"),l=d("button"),l.textContent="Mark All Read",g(o,"class","text-bold navbar-brand mx-1 text-uppercase"),g(r,"class","navbar-section"),g(l,"class","btn btn-sm btn-primary"),g(s,"class","navbar-section text-right"),g(n,"class","navbar bg-primary")},m(t,u,d){i(t,n,u),c(n,r),c(r,o),c(n,a),c(n,s),c(s,l),d&&f(),f=h(l,"click",e[0])},p:t,i:t,o:t,d(t){t&&u(n),f()}}}let Nt="Jobs";function jt(t){return[function(){W.markAllRead()}]}class At extends R{constructor(t){super(),P(this,t,jt,Jt,a,{})}}function Ct(e){let n,r,o,a,s;const l=new At({}),f=new pt({}),p=new Tt({});return{c(){C(l.$$.fragment),n=m(),r=d("div"),o=d("div"),C(f.$$.fragment),a=m(),C(p.$$.fragment),g(o,"class","col-12"),g(r,"class","container fullWidth noscroll")},m(t,e){_(l,t,e),i(t,n,e),i(t,r,e),c(r,o),_(f,o,null),c(o,a),_(p,o,null),s=!0},p:t,i(t){s||(j(l.$$.fragment,t),j(f.$$.fragment,t),j(p.$$.fragment,t),s=!0)},o(t){A(l.$$.fragment,t),A(f.$$.fragment,t),A(p.$$.fragment,t),s=!1},d(t){O(l,t),t&&u(n),t&&u(r),O(f),O(p)}}}var _t=1e3,Ot=6e4,Lt=60*Ot,Pt=24*Lt,Rt=function(t,e){e=e||{};var n=typeof t;if("string"===n&&t.length>0)return function(t){if((t=String(t)).length>100)return;var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(!e)return;var n=parseFloat(e[1]);switch((e[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*n;case"weeks":case"week":case"w":return 6048e5*n;case"days":case"day":case"d":return n*Pt;case"hours":case"hour":case"hrs":case"hr":case"h":return n*Lt;case"minutes":case"minute":case"mins":case"min":case"m":return n*Ot;case"seconds":case"second":case"secs":case"sec":case"s":return n*_t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n;default:return}}(t);if("number"===n&&isFinite(t))return e.long?function(t){var e=Math.abs(t);if(e>=Pt)return Et(t,e,Pt,"day");if(e>=Lt)return Et(t,e,Lt,"hour");if(e>=Ot)return Et(t,e,Ot,"minute");if(e>=_t)return Et(t,e,_t,"second");return t+" ms"}(t):function(t){var e=Math.abs(t);if(e>=Pt)return Math.round(t/Pt)+"d";if(e>=Lt)return Math.round(t/Lt)+"h";if(e>=Ot)return Math.round(t/Ot)+"m";if(e>=_t)return Math.round(t/_t)+"s";return t+"ms"}(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function Et(t,e,n,r){var o=e>=1.5*n;return Math.round(t/n)+" "+r+(o?"s":"")}let Ft=0;const Zt=new class extends R{constructor(t){super(),P(this,t,null,Ct,a,{})}}({target:document.body});return function t(){W.getJobList();const e=function(t=0){return 36e5-(new Date).getTime()%36e5+t}()+Rt("10m");console.log("Next:",e),Ft=setTimeout(()=>{t()},e)}(),Zt}(); diff --git a/server/dist/build/bundle.js.map b/server/dist/build/bundle.js.map deleted file mode 100644 index 7e86912..0000000 --- a/server/dist/build/bundle.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"bundle.js","sources":["../../node_modules/svelte/internal/index.mjs","../../node_modules/svelte/store/index.mjs","../../node_modules/redaxios/dist/redaxios.module.js","../../src/state/state.js","../../src/components/Menu.svelte","../../node_modules/fecha/lib/fecha.js","../../src/components/Lister.svelte","../../src/components/Detail.svelte","../../src/components/Header.svelte","../../node_modules/ms/index.js","../../src/main.js"],"sourcesContent":["function noop() { }\nconst identity = x => x;\nfunction assign(tar, src) {\n // @ts-ignore\n for (const k in src)\n tar[k] = src[k];\n return tar;\n}\nfunction is_promise(value) {\n return value && typeof value === 'object' && typeof value.then === 'function';\n}\nfunction add_location(element, file, line, column, char) {\n element.__svelte_meta = {\n loc: { file, line, column, char }\n };\n}\nfunction run(fn) {\n return fn();\n}\nfunction blank_object() {\n return Object.create(null);\n}\nfunction run_all(fns) {\n fns.forEach(run);\n}\nfunction is_function(thing) {\n return typeof thing === 'function';\n}\nfunction safe_not_equal(a, b) {\n return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');\n}\nfunction not_equal(a, b) {\n return a != a ? b == b : a !== b;\n}\nfunction validate_store(store, name) {\n if (store != null && typeof store.subscribe !== 'function') {\n throw new Error(`'${name}' is not a store with a 'subscribe' method`);\n }\n}\nfunction subscribe(store, ...callbacks) {\n if (store == null) {\n return noop;\n }\n const unsub = store.subscribe(...callbacks);\n return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;\n}\nfunction get_store_value(store) {\n let value;\n subscribe(store, _ => value = _)();\n return value;\n}\nfunction component_subscribe(component, store, callback) {\n component.$$.on_destroy.push(subscribe(store, callback));\n}\nfunction create_slot(definition, ctx, $$scope, fn) {\n if (definition) {\n const slot_ctx = get_slot_context(definition, ctx, $$scope, fn);\n return definition[0](slot_ctx);\n }\n}\nfunction get_slot_context(definition, ctx, $$scope, fn) {\n return definition[1] && fn\n ? assign($$scope.ctx.slice(), definition[1](fn(ctx)))\n : $$scope.ctx;\n}\nfunction get_slot_changes(definition, $$scope, dirty, fn) {\n if (definition[2] && fn) {\n const lets = definition[2](fn(dirty));\n if ($$scope.dirty === undefined) {\n return lets;\n }\n if (typeof lets === 'object') {\n const merged = [];\n const len = Math.max($$scope.dirty.length, lets.length);\n for (let i = 0; i < len; i += 1) {\n merged[i] = $$scope.dirty[i] | lets[i];\n }\n return merged;\n }\n return $$scope.dirty | lets;\n }\n return $$scope.dirty;\n}\nfunction exclude_internal_props(props) {\n const result = {};\n for (const k in props)\n if (k[0] !== '$')\n result[k] = props[k];\n return result;\n}\nfunction compute_rest_props(props, keys) {\n const rest = {};\n keys = new Set(keys);\n for (const k in props)\n if (!keys.has(k) && k[0] !== '$')\n rest[k] = props[k];\n return rest;\n}\nfunction once(fn) {\n let ran = false;\n return function (...args) {\n if (ran)\n return;\n ran = true;\n fn.call(this, ...args);\n };\n}\nfunction null_to_empty(value) {\n return value == null ? '' : value;\n}\nfunction set_store_value(store, ret, value = ret) {\n store.set(value);\n return ret;\n}\nconst has_prop = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);\nfunction action_destroyer(action_result) {\n return action_result && is_function(action_result.destroy) ? action_result.destroy : noop;\n}\n\nconst is_client = typeof window !== 'undefined';\nlet now = is_client\n ? () => window.performance.now()\n : () => Date.now();\nlet raf = is_client ? cb => requestAnimationFrame(cb) : noop;\n// used internally for testing\nfunction set_now(fn) {\n now = fn;\n}\nfunction set_raf(fn) {\n raf = fn;\n}\n\nconst tasks = new Set();\nfunction run_tasks(now) {\n tasks.forEach(task => {\n if (!task.c(now)) {\n tasks.delete(task);\n task.f();\n }\n });\n if (tasks.size !== 0)\n raf(run_tasks);\n}\n/**\n * For testing purposes only!\n */\nfunction clear_loops() {\n tasks.clear();\n}\n/**\n * Creates a new task that runs on each raf frame\n * until it returns a falsy value or is aborted\n */\nfunction loop(callback) {\n let task;\n if (tasks.size === 0)\n raf(run_tasks);\n return {\n promise: new Promise(fulfill => {\n tasks.add(task = { c: callback, f: fulfill });\n }),\n abort() {\n tasks.delete(task);\n }\n };\n}\n\nfunction append(target, node) {\n target.appendChild(node);\n}\nfunction insert(target, node, anchor) {\n target.insertBefore(node, anchor || null);\n}\nfunction detach(node) {\n node.parentNode.removeChild(node);\n}\nfunction destroy_each(iterations, detaching) {\n for (let i = 0; i < iterations.length; i += 1) {\n if (iterations[i])\n iterations[i].d(detaching);\n }\n}\nfunction element(name) {\n return document.createElement(name);\n}\nfunction element_is(name, is) {\n return document.createElement(name, { is });\n}\nfunction object_without_properties(obj, exclude) {\n const target = {};\n for (const k in obj) {\n if (has_prop(obj, k)\n // @ts-ignore\n && exclude.indexOf(k) === -1) {\n // @ts-ignore\n target[k] = obj[k];\n }\n }\n return target;\n}\nfunction svg_element(name) {\n return document.createElementNS('http://www.w3.org/2000/svg', name);\n}\nfunction text(data) {\n return document.createTextNode(data);\n}\nfunction space() {\n return text(' ');\n}\nfunction empty() {\n return text('');\n}\nfunction listen(node, event, handler, options) {\n node.addEventListener(event, handler, options);\n return () => node.removeEventListener(event, handler, options);\n}\nfunction prevent_default(fn) {\n return function (event) {\n event.preventDefault();\n // @ts-ignore\n return fn.call(this, event);\n };\n}\nfunction stop_propagation(fn) {\n return function (event) {\n event.stopPropagation();\n // @ts-ignore\n return fn.call(this, event);\n };\n}\nfunction self(fn) {\n return function (event) {\n // @ts-ignore\n if (event.target === this)\n fn.call(this, event);\n };\n}\nfunction attr(node, attribute, value) {\n if (value == null)\n node.removeAttribute(attribute);\n else if (node.getAttribute(attribute) !== value)\n node.setAttribute(attribute, value);\n}\nfunction set_attributes(node, attributes) {\n // @ts-ignore\n const descriptors = Object.getOwnPropertyDescriptors(node.__proto__);\n for (const key in attributes) {\n if (attributes[key] == null) {\n node.removeAttribute(key);\n }\n else if (key === 'style') {\n node.style.cssText = attributes[key];\n }\n else if (key === '__value' || descriptors[key] && descriptors[key].set) {\n node[key] = attributes[key];\n }\n else {\n attr(node, key, attributes[key]);\n }\n }\n}\nfunction set_svg_attributes(node, attributes) {\n for (const key in attributes) {\n attr(node, key, attributes[key]);\n }\n}\nfunction set_custom_element_data(node, prop, value) {\n if (prop in node) {\n node[prop] = value;\n }\n else {\n attr(node, prop, value);\n }\n}\nfunction xlink_attr(node, attribute, value) {\n node.setAttributeNS('http://www.w3.org/1999/xlink', attribute, value);\n}\nfunction get_binding_group_value(group) {\n const value = [];\n for (let i = 0; i < group.length; i += 1) {\n if (group[i].checked)\n value.push(group[i].__value);\n }\n return value;\n}\nfunction to_number(value) {\n return value === '' ? undefined : +value;\n}\nfunction time_ranges_to_array(ranges) {\n const array = [];\n for (let i = 0; i < ranges.length; i += 1) {\n array.push({ start: ranges.start(i), end: ranges.end(i) });\n }\n return array;\n}\nfunction children(element) {\n return Array.from(element.childNodes);\n}\nfunction claim_element(nodes, name, attributes, svg) {\n for (let i = 0; i < nodes.length; i += 1) {\n const node = nodes[i];\n if (node.nodeName === name) {\n let j = 0;\n while (j < node.attributes.length) {\n const attribute = node.attributes[j];\n if (attributes[attribute.name]) {\n j++;\n }\n else {\n node.removeAttribute(attribute.name);\n }\n }\n return nodes.splice(i, 1)[0];\n }\n }\n return svg ? svg_element(name) : element(name);\n}\nfunction claim_text(nodes, data) {\n for (let i = 0; i < nodes.length; i += 1) {\n const node = nodes[i];\n if (node.nodeType === 3) {\n node.data = '' + data;\n return nodes.splice(i, 1)[0];\n }\n }\n return text(data);\n}\nfunction claim_space(nodes) {\n return claim_text(nodes, ' ');\n}\nfunction set_data(text, data) {\n data = '' + data;\n if (text.data !== data)\n text.data = data;\n}\nfunction set_input_value(input, value) {\n if (value != null || input.value) {\n input.value = value;\n }\n}\nfunction set_input_type(input, type) {\n try {\n input.type = type;\n }\n catch (e) {\n // do nothing\n }\n}\nfunction set_style(node, key, value, important) {\n node.style.setProperty(key, value, important ? 'important' : '');\n}\nfunction select_option(select, value) {\n for (let i = 0; i < select.options.length; i += 1) {\n const option = select.options[i];\n if (option.__value === value) {\n option.selected = true;\n return;\n }\n }\n}\nfunction select_options(select, value) {\n for (let i = 0; i < select.options.length; i += 1) {\n const option = select.options[i];\n option.selected = ~value.indexOf(option.__value);\n }\n}\nfunction select_value(select) {\n const selected_option = select.querySelector(':checked') || select.options[0];\n return selected_option && selected_option.__value;\n}\nfunction select_multiple_value(select) {\n return [].map.call(select.querySelectorAll(':checked'), option => option.__value);\n}\n// unfortunately this can't be a constant as that wouldn't be tree-shakeable\n// so we cache the result instead\nlet crossorigin;\nfunction is_crossorigin() {\n if (crossorigin === undefined) {\n crossorigin = false;\n try {\n if (typeof window !== 'undefined' && window.parent) {\n void window.parent.document;\n }\n }\n catch (error) {\n crossorigin = true;\n }\n }\n return crossorigin;\n}\nfunction add_resize_listener(node, fn) {\n const computed_style = getComputedStyle(node);\n const z_index = (parseInt(computed_style.zIndex) || 0) - 1;\n if (computed_style.position === 'static') {\n node.style.position = 'relative';\n }\n const iframe = element('iframe');\n iframe.setAttribute('style', `display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; ` +\n `overflow: hidden; border: 0; opacity: 0; pointer-events: none; z-index: ${z_index};`);\n iframe.setAttribute('aria-hidden', 'true');\n iframe.tabIndex = -1;\n let unsubscribe;\n if (is_crossorigin()) {\n iframe.src = `data:text/html,`;\n unsubscribe = listen(window, 'message', (event) => {\n if (event.source === iframe.contentWindow)\n fn();\n });\n }\n else {\n iframe.src = 'about:blank';\n iframe.onload = () => {\n unsubscribe = listen(iframe.contentWindow, 'resize', fn);\n };\n }\n append(node, iframe);\n return () => {\n detach(iframe);\n if (unsubscribe)\n unsubscribe();\n };\n}\nfunction toggle_class(element, name, toggle) {\n element.classList[toggle ? 'add' : 'remove'](name);\n}\nfunction custom_event(type, detail) {\n const e = document.createEvent('CustomEvent');\n e.initCustomEvent(type, false, false, detail);\n return e;\n}\nfunction query_selector_all(selector, parent = document.body) {\n return Array.from(parent.querySelectorAll(selector));\n}\nclass HtmlTag {\n constructor(html, anchor = null) {\n this.e = element('div');\n this.a = anchor;\n this.u(html);\n }\n m(target, anchor = null) {\n for (let i = 0; i < this.n.length; i += 1) {\n insert(target, this.n[i], anchor);\n }\n this.t = target;\n }\n u(html) {\n this.e.innerHTML = html;\n this.n = Array.from(this.e.childNodes);\n }\n p(html) {\n this.d();\n this.u(html);\n this.m(this.t, this.a);\n }\n d() {\n this.n.forEach(detach);\n }\n}\n\nconst active_docs = new Set();\nlet active = 0;\n// https://github.com/darkskyapp/string-hash/blob/master/index.js\nfunction hash(str) {\n let hash = 5381;\n let i = str.length;\n while (i--)\n hash = ((hash << 5) - hash) ^ str.charCodeAt(i);\n return hash >>> 0;\n}\nfunction create_rule(node, a, b, duration, delay, ease, fn, uid = 0) {\n const step = 16.666 / duration;\n let keyframes = '{\\n';\n for (let p = 0; p <= 1; p += step) {\n const t = a + (b - a) * ease(p);\n keyframes += p * 100 + `%{${fn(t, 1 - t)}}\\n`;\n }\n const rule = keyframes + `100% {${fn(b, 1 - b)}}\\n}`;\n const name = `__svelte_${hash(rule)}_${uid}`;\n const doc = node.ownerDocument;\n active_docs.add(doc);\n const stylesheet = doc.__svelte_stylesheet || (doc.__svelte_stylesheet = doc.head.appendChild(element('style')).sheet);\n const current_rules = doc.__svelte_rules || (doc.__svelte_rules = {});\n if (!current_rules[name]) {\n current_rules[name] = true;\n stylesheet.insertRule(`@keyframes ${name} ${rule}`, stylesheet.cssRules.length);\n }\n const animation = node.style.animation || '';\n node.style.animation = `${animation ? `${animation}, ` : ``}${name} ${duration}ms linear ${delay}ms 1 both`;\n active += 1;\n return name;\n}\nfunction delete_rule(node, name) {\n const previous = (node.style.animation || '').split(', ');\n const next = previous.filter(name\n ? anim => anim.indexOf(name) < 0 // remove specific animation\n : anim => anim.indexOf('__svelte') === -1 // remove all Svelte animations\n );\n const deleted = previous.length - next.length;\n if (deleted) {\n node.style.animation = next.join(', ');\n active -= deleted;\n if (!active)\n clear_rules();\n }\n}\nfunction clear_rules() {\n raf(() => {\n if (active)\n return;\n active_docs.forEach(doc => {\n const stylesheet = doc.__svelte_stylesheet;\n let i = stylesheet.cssRules.length;\n while (i--)\n stylesheet.deleteRule(i);\n doc.__svelte_rules = {};\n });\n active_docs.clear();\n });\n}\n\nfunction create_animation(node, from, fn, params) {\n if (!from)\n return noop;\n const to = node.getBoundingClientRect();\n if (from.left === to.left && from.right === to.right && from.top === to.top && from.bottom === to.bottom)\n return noop;\n const { delay = 0, duration = 300, easing = identity, \n // @ts-ignore todo: should this be separated from destructuring? Or start/end added to public api and documentation?\n start: start_time = now() + delay, \n // @ts-ignore todo:\n end = start_time + duration, tick = noop, css } = fn(node, { from, to }, params);\n let running = true;\n let started = false;\n let name;\n function start() {\n if (css) {\n name = create_rule(node, 0, 1, duration, delay, easing, css);\n }\n if (!delay) {\n started = true;\n }\n }\n function stop() {\n if (css)\n delete_rule(node, name);\n running = false;\n }\n loop(now => {\n if (!started && now >= start_time) {\n started = true;\n }\n if (started && now >= end) {\n tick(1, 0);\n stop();\n }\n if (!running) {\n return false;\n }\n if (started) {\n const p = now - start_time;\n const t = 0 + 1 * easing(p / duration);\n tick(t, 1 - t);\n }\n return true;\n });\n start();\n tick(0, 1);\n return stop;\n}\nfunction fix_position(node) {\n const style = getComputedStyle(node);\n if (style.position !== 'absolute' && style.position !== 'fixed') {\n const { width, height } = style;\n const a = node.getBoundingClientRect();\n node.style.position = 'absolute';\n node.style.width = width;\n node.style.height = height;\n add_transform(node, a);\n }\n}\nfunction add_transform(node, a) {\n const b = node.getBoundingClientRect();\n if (a.left !== b.left || a.top !== b.top) {\n const style = getComputedStyle(node);\n const transform = style.transform === 'none' ? '' : style.transform;\n node.style.transform = `${transform} translate(${a.left - b.left}px, ${a.top - b.top}px)`;\n }\n}\n\nlet current_component;\nfunction set_current_component(component) {\n current_component = component;\n}\nfunction get_current_component() {\n if (!current_component)\n throw new Error(`Function called outside component initialization`);\n return current_component;\n}\nfunction beforeUpdate(fn) {\n get_current_component().$$.before_update.push(fn);\n}\nfunction onMount(fn) {\n get_current_component().$$.on_mount.push(fn);\n}\nfunction afterUpdate(fn) {\n get_current_component().$$.after_update.push(fn);\n}\nfunction onDestroy(fn) {\n get_current_component().$$.on_destroy.push(fn);\n}\nfunction createEventDispatcher() {\n const component = get_current_component();\n return (type, detail) => {\n const callbacks = component.$$.callbacks[type];\n if (callbacks) {\n // TODO are there situations where events could be dispatched\n // in a server (non-DOM) environment?\n const event = custom_event(type, detail);\n callbacks.slice().forEach(fn => {\n fn.call(component, event);\n });\n }\n };\n}\nfunction setContext(key, context) {\n get_current_component().$$.context.set(key, context);\n}\nfunction getContext(key) {\n return get_current_component().$$.context.get(key);\n}\n// TODO figure out if we still want to support\n// shorthand events, or if we want to implement\n// a real bubbling mechanism\nfunction bubble(component, event) {\n const callbacks = component.$$.callbacks[event.type];\n if (callbacks) {\n callbacks.slice().forEach(fn => fn(event));\n }\n}\n\nconst dirty_components = [];\nconst intros = { enabled: false };\nconst binding_callbacks = [];\nconst render_callbacks = [];\nconst flush_callbacks = [];\nconst resolved_promise = Promise.resolve();\nlet update_scheduled = false;\nfunction schedule_update() {\n if (!update_scheduled) {\n update_scheduled = true;\n resolved_promise.then(flush);\n }\n}\nfunction tick() {\n schedule_update();\n return resolved_promise;\n}\nfunction add_render_callback(fn) {\n render_callbacks.push(fn);\n}\nfunction add_flush_callback(fn) {\n flush_callbacks.push(fn);\n}\nlet flushing = false;\nconst seen_callbacks = new Set();\nfunction flush() {\n if (flushing)\n return;\n flushing = true;\n do {\n // first, call beforeUpdate functions\n // and update components\n for (let i = 0; i < dirty_components.length; i += 1) {\n const component = dirty_components[i];\n set_current_component(component);\n update(component.$$);\n }\n dirty_components.length = 0;\n while (binding_callbacks.length)\n binding_callbacks.pop()();\n // then, once components are updated, call\n // afterUpdate functions. This may cause\n // subsequent updates...\n for (let i = 0; i < render_callbacks.length; i += 1) {\n const callback = render_callbacks[i];\n if (!seen_callbacks.has(callback)) {\n // ...so guard against infinite loops\n seen_callbacks.add(callback);\n callback();\n }\n }\n render_callbacks.length = 0;\n } while (dirty_components.length);\n while (flush_callbacks.length) {\n flush_callbacks.pop()();\n }\n update_scheduled = false;\n flushing = false;\n seen_callbacks.clear();\n}\nfunction update($$) {\n if ($$.fragment !== null) {\n $$.update();\n run_all($$.before_update);\n const dirty = $$.dirty;\n $$.dirty = [-1];\n $$.fragment && $$.fragment.p($$.ctx, dirty);\n $$.after_update.forEach(add_render_callback);\n }\n}\n\nlet promise;\nfunction wait() {\n if (!promise) {\n promise = Promise.resolve();\n promise.then(() => {\n promise = null;\n });\n }\n return promise;\n}\nfunction dispatch(node, direction, kind) {\n node.dispatchEvent(custom_event(`${direction ? 'intro' : 'outro'}${kind}`));\n}\nconst outroing = new Set();\nlet outros;\nfunction group_outros() {\n outros = {\n r: 0,\n c: [],\n p: outros // parent group\n };\n}\nfunction check_outros() {\n if (!outros.r) {\n run_all(outros.c);\n }\n outros = outros.p;\n}\nfunction transition_in(block, local) {\n if (block && block.i) {\n outroing.delete(block);\n block.i(local);\n }\n}\nfunction transition_out(block, local, detach, callback) {\n if (block && block.o) {\n if (outroing.has(block))\n return;\n outroing.add(block);\n outros.c.push(() => {\n outroing.delete(block);\n if (callback) {\n if (detach)\n block.d(1);\n callback();\n }\n });\n block.o(local);\n }\n}\nconst null_transition = { duration: 0 };\nfunction create_in_transition(node, fn, params) {\n let config = fn(node, params);\n let running = false;\n let animation_name;\n let task;\n let uid = 0;\n function cleanup() {\n if (animation_name)\n delete_rule(node, animation_name);\n }\n function go() {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n if (css)\n animation_name = create_rule(node, 0, 1, duration, delay, easing, css, uid++);\n tick(0, 1);\n const start_time = now() + delay;\n const end_time = start_time + duration;\n if (task)\n task.abort();\n running = true;\n add_render_callback(() => dispatch(node, true, 'start'));\n task = loop(now => {\n if (running) {\n if (now >= end_time) {\n tick(1, 0);\n dispatch(node, true, 'end');\n cleanup();\n return running = false;\n }\n if (now >= start_time) {\n const t = easing((now - start_time) / duration);\n tick(t, 1 - t);\n }\n }\n return running;\n });\n }\n let started = false;\n return {\n start() {\n if (started)\n return;\n delete_rule(node);\n if (is_function(config)) {\n config = config();\n wait().then(go);\n }\n else {\n go();\n }\n },\n invalidate() {\n started = false;\n },\n end() {\n if (running) {\n cleanup();\n running = false;\n }\n }\n };\n}\nfunction create_out_transition(node, fn, params) {\n let config = fn(node, params);\n let running = true;\n let animation_name;\n const group = outros;\n group.r += 1;\n function go() {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n if (css)\n animation_name = create_rule(node, 1, 0, duration, delay, easing, css);\n const start_time = now() + delay;\n const end_time = start_time + duration;\n add_render_callback(() => dispatch(node, false, 'start'));\n loop(now => {\n if (running) {\n if (now >= end_time) {\n tick(0, 1);\n dispatch(node, false, 'end');\n if (!--group.r) {\n // this will result in `end()` being called,\n // so we don't need to clean up here\n run_all(group.c);\n }\n return false;\n }\n if (now >= start_time) {\n const t = easing((now - start_time) / duration);\n tick(1 - t, t);\n }\n }\n return running;\n });\n }\n if (is_function(config)) {\n wait().then(() => {\n // @ts-ignore\n config = config();\n go();\n });\n }\n else {\n go();\n }\n return {\n end(reset) {\n if (reset && config.tick) {\n config.tick(1, 0);\n }\n if (running) {\n if (animation_name)\n delete_rule(node, animation_name);\n running = false;\n }\n }\n };\n}\nfunction create_bidirectional_transition(node, fn, params, intro) {\n let config = fn(node, params);\n let t = intro ? 0 : 1;\n let running_program = null;\n let pending_program = null;\n let animation_name = null;\n function clear_animation() {\n if (animation_name)\n delete_rule(node, animation_name);\n }\n function init(program, duration) {\n const d = program.b - t;\n duration *= Math.abs(d);\n return {\n a: t,\n b: program.b,\n d,\n duration,\n start: program.start,\n end: program.start + duration,\n group: program.group\n };\n }\n function go(b) {\n const { delay = 0, duration = 300, easing = identity, tick = noop, css } = config || null_transition;\n const program = {\n start: now() + delay,\n b\n };\n if (!b) {\n // @ts-ignore todo: improve typings\n program.group = outros;\n outros.r += 1;\n }\n if (running_program) {\n pending_program = program;\n }\n else {\n // if this is an intro, and there's a delay, we need to do\n // an initial tick and/or apply CSS animation immediately\n if (css) {\n clear_animation();\n animation_name = create_rule(node, t, b, duration, delay, easing, css);\n }\n if (b)\n tick(0, 1);\n running_program = init(program, duration);\n add_render_callback(() => dispatch(node, b, 'start'));\n loop(now => {\n if (pending_program && now > pending_program.start) {\n running_program = init(pending_program, duration);\n pending_program = null;\n dispatch(node, running_program.b, 'start');\n if (css) {\n clear_animation();\n animation_name = create_rule(node, t, running_program.b, running_program.duration, 0, easing, config.css);\n }\n }\n if (running_program) {\n if (now >= running_program.end) {\n tick(t = running_program.b, 1 - t);\n dispatch(node, running_program.b, 'end');\n if (!pending_program) {\n // we're done\n if (running_program.b) {\n // intro — we can tidy up immediately\n clear_animation();\n }\n else {\n // outro — needs to be coordinated\n if (!--running_program.group.r)\n run_all(running_program.group.c);\n }\n }\n running_program = null;\n }\n else if (now >= running_program.start) {\n const p = now - running_program.start;\n t = running_program.a + running_program.d * easing(p / running_program.duration);\n tick(t, 1 - t);\n }\n }\n return !!(running_program || pending_program);\n });\n }\n }\n return {\n run(b) {\n if (is_function(config)) {\n wait().then(() => {\n // @ts-ignore\n config = config();\n go(b);\n });\n }\n else {\n go(b);\n }\n },\n end() {\n clear_animation();\n running_program = pending_program = null;\n }\n };\n}\n\nfunction handle_promise(promise, info) {\n const token = info.token = {};\n function update(type, index, key, value) {\n if (info.token !== token)\n return;\n info.resolved = value;\n let child_ctx = info.ctx;\n if (key !== undefined) {\n child_ctx = child_ctx.slice();\n child_ctx[key] = value;\n }\n const block = type && (info.current = type)(child_ctx);\n let needs_flush = false;\n if (info.block) {\n if (info.blocks) {\n info.blocks.forEach((block, i) => {\n if (i !== index && block) {\n group_outros();\n transition_out(block, 1, 1, () => {\n info.blocks[i] = null;\n });\n check_outros();\n }\n });\n }\n else {\n info.block.d(1);\n }\n block.c();\n transition_in(block, 1);\n block.m(info.mount(), info.anchor);\n needs_flush = true;\n }\n info.block = block;\n if (info.blocks)\n info.blocks[index] = block;\n if (needs_flush) {\n flush();\n }\n }\n if (is_promise(promise)) {\n const current_component = get_current_component();\n promise.then(value => {\n set_current_component(current_component);\n update(info.then, 1, info.value, value);\n set_current_component(null);\n }, error => {\n set_current_component(current_component);\n update(info.catch, 2, info.error, error);\n set_current_component(null);\n });\n // if we previously had a then/catch block, destroy it\n if (info.current !== info.pending) {\n update(info.pending, 0);\n return true;\n }\n }\n else {\n if (info.current !== info.then) {\n update(info.then, 1, info.value, promise);\n return true;\n }\n info.resolved = promise;\n }\n}\n\nconst globals = (typeof window !== 'undefined'\n ? window\n : typeof globalThis !== 'undefined'\n ? globalThis\n : global);\n\nfunction destroy_block(block, lookup) {\n block.d(1);\n lookup.delete(block.key);\n}\nfunction outro_and_destroy_block(block, lookup) {\n transition_out(block, 1, 1, () => {\n lookup.delete(block.key);\n });\n}\nfunction fix_and_destroy_block(block, lookup) {\n block.f();\n destroy_block(block, lookup);\n}\nfunction fix_and_outro_and_destroy_block(block, lookup) {\n block.f();\n outro_and_destroy_block(block, lookup);\n}\nfunction update_keyed_each(old_blocks, dirty, get_key, dynamic, ctx, list, lookup, node, destroy, create_each_block, next, get_context) {\n let o = old_blocks.length;\n let n = list.length;\n let i = o;\n const old_indexes = {};\n while (i--)\n old_indexes[old_blocks[i].key] = i;\n const new_blocks = [];\n const new_lookup = new Map();\n const deltas = new Map();\n i = n;\n while (i--) {\n const child_ctx = get_context(ctx, list, i);\n const key = get_key(child_ctx);\n let block = lookup.get(key);\n if (!block) {\n block = create_each_block(key, child_ctx);\n block.c();\n }\n else if (dynamic) {\n block.p(child_ctx, dirty);\n }\n new_lookup.set(key, new_blocks[i] = block);\n if (key in old_indexes)\n deltas.set(key, Math.abs(i - old_indexes[key]));\n }\n const will_move = new Set();\n const did_move = new Set();\n function insert(block) {\n transition_in(block, 1);\n block.m(node, next, lookup.has(block.key));\n lookup.set(block.key, block);\n next = block.first;\n n--;\n }\n while (o && n) {\n const new_block = new_blocks[n - 1];\n const old_block = old_blocks[o - 1];\n const new_key = new_block.key;\n const old_key = old_block.key;\n if (new_block === old_block) {\n // do nothing\n next = new_block.first;\n o--;\n n--;\n }\n else if (!new_lookup.has(old_key)) {\n // remove old block\n destroy(old_block, lookup);\n o--;\n }\n else if (!lookup.has(new_key) || will_move.has(new_key)) {\n insert(new_block);\n }\n else if (did_move.has(old_key)) {\n o--;\n }\n else if (deltas.get(new_key) > deltas.get(old_key)) {\n did_move.add(new_key);\n insert(new_block);\n }\n else {\n will_move.add(old_key);\n o--;\n }\n }\n while (o--) {\n const old_block = old_blocks[o];\n if (!new_lookup.has(old_block.key))\n destroy(old_block, lookup);\n }\n while (n)\n insert(new_blocks[n - 1]);\n return new_blocks;\n}\nfunction validate_each_keys(ctx, list, get_context, get_key) {\n const keys = new Set();\n for (let i = 0; i < list.length; i++) {\n const key = get_key(get_context(ctx, list, i));\n if (keys.has(key)) {\n throw new Error(`Cannot have duplicate keys in a keyed each`);\n }\n keys.add(key);\n }\n}\n\nfunction get_spread_update(levels, updates) {\n const update = {};\n const to_null_out = {};\n const accounted_for = { $$scope: 1 };\n let i = levels.length;\n while (i--) {\n const o = levels[i];\n const n = updates[i];\n if (n) {\n for (const key in o) {\n if (!(key in n))\n to_null_out[key] = 1;\n }\n for (const key in n) {\n if (!accounted_for[key]) {\n update[key] = n[key];\n accounted_for[key] = 1;\n }\n }\n levels[i] = n;\n }\n else {\n for (const key in o) {\n accounted_for[key] = 1;\n }\n }\n }\n for (const key in to_null_out) {\n if (!(key in update))\n update[key] = undefined;\n }\n return update;\n}\nfunction get_spread_object(spread_props) {\n return typeof spread_props === 'object' && spread_props !== null ? spread_props : {};\n}\n\n// source: https://html.spec.whatwg.org/multipage/indices.html\nconst boolean_attributes = new Set([\n 'allowfullscreen',\n 'allowpaymentrequest',\n 'async',\n 'autofocus',\n 'autoplay',\n 'checked',\n 'controls',\n 'default',\n 'defer',\n 'disabled',\n 'formnovalidate',\n 'hidden',\n 'ismap',\n 'loop',\n 'multiple',\n 'muted',\n 'nomodule',\n 'novalidate',\n 'open',\n 'playsinline',\n 'readonly',\n 'required',\n 'reversed',\n 'selected'\n]);\n\nconst invalid_attribute_name_character = /[\\s'\">/=\\u{FDD0}-\\u{FDEF}\\u{FFFE}\\u{FFFF}\\u{1FFFE}\\u{1FFFF}\\u{2FFFE}\\u{2FFFF}\\u{3FFFE}\\u{3FFFF}\\u{4FFFE}\\u{4FFFF}\\u{5FFFE}\\u{5FFFF}\\u{6FFFE}\\u{6FFFF}\\u{7FFFE}\\u{7FFFF}\\u{8FFFE}\\u{8FFFF}\\u{9FFFE}\\u{9FFFF}\\u{AFFFE}\\u{AFFFF}\\u{BFFFE}\\u{BFFFF}\\u{CFFFE}\\u{CFFFF}\\u{DFFFE}\\u{DFFFF}\\u{EFFFE}\\u{EFFFF}\\u{FFFFE}\\u{FFFFF}\\u{10FFFE}\\u{10FFFF}]/u;\n// https://html.spec.whatwg.org/multipage/syntax.html#attributes-2\n// https://infra.spec.whatwg.org/#noncharacter\nfunction spread(args, classes_to_add) {\n const attributes = Object.assign({}, ...args);\n if (classes_to_add) {\n if (attributes.class == null) {\n attributes.class = classes_to_add;\n }\n else {\n attributes.class += ' ' + classes_to_add;\n }\n }\n let str = '';\n Object.keys(attributes).forEach(name => {\n if (invalid_attribute_name_character.test(name))\n return;\n const value = attributes[name];\n if (value === true)\n str += \" \" + name;\n else if (boolean_attributes.has(name.toLowerCase())) {\n if (value)\n str += \" \" + name;\n }\n else if (value != null) {\n str += ` ${name}=\"${String(value).replace(/\"/g, '"').replace(/'/g, ''')}\"`;\n }\n });\n return str;\n}\nconst escaped = {\n '\"': '"',\n \"'\": ''',\n '&': '&',\n '<': '<',\n '>': '>'\n};\nfunction escape(html) {\n return String(html).replace(/[\"'&<>]/g, match => escaped[match]);\n}\nfunction each(items, fn) {\n let str = '';\n for (let i = 0; i < items.length; i += 1) {\n str += fn(items[i], i);\n }\n return str;\n}\nconst missing_component = {\n $$render: () => ''\n};\nfunction validate_component(component, name) {\n if (!component || !component.$$render) {\n if (name === 'svelte:component')\n name += ' this={...}';\n throw new Error(`<${name}> is not a valid SSR component. You may need to review your build config to ensure that dependencies are compiled, rather than imported as pre-compiled modules`);\n }\n return component;\n}\nfunction debug(file, line, column, values) {\n console.log(`{@debug} ${file ? file + ' ' : ''}(${line}:${column})`); // eslint-disable-line no-console\n console.log(values); // eslint-disable-line no-console\n return '';\n}\nlet on_destroy;\nfunction create_ssr_component(fn) {\n function $$render(result, props, bindings, slots) {\n const parent_component = current_component;\n const $$ = {\n on_destroy,\n context: new Map(parent_component ? parent_component.$$.context : []),\n // these will be immediately discarded\n on_mount: [],\n before_update: [],\n after_update: [],\n callbacks: blank_object()\n };\n set_current_component({ $$ });\n const html = fn(result, props, bindings, slots);\n set_current_component(parent_component);\n return html;\n }\n return {\n render: (props = {}, options = {}) => {\n on_destroy = [];\n const result = { title: '', head: '', css: new Set() };\n const html = $$render(result, props, {}, options);\n run_all(on_destroy);\n return {\n html,\n css: {\n code: Array.from(result.css).map(css => css.code).join('\\n'),\n map: null // TODO\n },\n head: result.title + result.head\n };\n },\n $$render\n };\n}\nfunction add_attribute(name, value, boolean) {\n if (value == null || (boolean && !value))\n return '';\n return ` ${name}${value === true ? '' : `=${typeof value === 'string' ? JSON.stringify(escape(value)) : `\"${value}\"`}`}`;\n}\nfunction add_classes(classes) {\n return classes ? ` class=\"${classes}\"` : ``;\n}\n\nfunction bind(component, name, callback) {\n const index = component.$$.props[name];\n if (index !== undefined) {\n component.$$.bound[index] = callback;\n callback(component.$$.ctx[index]);\n }\n}\nfunction create_component(block) {\n block && block.c();\n}\nfunction claim_component(block, parent_nodes) {\n block && block.l(parent_nodes);\n}\nfunction mount_component(component, target, anchor) {\n const { fragment, on_mount, on_destroy, after_update } = component.$$;\n fragment && fragment.m(target, anchor);\n // onMount happens before the initial afterUpdate\n add_render_callback(() => {\n const new_on_destroy = on_mount.map(run).filter(is_function);\n if (on_destroy) {\n on_destroy.push(...new_on_destroy);\n }\n else {\n // Edge case - component was destroyed immediately,\n // most likely as a result of a binding initialising\n run_all(new_on_destroy);\n }\n component.$$.on_mount = [];\n });\n after_update.forEach(add_render_callback);\n}\nfunction destroy_component(component, detaching) {\n const $$ = component.$$;\n if ($$.fragment !== null) {\n run_all($$.on_destroy);\n $$.fragment && $$.fragment.d(detaching);\n // TODO null out other refs, including component.$$ (but need to\n // preserve final state?)\n $$.on_destroy = $$.fragment = null;\n $$.ctx = [];\n }\n}\nfunction make_dirty(component, i) {\n if (component.$$.dirty[0] === -1) {\n dirty_components.push(component);\n schedule_update();\n component.$$.dirty.fill(0);\n }\n component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));\n}\nfunction init(component, options, instance, create_fragment, not_equal, props, dirty = [-1]) {\n const parent_component = current_component;\n set_current_component(component);\n const prop_values = options.props || {};\n const $$ = component.$$ = {\n fragment: null,\n ctx: null,\n // state\n props,\n update: noop,\n not_equal,\n bound: blank_object(),\n // lifecycle\n on_mount: [],\n on_destroy: [],\n before_update: [],\n after_update: [],\n context: new Map(parent_component ? parent_component.$$.context : []),\n // everything else\n callbacks: blank_object(),\n dirty\n };\n let ready = false;\n $$.ctx = instance\n ? instance(component, prop_values, (i, ret, ...rest) => {\n const value = rest.length ? rest[0] : ret;\n if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {\n if ($$.bound[i])\n $$.bound[i](value);\n if (ready)\n make_dirty(component, i);\n }\n return ret;\n })\n : [];\n $$.update();\n ready = true;\n run_all($$.before_update);\n // `false` as a special case of no DOM component\n $$.fragment = create_fragment ? create_fragment($$.ctx) : false;\n if (options.target) {\n if (options.hydrate) {\n const nodes = children(options.target);\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n $$.fragment && $$.fragment.l(nodes);\n nodes.forEach(detach);\n }\n else {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n $$.fragment && $$.fragment.c();\n }\n if (options.intro)\n transition_in(component.$$.fragment);\n mount_component(component, options.target, options.anchor);\n flush();\n }\n set_current_component(parent_component);\n}\nlet SvelteElement;\nif (typeof HTMLElement === 'function') {\n SvelteElement = class extends HTMLElement {\n constructor() {\n super();\n this.attachShadow({ mode: 'open' });\n }\n connectedCallback() {\n // @ts-ignore todo: improve typings\n for (const key in this.$$.slotted) {\n // @ts-ignore todo: improve typings\n this.appendChild(this.$$.slotted[key]);\n }\n }\n attributeChangedCallback(attr, _oldValue, newValue) {\n this[attr] = newValue;\n }\n $destroy() {\n destroy_component(this, 1);\n this.$destroy = noop;\n }\n $on(type, callback) {\n // TODO should this delegate to addEventListener?\n const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n callbacks.push(callback);\n return () => {\n const index = callbacks.indexOf(callback);\n if (index !== -1)\n callbacks.splice(index, 1);\n };\n }\n $set() {\n // overridden by instance, if it has props\n }\n };\n}\nclass SvelteComponent {\n $destroy() {\n destroy_component(this, 1);\n this.$destroy = noop;\n }\n $on(type, callback) {\n const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));\n callbacks.push(callback);\n return () => {\n const index = callbacks.indexOf(callback);\n if (index !== -1)\n callbacks.splice(index, 1);\n };\n }\n $set() {\n // overridden by instance, if it has props\n }\n}\n\nfunction dispatch_dev(type, detail) {\n document.dispatchEvent(custom_event(type, Object.assign({ version: '3.22.2' }, detail)));\n}\nfunction append_dev(target, node) {\n dispatch_dev(\"SvelteDOMInsert\", { target, node });\n append(target, node);\n}\nfunction insert_dev(target, node, anchor) {\n dispatch_dev(\"SvelteDOMInsert\", { target, node, anchor });\n insert(target, node, anchor);\n}\nfunction detach_dev(node) {\n dispatch_dev(\"SvelteDOMRemove\", { node });\n detach(node);\n}\nfunction detach_between_dev(before, after) {\n while (before.nextSibling && before.nextSibling !== after) {\n detach_dev(before.nextSibling);\n }\n}\nfunction detach_before_dev(after) {\n while (after.previousSibling) {\n detach_dev(after.previousSibling);\n }\n}\nfunction detach_after_dev(before) {\n while (before.nextSibling) {\n detach_dev(before.nextSibling);\n }\n}\nfunction listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {\n const modifiers = options === true ? [\"capture\"] : options ? Array.from(Object.keys(options)) : [];\n if (has_prevent_default)\n modifiers.push('preventDefault');\n if (has_stop_propagation)\n modifiers.push('stopPropagation');\n dispatch_dev(\"SvelteDOMAddEventListener\", { node, event, handler, modifiers });\n const dispose = listen(node, event, handler, options);\n return () => {\n dispatch_dev(\"SvelteDOMRemoveEventListener\", { node, event, handler, modifiers });\n dispose();\n };\n}\nfunction attr_dev(node, attribute, value) {\n attr(node, attribute, value);\n if (value == null)\n dispatch_dev(\"SvelteDOMRemoveAttribute\", { node, attribute });\n else\n dispatch_dev(\"SvelteDOMSetAttribute\", { node, attribute, value });\n}\nfunction prop_dev(node, property, value) {\n node[property] = value;\n dispatch_dev(\"SvelteDOMSetProperty\", { node, property, value });\n}\nfunction dataset_dev(node, property, value) {\n node.dataset[property] = value;\n dispatch_dev(\"SvelteDOMSetDataset\", { node, property, value });\n}\nfunction set_data_dev(text, data) {\n data = '' + data;\n if (text.data === data)\n return;\n dispatch_dev(\"SvelteDOMSetData\", { node: text, data });\n text.data = data;\n}\nfunction validate_each_argument(arg) {\n if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {\n let msg = '{#each} only iterates over array-like objects.';\n if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {\n msg += ' You can use a spread to convert this iterable into an array.';\n }\n throw new Error(msg);\n }\n}\nfunction validate_slots(name, slot, keys) {\n for (const slot_key of Object.keys(slot)) {\n if (!~keys.indexOf(slot_key)) {\n console.warn(`<${name}> received an unexpected slot \"${slot_key}\".`);\n }\n }\n}\nclass SvelteComponentDev extends SvelteComponent {\n constructor(options) {\n if (!options || (!options.target && !options.$$inline)) {\n throw new Error(`'target' is a required option`);\n }\n super();\n }\n $destroy() {\n super.$destroy();\n this.$destroy = () => {\n console.warn(`Component was already destroyed`); // eslint-disable-line no-console\n };\n }\n $capture_state() { }\n $inject_state() { }\n}\nfunction loop_guard(timeout) {\n const start = Date.now();\n return () => {\n if (Date.now() - start > timeout) {\n throw new Error(`Infinite loop detected`);\n }\n };\n}\n\nexport { HtmlTag, SvelteComponent, SvelteComponentDev, SvelteElement, action_destroyer, add_attribute, add_classes, add_flush_callback, add_location, add_render_callback, add_resize_listener, add_transform, afterUpdate, append, append_dev, assign, attr, attr_dev, beforeUpdate, bind, binding_callbacks, blank_object, bubble, check_outros, children, claim_component, claim_element, claim_space, claim_text, clear_loops, component_subscribe, compute_rest_props, createEventDispatcher, create_animation, create_bidirectional_transition, create_component, create_in_transition, create_out_transition, create_slot, create_ssr_component, current_component, custom_event, dataset_dev, debug, destroy_block, destroy_component, destroy_each, detach, detach_after_dev, detach_before_dev, detach_between_dev, detach_dev, dirty_components, dispatch_dev, each, element, element_is, empty, escape, escaped, exclude_internal_props, fix_and_destroy_block, fix_and_outro_and_destroy_block, fix_position, flush, getContext, get_binding_group_value, get_current_component, get_slot_changes, get_slot_context, get_spread_object, get_spread_update, get_store_value, globals, group_outros, handle_promise, has_prop, identity, init, insert, insert_dev, intros, invalid_attribute_name_character, is_client, is_crossorigin, is_function, is_promise, listen, listen_dev, loop, loop_guard, missing_component, mount_component, noop, not_equal, now, null_to_empty, object_without_properties, onDestroy, onMount, once, outro_and_destroy_block, prevent_default, prop_dev, query_selector_all, raf, run, run_all, safe_not_equal, schedule_update, select_multiple_value, select_option, select_options, select_value, self, setContext, set_attributes, set_current_component, set_custom_element_data, set_data, set_data_dev, set_input_type, set_input_value, set_now, set_raf, set_store_value, set_style, set_svg_attributes, space, spread, stop_propagation, subscribe, svg_element, text, tick, time_ranges_to_array, to_number, toggle_class, transition_in, transition_out, update_keyed_each, validate_component, validate_each_argument, validate_each_keys, validate_slots, validate_store, xlink_attr };\n","import { noop, safe_not_equal, subscribe, run_all, is_function } from '../internal';\nexport { get_store_value as get } from '../internal';\n\nconst subscriber_queue = [];\n/**\n * Creates a `Readable` store that allows reading by subscription.\n * @param value initial value\n * @param {StartStopNotifier}start start and stop notifications for subscriptions\n */\nfunction readable(value, start) {\n return {\n subscribe: writable(value, start).subscribe,\n };\n}\n/**\n * Create a `Writable` store that allows both updating and reading by subscription.\n * @param {*=}value initial value\n * @param {StartStopNotifier=}start start and stop notifications for subscriptions\n */\nfunction writable(value, start = noop) {\n let stop;\n const subscribers = [];\n function set(new_value) {\n if (safe_not_equal(value, new_value)) {\n value = new_value;\n if (stop) { // store is ready\n const run_queue = !subscriber_queue.length;\n for (let i = 0; i < subscribers.length; i += 1) {\n const s = subscribers[i];\n s[1]();\n subscriber_queue.push(s, value);\n }\n if (run_queue) {\n for (let i = 0; i < subscriber_queue.length; i += 2) {\n subscriber_queue[i][0](subscriber_queue[i + 1]);\n }\n subscriber_queue.length = 0;\n }\n }\n }\n }\n function update(fn) {\n set(fn(value));\n }\n function subscribe(run, invalidate = noop) {\n const subscriber = [run, invalidate];\n subscribers.push(subscriber);\n if (subscribers.length === 1) {\n stop = start(set) || noop;\n }\n run(value);\n return () => {\n const index = subscribers.indexOf(subscriber);\n if (index !== -1) {\n subscribers.splice(index, 1);\n }\n if (subscribers.length === 0) {\n stop();\n stop = null;\n }\n };\n }\n return { set, update, subscribe };\n}\nfunction derived(stores, fn, initial_value) {\n const single = !Array.isArray(stores);\n const stores_array = single\n ? [stores]\n : stores;\n const auto = fn.length < 2;\n return readable(initial_value, (set) => {\n let inited = false;\n const values = [];\n let pending = 0;\n let cleanup = noop;\n const sync = () => {\n if (pending) {\n return;\n }\n cleanup();\n const result = fn(single ? values[0] : values, set);\n if (auto) {\n set(result);\n }\n else {\n cleanup = is_function(result) ? result : noop;\n }\n };\n const unsubscribers = stores_array.map((store, i) => subscribe(store, (value) => {\n values[i] = value;\n pending &= ~(1 << i);\n if (inited) {\n sync();\n }\n }, () => {\n pending |= (1 << i);\n }));\n inited = true;\n sync();\n return function stop() {\n run_all(unsubscribers);\n cleanup();\n };\n });\n}\n\nexport { derived, readable, writable };\n","export default(function e(t){function r(e){return function(t,r){return a(t,Object.assign({method:e},r))}}function o(e){return function(t,r,o){return a(t,Object.assign({method:e,data:r},o))}}function n(e,t,r){if(Array.isArray(e))return e.concat(t);if(t&&\"object\"==typeof t){var o,a={};if(e)for(o in e)a[r?o.toLowerCase():o]=e[o];for(o in t){var i=r?o.toLowerCase():o;\"headers\"===i&&(r=!0),a[i]=o in a?n(a[i],t[o],r):t[o]}return a}return t}function a(e,r){\"string\"!=typeof e&&(e=(r=e).url);var o=n(t,r||{}),a=o.data;if(o.transformRequest)for(var i=0;i {\n // console.log('>> retrieved', d);\n const data = JSON.parse(d.data);\n\n JobList.set(data);\n }).catch((err) => {\n console.error('getJobList', err);\n });\n },\n\n loadJobDetail(id) {\n console.log(`loadJobDetail: ${id}`);\n if (id) {\n const u = `${urls.jobs}/${id}`;\n axios.get(u).then((d) => {\n const data = JSON.parse(d.data);\n\n JobDetails.set(data);\n }).catch((err) => {\n console.error('loadJobDetail', err);\n });\n }\n },\n\n async touchJob(id) {\n console.log(`touchJob: ${id}`);\n if (id) {\n const u = `${urls.jobs}/${id}`;\n await axios.put(u).then((d) => {\n if (d.status !== 200)\n console.error(d);\n }).catch((err) => {\n console.error('touchJob', err);\n });\n\n JobList.update((data) => {\n data.map((v) => {\n if (v._id === id) {\n v.read = new Date().getTime();\n\n return v;\n }\n });\n\n return data;\n });\n }\n },\n\n async appliedJob(id) {\n console.log(`touchJob: ${id}`);\n\n const now = new Date().getTime();\n\n // JobDetails\n\n if (id) {\n console.log('Applying..');\n const u = `${urls.apply}/${id}`;\n await axios.put(u).then((d) => {\n if (d.status !== 200)\n console.error(d);\n else {\n \n }\n }).catch((err) => {\n console.error('appliedJob', err);\n });\n\n const _id = id;\n \n JobList.update((data) => {\n data.map((v) => {\n if (v._id === _id) {\n v.applied = now;\n\n return v;\n }\n });\n\n return data;\n });\n\n JobDetails.update((v) => {\n v.data.applied = now;\n\n return v;\n });\n }\n },\n\n async markAllRead() {\n console.log('>> markAllRead');\n\n const u = `${urls.readall}`;\n await axios.put(u).then((d) => {\n if (d.status !== 200)\n console.error(d);\n }).catch((err) => {\n console.error('markAllRead', err);\n });\n\n this.getJobList();\n },\n\n killWord(word) {\n console.log(`>> killword:${word}`);\n\n const u = `${urls.kill}/${word}`;\n axios.put(u).then((d) => {\n if (d.status !== 200)\n console.error(d);\n }).catch((err) => {\n console.error('killword', err);\n });\n },\n\n upVote(id) {\n console.log(`>> upvote:${id}`);\n\n const u = `${urls.upvote}/${id}`;\n axios.put(u).then((d) => {\n if (d.status !== 200)\n console.error(d);\n }).catch((err) => {\n console.error('upvote', err);\n });\n },\n\n downVote(id) {\n console.log(`>> downvote:${id}`);\n\n const u = `${urls.downvote}/${id}`;\n axios.put(u).then((d) => {\n if (d.status !== 200)\n console.error(d);\n }).catch((err) => {\n console.error('downvote', err);\n });\n }\n\n};\n\nexport { JobList, JobDetails, actions };\n","\n\n\n\n
\n

Jobs

\n
\n
\n \n
\n\n
\n","var token = /d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\\1?|[aA]|\"[^\"]*\"|'[^']*'/g;\nvar twoDigitsOptional = \"[1-9]\\\\d?\";\nvar twoDigits = \"\\\\d\\\\d\";\nvar threeDigits = \"\\\\d{3}\";\nvar fourDigits = \"\\\\d{4}\";\nvar word = \"[^\\\\s]+\";\nvar literal = /\\[([^]*?)\\]/gm;\nfunction shorten(arr, sLen) {\n var newArr = [];\n for (var i = 0, len = arr.length; i < len; i++) {\n newArr.push(arr[i].substr(0, sLen));\n }\n return newArr;\n}\nvar monthUpdate = function (arrName) { return function (v, i18n) {\n var lowerCaseArr = i18n[arrName].map(function (v) { return v.toLowerCase(); });\n var index = lowerCaseArr.indexOf(v.toLowerCase());\n if (index > -1) {\n return index;\n }\n return null;\n}; };\nfunction assign(origObj) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {\n var obj = args_1[_a];\n for (var key in obj) {\n // @ts-ignore ex\n origObj[key] = obj[key];\n }\n }\n return origObj;\n}\nvar dayNames = [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\"\n];\nvar monthNames = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\"\n];\nvar monthNamesShort = shorten(monthNames, 3);\nvar dayNamesShort = shorten(dayNames, 3);\nvar defaultI18n = {\n dayNamesShort: dayNamesShort,\n dayNames: dayNames,\n monthNamesShort: monthNamesShort,\n monthNames: monthNames,\n amPm: [\"am\", \"pm\"],\n DoFn: function (dayOfMonth) {\n return (dayOfMonth +\n [\"th\", \"st\", \"nd\", \"rd\"][dayOfMonth % 10 > 3\n ? 0\n : ((dayOfMonth - (dayOfMonth % 10) !== 10 ? 1 : 0) * dayOfMonth) % 10]);\n }\n};\nvar globalI18n = assign({}, defaultI18n);\nvar setGlobalDateI18n = function (i18n) {\n return (globalI18n = assign(globalI18n, i18n));\n};\nvar regexEscape = function (str) {\n return str.replace(/[|\\\\{()[^$+*?.-]/g, \"\\\\$&\");\n};\nvar pad = function (val, len) {\n if (len === void 0) { len = 2; }\n val = String(val);\n while (val.length < len) {\n val = \"0\" + val;\n }\n return val;\n};\nvar formatFlags = {\n D: function (dateObj) { return String(dateObj.getDate()); },\n DD: function (dateObj) { return pad(dateObj.getDate()); },\n Do: function (dateObj, i18n) {\n return i18n.DoFn(dateObj.getDate());\n },\n d: function (dateObj) { return String(dateObj.getDay()); },\n dd: function (dateObj) { return pad(dateObj.getDay()); },\n ddd: function (dateObj, i18n) {\n return i18n.dayNamesShort[dateObj.getDay()];\n },\n dddd: function (dateObj, i18n) {\n return i18n.dayNames[dateObj.getDay()];\n },\n M: function (dateObj) { return String(dateObj.getMonth() + 1); },\n MM: function (dateObj) { return pad(dateObj.getMonth() + 1); },\n MMM: function (dateObj, i18n) {\n return i18n.monthNamesShort[dateObj.getMonth()];\n },\n MMMM: function (dateObj, i18n) {\n return i18n.monthNames[dateObj.getMonth()];\n },\n YY: function (dateObj) {\n return pad(String(dateObj.getFullYear()), 4).substr(2);\n },\n YYYY: function (dateObj) { return pad(dateObj.getFullYear(), 4); },\n h: function (dateObj) { return String(dateObj.getHours() % 12 || 12); },\n hh: function (dateObj) { return pad(dateObj.getHours() % 12 || 12); },\n H: function (dateObj) { return String(dateObj.getHours()); },\n HH: function (dateObj) { return pad(dateObj.getHours()); },\n m: function (dateObj) { return String(dateObj.getMinutes()); },\n mm: function (dateObj) { return pad(dateObj.getMinutes()); },\n s: function (dateObj) { return String(dateObj.getSeconds()); },\n ss: function (dateObj) { return pad(dateObj.getSeconds()); },\n S: function (dateObj) {\n return String(Math.round(dateObj.getMilliseconds() / 100));\n },\n SS: function (dateObj) {\n return pad(Math.round(dateObj.getMilliseconds() / 10), 2);\n },\n SSS: function (dateObj) { return pad(dateObj.getMilliseconds(), 3); },\n a: function (dateObj, i18n) {\n return dateObj.getHours() < 12 ? i18n.amPm[0] : i18n.amPm[1];\n },\n A: function (dateObj, i18n) {\n return dateObj.getHours() < 12\n ? i18n.amPm[0].toUpperCase()\n : i18n.amPm[1].toUpperCase();\n },\n ZZ: function (dateObj) {\n var offset = dateObj.getTimezoneOffset();\n return ((offset > 0 ? \"-\" : \"+\") +\n pad(Math.floor(Math.abs(offset) / 60) * 100 + (Math.abs(offset) % 60), 4));\n },\n Z: function (dateObj) {\n var offset = dateObj.getTimezoneOffset();\n return ((offset > 0 ? \"-\" : \"+\") +\n pad(Math.floor(Math.abs(offset) / 60), 2) +\n \":\" +\n pad(Math.abs(offset) % 60, 2));\n }\n};\nvar monthParse = function (v) { return +v - 1; };\nvar emptyDigits = [null, twoDigitsOptional];\nvar emptyWord = [null, word];\nvar amPm = [\n \"isPm\",\n word,\n function (v, i18n) {\n var val = v.toLowerCase();\n if (val === i18n.amPm[0]) {\n return 0;\n }\n else if (val === i18n.amPm[1]) {\n return 1;\n }\n return null;\n }\n];\nvar timezoneOffset = [\n \"timezoneOffset\",\n \"[^\\\\s]*?[\\\\+\\\\-]\\\\d\\\\d:?\\\\d\\\\d|[^\\\\s]*?Z?\",\n function (v) {\n var parts = (v + \"\").match(/([+-]|\\d\\d)/gi);\n if (parts) {\n var minutes = +parts[1] * 60 + parseInt(parts[2], 10);\n return parts[0] === \"+\" ? minutes : -minutes;\n }\n return 0;\n }\n];\nvar parseFlags = {\n D: [\"day\", twoDigitsOptional],\n DD: [\"day\", twoDigits],\n Do: [\"day\", twoDigitsOptional + word, function (v) { return parseInt(v, 10); }],\n M: [\"month\", twoDigitsOptional, monthParse],\n MM: [\"month\", twoDigits, monthParse],\n YY: [\n \"year\",\n twoDigits,\n function (v) {\n var now = new Date();\n var cent = +(\"\" + now.getFullYear()).substr(0, 2);\n return +(\"\" + (+v > 68 ? cent - 1 : cent) + v);\n }\n ],\n h: [\"hour\", twoDigitsOptional, undefined, \"isPm\"],\n hh: [\"hour\", twoDigits, undefined, \"isPm\"],\n H: [\"hour\", twoDigitsOptional],\n HH: [\"hour\", twoDigits],\n m: [\"minute\", twoDigitsOptional],\n mm: [\"minute\", twoDigits],\n s: [\"second\", twoDigitsOptional],\n ss: [\"second\", twoDigits],\n YYYY: [\"year\", fourDigits],\n S: [\"millisecond\", \"\\\\d\", function (v) { return +v * 100; }],\n SS: [\"millisecond\", twoDigits, function (v) { return +v * 10; }],\n SSS: [\"millisecond\", threeDigits],\n d: emptyDigits,\n dd: emptyDigits,\n ddd: emptyWord,\n dddd: emptyWord,\n MMM: [\"month\", word, monthUpdate(\"monthNamesShort\")],\n MMMM: [\"month\", word, monthUpdate(\"monthNames\")],\n a: amPm,\n A: amPm,\n ZZ: timezoneOffset,\n Z: timezoneOffset\n};\n// Some common format strings\nvar globalMasks = {\n default: \"ddd MMM DD YYYY HH:mm:ss\",\n shortDate: \"M/D/YY\",\n mediumDate: \"MMM D, YYYY\",\n longDate: \"MMMM D, YYYY\",\n fullDate: \"dddd, MMMM D, YYYY\",\n isoDate: \"YYYY-MM-DD\",\n isoDateTime: \"YYYY-MM-DDTHH:mm:ssZ\",\n shortTime: \"HH:mm\",\n mediumTime: \"HH:mm:ss\",\n longTime: \"HH:mm:ss.SSS\"\n};\nvar setGlobalDateMasks = function (masks) { return assign(globalMasks, masks); };\n/***\n * Format a date\n * @method format\n * @param {Date|number} dateObj\n * @param {string} mask Format of the date, i.e. 'mm-dd-yy' or 'shortDate'\n * @returns {string} Formatted date string\n */\nvar format = function (dateObj, mask, i18n) {\n if (mask === void 0) { mask = globalMasks[\"default\"]; }\n if (i18n === void 0) { i18n = {}; }\n if (typeof dateObj === \"number\") {\n dateObj = new Date(dateObj);\n }\n if (Object.prototype.toString.call(dateObj) !== \"[object Date]\" ||\n isNaN(dateObj.getTime())) {\n throw new Error(\"Invalid Date pass to format\");\n }\n mask = globalMasks[mask] || mask;\n var literals = [];\n // Make literals inactive by replacing them with @@@\n mask = mask.replace(literal, function ($0, $1) {\n literals.push($1);\n return \"@@@\";\n });\n var combinedI18nSettings = assign(assign({}, globalI18n), i18n);\n // Apply formatting rules\n mask = mask.replace(token, function ($0) {\n return formatFlags[$0](dateObj, combinedI18nSettings);\n });\n // Inline literal values back into the formatted value\n return mask.replace(/@@@/g, function () { return literals.shift(); });\n};\n/**\n * Parse a date string into a Javascript Date object /\n * @method parse\n * @param {string} dateStr Date string\n * @param {string} format Date parse format\n * @param {i18n} I18nSettingsOptional Full or subset of I18N settings\n * @returns {Date|null} Returns Date object. Returns null what date string is invalid or doesn't match format\n */\nfunction parse(dateStr, format, i18n) {\n if (i18n === void 0) { i18n = {}; }\n if (typeof format !== \"string\") {\n throw new Error(\"Invalid format in fecha parse\");\n }\n // Check to see if the format is actually a mask\n format = globalMasks[format] || format;\n // Avoid regular expression denial of service, fail early for really long strings\n // https://www.owasp.org/index.php/Regular_expression_Denial_of_Service_-_ReDoS\n if (dateStr.length > 1000) {\n return null;\n }\n // Default to the beginning of the year.\n var today = new Date();\n var dateInfo = {\n year: today.getFullYear(),\n month: 0,\n day: 1,\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0,\n isPm: null,\n timezoneOffset: null\n };\n var parseInfo = [];\n var literals = [];\n // Replace all the literals with @@@. Hopefully a string that won't exist in the format\n var newFormat = format.replace(literal, function ($0, $1) {\n literals.push(regexEscape($1));\n return \"@@@\";\n });\n var specifiedFields = {};\n var requiredFields = {};\n // Change every token that we find into the correct regex\n newFormat = regexEscape(newFormat).replace(token, function ($0) {\n var info = parseFlags[$0];\n var field = info[0], regex = info[1], requiredField = info[3];\n // Check if the person has specified the same field twice. This will lead to confusing results.\n if (specifiedFields[field]) {\n throw new Error(\"Invalid format. \" + field + \" specified twice in format\");\n }\n specifiedFields[field] = true;\n // Check if there are any required fields. For instance, 12 hour time requires AM/PM specified\n if (requiredField) {\n requiredFields[requiredField] = true;\n }\n parseInfo.push(info);\n return \"(\" + regex + \")\";\n });\n // Check all the required fields are present\n Object.keys(requiredFields).forEach(function (field) {\n if (!specifiedFields[field]) {\n throw new Error(\"Invalid format. \" + field + \" is required in specified format\");\n }\n });\n // Add back all the literals after\n newFormat = newFormat.replace(/@@@/g, function () { return literals.shift(); });\n // Check if the date string matches the format. If it doesn't return null\n var matches = dateStr.match(new RegExp(newFormat, \"i\"));\n if (!matches) {\n return null;\n }\n var combinedI18nSettings = assign(assign({}, globalI18n), i18n);\n // For each match, call the parser function for that date part\n for (var i = 1; i < matches.length; i++) {\n var _a = parseInfo[i - 1], field = _a[0], parser = _a[2];\n var value = parser\n ? parser(matches[i], combinedI18nSettings)\n : +matches[i];\n // If the parser can't make sense of the value, return null\n if (value == null) {\n return null;\n }\n dateInfo[field] = value;\n }\n if (dateInfo.isPm === 1 && dateInfo.hour != null && +dateInfo.hour !== 12) {\n dateInfo.hour = +dateInfo.hour + 12;\n }\n else if (dateInfo.isPm === 0 && +dateInfo.hour === 12) {\n dateInfo.hour = 0;\n }\n var dateWithoutTZ = new Date(dateInfo.year, dateInfo.month, dateInfo.day, dateInfo.hour, dateInfo.minute, dateInfo.second, dateInfo.millisecond);\n var validateFields = [\n [\"month\", \"getMonth\"],\n [\"day\", \"getDate\"],\n [\"hour\", \"getHours\"],\n [\"minute\", \"getMinutes\"],\n [\"second\", \"getSeconds\"]\n ];\n for (var i = 0, len = validateFields.length; i < len; i++) {\n // Check to make sure the date field is within the allowed range. Javascript dates allows values\n // outside the allowed range. If the values don't match the value was invalid\n if (specifiedFields[validateFields[i][0]] &&\n dateInfo[validateFields[i][0]] !== dateWithoutTZ[validateFields[i][1]]()) {\n return null;\n }\n }\n if (dateInfo.timezoneOffset == null) {\n return dateWithoutTZ;\n }\n return new Date(Date.UTC(dateInfo.year, dateInfo.month, dateInfo.day, dateInfo.hour, dateInfo.minute - dateInfo.timezoneOffset, dateInfo.second, dateInfo.millisecond));\n}\nvar fecha = {\n format: format,\n parse: parse,\n defaultI18n: defaultI18n,\n setGlobalDateI18n: setGlobalDateI18n,\n setGlobalDateMasks: setGlobalDateMasks\n};\n\nexport default fecha;\nexport { assign, format, parse, defaultI18n, setGlobalDateI18n, setGlobalDateMasks };\n//# sourceMappingURL=fecha.js.map\n","\n\n\n\n\n
\n \n \n \n \n \n \n \n \n \n \n {#each $JobList as item, _id}\n \n \n \n \n \n \n \n {/each}\n \n
\n Title\n \n Site\n \n Company\n \n Date\n
\n {item.title}\n \n {item.site}{ellipsisV2(item.company,25)}{timeOrDate(item.timestamp)}
\n
\n\n\n","\n\n\n\n\n{#if visible}\n
\n
\n
\n
\n {$JobDetails.title}\n\n
\n\n {#if jobtype === 1}\n Contract\n {:else if jobtype === 2}\n Permanent\n {/if}\n\n
\n
\n
\n Company: {$JobDetails.company}\n
\n
\n Location: {$JobDetails.location}\n
\n
\n Applied:\n {#if !applied}\n \n {:else}\n Applied!\n {/if}\n\n
\n\n
\n\n
\n
\n Salary: {@html $JobDetails.salary}\n
\n
\n Scraped: {$JobDetails.date}\n
\n
\n Site: {$JobDetails.site}\n
\n\n
\n\n
\n
\n {#each $JobDetails.data.autoclass.words as word, _wid}\n {#if $JobDetails.data.autoclass.good.indexOf(word) !== -1}\n {word}\n {:else if $JobDetails.data.autoclass.bad.indexOf(word) !== -1}\n {word}\n {:else }\n {word}\n {/if}\n {/each}\n\n
\n \n\n
\n\n\n
\n
\n {@html $JobDetails.summary}\n
\n
\n\n{/if}\n","\n\n\n\n
\n\n
\n {titleText}\n
\n\n\n
\n \n \n
\n\n\n
\n","/**\n * Helpers.\n */\n\nvar s = 1000;\nvar m = s * 60;\nvar h = m * 60;\nvar d = h * 24;\nvar w = d * 7;\nvar y = d * 365.25;\n\n/**\n * Parse or format the given `val`.\n *\n * Options:\n *\n * - `long` verbose formatting [false]\n *\n * @param {String|Number} val\n * @param {Object} [options]\n * @throws {Error} throw an error if val is not a non-empty string or a number\n * @return {String|Number}\n * @api public\n */\n\nmodule.exports = function(val, options) {\n options = options || {};\n var type = typeof val;\n if (type === 'string' && val.length > 0) {\n return parse(val);\n } else if (type === 'number' && isFinite(val)) {\n return options.long ? fmtLong(val) : fmtShort(val);\n }\n throw new Error(\n 'val is not a non-empty string or a valid number. val=' +\n JSON.stringify(val)\n );\n};\n\n/**\n * Parse the given `str` and return milliseconds.\n *\n * @param {String} str\n * @return {Number}\n * @api private\n */\n\nfunction parse(str) {\n str = String(str);\n if (str.length > 100) {\n return;\n }\n var match = /^(-?(?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(\n str\n );\n if (!match) {\n return;\n }\n var n = parseFloat(match[1]);\n var type = (match[2] || 'ms').toLowerCase();\n switch (type) {\n case 'years':\n case 'year':\n case 'yrs':\n case 'yr':\n case 'y':\n return n * y;\n case 'weeks':\n case 'week':\n case 'w':\n return n * w;\n case 'days':\n case 'day':\n case 'd':\n return n * d;\n case 'hours':\n case 'hour':\n case 'hrs':\n case 'hr':\n case 'h':\n return n * h;\n case 'minutes':\n case 'minute':\n case 'mins':\n case 'min':\n case 'm':\n return n * m;\n case 'seconds':\n case 'second':\n case 'secs':\n case 'sec':\n case 's':\n return n * s;\n case 'milliseconds':\n case 'millisecond':\n case 'msecs':\n case 'msec':\n case 'ms':\n return n;\n default:\n return undefined;\n }\n}\n\n/**\n * Short format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtShort(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return Math.round(ms / d) + 'd';\n }\n if (msAbs >= h) {\n return Math.round(ms / h) + 'h';\n }\n if (msAbs >= m) {\n return Math.round(ms / m) + 'm';\n }\n if (msAbs >= s) {\n return Math.round(ms / s) + 's';\n }\n return ms + 'ms';\n}\n\n/**\n * Long format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtLong(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return plural(ms, msAbs, d, 'day');\n }\n if (msAbs >= h) {\n return plural(ms, msAbs, h, 'hour');\n }\n if (msAbs >= m) {\n return plural(ms, msAbs, m, 'minute');\n }\n if (msAbs >= s) {\n return plural(ms, msAbs, s, 'second');\n }\n return ms + ' ms';\n}\n\n/**\n * Pluralization helper.\n */\n\nfunction plural(ms, msAbs, n, name) {\n var isPlural = msAbs >= n * 1.5;\n return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : '');\n}\n","import App from './App.svelte';\nimport ms from 'ms';\n\nimport { actions } from './state/state';\n\nlet timerID = 0;\n\nconst app = new App({\n 'target': document.body\n});\n\nfunction toHour(extra = 0) {\n const now = new Date();\n\n return (3600000 - (now.getTime() % 3600000)) + extra;\n}\n\nfunction update() {\n actions.getJobList();\n\n const delay = toHour() + ms('10m');\n\n console.log('Next:', delay);\n\n timerID = setTimeout(() => {\n update();\n }, delay);\n}\n\nupdate();\n\nexport default app;\n"],"names":["update"],"mappings":"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"} \ No newline at end of file diff --git a/server/dist/gfx/star.svg b/server/dist/gfx/star.svg deleted file mode 100644 index 66c36c2..0000000 --- a/server/dist/gfx/star.svg +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/server/dist/global.css b/server/dist/global.css deleted file mode 100644 index e69de29..0000000 diff --git a/server/dist/index.html b/server/dist/index.html index e744409..3ed035a 100644 --- a/server/dist/index.html +++ b/server/dist/index.html @@ -1,18 +1,13 @@ - + - - - - Jobs Server - - - - - - - - + + Jobs NG + + + + - + + diff --git a/server/dist/main.6053daaf70df7cc81398.js b/server/dist/main.6053daaf70df7cc81398.js new file mode 100644 index 0000000..08bd227 --- /dev/null +++ b/server/dist/main.6053daaf70df7cc81398.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[1],{0:function(e,t,n){e.exports=n("zUnb")},zUnb:function(e,t){function n(e){return"function"==typeof e}let r=!1;const s={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){const e=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+e.stack)}else r&&console.log("RxJS: Back to a better error behavior. Thank you. <3");r=e},get useDeprecatedSynchronousErrorHandling(){return r}};function o(e){setTimeout(()=>{throw e},0)}const i={closed:!0,next(e){},error(e){if(s.useDeprecatedSynchronousErrorHandling)throw e;o(e)},complete(){}},l=(()=>Array.isArray||(e=>e&&"number"==typeof e.length))();function a(e){return null!==e&&"object"==typeof e}const u=(()=>{function e(e){return Error.call(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map((e,t)=>`${t+1}) ${e.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e})();let c=(()=>{class e{constructor(e){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,e&&(this._ctorUnsubscribe=!0,this._unsubscribe=e)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:r,_ctorUnsubscribe:s,_unsubscribe:o,_subscriptions:i}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,r instanceof e)r.remove(this);else if(null!==r)for(let e=0;ee.concat(t instanceof u?t.errors:t),[])}const d=(()=>"function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random())();class f extends c{constructor(e,t,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=i;break;case 1:if(!e){this.destination=i;break}if("object"==typeof e){e instanceof f?(this.syncErrorThrowable=e.syncErrorThrowable,this.destination=e,e.add(this)):(this.syncErrorThrowable=!0,this.destination=new p(this,e));break}default:this.syncErrorThrowable=!0,this.destination=new p(this,e,t,n)}}[d](){return this}static create(e,t,n){const r=new f(e,t,n);return r.syncErrorThrowable=!1,r}next(e){this.isStopped||this._next(e)}error(e){this.isStopped||(this.isStopped=!0,this._error(e))}complete(){this.isStopped||(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe())}_next(e){this.destination.next(e)}_error(e){this.destination.error(e),this.unsubscribe()}_complete(){this.destination.complete(),this.unsubscribe()}_unsubscribeAndRecycle(){const{_parentOrParents:e}=this;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=e,this}}class p extends f{constructor(e,t,r,s){let o;super(),this._parentSubscriber=e;let l=this;n(t)?o=t:t&&(o=t.next,r=t.error,s=t.complete,t!==i&&(l=Object.create(t),n(l.unsubscribe)&&this.add(l.unsubscribe.bind(l)),l.unsubscribe=this.unsubscribe.bind(this))),this._context=l,this._next=o,this._error=r,this._complete=s}next(e){if(!this.isStopped&&this._next){const{_parentSubscriber:t}=this;s.useDeprecatedSynchronousErrorHandling&&t.syncErrorThrowable?this.__tryOrSetError(t,this._next,e)&&this.unsubscribe():this.__tryOrUnsub(this._next,e)}}error(e){if(!this.isStopped){const{_parentSubscriber:t}=this,{useDeprecatedSynchronousErrorHandling:n}=s;if(this._error)n&&t.syncErrorThrowable?(this.__tryOrSetError(t,this._error,e),this.unsubscribe()):(this.__tryOrUnsub(this._error,e),this.unsubscribe());else if(t.syncErrorThrowable)n?(t.syncErrorValue=e,t.syncErrorThrown=!0):o(e),this.unsubscribe();else{if(this.unsubscribe(),n)throw e;o(e)}}}complete(){if(!this.isStopped){const{_parentSubscriber:e}=this;if(this._complete){const t=()=>this._complete.call(this._context);s.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,t),this.unsubscribe()):(this.__tryOrUnsub(t),this.unsubscribe())}else this.unsubscribe()}}__tryOrUnsub(e,t){try{e.call(this._context,t)}catch(n){if(this.unsubscribe(),s.useDeprecatedSynchronousErrorHandling)throw n;o(n)}}__tryOrSetError(e,t,n){if(!s.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{t.call(this._context,n)}catch(r){return s.useDeprecatedSynchronousErrorHandling?(e.syncErrorValue=r,e.syncErrorThrown=!0,!0):(o(r),!0)}return!1}_unsubscribe(){const{_parentSubscriber:e}=this;this._context=null,this._parentSubscriber=null,e.unsubscribe()}}const m=(()=>"function"==typeof Symbol&&Symbol.observable||"@@observable")();function g(e){return e}let y=(()=>{class e{constructor(e){this._isScalar=!1,e&&(this._subscribe=e)}lift(t){const n=new e;return n.source=this,n.operator=t,n}subscribe(e,t,n){const{operator:r}=this,o=function(e,t,n){if(e){if(e instanceof f)return e;if(e[d])return e[d]()}return e||t||n?new f(e,t,n):new f(i)}(e,t,n);if(o.add(r?r.call(o,this.source):this.source||s.useDeprecatedSynchronousErrorHandling&&!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),s.useDeprecatedSynchronousErrorHandling&&o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o}_trySubscribe(e){try{return this._subscribe(e)}catch(t){s.useDeprecatedSynchronousErrorHandling&&(e.syncErrorThrown=!0,e.syncErrorValue=t),function(e){for(;e;){const{closed:t,destination:n,isStopped:r}=e;if(t||r)return!1;e=n&&n instanceof f?n:null}return!0}(e)?e.error(t):console.warn(t)}}forEach(e,t){return new(t=_(t))((t,n)=>{let r;r=this.subscribe(t=>{try{e(t)}catch(s){n(s),r&&r.unsubscribe()}},n,t)})}_subscribe(e){const{source:t}=this;return t&&t.subscribe(e)}[m](){return this}pipe(...e){return 0===e.length?this:(0===(t=e).length?g:1===t.length?t[0]:function(e){return t.reduce((e,t)=>t(e),e)})(this);var t}toPromise(e){return new(e=_(e))((e,t)=>{let n;this.subscribe(e=>n=e,e=>t(e),()=>e(n))})}}return e.create=t=>new e(t),e})();function _(e){if(e||(e=Promise),!e)throw new Error("no Promise impl found");return e}const b=(()=>{function e(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return e.prototype=Object.create(Error.prototype),e})();class w extends c{constructor(e,t){super(),this.subject=e,this.subscriber=t,this.closed=!1}unsubscribe(){if(this.closed)return;this.closed=!0;const e=this.subject,t=e.observers;if(this.subject=null,!t||0===t.length||e.isStopped||e.closed)return;const n=t.indexOf(this.subscriber);-1!==n&&t.splice(n,1)}}class v extends f{constructor(e){super(e),this.destination=e}}let C=(()=>{class e extends y{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[d](){return new v(this)}lift(e){const t=new E(this,this);return t.operator=e,t}next(e){if(this.closed)throw new b;if(!this.isStopped){const{observers:t}=this,n=t.length,r=t.slice();for(let s=0;snew E(e,t),e})();class E extends C{constructor(e,t){super(),this.destination=e,this.source=t}next(e){const{destination:t}=this;t&&t.next&&t.next(e)}error(e){const{destination:t}=this;t&&t.error&&this.destination.error(e)}complete(){const{destination:e}=this;e&&e.complete&&this.destination.complete()}_subscribe(e){const{source:t}=this;return t?this.source.subscribe(e):c.EMPTY}}function x(){return function(e){return e.lift(new T(e))}}class T{constructor(e){this.connectable=e}call(e,t){const{connectable:n}=this;n._refCount++;const r=new k(e,n),s=t.subscribe(r);return r.closed||(r.connection=n.connect()),s}}class k extends f{constructor(e,t){super(e),this.connectable=t}_unsubscribe(){const{connectable:e}=this;if(!e)return void(this.connection=null);this.connectable=null;const t=e._refCount;if(t<=0)return void(this.connection=null);if(e._refCount=t-1,t>1)return void(this.connection=null);const{connection:n}=this,r=e._connection;this.connection=null,!r||n&&r!==n||r.unsubscribe()}}class S extends y{constructor(e,t){super(),this.source=e,this.subjectFactory=t,this._refCount=0,this._isComplete=!1}_subscribe(e){return this.getSubject().subscribe(e)}getSubject(){const e=this._subject;return e&&!e.isStopped||(this._subject=this.subjectFactory()),this._subject}connect(){let e=this._connection;return e||(this._isComplete=!1,e=this._connection=new c,e.add(this.source.subscribe(new A(this.getSubject(),this))),e.closed&&(this._connection=null,e=c.EMPTY)),e}refCount(){return x()(this)}}const I=(()=>{const e=S.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}})();class A extends v{constructor(e,t){super(e),this.connectable=t}_error(e){this._unsubscribe(),super._error(e)}_complete(){this.connectable._isComplete=!0,this._unsubscribe(),super._complete()}_unsubscribe(){const e=this.connectable;if(e){this.connectable=null;const t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}class D extends C{constructor(e){super(),this._value=e}get value(){return this.getValue()}_subscribe(e){const t=super._subscribe(e);return t&&!t.closed&&e.next(this._value),t}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new b;return this._value}next(e){super.next(this._value=e)}}function O(e){return e&&"function"==typeof e.schedule}const N=e=>t=>{for(let n=0,r=e.length;n{const r=new c;let s=0;return r.add(t.schedule((function(){s!==e.length?(n.next(e[s++]),n.closed||r.add(this.schedule())):n.complete()}))),r})}function M(e,t){return t?j(e,t):new y(N(e))}function R(e,t){return function(n){if("function"!=typeof e)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new P(e,t))}}class P{constructor(e,t){this.project=e,this.thisArg=t}call(e,t){return t.subscribe(new H(e,this.project,this.thisArg))}}class H extends f{constructor(e,t,n){super(e),this.project=t,this.count=0,this.thisArg=n||this}_next(e){let t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}function F(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}const V=F();const L=e=>{if(e&&"function"==typeof e[m])return s=e,e=>{const t=s[m]();if("function"!=typeof t.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return t.subscribe(e)};if((t=e)&&"number"==typeof t.length&&"function"!=typeof t)return N(e);var t,n,r,s;if((n=e)&&"function"!=typeof n.subscribe&&"function"==typeof n.then)return(e=>t=>(e.then(e=>{t.closed||(t.next(e),t.complete())},e=>t.error(e)).then(null,o),t))(e);if(e&&"function"==typeof e[V])return r=e,e=>{const t=r[V]();for(;;){let r;try{r=t.next()}catch(n){return e.error(n),e}if(r.done){e.complete();break}if(e.next(r.value),e.closed)break}return"function"==typeof t.return&&e.add(()=>{t.return&&t.return()}),e};{const t=a(e)?"an invalid object":`'${e}'`;throw new TypeError(`You provided ${t} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`)}};class z extends f{constructor(e){super(),this.parent=e}_next(e){this.parent.notifyNext(e)}_error(e){this.parent.notifyError(e),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class B extends f{notifyNext(e){this.destination.next(e)}notifyError(e){this.destination.error(e)}notifyComplete(){this.destination.complete()}}function U(e,t,n=Number.POSITIVE_INFINITY){return"function"==typeof t?r=>r.pipe(U((n,r)=>{return(s=e(n,r),s instanceof y?s:new y(L(s))).pipe(R((e,s)=>t(n,e,r,s)));var s},n)):("number"==typeof t&&(n=t),t=>t.lift(new $(e,n)))}class ${constructor(e,t=Number.POSITIVE_INFINITY){this.project=e,this.concurrent=t}call(e,t){return t.subscribe(new Z(e,this.project,this.concurrent))}}class Z extends B{constructor(e,t,n=Number.POSITIVE_INFINITY){super(e),this.project=t,this.concurrent=n,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}_next(e){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}class J{constructor(e,t){this.predicate=e,this.thisArg=t}call(e,t){return t.subscribe(new Y(e,this.predicate,this.thisArg))}}class Y extends f{constructor(e,t,n){super(e),this.predicate=t,this.thisArg=n,this.count=0}_next(e){let t;try{t=this.predicate.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}t&&this.destination.next(e)}}function q(){return new C}function W(e){return{toString:e}.toString()}const G="__parameters__";function K(e,t,n){return W(()=>{const r=function(e){return function(...t){if(e){const n=e(...t);for(const e in n)this[e]=n[e]}}}(t);function s(...e){if(this instanceof s)return r.apply(this,e),this;const t=new s(...e);return n.annotation=t,n;function n(e,n,r){const s=e.hasOwnProperty(G)?e[G]:Object.defineProperty(e,G,{value:[]})[G];for(;s.length<=r;)s.push(null);return(s[r]=s[r]||[]).push(t),e}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=e,s.annotationCls=s,s})}const Q=K("Inject",e=>({token:e})),X=K("Optional"),ee=K("Self"),te=K("SkipSelf");var ne=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}({});function re(e){for(let t in e)if(e[t]===re)return t;throw Error("Could not find renamed property on target object.")}function se(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function oe(e){return{factory:e.factory,providers:e.providers||[],imports:e.imports||[]}}function ie(e){return le(e,e[ue])||le(e,e[de])}function le(e,t){return t&&t.token===e?t:null}function ae(e){return e&&(e.hasOwnProperty(ce)||e.hasOwnProperty(fe))?e[ce]:null}const ue=re({"\u0275prov":re}),ce=re({"\u0275inj":re}),he=re({"\u0275provFallback":re}),de=re({ngInjectableDef:re}),fe=re({ngInjectorDef:re});function pe(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(pe).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return""+e.overriddenName;if(e.name)return""+e.name;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function me(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const ge=re({__forward_ref__:re});function ye(e){return e.__forward_ref__=ye,e.toString=function(){return pe(this())},e}function _e(e){return"function"==typeof(t=e)&&t.hasOwnProperty(ge)&&t.__forward_ref__===ye?e():e;var t}const be="undefined"!=typeof globalThis&&globalThis,we="undefined"!=typeof window&&window,ve="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,Ce="undefined"!=typeof global&&global,Ee=be||Ce||we||ve,xe=re({"\u0275cmp":re}),Te=re({"\u0275dir":re}),ke=re({"\u0275pipe":re}),Se=re({"\u0275mod":re}),Ie=re({"\u0275loc":re}),Ae=re({"\u0275fac":re}),De=re({__NG_ELEMENT_ID__:re});class Oe{constructor(e,t){this._desc=e,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=se({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}toString(){return"InjectionToken "+this._desc}}const Ne=new Oe("INJECTOR",-1),je={},Me=/\n/gm,Re="__source",Pe=re({provide:String,useValue:re});let He,Fe=void 0;function Ve(e){const t=Fe;return Fe=e,t}function Le(e){const t=He;return He=e,t}function ze(e,t=ne.Default){if(void 0===Fe)throw new Error("inject() must be called from an injection context");return null===Fe?Ue(e,void 0,t):Fe.get(e,t&ne.Optional?null:void 0,t)}function Be(e,t=ne.Default){return(He||ze)(_e(e),t)}function Ue(e,t,n){const r=ie(e);if(r&&"root"==r.providedIn)return void 0===r.value?r.value=r.factory():r.value;if(n&ne.Optional)return null;if(void 0!==t)return t;throw new Error(`Injector: NOT_FOUND [${pe(e)}]`)}function $e(e){const t=[];for(let n=0;nArray.isArray(e)?Ye(e,t):t(e))}function qe(e,t,n){t>=e.length?e.push(n):e.splice(t,0,n)}function We(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}var Ge=function(e){return e[e.OnPush=0]="OnPush",e[e.Default=1]="Default",e}({}),Ke=function(e){return e[e.Emulated=0]="Emulated",e[e.Native=1]="Native",e[e.None=2]="None",e[e.ShadowDom=3]="ShadowDom",e}({});const Qe={},Xe=[];let et=0;function tt(e){return W(()=>{const t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===Ge.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||Xe,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||Ke.Emulated,id:"c",styles:e.styles||Xe,_:null,setInput:null,schemas:e.schemas||null,tView:null},r=e.directives,s=e.features,o=e.pipes;return n.id+=et++,n.inputs=it(e.inputs,t),n.outputs=it(e.outputs),s&&s.forEach(e=>e(n)),n.directiveDefs=r?()=>("function"==typeof r?r():r).map(nt):null,n.pipeDefs=o?()=>("function"==typeof o?o():o).map(rt):null,n})}function nt(e){return at(e)||function(e){return e[Te]||null}(e)}function rt(e){return function(e){return e[ke]||null}(e)}const st={};function ot(e){const t={type:e.type,bootstrap:e.bootstrap||Xe,declarations:e.declarations||Xe,imports:e.imports||Xe,exports:e.exports||Xe,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&W(()=>{st[e.id]=e.type}),t}function it(e,t){if(null==e)return Qe;const n={};for(const r in e)if(e.hasOwnProperty(r)){let s=e[r],o=s;Array.isArray(s)&&(o=s[1],s=s[0]),n[s]=r,t&&(t[s]=o)}return n}const lt=tt;function at(e){return e[xe]||null}function ut(e,t){return e.hasOwnProperty(Ae)?e[Ae]:null}function ct(e,t){const n=e[Se]||null;if(!n&&!0===t)throw new Error(`Type ${pe(e)} does not have '\u0275mod' property.`);return n}const ht=20,dt=10;function ft(e){return Array.isArray(e)&&"object"==typeof e[1]}function pt(e){return Array.isArray(e)&&!0===e[1]}function mt(e){return 0!=(8&e.flags)}function gt(e){return 2==(2&e.flags)}function yt(e){return 1==(1&e.flags)}function _t(e){return null!==e.template}function bt(e){return 0!=(512&e[2])}class wt{constructor(e,t,n){this.previousValue=e,this.currentValue=t,this.firstChange=n}isFirstChange(){return this.firstChange}}function vt(){return Ct}function Ct(e){return e.type.prototype.ngOnChanges&&(e.setInput=xt),Et}function Et(){const e=Tt(this),t=null==e?void 0:e.current;if(t){const n=e.previous;if(n===Qe)e.previous=t;else for(let e in t)n[e]=t[e];e.current=null,this.ngOnChanges(t)}}function xt(e,t,n,r){const s=Tt(e)||function(e,t){return e.__ngSimpleChanges__=t}(e,{previous:Qe,current:null}),o=s.current||(s.current={}),i=s.previous,l=this.declaredInputs[n],a=i[l];o[l]=new wt(a&&a.currentValue,t,i===Qe),e[r]=t}function Tt(e){return e.__ngSimpleChanges__||null}vt.ngInherit=!0;let kt=void 0;function St(){return void 0!==kt?kt:"undefined"!=typeof document?document:void 0}function It(e){return!!e.listen}const At={createRenderer:(e,t)=>St()};function Dt(e){for(;Array.isArray(e);)e=e[0];return e}function Ot(e,t){return Dt(t[e.index])}function Nt(e,t){return e.data[t+ht]}function jt(e,t){const n=t[e];return ft(n)?n:n[0]}function Mt(e){const t=function(e){return e.__ngContext__||null}(e);return t?Array.isArray(t)?t:t.lView:null}function Rt(e){return 128==(128&e[2])}function Pt(e,t){return null===e||null==t?null:e[t]}function Ht(e){e[18]=0}function Ft(e,t){e[5]+=t;let n=e,r=e[3];for(;null!==r&&(1===t&&1===n[5]||-1===t&&0===n[5]);)r[5]+=t,n=r,r=r[3]}const Vt={lFrame:tn(null),bindingsEnabled:!0,checkNoChangesMode:!1};function Lt(){return Vt.lFrame.lView}function zt(){return Vt.lFrame.tView}function Bt(e){Vt.lFrame.contextLView=e}function Ut(){return Vt.lFrame.currentTNode}function $t(e,t){Vt.lFrame.currentTNode=e,Vt.lFrame.isParent=t}function Zt(){return Vt.lFrame.isParent}function Jt(){return Vt.checkNoChangesMode}function Yt(e){Vt.checkNoChangesMode=e}function qt(){return Vt.lFrame.bindingIndex++}function Wt(e,t){const n=Vt.lFrame;n.bindingIndex=n.bindingRootIndex=e,Gt(t)}function Gt(e){Vt.lFrame.currentDirectiveIndex=e}function Kt(e){Vt.lFrame.currentQueryIndex=e}function Qt(e,t){const n=en();Vt.lFrame=n,n.currentTNode=t,n.lView=e}function Xt(e){const t=en(),n=e[1];Vt.lFrame=t,t.currentTNode=n.firstChild,t.lView=e,t.tView=n,t.contextLView=e,t.bindingIndex=n.bindingStartIndex}function en(){const e=Vt.lFrame,t=null===e?null:e.child;return null===t?tn(e):t}function tn(e){const t={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null};return null!==e&&(e.child=t),t}function nn(){const e=Vt.lFrame;return Vt.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const rn=nn;function sn(){const e=nn();e.isParent=!0,e.tView=null,e.selectedIndex=0,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function on(){return Vt.lFrame.selectedIndex}function ln(e){Vt.lFrame.selectedIndex=e}function an(){const e=Vt.lFrame;return Nt(e.tView,e.selectedIndex)}function un(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[i]<0&&(e[18]+=65536),(o>11>16&&(3&e[2])===t&&(e[2]+=2048,o.call(i)):o.call(i)}const mn=-1;class gn{constructor(e,t,n){this.factory=e,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=n}}function yn(e,t,n){const r=It(e);let s=0;for(;st){i=o-1;break}}}for(;o>16,r=t;for(;n>0;)r=r[15],n--;return r}function xn(e){return"string"==typeof e?e:null==e?"":""+e}function Tn(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():xn(e)}const kn=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Ee))();function Sn(e){return e instanceof Function?e():e}let In=!0;function An(e){const t=In;return In=e,t}let Dn=0;function On(e,t){const n=jn(e,t);if(-1!==n)return n;const r=t[1];r.firstCreatePass&&(e.injectorIndex=t.length,Nn(r.data,e),Nn(t,null),Nn(r.blueprint,null));const s=Mn(e,t),o=e.injectorIndex;if(vn(s)){const e=Cn(s),n=En(s,t),r=n[1].data;for(let s=0;s<8;s++)t[o+s]=n[e+s]|r[e+s]}return t[o+8]=s,o}function Nn(e,t){e.push(0,0,0,0,0,0,0,0,t)}function jn(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===t[e.injectorIndex+8]?-1:e.injectorIndex}function Mn(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=0,r=null,s=t;for(;null!==s;){const e=s[1],t=e.type;if(r=2===t?e.declTNode:1===t?s[6]:null,null===r)return mn;if(n++,s=s[15],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return mn}function Rn(e,t,n){!function(e,t,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(De)&&(r=n[De]),null==r&&(r=n[De]=Dn++);const s=255&r,o=1<0?255&t:t}(n);if("function"==typeof s){Qt(t,e);try{const e=s();if(null!=e||r&ne.Optional)return e;throw new Error(`No provider for ${Tn(n)}!`)}finally{rn()}}else if("number"==typeof s){if(-1===s)return new Bn(e,t);let o=null,i=jn(e,t),l=mn,a=r&ne.Host?t[16][6]:null;for((-1===i||r&ne.SkipSelf)&&(l=-1===i?Mn(e,t):t[i+8],l!==mn&&zn(r,!1)?(o=t[1],i=Cn(l),t=En(l,t)):i=-1);-1!==i;){const e=t[1];if(Ln(s,i,e.data)){const e=Fn(i,t,n,o,r,a);if(e!==Hn)return e}l=t[i+8],l!==mn&&zn(r,t[1].data[i+8]===a)&&Ln(s,i,t)?(o=e,i=Cn(l),t=En(l,t)):i=-1}}}if(r&ne.Optional&&void 0===s&&(s=null),0==(r&(ne.Self|ne.Host))){const e=t[9],o=Le(void 0);try{return e?e.get(n,s,r&ne.Optional):Ue(n,s,r&ne.Optional)}finally{Le(o)}}if(r&ne.Optional)return s;throw new Error(`NodeInjector: NOT_FOUND [${Tn(n)}]`)}const Hn={};function Fn(e,t,n,r,s,o){const i=t[1],l=i.data[e+8],a=function(e,t,n,r,s){const o=e.providerIndexes,i=t.data,l=1048575&o,a=e.directiveStart,u=o>>20,c=s?l+u:e.directiveEnd;for(let h=r?l:l+u;h=a&&e.type===n)return h}if(s){const e=i[a];if(e&&_t(e)&&e.type===n)return a}return null}(l,i,n,null==r?gt(l)&&In:r!=i&&2===l.type,s&ne.Host&&o===l);return null!==a?Vn(t,i,a,l):Hn}function Vn(e,t,n,r){let s=e[n];const o=t.data;if(s instanceof gn){const i=s;if(i.resolving)throw new Error("Circular dep for "+Tn(o[n]));const l=An(i.canSeeViewProviders);i.resolving=!0;const a=i.injectImpl?Le(i.injectImpl):null;Qt(e,r);try{s=e[n]=i.factory(void 0,o,e,r),t.firstCreatePass&&n>=r.directiveStart&&function(e,t,n){const{ngOnChanges:r,ngOnInit:s,ngDoCheck:o}=t.type.prototype;if(r){const r=Ct(t);(n.preOrderHooks||(n.preOrderHooks=[])).push(e,r),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,r)}s&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-e,s),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,o))}(n,o[n],t)}finally{null!==a&&Le(a),An(l),i.resolving=!1,rn()}}return s}function Ln(e,t,n){const r=64&e,s=32&e;let o;return o=128&e?r?s?n[t+7]:n[t+6]:s?n[t+5]:n[t+4]:r?s?n[t+3]:n[t+2]:s?n[t+1]:n[t],!!(o&1<rr(e.trim())).join(", ")),this.buf.push(" ",t,'="',_r(i),'"')}var r;return this.buf.push(">"),!0}endElement(e){const t=e.nodeName.toLowerCase();cr.hasOwnProperty(t)&&!ir.hasOwnProperty(t)&&(this.buf.push(""))}chars(e){this.buf.push(_r(e))}checkClobberedElement(e,t){if(t&&(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: "+e.outerHTML);return t}}const gr=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,yr=/([^\#-~ |!])/g;function _r(e){return e.replace(/&/g,"&").replace(gr,(function(e){return"&#"+(1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536)+";"})).replace(yr,(function(e){return"&#"+e.charCodeAt(0)+";"})).replace(//g,">")}let br;function wr(e){return"content"in e&&function(e){return e.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===e.nodeName}(e)?e.content:null}var vr=function(e){return e[e.NONE=0]="NONE",e[e.HTML=1]="HTML",e[e.STYLE=2]="STYLE",e[e.SCRIPT=3]="SCRIPT",e[e.URL=4]="URL",e[e.RESOURCE_URL=5]="RESOURCE_URL",e}({});function Cr(e){const t=xr();return t?t.sanitize(vr.HTML,e)||"":Wn(e,"HTML")?qn(e):function(e,t){let n=null;try{br=br||function(e){return function(){try{return!!(new window.DOMParser).parseFromString("","text/html")}catch(e){return!1}}()?new Xn:new er(e)}(e);let r=t?String(t):"";n=br.getInertBodyElement(r);let s=5,o=r;do{if(0===s)throw new Error("Failed to sanitize html because the input is unstable");s--,r=o,o=n.innerHTML,n=br.getInertBodyElement(r)}while(r!==o);const i=new mr,l=i.sanitizeChildren(wr(n)||n);return Qn()&&i.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),l}finally{if(n){const e=wr(n)||n;for(;e.firstChild;)e.removeChild(e.firstChild)}}}(St(),xn(e))}function Er(e){const t=xr();return t?t.sanitize(vr.URL,e)||"":Wn(e,"URL")?qn(e):rr(xn(e))}function xr(){const e=Lt();return e&&e[12]}function Tr(e,t){e.__ngContext__=t}function kr(e,t,n){let r=e.length;for(;;){const s=e.indexOf(t,n);if(-1===s)return s;if(0===s||e.charCodeAt(s-1)<=32){const n=t.length;if(s+n===r||e.charCodeAt(s+n)<=32)return s}n=s+1}}const Sr="ng-template";function Ir(e,t,n){let r=0;for(;ro?"":s[c+1].toLowerCase();const t=8&r?e:null;if(t&&-1!==kr(t,u,0)||2&r&&u!==e){if(Nr(r))return!1;i=!0}}}}else{if(!i&&!Nr(r)&&!Nr(a))return!1;if(i&&Nr(a))continue;i=!1,r=a|1&r}}return Nr(r)||i}function Nr(e){return 0==(1&e)}function jr(e,t,n,r){if(null===t)return-1;let s=0;if(r||!n){let n=!1;for(;s-1)for(n++;n0?'="'+t+'"':"")+"]"}else 8&r?s+="."+i:4&r&&(s+=" "+i);else""===s||Nr(i)||(t+=Rr(o,s),s=""),r=i,o=o||!Nr(r);n++}return""!==s&&(t+=Rr(o,s)),t}const Hr={};function Fr(e){const t=e[3];return pt(t)?t[3]:t}function Vr(e){return zr(e[13])}function Lr(e){return zr(e[4])}function zr(e){for(;null!==e&&!pt(e);)e=e[4];return e}function Br(e){Ur(zt(),Lt(),on()+e,Jt())}function Ur(e,t,n,r){if(!r)if(3==(3&t[2])){const r=e.preOrderCheckHooks;null!==r&&cn(t,r,n)}else{const r=e.preOrderHooks;null!==r&&hn(t,r,0,n)}ln(n)}function $r(e,t){const n=e.contentQueries;if(null!==n)for(let r=0;rht&&Ur(e,t,0,Jt()),n(r,s)}finally{ln(o)}}function Qr(e,t,n){!function(e,t,n,r){const s=n.directiveStart,o=n.directiveEnd;e.firstCreatePass||On(n,t),Tr(r,t);const i=n.initialInputs;for(let l=s;l0&&function e(t){for(let r=Vr(t);null!==r;r=Lr(r))for(let t=dt;t0&&e(n)}const n=t[1].components;if(null!==n)for(let r=0;r0&&e(s)}}(n)}}function _s(e,t){const n=jt(t,e),r=n[1];!function(e,t){for(let n=t.length;nPromise.resolve(null))();function Ts(e){return e[7]||(e[7]=[])}function ks(e,t){const n=e[9],r=n?n.get(Jn,null):null;r&&r.handleError(t)}function Ss(e,t,n,r,s){for(let o=0;o0&&(e[n-1][4]=r[4]);const i=We(e,dt+t);Vs(r[1],s=r,s[11],2,null,null),s[0]=null,s[6]=null;const l=i[19];null!==l&&l.detachView(i[1]),r[3]=null,r[4]=null,r[2]&=-129}var s;return r}function Os(e,t){if(!(256&t[2])){const n=t[11];It(n)&&n.destroyNode&&Vs(e,t,n,3,null,null),function(e){let t=e[13];if(!t)return Ns(e[1],e);for(;t;){let n=null;if(ft(t))n=t[13];else{const e=t[10];e&&(n=e)}if(!n){for(;t&&!t[4]&&t!==e;)ft(t)&&Ns(t[1],t),t=t[3];null===t&&(t=e),ft(t)&&Ns(t[1],t),n=t&&t[4]}t=n}}(t)}}function Ns(e,t){if(!(256&t[2])){t[2]&=-129,t[2]|=256,function(e,t){let n;if(null!=e&&null!=(n=e.destroyHooks))for(let r=0;r=0?e[l]():e[-l].unsubscribe(),r+=2}else n[r].call(e[n[r+1]]);t[7]=null}}(e,t),1===t[1].type&&It(t[11])&&t[11].destroy();const n=t[17];if(null!==n&&pt(t[3])){n!==t[3]&&As(n,t);const r=t[19];null!==r&&r.detachView(e)}}}function js(e,t,n,r){It(e)?e.insertBefore(t,n,r):t.insertBefore(n,r,!0)}function Ms(e,t,n){It(e)?e.appendChild(t,n):t.appendChild(n)}function Rs(e,t,n,r){null!==r?js(e,t,n,r):Ms(e,t,n)}function Ps(e,t){return It(e)?e.parentNode(t):t.parentNode}function Hs(e,t,n,r){const s=function(e,t,n){let r=t.parent;for(;null!=r&&(3===r.type||4===r.type);)r=(t=r).parent;if(null===r)return n[0];if(t&&4===t.type&&4&t.flags)return Ot(t,n).parentNode;if(2&r.flags){const t=e.data,n=t[t[r.index].directiveStart].encapsulation;if(n!==Ke.ShadowDom&&n!==Ke.Native)return null}return Ot(r,n)}(e,r,t);if(null!=s){const e=t[11],o=function(e,t){return 3===e.type||4===e.type?Ot(e,t):null}(r.parent||t[6],t);if(Array.isArray(n))for(let t=0;t-1&&this._viewContainerRef.detach(e),this._viewContainerRef=null}Os(this._lView[1],this._lView)}onDestroy(e){!function(e,t,n,r){const s=Ts(t);s.push(null),e.firstCreatePass&&function(e){return e.cleanup||(e.cleanup=[])}(e).push(r,s.length-1)}(this._lView[1],this._lView,0,e)}markForCheck(){ws(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){vs(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(e,t,n){Yt(!0);try{vs(e,t,n)}finally{Yt(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(e){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=e}detachFromAppRef(){var e;this._appRef=null,Vs(this._lView[1],e=this._lView,e[11],2,null,null)}attachToAppRef(e){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}class $s extends Us{constructor(e){super(e),this._view=e}detectChanges(){Cs(this._view)}checkNoChanges(){!function(e){Yt(!0);try{Cs(e)}finally{Yt(!1)}}(this._view)}get context(){return null}}let Zs,Js,Ys;function qs(e,t,n){return Zs||(Zs=class extends e{}),new Zs(Ot(t,n))}const Ws=new Oe("Set Injector scope."),Gs={},Ks={},Qs=[];let Xs=void 0;function eo(){return void 0===Xs&&(Xs=new Ze),Xs}function to(e,t=null,n=null,r){return new no(e,n,t||eo(),r)}class no{constructor(e,t,n,r=null){this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;const s=[];t&&Ye(t,n=>this.processProvider(n,e,t)),Ye([e],e=>this.processInjectorType(e,[],s)),this.records.set(Ne,so(void 0,this));const o=this.records.get(Ws);this.scope=null!=o?o.value:null,this.source=r||("object"==typeof e?null:pe(e))}get destroyed(){return this._destroyed}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(e=>e.ngOnDestroy())}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}get(e,t=je,n=ne.Default){this.assertNotDestroyed();const r=Ve(this);try{if(!(n&ne.SkipSelf)){let t=this.records.get(e);if(void 0===t){const n=("function"==typeof(s=e)||"object"==typeof s&&s instanceof Oe)&&ie(e);t=n&&this.injectableDefInScope(n)?so(ro(e),Gs):null,this.records.set(e,t)}if(null!=t)return this.hydrate(e,t)}return(n&ne.Self?eo():this.parent).get(e,t=n&ne.Optional&&t===je?null:t)}catch(o){if("NullInjectorError"===o.name){if((o.ngTempTokenPath=o.ngTempTokenPath||[]).unshift(pe(e)),r)throw o;return function(e,t,n,r){const s=e.ngTempTokenPath;throw t[Re]&&s.unshift(t[Re]),e.message=function(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;let s=pe(t);if(Array.isArray(t))s=t.map(pe).join(" -> ");else if("object"==typeof t){let e=[];for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];e.push(n+":"+("string"==typeof r?JSON.stringify(r):pe(r)))}s=`{${e.join(", ")}}`}return`${n}${r?"("+r+")":""}[${s}]: ${e.replace(Me,"\n ")}`}("\n"+e.message,s,"R3InjectorError",r),e.ngTokenPath=s,e.ngTempTokenPath=null,e}(o,e,0,this.source)}throw o}finally{Ve(r)}var s}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(e=>this.get(e))}toString(){const e=[];return this.records.forEach((t,n)=>e.push(pe(n))),`R3Injector[${e.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(e,t,n){if(!(e=_e(e)))return!1;let r=ae(e);const s=null==r&&e.ngModule||void 0,o=void 0===s?e:s,i=-1!==n.indexOf(o);if(void 0!==s&&(r=ae(s)),null==r)return!1;if(null!=r.imports&&!i){let e;n.push(o);try{Ye(r.imports,r=>{this.processInjectorType(r,t,n)&&(void 0===e&&(e=[]),e.push(r))})}finally{}if(void 0!==e)for(let t=0;tthis.processProvider(e,n,r||Qs))}}this.injectorDefTypes.add(o),this.records.set(o,so(r.factory,Gs));const l=r.providers;if(null!=l&&!i){const t=e;Ye(l,e=>this.processProvider(e,t,l))}return void 0!==s&&void 0!==e.providers}processProvider(e,t,n){let r=io(e=_e(e))?e:_e(e&&e.provide);const s=function(e,t,n){return oo(e)?so(void 0,e.useValue):so(function(e,t,n){let r=void 0;if(io(e)){const t=_e(e);return ut(t)||ro(t)}if(oo(e))r=()=>_e(e.useValue);else if((s=e)&&s.useFactory)r=()=>e.useFactory(...$e(e.deps||[]));else if(function(e){return!(!e||!e.useExisting)}(e))r=()=>Be(_e(e.useExisting));else{const t=_e(e&&(e.useClass||e.provide));if(!function(e){return!!e.deps}(e))return ut(t)||ro(t);r=()=>new t(...$e(e.deps))}var s;return r}(e),Gs)}(e);if(io(e)||!0!==e.multi)this.records.get(r);else{let t=this.records.get(r);t||(t=so(void 0,Gs,!0),t.factory=()=>$e(t.multi),this.records.set(r,t)),r=e,t.multi.push(e)}this.records.set(r,s)}hydrate(e,t){var n;return t.value===Gs&&(t.value=Ks,t.value=t.factory()),"object"==typeof t.value&&t.value&&null!==(n=t.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(t.value),t.value}injectableDefInScope(e){return!!e.providedIn&&("string"==typeof e.providedIn?"any"===e.providedIn||e.providedIn===this.scope:this.injectorDefTypes.has(e.providedIn))}}function ro(e){const t=ie(e),n=null!==t?t.factory:ut(e);if(null!==n)return n;const r=ae(e);if(null!==r)return r.factory;if(e instanceof Oe)throw new Error(`Token ${pe(e)} is missing a \u0275prov definition.`);if(e instanceof Function)return function(e){const t=e.length;if(t>0){const n=function(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new Error("unreachable")}function so(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function oo(e){return null!==e&&"object"==typeof e&&Pe in e}function io(e){return"function"==typeof e}const lo=function(e,t,n){return function(e,t=null,n=null,r){const s=to(e,t,n,r);return s._resolveInjectorDefTypes(),s}({name:n},t,e,n)};let ao=(()=>{class e{static create(e,t){return Array.isArray(e)?lo(e,t,""):lo(e.providers,e.parent,e.name||"")}}return e.THROW_IF_NOT_FOUND=je,e.NULL=new Ze,e.\u0275prov=se({token:e,providedIn:"any",factory:()=>Be(Ne)}),e.__NG_ELEMENT_ID__=-1,e})();function uo(e,t,n){let r=n?e.styles:null,s=n?e.classes:null,o=0;if(null!==t)for(let i=0;il(Dt(e[r.index])).target:r.index;if(It(n)){let i=null;if(!l&&a&&(i=function(e,t,n,r){const s=e.cleanup;if(null!=s)for(let o=0;on?e[n]:null}"string"==typeof e&&(o+=2)}return null}(e,t,s,r.index)),null!==i)(i.__ngLastListenerFn__||i).__ngNextListenerFn__=o,i.__ngLastListenerFn__=o,h=!1;else{o=Ao(r,t,o,!1);const e=n.listen(f.name||p,s,o);c.push(o,e),u&&u.push(s,g,m,m+1)}}else o=Ao(r,t,o,!0),p.addEventListener(s,o,i),c.push(o),u&&u.push(s,g,m,i)}const d=r.outputs;let f;if(h&&null!==d&&(f=d[s])){const e=f.length;if(e)for(let n=0;n0;)t=t[15],e--;return t}(e,Vt.lFrame.contextLView))[8]}(e)}function Oo(e,t,n){return No(e,"",t,"",n),Oo}function No(e,t,n,r,s){const o=Lt(),i=yo(o,t,n,r);return i!==Hr&&rs(zt(),an(),o,e,i,o[11],s,!1),No}function jo(e,t=""){const n=Lt(),r=zt(),s=e+ht,o=r.firstCreatePass?Yr(r,e,2,null,null):r.data[s],i=n[s]=function(e,t){return It(t)?t.createText(e):t.createTextNode(e)}(t,n[11]);Hs(r,n,i,o),$t(o,!1)}function Mo(e){return Ro("",e,""),Mo}function Ro(e,t,n){const r=Lt(),s=yo(r,e,t,n);return s!==Hr&&function(e,t,n){const r=function(e,t){return Dt(t[e+ht])}(t,e),s=e[11];It(s)?s.setValue(r,n):r.textContent=n}(r,on(),s),Ro}class Po{}class Ho{resolveComponentFactory(e){throw function(e){const t=Error(`No component factory found for ${pe(e)}. Did you add it to @NgModule.entryComponents?`);return t.ngComponent=e,t}(e)}}let Fo=(()=>{class e{}return e.NULL=new Ho,e})(),Vo=(()=>{class e{constructor(e){this.nativeElement=e}}return e.__NG_ELEMENT_ID__=()=>Lo(e),e})();const Lo=function(e){return qs(e,Ut(),Lt())};class zo{}var Bo=function(e){return e[e.Important=1]="Important",e[e.DashCase=2]="DashCase",e}({});let Uo=(()=>{class e{}return e.__NG_ELEMENT_ID__=()=>$o(),e})();const $o=function(){const e=Lt(),t=jt(Ut().index,e);return function(e){const t=e[11];if(It(t))return t;throw new Error("Cannot inject Renderer2 when the application uses Renderer3!")}(ft(t)?t:e)};let Zo=(()=>{class e{}return e.\u0275prov=se({token:e,providedIn:"root",factory:()=>null}),e})();class Jo{constructor(e){this.full=e,this.major=e.split(".")[0],this.minor=e.split(".")[1],this.patch=e.split(".").slice(2).join(".")}}const Yo=new Jo("10.1.5");class qo{constructor(){}supports(e){return po(e)}create(e){return new Go(e)}}const Wo=(e,t)=>t;class Go{constructor(e){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=e||Wo}forEachItem(e){let t;for(t=this._itHead;null!==t;t=t._next)e(t)}forEachOperation(e){let t=this._itHead,n=this._removalsHead,r=0,s=null;for(;t||n;){const o=!n||t&&t.currentIndex{r=this._trackByFn(t,e),null!==s&&Object.is(s.trackById,r)?(o&&(s=this._verifyReinsertion(s,e,r,t)),Object.is(s.item,e)||this._addIdentityChange(s,e)):(s=this._mismatch(s,e,r,t),o=!0),s=s._next,t++}),this.length=t;return this._truncate(s),this.collection=e,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let e;for(e=this._previousItHead=this._itHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._additionsHead;null!==e;e=e._nextAdded)e.previousIndex=e.currentIndex;for(this._additionsHead=this._additionsTail=null,e=this._movesHead;null!==e;e=e._nextMoved)e.previousIndex=e.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(e,t,n,r){let s;return null===e?s=this._itTail:(s=e._prev,this._remove(e)),null!==(e=null===this._linkedRecords?null:this._linkedRecords.get(n,r))?(Object.is(e.item,t)||this._addIdentityChange(e,t),this._moveAfter(e,s,r)):null!==(e=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(e.item,t)||this._addIdentityChange(e,t),this._reinsertAfter(e,s,r)):e=this._addAfter(new Ko(t,n),s,r),e}_verifyReinsertion(e,t,n,r){let s=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==s?e=this._reinsertAfter(s,e._prev,r):e.currentIndex!=r&&(e.currentIndex=r,this._addToMoves(e,r)),e}_truncate(e){for(;null!==e;){const t=e._next;this._addToRemovals(this._unlink(e)),e=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(e,t,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(e);const r=e._prevRemoved,s=e._nextRemoved;return null===r?this._removalsHead=s:r._nextRemoved=s,null===s?this._removalsTail=r:s._prevRemoved=r,this._insertAfter(e,t,n),this._addToMoves(e,n),e}_moveAfter(e,t,n){return this._unlink(e),this._insertAfter(e,t,n),this._addToMoves(e,n),e}_addAfter(e,t,n){return this._insertAfter(e,t,n),this._additionsTail=null===this._additionsTail?this._additionsHead=e:this._additionsTail._nextAdded=e,e}_insertAfter(e,t,n){const r=null===t?this._itHead:t._next;return e._next=r,e._prev=t,null===r?this._itTail=e:r._prev=e,null===t?this._itHead=e:t._next=e,null===this._linkedRecords&&(this._linkedRecords=new Xo),this._linkedRecords.put(e),e.currentIndex=n,e}_remove(e){return this._addToRemovals(this._unlink(e))}_unlink(e){null!==this._linkedRecords&&this._linkedRecords.remove(e);const t=e._prev,n=e._next;return null===t?this._itHead=n:t._next=n,null===n?this._itTail=t:n._prev=t,e}_addToMoves(e,t){return e.previousIndex===t||(this._movesTail=null===this._movesTail?this._movesHead=e:this._movesTail._nextMoved=e),e}_addToRemovals(e){return null===this._unlinkedRecords&&(this._unlinkedRecords=new Xo),this._unlinkedRecords.put(e),e.currentIndex=null,e._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=e,e._prevRemoved=null):(e._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=e),e}_addIdentityChange(e,t){return e.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=e:this._identityChangesTail._nextIdentityChange=e,e}}class Ko{constructor(e,t){this.item=e,this.trackById=t,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class Qo{constructor(){this._head=null,this._tail=null}add(e){null===this._head?(this._head=this._tail=e,e._nextDup=null,e._prevDup=null):(this._tail._nextDup=e,e._prevDup=this._tail,e._nextDup=null,this._tail=e)}get(e,t){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===t||t<=n.currentIndex)&&Object.is(n.trackById,e))return n;return null}remove(e){const t=e._prevDup,n=e._nextDup;return null===t?this._head=n:t._nextDup=n,null===n?this._tail=t:n._prevDup=t,null===this._head}}class Xo{constructor(){this.map=new Map}put(e){const t=e.trackById;let n=this.map.get(t);n||(n=new Qo,this.map.set(t,n)),n.add(e)}get(e,t){const n=this.map.get(e);return n?n.get(e,t):null}remove(e){const t=e.trackById;return this.map.get(t).remove(e)&&this.map.delete(t),e}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function ei(e,t,n){const r=e.previousIndex;if(null===r)return r;let s=0;return n&&r{if(t&&t.key===n)this._maybeAddToChanges(t,e),this._appendAfter=t,t=t._next;else{const r=this._getOrCreateRecordForKey(n,e);t=this._insertBeforeOrAppend(t,r)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let e=t;null!==e;e=e._nextRemoved)e===this._mapHead&&(this._mapHead=null),this._records.delete(e.key),e._nextRemoved=e._next,e.previousValue=e.currentValue,e.currentValue=null,e._prev=null,e._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(e,t){if(e){const n=e._prev;return t._next=e,t._prev=n,e._prev=t,n&&(n._next=t),e===this._mapHead&&(this._mapHead=t),this._appendAfter=e,e}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(e,t){if(this._records.has(e)){const n=this._records.get(e);this._maybeAddToChanges(n,t);const r=n._prev,s=n._next;return r&&(r._next=s),s&&(s._prev=r),n._next=null,n._prev=null,n}const n=new ri(e);return this._records.set(e,n),n.currentValue=t,this._addToAdditions(n),n}_reset(){if(this.isDirty){let e;for(this._previousMapHead=this._mapHead,e=this._previousMapHead;null!==e;e=e._next)e._nextPrevious=e._next;for(e=this._changesHead;null!==e;e=e._nextChanged)e.previousValue=e.currentValue;for(e=this._additionsHead;null!=e;e=e._nextAdded)e.previousValue=e.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(e,t){Object.is(t,e.currentValue)||(e.previousValue=e.currentValue,e.currentValue=t,this._addToChanges(e))}_addToAdditions(e){null===this._additionsHead?this._additionsHead=this._additionsTail=e:(this._additionsTail._nextAdded=e,this._additionsTail=e)}_addToChanges(e){null===this._changesHead?this._changesHead=this._changesTail=e:(this._changesTail._nextChanged=e,this._changesTail=e)}_forEach(e,t){e instanceof Map?e.forEach(t):Object.keys(e).forEach(n=>t(e[n],n))}}class ri{constructor(e){this.key=e,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}let si=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(null!=n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return e.create(t,n)},deps:[[e,new te,new X]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(null!=t)return t;throw new Error(`Cannot find a differ supporting object '${e}' of type '${n=e,n.name||typeof n}'`);var n}}return e.\u0275prov=se({token:e,providedIn:"root",factory:()=>new e([new qo])}),e})(),oi=(()=>{class e{constructor(e){this.factories=e}static create(t,n){if(n){const e=n.factories.slice();t=t.concat(e)}return new e(t)}static extend(t){return{provide:e,useFactory:n=>{if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return e.create(t,n)},deps:[[e,new te,new X]]}}find(e){const t=this.factories.find(t=>t.supports(e));if(t)return t;throw new Error(`Cannot find a differ supporting object '${e}'`)}}return e.\u0275prov=se({token:e,providedIn:"root",factory:()=>new e([new ti])}),e})();const ii=[new ti],li=new si([new qo]),ai=new oi(ii);let ui=(()=>{class e{}return e.__NG_ELEMENT_ID__=()=>ci(e,Vo),e})();const ci=function(e,t){return function(e,t,n,r){return Js||(Js=class extends e{constructor(e,t,n){super(),this._declarationView=e,this._declarationTContainer=t,this.elementRef=n}createEmbeddedView(e){const t=this._declarationTContainer.tViews,n=Jr(this._declarationView,t,e,16,null,t.declTNode,null,null,null,null);n[17]=this._declarationView[this._declarationTContainer.index];const r=this._declarationView[19];return null!==r&&(n[19]=r.createEmbeddedView(t)),qr(t,n,e),new Us(n)}}),0===n.type?new Js(r,n,qs(t,n,r)):null}(e,t,Ut(),Lt())};let hi=(()=>{class e{}return e.__NG_ELEMENT_ID__=()=>di(e,Vo),e})();const di=function(e,t){return function(e,t,n,r){let s;Ys||(Ys=class extends e{constructor(e,t,n){super(),this._lContainer=e,this._hostTNode=t,this._hostView=n}get element(){return qs(t,this._hostTNode,this._hostView)}get injector(){return new Bn(this._hostTNode,this._hostView)}get parentInjector(){const e=Mn(this._hostTNode,this._hostView);if(vn(e)){const t=En(e,this._hostView),n=Cn(e);return new Bn(t[1].data[n+8],t)}return new Bn(null,this._hostView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(e){return null!==this._lContainer[8]&&this._lContainer[8][e]||null}get length(){return this._lContainer.length-dt}createEmbeddedView(e,t,n){const r=e.createEmbeddedView(t||{});return this.insert(r,n),r}createComponent(e,t,n,r,s){const o=n||this.parentInjector;if(!s&&null==e.ngModule&&o){const e=o.get(Je,null);e&&(s=e)}const i=e.create(o,r,void 0,s);return this.insert(i.hostView,t),i}insert(e,t){const n=e._lView,r=n[1];if(e.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");if(this.allocateContainerIfNeeded(),pt(n[3])){const t=this.indexOf(e);if(-1!==t)this.detach(t);else{const t=n[3],r=new Ys(t,t[6],t[3]);r.detach(r.indexOf(e))}}const s=this._adjustIndex(t),o=this._lContainer;!function(e,t,n,r){const s=dt+r,o=n.length;r>0&&(n[s-1][4]=t),rkn});class yi extends Po{constructor(e,t){super(),this.componentDef=e,this.ngModule=t,this.componentType=e.type,this.selector=e.selectors.map(Pr).join(","),this.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],this.isBoundToModule=!!t}get inputs(){return mi(this.componentDef.inputs)}get outputs(){return mi(this.componentDef.outputs)}create(e,t,n,r){const s=(r=r||this.ngModule)?function(e,t){return{get:(n,r,s)=>{const o=e.get(n,fi,s);return o!==fi||r===fi?o:t.get(n,r,s)}}}(e,r.injector):e,o=s.get(zo,At),i=s.get(Zo,null),l=o.createRenderer(null,this.componentDef),a=this.componentDef.selectors[0][0]||"div",u=n?function(e,t,n){if(It(e))return e.selectRootElement(t,n===Ke.ShadowDom);let r="string"==typeof t?e.querySelector(t):t;return r.textContent="",r}(l,n,this.componentDef.encapsulation):Zr(a,o.createRenderer(null,this.componentDef),function(e){const t=e.toLowerCase();return"svg"===t?"http://www.w3.org/2000/svg":"math"===t?"http://www.w3.org/1998/MathML/":null}(a)),c=this.componentDef.onPush?576:528,h={components:[],scheduler:kn,clean:xs,playerHandler:null,flags:0},d=ts(0,null,null,1,0,null,null,null,null,null),f=Jr(null,d,h,c,null,null,o,l,i,s);let p,m;Xt(f);try{const e=function(e,t,n,r,s,o){const i=n[1];n[20]=e;const l=Yr(i,0,2,null,null),a=l.mergedAttrs=t.hostAttrs;null!==a&&(uo(l,a,!0),null!==e&&(yn(s,e,a),null!==l.classes&&Bs(s,e,l.classes),null!==l.styles&&zs(s,e,l.styles)));const u=r.createRenderer(e,t),c=Jr(n,es(t),null,t.onPush?64:16,n[20],l,r,u,null,null);return i.firstCreatePass&&(Rn(On(l,n),i,t.type),us(i,l),hs(l,n.length,1)),bs(n,c),n[20]=c}(u,this.componentDef,f,o,l);if(u)if(n)yn(l,u,["ng-version",Yo.full]);else{const{attrs:e,classes:t}=function(e){const t=[],n=[];let r=1,s=2;for(;r0&&Bs(l,u,t.join(" "))}if(m=Nt(d,0),void 0!==t){const e=m.projection=[];for(let n=0;ne(i,t)),t.contentQueries&&t.contentQueries(1,i,n.length-1);const l=Ut();if(o.firstCreatePass&&(null!==t.hostBindings||null!==t.hostAttrs)){ln(l.index-ht);const e=n[1];os(e,t),is(e,n,t.hostVars),ls(t,i)}return i}(e,this.componentDef,f,h,[co]),qr(d,f,null)}finally{sn()}return new _i(this.componentType,p,qs(Vo,m,f),f,m)}}class _i extends class{}{constructor(e,t,n,r,s){super(),this.location=n,this._rootLView=r,this._tNode=s,this.destroyCbs=[],this.instance=t,this.hostView=this.changeDetectorRef=new $s(r),this.componentType=e}get injector(){return new Bn(this._tNode,this._rootLView)}destroy(){this.destroyCbs&&(this.destroyCbs.forEach(e=>e()),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())}onDestroy(e){this.destroyCbs&&this.destroyCbs.push(e)}}const bi=void 0;var wi=["en",[["a","p"],["AM","PM"],bi],[["AM","PM"],bi,bi],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],bi,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],bi,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",bi,"{1} 'at' {0}",bi],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(e){let t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}];let vi={};function Ci(e){return e in vi||(vi[e]=Ee.ng&&Ee.ng.common&&Ee.ng.common.locales&&Ee.ng.common.locales[e]),vi[e]}var Ei=function(e){return e[e.LocaleId=0]="LocaleId",e[e.DayPeriodsFormat=1]="DayPeriodsFormat",e[e.DayPeriodsStandalone=2]="DayPeriodsStandalone",e[e.DaysFormat=3]="DaysFormat",e[e.DaysStandalone=4]="DaysStandalone",e[e.MonthsFormat=5]="MonthsFormat",e[e.MonthsStandalone=6]="MonthsStandalone",e[e.Eras=7]="Eras",e[e.FirstDayOfWeek=8]="FirstDayOfWeek",e[e.WeekendRange=9]="WeekendRange",e[e.DateFormat=10]="DateFormat",e[e.TimeFormat=11]="TimeFormat",e[e.DateTimeFormat=12]="DateTimeFormat",e[e.NumberSymbols=13]="NumberSymbols",e[e.NumberFormats=14]="NumberFormats",e[e.CurrencyCode=15]="CurrencyCode",e[e.CurrencySymbol=16]="CurrencySymbol",e[e.CurrencyName=17]="CurrencyName",e[e.Currencies=18]="Currencies",e[e.Directionality=19]="Directionality",e[e.PluralCase=20]="PluralCase",e[e.ExtraData=21]="ExtraData",e}({});const xi="en-US";let Ti=xi;function ki(e){var t,n;n="Expected localeId to be defined",null==(t=e)&&function(e,t,n,r){throw new Error("ASSERTION ERROR: "+e+` [Expected=> null != ${t} <=Actual]`)}(n,t),"string"==typeof e&&(Ti=e.toLowerCase().replace(/_/g,"-"))}const Si=new Map;class Ii extends Je{constructor(e,t){super(),this._parent=t,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new pi(this);const n=ct(e),r=e[Ie]||null;r&&ki(r),this._bootstrapComponents=Sn(n.bootstrap),this._r3Injector=to(e,t,[{provide:Je,useValue:this},{provide:Fo,useValue:this.componentFactoryResolver}],pe(e)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(e)}get(e,t=ao.THROW_IF_NOT_FOUND,n=ne.Default){return e===ao||e===Je||e===Ne?this:this._r3Injector.get(e,t,n)}destroy(){const e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(e){this.destroyCbs.push(e)}}class Ai extends class{}{constructor(e){super(),this.moduleType=e,null!==ct(e)&&function e(t){if(null!==t.\u0275mod.id){const e=t.\u0275mod.id;!function(e,t,n){if(t&&t!==n)throw new Error(`Duplicate module registered for ${e} - ${pe(t)} vs ${pe(t.name)}`)}(e,Si.get(e),t),Si.set(e,t)}let n=t.\u0275mod.imports;n instanceof Function&&(n=n()),n&&n.forEach(t=>e(t))}(e)}create(e){return new Ii(this.moduleType,e)}}const Di=class extends C{constructor(e=!1){super(),this.__isAsync=e}emit(e){super.next(e)}subscribe(e,t,n){let r,s=e=>null,o=()=>null;e&&"object"==typeof e?(r=this.__isAsync?t=>{setTimeout(()=>e.next(t))}:t=>{e.next(t)},e.error&&(s=this.__isAsync?t=>{setTimeout(()=>e.error(t))}:t=>{e.error(t)}),e.complete&&(o=this.__isAsync?()=>{setTimeout(()=>e.complete())}:()=>{e.complete()})):(r=this.__isAsync?t=>{setTimeout(()=>e(t))}:t=>{e(t)},t&&(s=this.__isAsync?e=>{setTimeout(()=>t(e))}:e=>{t(e)}),n&&(o=this.__isAsync?()=>{setTimeout(()=>n())}:()=>{n()}));const i=super.subscribe(r,s,o);return e instanceof c&&e.add(i),i}},Oi=new Oe("Application Initializer");let Ni=(()=>{class e{constructor(e){this.appInits=e,this.initialized=!1,this.done=!1,this.donePromise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}runInitializers(){if(this.initialized)return;const e=[],t=()=>{this.done=!0,this.resolve()};if(this.appInits)for(let n=0;n{t()}).catch(e=>{this.reject(e)}),0===e.length&&t(),this.initialized=!0}}return e.\u0275fac=function(t){return new(t||e)(Be(Oi,8))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();const ji=new Oe("AppId"),Mi={provide:ji,useFactory:function(){return`${Ri()}${Ri()}${Ri()}`},deps:[]};function Ri(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const Pi=new Oe("Platform Initializer"),Hi=new Oe("Platform ID"),Fi=new Oe("appBootstrapListener");let Vi=(()=>{class e{log(e){console.log(e)}warn(e){console.warn(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();const Li=new Oe("LocaleId"),zi=new Oe("DefaultCurrencyCode");class Bi{constructor(e,t){this.ngModuleFactory=e,this.componentFactories=t}}const Ui=function(e){return new Ai(e)},$i=Ui,Zi=function(e){return Promise.resolve(Ui(e))},Ji=function(e){const t=Ui(e),n=Sn(ct(e).declarations).reduce((e,t)=>{const n=at(t);return n&&e.push(new yi(n)),e},[]);return new Bi(t,n)},Yi=Ji,qi=function(e){return Promise.resolve(Ji(e))};let Wi=(()=>{class e{constructor(){this.compileModuleSync=$i,this.compileModuleAsync=Zi,this.compileModuleAndAllComponentsSync=Yi,this.compileModuleAndAllComponentsAsync=qi}clearCache(){}clearCacheFor(e){}getModuleId(e){}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();const Gi=(()=>Promise.resolve(0))();function Ki(e){"undefined"==typeof Zone?Gi.then(()=>{e&&e.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",e)}class Qi{constructor({enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:t=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Di(!1),this.onMicrotaskEmpty=new Di(!1),this.onStable=new Di(!1),this.onError=new Di(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const n=this;n._nesting=0,n._outer=n._inner=Zone.current,Zone.wtfZoneSpec&&(n._inner=n._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(n._inner=n._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(n._inner=n._inner.fork(Zone.longStackTraceZoneSpec)),n.shouldCoalesceEventChangeDetection=t,n.lastRequestAnimationFrameId=-1,n.nativeRequestAnimationFrame=function(){let e=Ee.requestAnimationFrame,t=Ee.cancelAnimationFrame;if("undefined"!=typeof Zone&&e&&t){const n=e[Zone.__symbol__("OriginalDelegate")];n&&(e=n);const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r)}return{nativeRequestAnimationFrame:e,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function(e){const t=!!e.shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&(()=>{!function(e){-1===e.lastRequestAnimationFrameId&&(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(Ee,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,nl(e),tl(e)},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),nl(e))}(e)});e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:t},onInvokeTask:(n,r,s,o,i,l)=>{try{return rl(e),n.invokeTask(s,o,i,l)}finally{t&&"eventTask"===o.type&&t(),sl(e)}},onInvoke:(t,n,r,s,o,i,l)=>{try{return rl(e),t.invoke(r,s,o,i,l)}finally{sl(e)}},onHasTask:(t,n,r,s)=>{t.hasTask(r,s),n===r&&("microTask"==s.change?(e._hasPendingMicrotasks=s.microTask,nl(e),tl(e)):"macroTask"==s.change&&(e.hasPendingMacrotasks=s.macroTask))},onHandleError:(t,n,r,s)=>(t.handleError(r,s),e.runOutsideAngular(()=>e.onError.emit(s)),!1)})}(n)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Qi.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(Qi.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")}run(e,t,n){return this._inner.run(e,t,n)}runTask(e,t,n,r){const s=this._inner,o=s.scheduleEventTask("NgZoneEvent: "+r,e,el,Xi,Xi);try{return s.runTask(o,t,n)}finally{s.cancelTask(o)}}runGuarded(e,t,n){return this._inner.runGuarded(e,t,n)}runOutsideAngular(e){return this._outer.run(e)}}function Xi(){}const el={};function tl(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function nl(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||e.shouldCoalesceEventChangeDetection&&-1!==e.lastRequestAnimationFrameId)}function rl(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function sl(e){e._nesting--,tl(e)}class ol{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Di,this.onMicrotaskEmpty=new Di,this.onStable=new Di,this.onError=new Di}run(e,t,n){return e.apply(t,n)}runGuarded(e,t,n){return e.apply(t,n)}runOutsideAngular(e){return e()}runTask(e,t,n,r){return e.apply(t,n)}}let il=(()=>{class e{constructor(e){this._ngZone=e,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),e.run(()=>{this.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Qi.assertNotInAngularZone(),Ki(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())Ki(()=>{for(;0!==this._callbacks.length;){let e=this._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(this._didWork)}this._didWork=!1});else{let e=this.getPendingTasks();this._callbacks=this._callbacks.filter(t=>!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(e=>({source:e.source,creationLocation:e.creationLocation,data:e.data})):[]}addCallback(e,t,n){let r=-1;t&&t>0&&(r=setTimeout(()=>{this._callbacks=this._callbacks.filter(e=>e.timeoutId!==r),e(this._didWork,this.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}whenStable(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}findProviders(e,t,n){return[]}}return e.\u0275fac=function(t){return new(t||e)(Be(Qi))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})(),ll=(()=>{class e{constructor(){this._applications=new Map,cl.addToWindow(this)}registerApplication(e,t){this._applications.set(e,t)}unregisterApplication(e){this._applications.delete(e)}unregisterAllApplications(){this._applications.clear()}getTestability(e){return this._applications.get(e)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(e,t=!0){return cl.findTestabilityInTree(this,e,t)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();class al{addToWindow(e){}findTestabilityInTree(e,t,n){return null}}let ul,cl=new al;const hl=new Oe("AllowMultipleToken");function dl(e,t,n=[]){const r="Platform: "+t,s=new Oe(r);return(t=[])=>{let o=fl();if(!o||o.injector.get(hl,!1))if(e)e(n.concat(t).concat({provide:s,useValue:!0}));else{const e=n.concat(t).concat({provide:s,useValue:!0},{provide:Ws,useValue:"platform"});!function(e){if(ul&&!ul.destroyed&&!ul.injector.get(hl,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");ul=e.get(pl);const t=e.get(Pi,null);t&&t.forEach(e=>e())}(ao.create({providers:e,name:r}))}return function(e){const t=fl();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(s)}}function fl(){return ul&&!ul.destroyed?ul:null}let pl=(()=>{class e{constructor(e){this._injector=e,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(e,t){const n=function(e,t){let n;return n="noop"===e?new ol:("zone.js"===e?void 0:e)||new Qi({enableLongStackTrace:Qn(),shouldCoalesceEventChangeDetection:t}),n}(t?t.ngZone:void 0,t&&t.ngZoneEventCoalescing||!1),r=[{provide:Qi,useValue:n}];return n.run(()=>{const t=ao.create({providers:r,parent:this.injector,name:e.moduleType.name}),s=e.create(t),o=s.injector.get(Jn,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return s.onDestroy(()=>yl(this._modules,s)),n.runOutsideAngular(()=>n.onError.subscribe({next:e=>{o.handleError(e)}})),function(e,t,n){try{const r=n();return ko(r)?r.catch(n=>{throw t.runOutsideAngular(()=>e.handleError(n)),n}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(o,n,()=>{const e=s.injector.get(Ni);return e.runInitializers(),e.donePromise.then(()=>(ki(s.injector.get(Li,xi)||xi),this._moduleDoBootstrap(s),s))})})}bootstrapModule(e,t=[]){const n=ml({},t);return function(e,t,n){const r=new Ai(n);return Promise.resolve(r)}(0,0,e).then(e=>this.bootstrapModuleFactory(e,n))}_moduleDoBootstrap(e){const t=e.injector.get(gl);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(e=>t.bootstrap(e));else{if(!e.instance.ngDoBootstrap)throw new Error(`The module ${pe(e.instance.constructor)} was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.`);e.instance.ngDoBootstrap(t)}this._modules.push(e)}onDestroy(e){this._destroyListeners.push(e)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(e=>e.destroy()),this._destroyListeners.forEach(e=>e()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(t){return new(t||e)(Be(ao))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();function ml(e,t){return Array.isArray(t)?t.reduce(ml,e):Object.assign(Object.assign({},e),t)}let gl=(()=>{class e{constructor(e,t,n,r,s,o){this._zone=e,this._console=t,this._injector=n,this._exceptionHandler=r,this._componentFactoryResolver=s,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Qn(),this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const i=new y(e=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{e.next(this._stable),e.complete()})}),l=new y(e=>{let t;this._zone.runOutsideAngular(()=>{t=this._zone.onStable.subscribe(()=>{Qi.assertNotInAngularZone(),Ki(()=>{this._stable||this._zone.hasPendingMacrotasks||this._zone.hasPendingMicrotasks||(this._stable=!0,e.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{Qi.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{e.next(!1)}))});return()=>{t.unsubscribe(),n.unsubscribe()}});this.isStable=function(...e){let t=Number.POSITIVE_INFINITY,n=null,r=e[e.length-1];return O(r)?(n=e.pop(),e.length>1&&"number"==typeof e[e.length-1]&&(t=e.pop())):"number"==typeof r&&(t=e.pop()),null===n&&1===e.length&&e[0]instanceof y?e[0]:function(e=Number.POSITIVE_INFINITY){return U(g,e)}(t)(M(e,n))}(i,l.pipe(e=>{return x()((t=q,function(e){let n;n="function"==typeof t?t:function(){return t};const r=Object.create(e,I);return r.source=e,r.subjectFactory=n,r})(e));var t}))}bootstrap(e,t){if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");let n;n=e instanceof Po?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);const r=n.isBoundToModule?void 0:this._injector.get(Je),s=n.create(ao.NULL,[],t||n.selector,r);s.onDestroy(()=>{this._unloadComponent(s)});const o=s.injector.get(il,null);return o&&s.injector.get(ll).registerApplication(s.location.nativeElement,o),this._loadComponent(s),Qn()&&this._console.log("Angular is running in development mode. Call enableProdMode() to enable production mode."),s}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let e of this._views)e.detectChanges();if(this._enforceNoNewChanges)for(let e of this._views)e.checkNoChanges()}catch(e){this._zone.runOutsideAngular(()=>this._exceptionHandler.handleError(e))}finally{this._runningTick=!1}}attachView(e){const t=e;this._views.push(t),t.attachToAppRef(this)}detachView(e){const t=e;yl(this._views,t),t.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Fi,[]).concat(this._bootstrapListeners).forEach(t=>t(e))}_unloadComponent(e){this.detachView(e.hostView),yl(this.components,e)}ngOnDestroy(){this._views.slice().forEach(e=>e.destroy())}get viewCount(){return this._views.length}}return e.\u0275fac=function(t){return new(t||e)(Be(Qi),Be(Vi),Be(ao),Be(Jn),Be(Fo),Be(Ni))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();function yl(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const _l=dl(null,"core",[{provide:Hi,useValue:"unknown"},{provide:pl,deps:[ao]},{provide:ll,deps:[]},{provide:Vi,deps:[]}]),bl=[{provide:gl,useClass:gl,deps:[Qi,Vi,ao,Jn,Fo,Ni]},{provide:gi,deps:[Qi],useFactory:function(e){let t=[];return e.onStable.subscribe(()=>{for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:Ni,useClass:Ni,deps:[[new X,Oi]]},{provide:Wi,useClass:Wi,deps:[]},Mi,{provide:si,useFactory:function(){return li},deps:[]},{provide:oi,useFactory:function(){return ai},deps:[]},{provide:Li,useFactory:function(e){return ki(e=e||"undefined"!=typeof $localize&&$localize.locale||xi),e},deps:[[new Q(Li),new X,new te]]},{provide:zi,useValue:"USD"}];let wl=(()=>{class e{constructor(e){}}return e.\u0275mod=ot({type:e}),e.\u0275inj=oe({factory:function(t){return new(t||e)(Be(gl))},providers:bl}),e})(),vl=null;function Cl(){return vl}const El=new Oe("DocumentToken");var xl=function(e){return e[e.Zero=0]="Zero",e[e.One=1]="One",e[e.Two=2]="Two",e[e.Few=3]="Few",e[e.Many=4]="Many",e[e.Other=5]="Other",e}({});class Tl{}let kl=(()=>{class e extends Tl{constructor(e){super(),this.locale=e}getPluralCategory(e,t){switch(function(e){return function(e){const t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e);let n=Ci(t);if(n)return n;const r=t.split("-")[0];if(n=Ci(r),n)return n;if("en"===r)return wi;throw new Error(`Missing locale data for the locale "${e}".`)}(e)[Ei.PluralCase]}(t||this.locale)(e)){case xl.Zero:return"zero";case xl.One:return"one";case xl.Two:return"two";case xl.Few:return"few";case xl.Many:return"many";default:return"other"}}}return e.\u0275fac=function(t){return new(t||e)(Be(Li))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();function Sl(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const e=n.indexOf("="),[r,s]=-1==e?[n,""]:[n.slice(0,e),n.slice(e+1)];if(r.trim()===t)return decodeURIComponent(s)}return null}let Il=(()=>{class e{constructor(e,t,n,r){this._iterableDiffers=e,this._keyValueDiffers=t,this._ngEl=n,this._renderer=r,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}set klass(e){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof e?e.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}set ngClass(e){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof e?e.split(/\s+/):e,this._rawClass&&(po(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}ngDoCheck(){if(this._iterableDiffer){const e=this._iterableDiffer.diff(this._rawClass);e&&this._applyIterableChanges(e)}else if(this._keyValueDiffer){const e=this._keyValueDiffer.diff(this._rawClass);e&&this._applyKeyValueChanges(e)}}_applyKeyValueChanges(e){e.forEachAddedItem(e=>this._toggleClass(e.key,e.currentValue)),e.forEachChangedItem(e=>this._toggleClass(e.key,e.currentValue)),e.forEachRemovedItem(e=>{e.previousValue&&this._toggleClass(e.key,!1)})}_applyIterableChanges(e){e.forEachAddedItem(e=>{if("string"!=typeof e.item)throw new Error("NgClass can only toggle CSS classes expressed as strings, got "+pe(e.item));this._toggleClass(e.item,!0)}),e.forEachRemovedItem(e=>this._toggleClass(e.item,!1))}_applyClasses(e){e&&(Array.isArray(e)||e instanceof Set?e.forEach(e=>this._toggleClass(e,!0)):Object.keys(e).forEach(t=>this._toggleClass(t,!!e[t])))}_removeClasses(e){e&&(Array.isArray(e)||e instanceof Set?e.forEach(e=>this._toggleClass(e,!1)):Object.keys(e).forEach(e=>this._toggleClass(e,!1)))}_toggleClass(e,t){(e=e.trim())&&e.split(/\s+/g).forEach(e=>{t?this._renderer.addClass(this._ngEl.nativeElement,e):this._renderer.removeClass(this._ngEl.nativeElement,e)})}}return e.\u0275fac=function(t){return new(t||e)(bo(si),bo(oi),bo(Vo),bo(Uo))},e.\u0275dir=lt({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),e})();class Al{constructor(e,t,n,r){this.$implicit=e,this.ngForOf=t,this.index=n,this.count=r}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let Dl=(()=>{class e{constructor(e,t,n){this._viewContainer=e,this._template=t,this._differs=n,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForOf(e){this._ngForOf=e,this._ngForOfDirty=!0}set ngForTrackBy(e){Qn()&&null!=e&&"function"!=typeof e&&console&&console.warn&&console.warn(`trackBy must be a function, but received ${JSON.stringify(e)}. See https://angular.io/api/common/NgForOf#change-propagation for more information.`),this._trackByFn=e}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(e){e&&(this._template=e)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;if(!this._differ&&n)try{this._differ=this._differs.find(n).create(this.ngForTrackBy)}catch(t){throw new Error(`Cannot find a differ supporting object '${n}' of type '${e=n,e.name||typeof e}'. NgFor only supports binding to Iterables such as Arrays.`)}}var e;if(this._differ){const e=this._differ.diff(this._ngForOf);e&&this._applyChanges(e)}}_applyChanges(e){const t=[];e.forEachOperation((e,n,r)=>{if(null==e.previousIndex){const n=this._viewContainer.createEmbeddedView(this._template,new Al(null,this._ngForOf,-1,-1),null===r?void 0:r),s=new Ol(e,n);t.push(s)}else if(null==r)this._viewContainer.remove(null===n?void 0:n);else if(null!==n){const s=this._viewContainer.get(n);this._viewContainer.move(s,r);const o=new Ol(e,s);t.push(o)}});for(let n=0;n{this._viewContainer.get(e.currentIndex).context.$implicit=e.item})}_perViewChange(e,t){e.context.$implicit=t.item}static ngTemplateContextGuard(e,t){return!0}}return e.\u0275fac=function(t){return new(t||e)(bo(hi),bo(ui),bo(si))},e.\u0275dir=lt({type:e,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),e})();class Ol{constructor(e,t){this.record=e,this.view=t}}let Nl=(()=>{class e{constructor(e,t){this._viewContainer=e,this._context=new jl,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=t}set ngIf(e){this._context.$implicit=this._context.ngIf=e,this._updateView()}set ngIfThen(e){Ml("ngIfThen",e),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){Ml("ngIfElse",e),this._elseTemplateRef=e,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(e,t){return!0}}return e.\u0275fac=function(t){return new(t||e)(bo(hi),bo(ui))},e.\u0275dir=lt({type:e,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),e})();class jl{constructor(){this.$implicit=null,this.ngIf=null}}function Ml(e,t){if(t&&!t.createEmbeddedView)throw new Error(`${e} must be a TemplateRef, but received '${pe(t)}'.`)}let Rl=(()=>{class e{}return e.\u0275mod=ot({type:e}),e.\u0275inj=oe({factory:function(t){return new(t||e)},providers:[{provide:Tl,useClass:kl}]}),e})();class Pl extends class extends class{}{constructor(){super()}supportsDOMEvents(){return!0}}{static makeCurrent(){var e;e=new Pl,vl||(vl=e)}getProperty(e,t){return e[t]}log(e){window.console&&window.console.log&&window.console.log(e)}logGroup(e){window.console&&window.console.group&&window.console.group(e)}logGroupEnd(){window.console&&window.console.groupEnd&&window.console.groupEnd()}onAndCancel(e,t,n){return e.addEventListener(t,n,!1),()=>{e.removeEventListener(t,n,!1)}}dispatchEvent(e,t){e.dispatchEvent(t)}remove(e){return e.parentNode&&e.parentNode.removeChild(e),e}getValue(e){return e.value}createElement(e,t){return(t=t||this.getDefaultDocument()).createElement(e)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(e){return e.nodeType===Node.ELEMENT_NODE}isShadowRoot(e){return e instanceof DocumentFragment}getGlobalEventTarget(e,t){return"window"===t?window:"document"===t?e:"body"===t?e.body:null}getHistory(){return window.history}getLocation(){return window.location}getBaseHref(e){const t=Fl||(Fl=document.querySelector("base"),Fl)?Fl.getAttribute("href"):null;return null==t?null:(n=t,Hl||(Hl=document.createElement("a")),Hl.setAttribute("href",n),"/"===Hl.pathname.charAt(0)?Hl.pathname:"/"+Hl.pathname);var n}resetBaseElement(){Fl=null}getUserAgent(){return window.navigator.userAgent}performanceNow(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()}supportsCookies(){return!0}getCookie(e){return Sl(document.cookie,e)}}let Hl,Fl=null;const Vl=new Oe("TRANSITION_ID"),Ll=[{provide:Oi,useFactory:function(e,t,n){return()=>{n.get(Ni).donePromise.then(()=>{const n=Cl();Array.prototype.slice.apply(t.querySelectorAll("style[ng-transition]")).filter(t=>t.getAttribute("ng-transition")===e).forEach(e=>n.remove(e))})}},deps:[Vl,El,ao],multi:!0}];class zl{static init(){var e;e=new zl,cl=e}addToWindow(e){Ee.getAngularTestability=(t,n=!0)=>{const r=e.findTestabilityInTree(t,n);if(null==r)throw new Error("Could not find testability for element.");return r},Ee.getAllAngularTestabilities=()=>e.getAllTestabilities(),Ee.getAllAngularRootElements=()=>e.getAllRootElements(),Ee.frameworkStabilizers||(Ee.frameworkStabilizers=[]),Ee.frameworkStabilizers.push(e=>{const t=Ee.getAllAngularTestabilities();let n=t.length,r=!1;const s=function(t){r=r||t,n--,0==n&&e(r)};t.forEach((function(e){e.whenStable(s)}))})}findTestabilityInTree(e,t,n){if(null==t)return null;const r=e.getTestability(t);return null!=r?r:n?Cl().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}const Bl=new Oe("EventManagerPlugins");let Ul=(()=>{class e{constructor(e,t){this._zone=t,this._eventNameToPlugin=new Map,e.forEach(e=>e.manager=this),this._plugins=e.slice().reverse()}addEventListener(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}addGlobalEventListener(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}getZone(){return this._zone}_findPluginFor(e){const t=this._eventNameToPlugin.get(e);if(t)return t;const n=this._plugins;for(let r=0;r{class e{constructor(){this._stylesSet=new Set}addStyles(e){const t=new Set;e.forEach(e=>{this._stylesSet.has(e)||(this._stylesSet.add(e),t.add(e))}),this.onStylesAdded(t)}onStylesAdded(e){}getAllStyles(){return Array.from(this._stylesSet)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})(),Jl=(()=>{class e extends Zl{constructor(e){super(),this._doc=e,this._hostNodes=new Set,this._styleNodes=new Set,this._hostNodes.add(e.head)}_addStylesToHost(e,t){e.forEach(e=>{const n=this._doc.createElement("style");n.textContent=e,this._styleNodes.add(t.appendChild(n))})}addHost(e){this._addStylesToHost(this._stylesSet,e),this._hostNodes.add(e)}removeHost(e){this._hostNodes.delete(e)}onStylesAdded(e){this._hostNodes.forEach(t=>this._addStylesToHost(e,t))}ngOnDestroy(){this._styleNodes.forEach(e=>Cl().remove(e))}}return e.\u0275fac=function(t){return new(t||e)(Be(El))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();const Yl={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},ql=/%COMP%/g;function Wl(e,t,n){for(let r=0;r{if("__ngUnwrap__"===t)return e;!1===e(t)&&(t.preventDefault(),t.returnValue=!1)}}let Kl=(()=>{class e{constructor(e,t,n){this.eventManager=e,this.sharedStylesHost=t,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new Ql(e)}createRenderer(e,t){if(!e||!t)return this.defaultRenderer;switch(t.encapsulation){case Ke.Emulated:{let n=this.rendererByCompId.get(t.id);return n||(n=new Xl(this.eventManager,this.sharedStylesHost,t,this.appId),this.rendererByCompId.set(t.id,n)),n.applyToHost(e),n}case Ke.Native:case Ke.ShadowDom:return new ea(this.eventManager,this.sharedStylesHost,e,t);default:if(!this.rendererByCompId.has(t.id)){const e=Wl(t.id,t.styles,[]);this.sharedStylesHost.addStyles(e),this.rendererByCompId.set(t.id,this.defaultRenderer)}return this.defaultRenderer}}begin(){}end(){}}return e.\u0275fac=function(t){return new(t||e)(Be(Ul),Be(Jl),Be(ji))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();class Ql{constructor(e){this.eventManager=e,this.data=Object.create(null)}destroy(){}createElement(e,t){return t?document.createElementNS(Yl[t]||t,e):document.createElement(e)}createComment(e){return document.createComment(e)}createText(e){return document.createTextNode(e)}appendChild(e,t){e.appendChild(t)}insertBefore(e,t,n){e&&e.insertBefore(t,n)}removeChild(e,t){e&&e.removeChild(t)}selectRootElement(e,t){let n="string"==typeof e?document.querySelector(e):e;if(!n)throw new Error(`The selector "${e}" did not match any elements`);return t||(n.textContent=""),n}parentNode(e){return e.parentNode}nextSibling(e){return e.nextSibling}setAttribute(e,t,n,r){if(r){t=r+":"+t;const s=Yl[r];s?e.setAttributeNS(s,t,n):e.setAttribute(t,n)}else e.setAttribute(t,n)}removeAttribute(e,t,n){if(n){const r=Yl[n];r?e.removeAttributeNS(r,t):e.removeAttribute(`${n}:${t}`)}else e.removeAttribute(t)}addClass(e,t){e.classList.add(t)}removeClass(e,t){e.classList.remove(t)}setStyle(e,t,n,r){r&Bo.DashCase?e.style.setProperty(t,n,r&Bo.Important?"important":""):e.style[t]=n}removeStyle(e,t,n){n&Bo.DashCase?e.style.removeProperty(t):e.style[t]=""}setProperty(e,t,n){e[t]=n}setValue(e,t){e.nodeValue=t}listen(e,t,n){return"string"==typeof e?this.eventManager.addGlobalEventListener(e,t,Gl(n)):this.eventManager.addEventListener(e,t,Gl(n))}}class Xl extends Ql{constructor(e,t,n,r){super(e),this.component=n;const s=Wl(r+"-"+n.id,n.styles,[]);t.addStyles(s),this.contentAttr="_ngcontent-%COMP%".replace(ql,r+"-"+n.id),this.hostAttr="_nghost-%COMP%".replace(ql,r+"-"+n.id)}applyToHost(e){super.setAttribute(e,this.hostAttr,"")}createElement(e,t){const n=super.createElement(e,t);return super.setAttribute(n,this.contentAttr,""),n}}class ea extends Ql{constructor(e,t,n,r){super(e),this.sharedStylesHost=t,this.hostEl=n,this.component=r,this.shadowRoot=r.encapsulation===Ke.ShadowDom?n.attachShadow({mode:"open"}):n.createShadowRoot(),this.sharedStylesHost.addHost(this.shadowRoot);const s=Wl(r.id,r.styles,[]);for(let o=0;o{class e extends $l{constructor(e){super(e)}supports(e){return!0}addEventListener(e,t,n){return e.addEventListener(t,n,!1),()=>this.removeEventListener(e,t,n)}removeEventListener(e,t,n){return e.removeEventListener(t,n)}}return e.\u0275fac=function(t){return new(t||e)(Be(El))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();const na=["alt","control","meta","shift"],ra={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},sa={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","\x90":"NumLock"},oa={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let ia=(()=>{class e extends $l{constructor(e){super(e)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,n,r){const s=e.parseEventName(n),o=e.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Cl().onAndCancel(t,s.domEventName,o))}static parseEventName(t){const n=t.toLowerCase().split("."),r=n.shift();if(0===n.length||"keydown"!==r&&"keyup"!==r)return null;const s=e._normalizeKey(n.pop());let o="";if(na.forEach(e=>{const t=n.indexOf(e);t>-1&&(n.splice(t,1),o+=e+".")}),o+=s,0!=n.length||0===s.length)return null;const i={};return i.domEventName=r,i.fullKey=o,i}static getEventFullKey(e){let t="",n=function(e){let t=e.key;if(null==t){if(t=e.keyIdentifier,null==t)return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&sa.hasOwnProperty(t)&&(t=sa[t]))}return ra[t]||t}(e);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),na.forEach(r=>{r!=n&&(0,oa[r])(e)&&(t+=r+".")}),t+=n,t}static eventCallback(t,n,r){return s=>{e.getEventFullKey(s)===t&&r.runGuarded(()=>n(s))}}static _normalizeKey(e){switch(e){case"esc":return"escape";default:return e}}}return e.\u0275fac=function(t){return new(t||e)(Be(El))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();const la=dl(_l,"browser",[{provide:Hi,useValue:"browser"},{provide:Pi,useValue:function(){Pl.makeCurrent(),zl.init()},multi:!0},{provide:El,useFactory:function(){return function(e){kt=e}(document),document},deps:[]}]),aa=[[],{provide:Ws,useValue:"root"},{provide:Jn,useFactory:function(){return new Jn},deps:[]},{provide:Bl,useClass:ta,multi:!0,deps:[El,Qi,Hi]},{provide:Bl,useClass:ia,multi:!0,deps:[El]},[],{provide:Kl,useClass:Kl,deps:[Ul,Jl,ji]},{provide:zo,useExisting:Kl},{provide:Zl,useExisting:Jl},{provide:Jl,useClass:Jl,deps:[El]},{provide:il,useClass:il,deps:[Qi]},{provide:Ul,useClass:Ul,deps:[Bl,Qi]},[]];let ua=(()=>{class e{constructor(e){if(e)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}static withServerTransition(t){return{ngModule:e,providers:[{provide:ji,useValue:t.appId},{provide:Vl,useExisting:ji},Ll]}}}return e.\u0275mod=ot({type:e}),e.\u0275inj=oe({factory:function(t){return new(t||e)(Be(e,12))},providers:aa,imports:[Rl,wl]}),e})();class ca{}class ha{}class da{constructor(e){this.normalizedNames=new Map,this.lazyUpdate=null,e?this.lazyInit="string"==typeof e?()=>{this.headers=new Map,e.split("\n").forEach(e=>{const t=e.indexOf(":");if(t>0){const n=e.slice(0,t),r=n.toLowerCase(),s=e.slice(t+1).trim();this.maybeSetNormalizedName(n,r),this.headers.has(r)?this.headers.get(r).push(s):this.headers.set(r,[s])}})}:()=>{this.headers=new Map,Object.keys(e).forEach(t=>{let n=e[t];const r=t.toLowerCase();"string"==typeof n&&(n=[n]),n.length>0&&(this.headers.set(r,n),this.maybeSetNormalizedName(t,r))})}:this.headers=new Map}has(e){return this.init(),this.headers.has(e.toLowerCase())}get(e){this.init();const t=this.headers.get(e.toLowerCase());return t&&t.length>0?t[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(e){return this.init(),this.headers.get(e.toLowerCase())||null}append(e,t){return this.clone({name:e,value:t,op:"a"})}set(e,t){return this.clone({name:e,value:t,op:"s"})}delete(e,t){return this.clone({name:e,value:t,op:"d"})}maybeSetNormalizedName(e,t){this.normalizedNames.has(t)||this.normalizedNames.set(t,e)}init(){this.lazyInit&&(this.lazyInit instanceof da?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(e=>this.applyUpdate(e)),this.lazyUpdate=null))}copyFrom(e){e.init(),Array.from(e.headers.keys()).forEach(t=>{this.headers.set(t,e.headers.get(t)),this.normalizedNames.set(t,e.normalizedNames.get(t))})}clone(e){const t=new da;return t.lazyInit=this.lazyInit&&this.lazyInit instanceof da?this.lazyInit:this,t.lazyUpdate=(this.lazyUpdate||[]).concat([e]),t}applyUpdate(e){const t=e.name.toLowerCase();switch(e.op){case"a":case"s":let n=e.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(e.name,t);const r=("a"===e.op?this.headers.get(t):void 0)||[];r.push(...n),this.headers.set(t,r);break;case"d":const s=e.value;if(s){let e=this.headers.get(t);if(!e)return;e=e.filter(e=>-1===s.indexOf(e)),0===e.length?(this.headers.delete(t),this.normalizedNames.delete(t)):this.headers.set(t,e)}else this.headers.delete(t),this.normalizedNames.delete(t)}}forEach(e){this.init(),Array.from(this.normalizedNames.keys()).forEach(t=>e(this.normalizedNames.get(t),this.headers.get(t)))}}class fa{encodeKey(e){return pa(e)}encodeValue(e){return pa(e)}decodeKey(e){return decodeURIComponent(e)}decodeValue(e){return decodeURIComponent(e)}}function pa(e){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/gi,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%2B/gi,"+").replace(/%3D/gi,"=").replace(/%3F/gi,"?").replace(/%2F/gi,"/")}class ma{constructor(e={}){if(this.updates=null,this.cloneFrom=null,this.encoder=e.encoder||new fa,e.fromString){if(e.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(e,t){const n=new Map;return e.length>0&&e.split("&").forEach(e=>{const r=e.indexOf("="),[s,o]=-1==r?[t.decodeKey(e),""]:[t.decodeKey(e.slice(0,r)),t.decodeValue(e.slice(r+1))],i=n.get(s)||[];i.push(o),n.set(s,i)}),n}(e.fromString,this.encoder)}else e.fromObject?(this.map=new Map,Object.keys(e.fromObject).forEach(t=>{const n=e.fromObject[t];this.map.set(t,Array.isArray(n)?n:[n])})):this.map=null}has(e){return this.init(),this.map.has(e)}get(e){this.init();const t=this.map.get(e);return t?t[0]:null}getAll(e){return this.init(),this.map.get(e)||null}keys(){return this.init(),Array.from(this.map.keys())}append(e,t){return this.clone({param:e,value:t,op:"a"})}set(e,t){return this.clone({param:e,value:t,op:"s"})}delete(e,t){return this.clone({param:e,value:t,op:"d"})}toString(){return this.init(),this.keys().map(e=>{const t=this.encoder.encodeKey(e);return this.map.get(e).map(e=>t+"="+this.encoder.encodeValue(e)).join("&")}).filter(e=>""!==e).join("&")}clone(e){const t=new ma({encoder:this.encoder});return t.cloneFrom=this.cloneFrom||this,t.updates=(this.updates||[]).concat([e]),t}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(e=>this.map.set(e,this.cloneFrom.map.get(e))),this.updates.forEach(e=>{switch(e.op){case"a":case"s":const t=("a"===e.op?this.map.get(e.param):void 0)||[];t.push(e.value),this.map.set(e.param,t);break;case"d":if(void 0===e.value){this.map.delete(e.param);break}{let t=this.map.get(e.param)||[];const n=t.indexOf(e.value);-1!==n&&t.splice(n,1),t.length>0?this.map.set(e.param,t):this.map.delete(e.param)}}}),this.cloneFrom=this.updates=null)}}function ga(e){return"undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer}function ya(e){return"undefined"!=typeof Blob&&e instanceof Blob}function _a(e){return"undefined"!=typeof FormData&&e instanceof FormData}class ba{constructor(e,t,n,r){let s;if(this.url=t,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=e.toUpperCase(),function(e){switch(e){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==n?n:null,s=r):s=n,s&&(this.reportProgress=!!s.reportProgress,this.withCredentials=!!s.withCredentials,s.responseType&&(this.responseType=s.responseType),s.headers&&(this.headers=s.headers),s.params&&(this.params=s.params)),this.headers||(this.headers=new da),this.params){const e=this.params.toString();if(0===e.length)this.urlWithParams=t;else{const n=t.indexOf("?");this.urlWithParams=t+(-1===n?"?":nt.set(n,e.setHeaders[n]),l)),e.setParams&&(a=Object.keys(e.setParams).reduce((t,n)=>t.set(n,e.setParams[n]),a)),new ba(t,n,s,{params:a,headers:l,reportProgress:i,responseType:r,withCredentials:o})}}var wa=function(e){return e[e.Sent=0]="Sent",e[e.UploadProgress=1]="UploadProgress",e[e.ResponseHeader=2]="ResponseHeader",e[e.DownloadProgress=3]="DownloadProgress",e[e.Response=4]="Response",e[e.User=5]="User",e}({});class va{constructor(e,t=200,n="OK"){this.headers=e.headers||new da,this.status=void 0!==e.status?e.status:t,this.statusText=e.statusText||n,this.url=e.url||null,this.ok=this.status>=200&&this.status<300}}class Ca extends va{constructor(e={}){super(e),this.type=wa.ResponseHeader}clone(e={}){return new Ca({headers:e.headers||this.headers,status:void 0!==e.status?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}}class Ea extends va{constructor(e={}){super(e),this.type=wa.Response,this.body=void 0!==e.body?e.body:null}clone(e={}){return new Ea({body:void 0!==e.body?e.body:this.body,headers:e.headers||this.headers,status:void 0!==e.status?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}}class xa extends va{constructor(e){super(e,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?"Http failure during parsing for "+(e.url||"(unknown url)"):`Http failure response for ${e.url||"(unknown url)"}: ${e.status} ${e.statusText}`,this.error=e.error||null}}function Ta(e,t){return{body:t,headers:e.headers,observe:e.observe,params:e.params,reportProgress:e.reportProgress,responseType:e.responseType,withCredentials:e.withCredentials}}let ka=(()=>{class e{constructor(e){this.handler=e}request(e,t,n={}){let r;if(e instanceof ba)r=e;else{let s=void 0;s=n.headers instanceof da?n.headers:new da(n.headers);let o=void 0;n.params&&(o=n.params instanceof ma?n.params:new ma({fromObject:n.params})),r=new ba(e,t,void 0!==n.body?n.body:null,{headers:s,params:o,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const s=function(...e){let t=e[e.length-1];return O(t)?(e.pop(),j(e,t)):M(e)}(r).pipe(U(e=>this.handler.handle(e),void 0,1));if(e instanceof ba||"events"===n.observe)return s;const o=s.pipe((i=e=>e instanceof Ea,function(e){return e.lift(new J(i,void 0))}));var i;switch(n.observe||"body"){case"body":switch(r.responseType){case"arraybuffer":return o.pipe(R(e=>{if(null!==e.body&&!(e.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return e.body}));case"blob":return o.pipe(R(e=>{if(null!==e.body&&!(e.body instanceof Blob))throw new Error("Response is not a Blob.");return e.body}));case"text":return o.pipe(R(e=>{if(null!==e.body&&"string"!=typeof e.body)throw new Error("Response is not a string.");return e.body}));case"json":default:return o.pipe(R(e=>e.body))}case"response":return o;default:throw new Error(`Unreachable: unhandled observe type ${n.observe}}`)}}delete(e,t={}){return this.request("DELETE",e,t)}get(e,t={}){return this.request("GET",e,t)}head(e,t={}){return this.request("HEAD",e,t)}jsonp(e,t){return this.request("JSONP",e,{params:(new ma).append(t,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(e,t={}){return this.request("OPTIONS",e,t)}patch(e,t,n={}){return this.request("PATCH",e,Ta(n,t))}post(e,t,n={}){return this.request("POST",e,Ta(n,t))}put(e,t,n={}){return this.request("PUT",e,Ta(n,t))}}return e.\u0275fac=function(t){return new(t||e)(Be(ca))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();class Sa{constructor(e,t){this.next=e,this.interceptor=t}handle(e){return this.interceptor.intercept(e,this.next)}}const Ia=new Oe("HTTP_INTERCEPTORS");let Aa=(()=>{class e{intercept(e,t){return t.handle(e)}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();const Da=/^\)\]\}',?\n/;class Oa{}let Na=(()=>{class e{constructor(){}build(){return new XMLHttpRequest}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})(),ja=(()=>{class e{constructor(e){this.xhrFactory=e}handle(e){if("JSONP"===e.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new y(t=>{const n=this.xhrFactory.build();if(n.open(e.method,e.urlWithParams),e.withCredentials&&(n.withCredentials=!0),e.headers.forEach((e,t)=>n.setRequestHeader(e,t.join(","))),e.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!e.headers.has("Content-Type")){const t=e.detectContentTypeHeader();null!==t&&n.setRequestHeader("Content-Type",t)}if(e.responseType){const t=e.responseType.toLowerCase();n.responseType="json"!==t?t:"text"}const r=e.serializeBody();let s=null;const o=()=>{if(null!==s)return s;const t=1223===n.status?204:n.status,r=n.statusText||"OK",o=new da(n.getAllResponseHeaders()),i=function(e){return"responseURL"in e&&e.responseURL?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):null}(n)||e.url;return s=new Ca({headers:o,status:t,statusText:r,url:i}),s},i=()=>{let{headers:r,status:s,statusText:i,url:l}=o(),a=null;204!==s&&(a=void 0===n.response?n.responseText:n.response),0===s&&(s=a?200:0);let u=s>=200&&s<300;if("json"===e.responseType&&"string"==typeof a){const e=a;a=a.replace(Da,"");try{a=""!==a?JSON.parse(a):null}catch(c){a=e,u&&(u=!1,a={error:c,text:a})}}u?(t.next(new Ea({body:a,headers:r,status:s,statusText:i,url:l||void 0})),t.complete()):t.error(new xa({error:a,headers:r,status:s,statusText:i,url:l||void 0}))},l=e=>{const{url:r}=o(),s=new xa({error:e,status:n.status||0,statusText:n.statusText||"Unknown Error",url:r||void 0});t.error(s)};let a=!1;const u=r=>{a||(t.next(o()),a=!0);let s={type:wa.DownloadProgress,loaded:r.loaded};r.lengthComputable&&(s.total=r.total),"text"===e.responseType&&n.responseText&&(s.partialText=n.responseText),t.next(s)},c=e=>{let n={type:wa.UploadProgress,loaded:e.loaded};e.lengthComputable&&(n.total=e.total),t.next(n)};return n.addEventListener("load",i),n.addEventListener("error",l),e.reportProgress&&(n.addEventListener("progress",u),null!==r&&n.upload&&n.upload.addEventListener("progress",c)),n.send(r),t.next({type:wa.Sent}),()=>{n.removeEventListener("error",l),n.removeEventListener("load",i),e.reportProgress&&(n.removeEventListener("progress",u),null!==r&&n.upload&&n.upload.removeEventListener("progress",c)),n.readyState!==n.DONE&&n.abort()}})}}return e.\u0275fac=function(t){return new(t||e)(Be(Oa))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})();const Ma=new Oe("XSRF_COOKIE_NAME"),Ra=new Oe("XSRF_HEADER_NAME");class Pa{}let Ha=(()=>{class e{constructor(e,t,n){this.doc=e,this.platform=t,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=Sl(e,this.cookieName),this.lastCookieString=e),this.lastToken}}return e.\u0275fac=function(t){return new(t||e)(Be(El),Be(Hi),Be(Ma))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})(),Fa=(()=>{class e{constructor(e,t){this.tokenService=e,this.headerName=t}intercept(e,t){const n=e.url.toLowerCase();if("GET"===e.method||"HEAD"===e.method||n.startsWith("http://")||n.startsWith("https://"))return t.handle(e);const r=this.tokenService.getToken();return null===r||e.headers.has(this.headerName)||(e=e.clone({headers:e.headers.set(this.headerName,r)})),t.handle(e)}}return e.\u0275fac=function(t){return new(t||e)(Be(Pa),Be(Ra))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})(),Va=(()=>{class e{constructor(e,t){this.backend=e,this.injector=t,this.chain=null}handle(e){if(null===this.chain){const e=this.injector.get(Ia,[]);this.chain=e.reduceRight((e,t)=>new Sa(e,t),this.backend)}return this.chain.handle(e)}}return e.\u0275fac=function(t){return new(t||e)(Be(ha),Be(ao))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),e})(),La=(()=>{class e{static disable(){return{ngModule:e,providers:[{provide:Fa,useClass:Aa}]}}static withOptions(t={}){return{ngModule:e,providers:[t.cookieName?{provide:Ma,useValue:t.cookieName}:[],t.headerName?{provide:Ra,useValue:t.headerName}:[]]}}}return e.\u0275mod=ot({type:e}),e.\u0275inj=oe({factory:function(t){return new(t||e)},providers:[Fa,{provide:Ia,useExisting:Fa,multi:!0},{provide:Pa,useClass:Ha},{provide:Ma,useValue:"XSRF-TOKEN"},{provide:Ra,useValue:"X-XSRF-TOKEN"}]}),e})(),za=(()=>{class e{}return e.\u0275mod=ot({type:e}),e.\u0275inj=oe({factory:function(t){return new(t||e)},providers:[ka,{provide:ca,useClass:Va},ja,{provide:ha,useExisting:ja},Na,{provide:Oa,useExisting:Na}],imports:[[La.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),e})();const Ba=`${location.protocol}//${location.hostname}`,Ua={jobs:Ba.concat("/v2/jobs"),apply:Ba.concat("/v2/apply"),readall:Ba.concat("/v2/readall"),kill:Ba.concat("/kill"),upvote:Ba.concat("/vote/up"),downvote:Ba.concat("/vote/down")};let $a=(()=>{class e{constructor(e){this.http=e,this.timerID=0,this.t=0,this.jobsSubject=new D([]),console.log("ActionsService::init"),this.update()}toHour(e=0){return 36e5-(new Date).getTime()%36e5+e}update(){console.log("ActionsService::update"),this.getJobsV2();const e=this.toHour()+6e5;console.log("Next:",e),this.timerID=setTimeout(()=>{this.update()},e)}getJobs(){return this.http.get(Ua.jobs)}getJobsV2(){console.log(">> GetJobsV2"),this.http.get(Ua.jobs).subscribe(e=>{this.jobsSubject.next(e)})}loadJobDetails(e){return console.log(">> loadJobDetails",e),this.http.get(`${Ua.jobs}\\${e}`)}touchJob(e){return console.log(">> touchJob",e),this.http.put(`${Ua.jobs}/${e}`,null)}updateJob(e){console.log(">> updateJob",e),this.jobsSubject.subscribe({next:t=>t.map(t=>(t._id===e&&(t.read=Date.now()),t))}).unsubscribe()}markAllRead(){return console.log(">> markAllRead"),this.http.put(""+Ua.readall,null)}appliedJob(e){console.log(">> appliedJob",e),console.log("Applying.."),this.http.put(`${Ua.apply}/${e}`,null).subscribe(()=>{this.updateJobApplied(e)},e=>console.error("doApply",e))}updateJobApplied(e){console.log(">> updateJob",e),this.jobsSubject.subscribe({next:t=>t.map(t=>(t._id===e&&(t.applied=Date.now()),t))}).unsubscribe()}}return e.\u0275fac=function(t){return new(t||e)(Be(ka))},e.\u0275prov=se({token:e,factory:e.\u0275fac,providedIn:"root"}),e})(),Za=(()=>{class e{constructor(e){this.actions=e,this.titleText="Jobs"}ngOnInit(){}doMarkRead(){console.log("Mark all read"),this.actions.markAllRead().subscribe(()=>{this.actions.getJobsV2()},e=>console.error("ngOnChanges",e))}}return e.\u0275fac=function(t){return new(t||e)(bo($a))},e.\u0275cmp=tt({type:e,selectors:[["app-header"]],decls:7,vars:1,consts:[[1,"navbar","bg-primary"],[1,"navbar-section"],[1,"text-bold","navbar-brand","mx-1","text-uppercase"],[1,"navbar-section","text-right"],[1,"btn","btn-sm","btn-primary",3,"click"]],template:function(e,t){1&e&&(Co(0,"header",0),Co(1,"section",1),Co(2,"span",2),jo(3),Eo(),Eo(),Co(4,"section",3),Co(5,"button",4),So("click",(function(){return t.doMarkRead()})),jo(6,"Mark All Read"),Eo(),Eo(),Eo()),2&e&&(Br(3),Mo(t.titleText))},styles:[""]}),e})();var Ja=/d{1,4}|M{1,4}|YY(?:YY)?|S{1,3}|Do|ZZ|Z|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,Ya=/\[([^]*?)\]/gm;function qa(e,t){for(var n=[],r=0,s=e.length;r3?0:(e-e%10!=10?1:0)*e%10]}}),eu=function(e,t){for(void 0===t&&(t=2),e=String(e);e.length0?"-":"+")+eu(100*Math.floor(Math.abs(t)/60)+Math.abs(t)%60,4)},Z:function(e){var t=e.getTimezoneOffset();return(t>0?"-":"+")+eu(Math.floor(Math.abs(t)/60),2)+":"+eu(Math.abs(t)%60,2)}},nu={default:"ddd MMM DD YYYY HH:mm:ss",shortDate:"M/D/YY",mediumDate:"MMM D, YYYY",longDate:"MMMM D, YYYY",fullDate:"dddd, MMMM D, YYYY",isoDate:"YYYY-MM-DD",isoDateTime:"YYYY-MM-DDTHH:mm:ssZ",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"};function ru(e,t){if(1&e){const e=To();Co(0,"tr",6),So("click",(function(){Bt(e);const n=t.$implicit;return Do().clickEvent(n._id)})),Co(1,"td",7),jo(2),Eo(),Co(3,"td"),jo(4),Eo(),Co(5,"td",8),jo(6),Eo(),Co(7,"td",8),jo(8),Eo(),Eo()}if(2&e){const e=t.$implicit,n=Do();Oo("id",e._id),wo("ngClass",n.setClasses(e)),Br(2),Ro(" ",e.title," "),Br(2),Mo(e.site),Br(1),Oo("title",e.company),Br(1),Mo(n.ellipsisV2(e.company,25)),Br(1),Oo("title",n.timeStamptoLocaleDate(e.timestamp)),Br(1),Mo(n.timeOrDate(e.timestamp))}}let su=(()=>{class e{constructor(e){this.actions=e,this.jobs=[],this.showJobDetail=new Di,this.jobsSub=this.actions.jobsSubject.subscribe(e=>{this.jobs=e})}ngOnInit(){}ellipsisV2(e,t=40,n=!0){if(e.length<=t)return e;const r=e.substr(0,t-1);return(n?r.substr(0,r.lastIndexOf(" ")):r)+"\u2026"}haveRead(e){return 0!==e.read?"read":""}haveApplied(e){return 0!==e.applied?"applied":""}timeStamptoLocaleDate(e){return new Date(e).toLocaleString()}timeOrDate(e){const t=864e5*~~(Date.now()/864e5);return function(e,t,n){if(void 0===t&&(t=nu.default),void 0===n&&(n={}),"number"==typeof e&&(e=new Date(e)),"[object Date]"!==Object.prototype.toString.call(e)||isNaN(e.getTime()))throw new Error("Invalid Date pass to format");var r=[];t=(t=nu[t]||t).replace(Ya,(function(e,t){return r.push(t),"@@@"}));var s=Wa(Wa({},Xa),n);return(t=t.replace(Ja,(function(t){return tu[t](e,s)}))).replace(/@@@/g,(function(){return r.shift()}))}(new Date(e),e>t?"shortTime":"isoDate")}setClasses(e){return{read:e.read,applied:e.applied}}clickEvent(e){console.log(e),this.showJobDetail.emit(e)}}return e.\u0275fac=function(t){return new(t||e)(bo($a))},e.\u0275cmp=tt({type:e,selectors:[["app-lister"]],outputs:{showJobDetail:"showJobDetail"},decls:14,vars:1,consts:[[1,"lister"],[1,""],[1,"col-5"],[1,"col-2"],[1,"col-3"],["class","dataRow",3,"id","ngClass","click",4,"ngFor","ngForOf"],[1,"dataRow",3,"id","ngClass","click"],[1,"noOverflow"],[3,"title"]],template:function(e,t){1&e&&(Co(0,"div",0),Co(1,"table",1),Co(2,"thead"),Co(3,"tr"),Co(4,"th",2),jo(5," Title "),Eo(),Co(6,"th",3),jo(7," Site "),Eo(),Co(8,"th",4),jo(9," Company "),Eo(),Co(10,"th",3),jo(11," Date "),Eo(),Eo(),Eo(),Co(12,"tbody"),_o(13,ru,9,8,"tr",5),Eo(),Eo(),Eo()),2&e&&(Br(13),wo("ngForOf",t.jobs))},directives:[Dl,Il],styles:[".lister[_ngcontent-%COMP%]{height:45vh;max-height:45vh;overflow-y:scroll}.hide[_ngcontent-%COMP%]{display:none}.company[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dataRow[_ngcontent-%COMP%]{font-weight:700;color:#2f4f4f}.read[_ngcontent-%COMP%]{font-weight:400!important;color:#696969}.applied[_ngcontent-%COMP%]{box-shadow:inset 0 0 5px 5px rgba(247,222,47,.4117647058823529)}.dataRow[_ngcontent-%COMP%]:hover{background-color:rgba(245,238,100,.54)}.small[_ngcontent-%COMP%]{font-size:70%}.noOverflow[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}"]}),e})();function ou(e,t){if(1&e&&(Co(0,"span",3),jo(1),Eo()),2&e){const e=t.$implicit,n=Do();Oo("id",e),wo("className",n.classifier(e)),Br(1),Mo(e)}}let iu=(()=>{class e{constructor(){}ngOnInit(){}classifier(e){return-1!==this.autoclass.bad.indexOf(e)?"badge badge-danger":-1!==this.autoclass.good.indexOf(e)?"badge badge-success":"badge badge-dark"}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=tt({type:e,selectors:[["app-wordbar"]],inputs:{autoclass:"autoclass"},decls:3,vars:1,consts:[[1,"row"],[1,"col-12"],[3,"id","className",4,"ngFor","ngForOf"],[3,"id","className"]],template:function(e,t){1&e&&(Co(0,"div",0),Co(1,"div",1),_o(2,ou,2,3,"span",2),Eo(),Eo()),2&e&&(Br(2),wo("ngForOf",t.autoclass.words))},directives:[Dl],styles:[""]}),e})();function lu(e,t){1&e&&(Co(0,"span",15),jo(1,"Contract"),Eo())}function au(e,t){1&e&&(Co(0,"span",16),jo(1,"Permanent"),Eo())}function uu(e,t){if(1&e){const e=To();Co(0,"button",17),So("click",(function(){return Bt(e),Do(2).doJobApply()})),jo(1,"Applied"),Eo()}}function cu(e,t){1&e&&(Co(0,"span"),jo(1,"Applied!"),Eo())}function hu(e,t){1&e&&xo(0,"blockquote",18),2&e&&wo("innerHTML",Do(2).jobDetails.summary,Cr)}function du(e,t){if(1&e&&(Co(0,"div",1),Co(1,"div",2),Co(2,"div",3),Co(3,"div",4),jo(4),Eo(),_o(5,lu,2,0,"span",5),_o(6,au,2,0,"span",6),Eo(),Co(7,"div",3),Co(8,"div",7),jo(9," Company: "),Co(10,"span",8),jo(11),Eo(),Eo(),Co(12,"div",7),jo(13," Location: "),Co(14,"span",8),jo(15),Eo(),Eo(),Co(16,"div",7),jo(17," Applied: "),_o(18,uu,2,0,"button",9),_o(19,cu,2,0,"span",10),Eo(),Eo(),Co(20,"div",3),Co(21,"div",7),jo(22," Salary: "),xo(23,"span",11),Eo(),Co(24,"div",7),jo(25," Scraped: "),Co(26,"span",8),jo(27),Eo(),Eo(),Co(28,"div",7),jo(29," Site: "),Co(30,"a",12),jo(31),Eo(),Eo(),Eo(),xo(32,"app-wordbar",13),Eo(),_o(33,hu,1,1,"blockquote",14),Eo()),2&e){const e=Do();Br(1),wo("ngClass",e.haveApplied()),Br(3),Ro(" ",e.jobDetails.title," "),Br(1),wo("ngIf",1===e.jobtype()),Br(1),wo("ngIf",2===e.jobtype()),Br(5),Mo(e.jobDetails.company),Br(4),Mo(e.jobDetails.location),Br(3),wo("ngIf",!e.haveAppliedTF()),Br(1),wo("ngIf",e.haveAppliedTF()),Br(4),wo("innerHTML",e.jobDetails.salary,Cr),Br(4),Mo(e.jobDetails.date),Br(3),Oo("href",e.jobDetails.url,Er),Br(1),Mo(e.jobDetails.site),Br(1),wo("autoclass",e.jobDetails.data.autoclass),Br(1),wo("ngIf",e.jobDetails.summary)}}let fu=(()=>{class e{constructor(e){this.actions=e}ngOnInit(){}ngOnChanges(){console.log(">> Detail ngOnChanges",this.jobId,""===this.jobId),""!==this.jobId&&(this.actions.loadJobDetails(this.jobId).subscribe(e=>{this.jobDetails=e,console.log("loaded",this.jobDetails)}),this.actions.touchJob(this.jobId).subscribe(()=>{this.actions.updateJob(this.jobId)},e=>console.error("ngOnChanges",e)))}haveApplied(){return""!==this.jobId&&0!==this.jobDetails.data.applied?"applied":""}haveAppliedTF(){return""!==this.jobId&&0!==this.jobDetails.data.applied}jobtype(){return""!==this.jobId?this.jobDetails.data.jobtype:0}doJobApply(){""!==this.jobId&&(this.actions.appliedJob(this.jobId),this.jobDetails.data.applied=Date.now())}}return e.\u0275fac=function(t){return new(t||e)(bo($a))},e.\u0275cmp=tt({type:e,selectors:[["app-detail"]],inputs:{jobId:"jobId"},features:[vt],decls:1,vars:1,consts:[["class","detail",4,"ngIf"],[1,"detail"],[1,"detailHead","bg-light",3,"ngClass"],[1,"row"],[1,"col-12","text-primary","lead"],["class","badge badge-success",4,"ngIf"],["class","badge badge-danger",4,"ngIf"],[1,"col-1-3rd"],[1,"text-primary"],["class","btn btn-sm btn-primary",3,"click",4,"ngIf"],[4,"ngIf"],[1,"text-primary",3,"innerHTML"],["target","_blank",1,"text-capitalize",3,"href"],[3,"autoclass"],["class","container noscroll",3,"innerHTML",4,"ngIf"],[1,"badge","badge-success"],[1,"badge","badge-danger"],[1,"btn","btn-sm","btn-primary",3,"click"],[1,"container","noscroll",3,"innerHTML"]],template:function(e,t){1&e&&_o(0,du,34,14,"div",0),2&e&&wo("ngIf",t.jobDetails)},directives:[Nl,Il,iu],styles:[".detail[_ngcontent-%COMP%]{width:100%;border-top:2px solid #e1e1e1;height:49.5vh;max-height:49.5vh;overflow-y:scroll}.detailHead[_ngcontent-%COMP%]{box-sizing:border-box;margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.row[_ngcontent-%COMP%]{margin:1% 0;overflow:auto;display:flex}.applied[_ngcontent-%COMP%]{box-shadow:inset 0 0 5px 5px rgba(247,222,47,.4117647058823529)}"]}),e})(),pu=(()=>{class e{constructor(){this.title="angular-jobs",this.jobId=""}handleShowJobDetail(e){console.log(">> app-root // handleShowJobDetail",e),this.jobId=e}}return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=tt({type:e,selectors:[["app-root"]],decls:5,vars:1,consts:[[1,"container","fullWidth","noscroll"],[1,"col-12"],[3,"showJobDetail"],[3,"jobId"]],template:function(e,t){1&e&&(xo(0,"app-header"),Co(1,"div",0),Co(2,"div",1),Co(3,"app-lister",2),So("showJobDetail",(function(e){return t.handleShowJobDetail(e)})),Eo(),xo(4,"app-detail",3),Eo(),Eo()),2&e&&(Br(4),wo("jobId",t.jobId))},directives:[Za,su,fu],styles:[""]}),e})(),mu=(()=>{class e{}return e.\u0275mod=ot({type:e,bootstrap:[pu]}),e.\u0275inj=oe({factory:function(t){return new(t||e)},providers:[],imports:[[ua,za]]}),e})();!function(){if(Kn)throw new Error("Cannot enable prod mode after platform setup.");Gn=!1}(),la().bootstrapModule(mu).catch(e=>console.error(e))}},[[0,0]]]); \ No newline at end of file diff --git a/server/dist/polyfills.35a5ca1855eb057f016a.js b/server/dist/polyfills.35a5ca1855eb057f016a.js new file mode 100644 index 0000000..60f4a02 --- /dev/null +++ b/server/dist/polyfills.35a5ca1855eb057f016a.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{1:function(e,t,n){e.exports=n("hN/g")},"hN/g":function(e,t,n){"use strict";n.r(t),n("pDpN")},pDpN:function(e,t,n){var o,r;void 0===(r="function"==typeof(o=function(){"use strict";!function(e){const t=e.performance;function n(e){t&&t.mark&&t.mark(e)}function o(e,n){t&&t.measure&&t.measure(e,n)}n("Zone");const r=e.__Zone_symbol_prefix||"__zone_symbol__";function s(e){return r+e}const i=!0===e[s("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}class a{constructor(e,t){this._parent=e,this._name=t?t.name||"unnamed":"",this._properties=t&&t.properties||{},this._zoneDelegate=new l(this,this._parent&&this._parent._zoneDelegate,t)}static assertZonePatched(){if(e.Promise!==C.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=a.current;for(;e.parent;)e=e.parent;return e}static get current(){return z.zone}static get currentTask(){return j}static __load_patch(t,r){if(C.hasOwnProperty(t)){if(i)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const s="Zone:"+t;n(s),C[t]=r(e,a,O),o(s,s)}}get parent(){return this._parent}get name(){return this._name}get(e){const t=this.getZoneWith(e);if(t)return t._properties[e]}getZoneWith(e){let t=this;for(;t;){if(t._properties.hasOwnProperty(e))return t;t=t._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,t){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const n=this._zoneDelegate.intercept(this,e,t),o=this;return function(){return o.runGuarded(n,this,arguments,t)}}run(e,t,n,o){z={parent:z,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{z=z.parent}}runGuarded(e,t=null,n,o){z={parent:z,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{z=z.parent}}runTask(e,t,n){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");if(e.state===v&&(e.type===P||e.type===D))return;const o=e.state!=E;o&&e._transitionTo(E,T),e.runCount++;const r=j;j=e,z={parent:z,zone:this};try{e.type==D&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(s){if(this._zoneDelegate.handleError(this,s))throw s}}finally{e.state!==v&&e.state!==Z&&(e.type==P||e.data&&e.data.isPeriodic?o&&e._transitionTo(T,E):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(v,E,v))),z=z.parent,j=r}}scheduleTask(e){if(e.zone&&e.zone!==this){let t=this;for(;t;){if(t===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);t=t.parent}}e._transitionTo(b,v);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(Z,b,v),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==b&&e._transitionTo(T,b),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(S,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(D,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(P,e,t,n,o,r))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||y).name+"; Execution: "+this.name+")");e._transitionTo(w,T,E);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(Z,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(v,w),e.runCount=0,e}_updateTaskCount(e,t){const n=e._zoneDelegates;-1==t&&(e._zoneDelegates=null);for(let o=0;oe.hasTask(n,o),onScheduleTask:(e,t,n,o)=>e.scheduleTask(n,o),onInvokeTask:(e,t,n,o,r,s)=>e.invokeTask(n,o,r,s),onCancelTask:(e,t,n,o)=>e.cancelTask(n,o)};class l{constructor(e,t,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=e,this._parentDelegate=t,this._forkZS=n&&(n&&n.onFork?n:t._forkZS),this._forkDlgt=n&&(n.onFork?t:t._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:t._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:t._interceptZS),this._interceptDlgt=n&&(n.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:t._invokeZS),this._invokeDlgt=n&&(n.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:t._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:t._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:t._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:t._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const o=n&&n.onHasTask;(o||t&&t._hasTaskZS)&&(this._hasTaskZS=o?n:c,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=e,n.onScheduleTask||(this._scheduleTaskZS=c,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=c,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=c,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(e,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,e,t):new a(e,t)}intercept(e,t,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,e,t,n):t}invoke(e,t,n,o,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,e,t,n,o,r):t.apply(n,o)}handleError(e,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,e,t)}scheduleTask(e,t){let n=t;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,e,t),n||(n=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=S)throw new Error("Task is missing scheduleFn.");k(t)}return n}invokeTask(e,t,n,o){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,e,t,n,o):t.callback.apply(n,o)}cancelTask(e,t){let n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,e,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");n=t.cancelFn(t)}return n}hasTask(e,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,e,t)}catch(n){this.handleError(e,n)}}_updateTaskCount(e,t){const n=this._taskCounts,o=n[e],r=n[e]=o+t;if(r<0)throw new Error("More tasks executed then were scheduled.");0!=o&&0!=r||this.hasTask(this.zone,{microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:e})}}class u{constructor(t,n,o,r,s,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=s,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const a=this;this.invoke=t===P&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,a,this,arguments)}}static invokeTask(e,t,n){e||(e=this),I++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==I&&m(),I--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(v,b)}_transitionTo(e,t,n){if(this._state!==t&&this._state!==n)throw new Error(`${this.type} '${this.source}': can not transition to '${e}', expecting state '${t}'${n?" or '"+n+"'":""}, was '${this._state}'.`);this._state=e,e==v&&(this._zoneDelegates=null)}toString(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const h=s("setTimeout"),p=s("Promise"),f=s("then");let d,g=[],_=!1;function k(t){if(0===I&&0===g.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,m)}else e[h](m,0);t&&g.push(t)}function m(){if(!_){for(_=!0;g.length;){const t=g;g=[];for(let n=0;nz,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:k,showUncaughtError:()=>!a[s("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,setNativePromise:e=>{e&&"function"==typeof e.resolve&&(d=e.resolve(0))},patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let z={parent:null,zone:new a(null,null)},j=null,I=0;function N(){}o("Zone","Zone"),e.Zone=a}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global),Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,s=n.symbol,i=[],a=!0===e[s("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=s("Promise"),l=s("then");n.onUnhandledError=e=>{if(n.showUncaughtError()){const t=e&&e.rejection;t?console.error("Unhandled Promise rejection:",t instanceof Error?t.message:t,"; Zone:",e.zone.name,"; Task:",e.task&&e.task.source,"; Value:",t,t instanceof Error?t.stack:void 0):console.error(e)}},n.microtaskDrainDone=()=>{for(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t})}catch(e){h(e)}}};const u=s("unhandledPromiseRejectionHandler");function h(e){n.onUnhandledError(e);try{const n=t[u];"function"==typeof n&&n.call(this,e)}catch(o){}}function p(e){return e&&e.then}function f(e){return e}function d(e){return O.reject(e)}const g=s("state"),_=s("value"),k=s("finally"),m=s("parentPromiseValue"),y=s("parentPromiseState"),v=null,b=!0,T=!1;function E(e,t){return n=>{try{Z(e,t,n)}catch(o){Z(e,!1,o)}}}const w=s("currentTaskTrace");function Z(e,o,s){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===s)throw new TypeError("Promise resolved with itself");if(e[g]===v){let h=null;try{"object"!=typeof s&&"function"!=typeof s||(h=s&&s.then)}catch(u){return c(()=>{Z(e,!1,u)})(),e}if(o!==T&&s instanceof O&&s.hasOwnProperty(g)&&s.hasOwnProperty(_)&&s[g]!==v)D(s),Z(e,s[g],s[_]);else if(o!==T&&"function"==typeof h)try{h.call(s,c(E(e,o)),c(E(e,!1)))}catch(u){c(()=>{Z(e,!1,u)})()}else{e[g]=o;const c=e[_];if(e[_]=s,e[k]===k&&o===b&&(e[g]=e[y],e[_]=e[m]),o===T&&s instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(s,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[_],r=!!n&&k===n[k];r&&(n[m]=o,n[y]=s);const a=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);Z(n,!0,a)}catch(o){Z(n,!1,o)}},n)}const C=function(){};class O{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return Z(new this(null),b,e)}static reject(e){return Z(new this(null),T,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function s(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,s);return o}static all(e){return O.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof O?this:O).allWithCallback(e,{thenCallback:e=>({status:"fulfilled",value:e}),errorCallback:e=>({status:"rejected",reason:e})})}static allWithCallback(e,t){let n,o,r=new this((e,t)=>{n=e,o=t}),s=2,i=0;const a=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{a[e]=t?t.thenCallback(o):o,s--,0===s&&n(a)},r=>{t?(a[e]=t.errorCallback(r),s--,0===s&&n(a)):o(r)})}catch(c){o(c)}s++,i++}return s-=2,0===s&&n(a),r}constructor(e){const t=this;if(!(t instanceof O))throw new Error("Must be an instanceof Promise.");t[g]=v,t[_]=[];try{e&&e(E(t,b),E(t,T))}catch(n){Z(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return O}then(e,n){let o=this.constructor[Symbol.species];o&&"function"==typeof o||(o=this.constructor||O);const r=new o(C),s=t.current;return this[g]==v?this[_].push(s,r,e,n):P(this,s,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];n&&"function"==typeof n||(n=O);const o=new n(C);o[k]=k;const r=t.current;return this[g]==v?this[_].push(r,o,e,e):P(this,r,o,e,e),o}}O.resolve=O.resolve,O.reject=O.reject,O.race=O.race,O.all=O.all;const z=e[c]=e.Promise,j=t.__symbol__("ZoneAwarePromise");let I=o(e,"Promise");I&&!I.configurable||(I&&delete I.writable,I&&delete I.value,I||(I={configurable:!0,enumerable:!0}),I.get=function(){return e[j]?e[j]:e[c]},I.set=function(t){t===O?e[j]=t:(e[c]=t,t.prototype[l]||R(t),n.setNativePromise(t))},r(e,"Promise",I)),e.Promise=O;const N=s("thenPatched");function R(e){const t=e.prototype,n=o(t,"then");if(n&&(!1===n.writable||!n.configurable))return;const r=t.then;t[l]=r,e.prototype.then=function(e,t){return new O((e,t)=>{r.call(this,e,t)}).then(e,t)},e[N]=!0}if(n.patchThen=R,z){R(z);const t=e.fetch;"function"==typeof t&&(e[n.symbol("fetch")]=t,e.fetch=(x=t,function(){let e=x.apply(this,arguments);if(e instanceof O)return e;let t=e.constructor;return t[N]||R(t),e}))}var x;return Promise[t.__symbol__("uncaughtPromiseErrors")]=i,O});const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,s="addEventListener",i="removeEventListener",a=Zone.__symbol__(s),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,g="undefined"!=typeof window,_=g?window:void 0,k=g&&_||"object"==typeof self&&self||global,m=[null];function y(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function v(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const b="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,T=!("nw"in k)&&void 0!==k.process&&"[object process]"==={}.toString.call(k.process),E=!T&&!b&&!(!g||!_.HTMLElement),w=void 0!==k.process&&"[object process]"==={}.toString.call(k.process)&&!b&&!(!g||!_.HTMLElement),Z={},S=function(e){if(!(e=e||k.event))return;let t=Z[e.type];t||(t=Z[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||k,o=n[t];let r;if(E&&n===_&&"error"===e.type){const t=e;r=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===r&&e.preventDefault()}else r=o&&o.apply(this,arguments),null==r||r||e.preventDefault();return r};function D(n,o,r){let s=e(n,o);if(!s&&r&&e(r,o)&&(s={enumerable:!0,configurable:!0}),!s||!s.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete s.writable,delete s.value;const a=s.get,c=s.set,l=o.substr(2);let u=Z[l];u||(u=Z[l]=d("ON_PROPERTY"+l)),s.set=function(e){let t=this;t||n!==k||(t=k),t&&(t[u]&&t.removeEventListener(l,S),c&&c.apply(t,m),"function"==typeof e?(t[u]=e,t.addEventListener(l,S,!1)):t[u]=null)},s.get=function(){let e=this;if(e||n!==k||(e=k),!e)return null;const t=e[u];if(t)return t;if(a){let t=a&&a.call(this);if(t)return s.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,s),n[i]=!0}function P(e,t,n){if(t)for(let o=0;ofunction(t,o){const s=n(t,o);return s.cbIdx>=0&&"function"==typeof o[s.cbIdx]?f(s.name,o[s.cbIdx],s,r):e.apply(t,o)})}function I(e,t){e[d("OriginalDelegate")]=t}let N=!1,R=!1;function x(){try{const e=_.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}function M(){if(N)return R;N=!0;try{const e=_.navigator.userAgent;-1===e.indexOf("MSIE ")&&-1===e.indexOf("Trident/")&&-1===e.indexOf("Edge/")||(R=!0)}catch(e){}return R}Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),s=function(){if("function"==typeof this){const s=this[n];if(s)return"function"==typeof s?t.call(s):Object.prototype.toString.call(s);if(this===Promise){const n=e[o];if(n)return t.call(n)}if(this===Error){const n=e[r];if(n)return t.call(n)}}return t.call(this)};s[n]=t,Function.prototype.toString=s;const i=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":i.call(this)}});let L=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){L=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(he){L=!1}const A={useG:!0},H={},F={},G=new RegExp("^"+h+"(\\w+)(true|false)$"),B=d("propagationStopped");function q(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,s=h+o;H[e]={},H[e].false=r,H[e].true=s}function W(e,t,o){const r=o&&o.add||s,a=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),g="."+r+":",_=function(e,t,n){if(e.isRemoved)return;const o=e.callback;"object"==typeof o&&o.handleEvent&&(e.callback=e=>o.handleEvent(e),e.originalDelegate=o),e.invoke(e,t,[n]);const r=e.options;r&&"object"==typeof r&&r.once&&t[a].call(t,n.type,e.originalDelegate?e.originalDelegate:e.callback,r)},k=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[H[t.type].false];if(o)if(1===o.length)_(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[B]=!0,e&&e.apply(t,n)})}function $(e,t,n,o,r){const s=Zone.__symbol__(o);if(t[s])return;const i=t[s]=t[o];t[o]=function(s,a,c){return a&&a.prototype&&r.forEach((function(t){const r=`${n}.${o}::`+t,s=a.prototype;if(s.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(s,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(a.prototype,t,n)):s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))}else s[t]&&(s[t]=e.wrapWithCurrentZone(s[t],r))})),i.call(t,s,a,c)},e.attachOriginToPatched(t[o],i)}const X=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],J=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],Q=["bounce","finish","start"],ee=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],te=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],ne=["close","error","open","message"],oe=["error","message"],re=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],X,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function se(e,t,n){if(!n||0===n.length)return t;const o=n.filter(t=>t.target===e);if(!o||0===o.length)return t;const r=o[0].ignoreProperties;return t.filter(e=>-1===r.indexOf(e))}function ie(e,t,n,o){e&&P(e,se(e,t,n),o)}function ae(e,t){if(T&&!w)return;if(Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(E){const e=window,t=x?[{target:e,ignoreProperties:["error"]}]:[];ie(e,re.concat(["messageerror"]),r?r.concat(t):r,n(e)),ie(Document.prototype,re,r),void 0!==e.SVGElement&&ie(e.SVGElement.prototype,re,r),ie(Element.prototype,re,r),ie(HTMLElement.prototype,re,r),ie(HTMLMediaElement.prototype,J,r),ie(HTMLFrameSetElement.prototype,X.concat(K),r),ie(HTMLBodyElement.prototype,X.concat(K),r),ie(HTMLFrameElement.prototype,Y,r),ie(HTMLIFrameElement.prototype,Y,r);const o=e.HTMLMarqueeElement;o&&ie(o.prototype,Q,r);const s=e.Worker;s&&ie(s.prototype,oe,r)}const s=t.XMLHttpRequest;s&&ie(s.prototype,ee,r);const i=t.XMLHttpRequestEventTarget;i&&ie(i&&i.prototype,ee,r),"undefined"!=typeof IDBIndex&&(ie(IDBIndex.prototype,te,r),ie(IDBRequest.prototype,te,r),ie(IDBOpenDBRequest.prototype,te,r),ie(IDBDatabase.prototype,te,r),ie(IDBTransaction.prototype,te,r),ie(IDBCursor.prototype,te,r)),o&&ie(WebSocket.prototype,ne,r)}Zone.__load_patch("util",(n,a,c)=>{c.patchOnProperties=P,c.patchMethod=z,c.bindArguments=y,c.patchMacroTask=j;const f=a.__symbol__("BLACK_LISTED_EVENTS"),d=a.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(a[f]=a[d]=n[f]),c.patchEventPrototype=V,c.patchEventTarget=W,c.isIEOrEdge=M,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=O,c.wrapWithCurrentZone=p,c.filterProperties=se,c.attachOriginToPatched=I,c._redefineProperty=Object.defineProperty,c.patchCallbacks=$,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:H,eventNames:re,isBrowser:E,isMix:w,isNode:T,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:s,REMOVE_EVENT_LISTENER_STR:i})});const ce=d("zoneTask");function le(e,t,n,o){let r=null,s=null;n+=o;const i={};function a(t){const n=t.data;return n.args[0]=function(){try{t.invoke.apply(this,arguments)}finally{t.data&&t.data.isPeriodic||("number"==typeof n.handleId?delete i[n.handleId]:n.handleId&&(n.handleId[ce]=null))}},n.handleId=r.apply(e,n.args),t}function c(e){return s(e.data.handleId)}r=z(e,t+=o,n=>function(r,s){if("function"==typeof s[0]){const e=f(t,s[0],{isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?s[1]||0:void 0,args:s},a,c);if(!e)return e;const n=e.data.handleId;return"number"==typeof n?i[n]=e:n&&(n[ce]=e),n&&n.ref&&n.unref&&"function"==typeof n.ref&&"function"==typeof n.unref&&(e.ref=n.ref.bind(n),e.unref=n.unref.bind(n)),"number"==typeof n||n?n:e}return n.apply(e,s)}),s=z(e,n,t=>function(n,o){const r=o[0];let s;"number"==typeof r?s=i[r]:(s=r&&r[ce],s||(s=r)),s&&"string"==typeof s.type?"notScheduled"!==s.state&&(s.cancelFn&&s.data.isPeriodic||0===s.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ce]=null),s.zone.cancelTask(s)):t.apply(e,o)})}function ue(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:s,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("timers",e=>{const t="set",n="clear";le(e,t,n,"Timeout"),le(e,t,n,"Interval"),le(e,t,n,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{le(e,"request","cancel","AnimationFrame"),le(e,"mozRequest","mozCancel","AnimationFrame"),le(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,t)=>{const n=["alert","prompt","confirm"];for(let o=0;ofunction(o,s){return t.current.run(n,e,s,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),ue(e,n);const o=e.XMLHttpRequestEventTarget;o&&o.prototype&&n.patchEventTarget(e,[o.prototype]),O("MutationObserver"),O("WebKitMutationObserver"),O("IntersectionObserver"),O("FileReader")}),Zone.__load_patch("on_property",(e,t,n)=>{ae(n,e)}),Zone.__load_patch("customElements",(e,t,n)=>{!function(e,t){const{isBrowser:n,isMix:o}=t.getGlobalObjects();(n||o)&&e.customElements&&"customElements"in e&&t.patchCallbacks(t,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,n)}),Zone.__load_patch("XHR",(e,t)=>{!function(e){const u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[a],g=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[a],g=e[c]}}const _="readystatechange",k="scheduled";function m(e){const o=e.data,i=o.target;i[s]=!1,i[l]=!1;const u=i[r];p||(p=i[a],g=i[c]),u&&g.call(i,_,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[s]&&e.state===k){const n=i[t.__symbol__("loadfalse")];if(n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],b.apply(e,t)}),T=d("fetchTaskAborting"),E=d("fetchTaskScheduling"),w=z(h,"send",()=>function(e,n){if(!0===t.current[E])return w.apply(e,n);if(e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",y,t,m,v);e&&!0===e[l]&&!t.aborted&&o.state===k&&o.invoke()}}),Z=z(h,"abort",()=>function(e,o){const r=e[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===t.current[T])return Z.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),s=d("xhrScheduled"),i=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function(t,n){const o=t.constructor.name;for(let r=0;r{const t=function(){return e.apply(this,y(arguments,o+"."+s))};return I(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){U(e,t).forEach(o=>{const r=e.PromiseRejectionEvent;if(r){const e=new r(t,{promise:n.promise,reason:n.rejection});o.invoke(e)}})}}e.PromiseRejectionEvent&&(t[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?o.call(t,n,t,e):o)||(e.exports=r)}},[[1,0]]]); \ No newline at end of file diff --git a/server/dist/runtime.acf0dec4155e77772545.js b/server/dist/runtime.acf0dec4155e77772545.js new file mode 100644 index 0000000..effa6ae --- /dev/null +++ b/server/dist/runtime.acf0dec4155e77772545.js @@ -0,0 +1 @@ +!function(e){function r(r){for(var n,l,f=r[0],i=r[1],p=r[2],c=0,s=[];c