Last active
June 1, 2022 11:16
-
-
Save gistlyn/b9a693da72d7e2abbe86506fc17211ab to your computer and use it in GitHub Desktop.
Vue Desktop
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{{ | |
var MaterialIcons = { | |
'action/home.svg': 'home', | |
'content/add.svg': 'add', | |
'av/loop.svg': 'loop', | |
} | |
}} | |
{{#each MaterialIcons}} | |
{{`/lib/svg/material/${it.Key}` |> svgAddFile(it.Value,'app')}} | |
{{/each}} | |
{{#svg loading app}} | |
<svg xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" width="24px" height="30px" viewBox="0 0 24 30" style="enable-background:new 0 0 50 50"> | |
<rect x="0" y="10" width="4" height="10" fill="#333" opacity="0.2"> | |
<animate attributeName="opacity" attributeType="XML" values="0.2; 1; .2" begin="0s" dur="0.6s" repeatCount="indefinite" /> | |
<animate attributeName="height" attributeType="XML" values="10; 20; 10" begin="0s" dur="0.6s" repeatCount="indefinite" /> | |
<animate attributeName="y" attributeType="XML" values="10; 5; 10" begin="0s" dur="0.6s" repeatCount="indefinite" /> | |
</rect> | |
<rect x="8" y="10" width="4" height="10" fill="#333" opacity="0.2"> | |
<animate attributeName="opacity" attributeType="XML" values="0.2; 1; .2" begin="0.15s" dur="0.6s" repeatCount="indefinite" /> | |
<animate attributeName="height" attributeType="XML" values="10; 20; 10" begin="0.15s" dur="0.6s" repeatCount="indefinite" /> | |
<animate attributeName="y" attributeType="XML" values="10; 5; 10" begin="0.15s" dur="0.6s" repeatCount="indefinite" /> | |
</rect> | |
<rect x="16" y="10" width="4" height="10" fill="#333" opacity="0.2"> | |
<animate attributeName="opacity" attributeType="XML" values="0.2; 1; .2" begin="0.3s" dur="0.6s" repeatCount="indefinite" /> | |
<animate attributeName="height" attributeType="XML" values="10; 20; 10" begin="0.3s" dur="0.6s" repeatCount="indefinite" /> | |
<animate attributeName="y" attributeType="XML" values="10; 5; 10" begin="0.3s" dur="0.6s" repeatCount="indefinite" /> | |
</rect> | |
</svg> | |
{{/svg}} | |
{{htmlError}} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html lang="en"> | |
<head> | |
<meta charset="UTF-8"> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
<meta http-equiv="X-UA-Compatible" content="ie=edge"> | |
<link href="/favicon.png" rel="icon"> | |
<link rel="stylesheet" href="/lib/css/bootstrap/bootstrap.css"> | |
<title>{{ title ?? 'My App' }}</title> | |
</head> | |
<body> | |
{{ 'buttons,buttons-svg' |> cssIncludes }} | |
{{ 'app' |> cssIncludes |> svgFill('#444') }} | |
{{#if fileExists('/bundle.css') }} | |
<link rel="stylesheet" href="/bundle.css"> | |
{{else}} | |
{{ 'content:/src/css/' |> bundleCss({ minify:false, cache:false, out:'/app.bundle.css' }) }} | |
{{/if}} | |
<style> | |
{{ { | |
'.home-nav': ['home','#fff'], | |
'.add-nav': ['add','#fff'], | |
'.loop-nav': ['loop','#fff'], | |
} |> toList |> map => `${it.Key} { ${it.Value[0].svgBackgroundImageCss(it.Value[1])} }` |> joinln |> raw }} | |
.text-close::after { content:'\00D7'; } | |
</style> | |
<i hidden>{{ '/js/hot-fileloader.js' |> ifDebugIncludeScript }}</i> | |
<script> | |
CONFIG = { | |
debug: {{ debugMode |> json }}, | |
desktop: {{ desktopInfo |> json }} | |
} | |
</script> | |
<noscript>You need to enable JavaScript to run this app.</noscript> | |
{{page}} | |
{{ [ | |
`/lib/js/vue/vue.min.js`, | |
`/lib/js/vue-router/vue-router.min.js`, | |
`/lib/js/vue-class-component/vue-class-component.min.js`, | |
`/lib/js/vue-property-decorator/vue-property-decorator.min.js`, | |
`/lib/js/@servicestack/desktop/servicestack-desktop.min.js`, | |
`/lib/js/@servicestack/client/servicestack-client.min.js`, | |
`/lib/js/@servicestack/vue/servicestack-vue.min.js`, | |
] |> map => `<script src="${it}"></script>` |> joinln |> raw }} | |
<script> | |
var ALIASES = { | |
'vue': { default: Vue }, | |
'vue-router': { default: VueRouter }, | |
'vue-class-component': VueClassComponent, | |
'vue-property-decorator': VuePropertyDecorator, | |
'@servicestack/vue': ServiceStackVue | |
}; | |
var global = window; | |
window.exports = {}; | |
window.require = function(name) { | |
return ALIASES[name] || exports[name] || window[name] || exports; | |
}; | |
Object.assign(window, window["@servicestack/desktop"], window["@servicestack/client"]); | |
</script> | |
{{#if fileExists('/bundle.js') }} | |
<script src="/bundle.js"></script> | |
{{else}} | |
{{ [ | |
'content:/src/components/', | |
'content:/src/shared/', | |
'content:/src/', | |
] |> bundleJs({ minify:false, cache:false, iife:true, out:`/app.bundle.js` }) }} | |
{{/if}} | |
{{ scripts |> raw }} | |
{{initError |> htmlError}} | |
{{htmlError}} | |
</body> | |
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
debug false | |
name Vue Desktop | |
CefConfig { Width:1037, Height:770 } | |
# Optional: Publish App Settings to global App Directory | |
# appName my-app | |
# description My App Description (between 20-150 chars) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#app{position:relative;display:flex;flex-direction:column}.top-row{height:3.5rem;display:flex;align-items:center}.main{flex:1}.main .top-row{background-color:#f7f7f7;border-bottom:1px solid #d6d5d5;justify-content:flex-end}.main .top-row>a,.main .top-row .btn-link{white-space:nowrap;margin-left:1.5rem}.main .top-row a:first-child{overflow:hidden;text-overflow:ellipsis}.sidebar{background-image:linear-gradient(180deg,#052767 0%,#3a0647 70%)}.sidebar .top-row{background-color:rgba(0,0,0,.4)}.sidebar .navbar-brand{font-size:1.1rem}.sidebar .oi{width:2rem;font-size:1.1rem;vertical-align:text-top;top:-2px}.sidebar .nav-item{font-size:.9rem;padding-bottom:.5rem}.sidebar .nav-item:first-of-type{padding-top:1rem}.sidebar .nav-item:last-of-type{padding-bottom:1rem}.sidebar .nav-item a{color:#d7d7d7;border-radius:4px;height:3rem;display:flex;align-items:center;line-height:3rem}.sidebar .nav-item a.active{background-color:rgba(255,255,255,.25);color:#fff}.sidebar .nav-item a:hover{background-color:rgba(255,255,255,.1);color:#fff}@media(max-width:767.98px){.main .top-row:not(.auth){display:none}.main .top-row.auth{justify-content:space-between}.main .top-row a,.main .top-row .btn-link{margin-left:0}}@media(min-width:768px){#app{flex-direction:row}.sidebar{width:250px;height:100vh;position:sticky;top:0}.main .top-row{position:sticky;top:0}.main>div{padding-left:2rem !important;padding-right:1.5rem !important}.navbar-toggler{display:none}.sidebar .collapse{display:block}} | |
html,body{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif}a,.btn-link{color:#0366d6}.btn-primary{color:#fff;background-color:#1b6ec2;border-color:#1861ac}.content{padding-top:1.1rem}.navbar-toggler{background-color:rgba(255,255,255,.1)}.nav-item.dropdown:hover .dropdown-menu{display:block}.valid.modified:not([type=checkbox]){outline:1px solid #26b050}.invalid{outline:1px solid #f00}.validation-message{color:#f00}.form-inline input[type=number]{width:100px}.form-inline input[type=date]{width:145px} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(function(){ | |
"use strict";var __extends=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=i===null?Object.create(i):(r.prototype=i.prototype,new r)}}(),__decorate=this&&this.__decorate||function(n,t,i,r){var f=arguments.length,u=f<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,i):r,e,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")u=Reflect.decorate(n,t,i,r);else for(o=n.length-1;o>=0;o--)(e=n[o])&&(u=(f<3?e(u):f>3?e(t,i,u):e(t,i))||u);return f>3&&u&&Object.defineProperty(t,i,u),u};Object.defineProperty(exports,"__esModule",{value:!0});exports.Counter=void 0;var vue_1=require("vue"),vue_property_decorator_1=require("vue-property-decorator"),Counter=function(n){function t(){var t=n!==null&&n.apply(this,arguments)||this;return t.currentCount=0,t}return __extends(t,n),t.prototype.incrementCount=function(){this.currentCount++},__decorate([vue_property_decorator_1.Component({template:'\n<div>\n <h1>Counter<\/h1>\n \n <p>Current count: {{currentCount}}<\/p>\n \n <button class="btn btn-primary" @click="incrementCount()">Click me<\/button>\n \n<\/div>'})],t)}(vue_1.default);exports.Counter=Counter; | |
})(); | |
(function(){ | |
"use strict";var __extends=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=i===null?Object.create(i):(r.prototype=i.prototype,new r)}}(),__decorate=this&&this.__decorate||function(n,t,i,r){var f=arguments.length,u=f<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,i):r,e,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")u=Reflect.decorate(n,t,i,r);else for(o=n.length-1;o>=0;o--)(e=n[o])&&(u=(f<3?e(u):f>3?e(t,i,u):e(t,i))||u);return f>3&&u&&Object.defineProperty(t,i,u),u},__awaiter=this&&this.__awaiter||function(n,t,i,r){function u(n){return n instanceof i?n:new i(function(t){t(n)})}return new(i||(i=Promise))(function(i,f){function o(n){try{e(r.next(n))}catch(t){f(t)}}function s(n){try{e(r["throw"](n))}catch(t){f(t)}}function e(n){n.done?i(n.value):u(n.value).then(o,s)}e((r=r.apply(n,t||[])).next())})},__generator=this&&this.__generator||function(n,t){function o(n){return function(t){return s([n,t])}}function s(e){if(f)throw new TypeError("Generator is already executing.");while(r)try{if(f=1,u&&(i=e[0]&2?u["return"]:e[0]?u["throw"]||((i=u["return"])&&i.call(u),0):u.next)&&!(i=i.call(u,e[1])).done)return i;(u=0,i)&&(e=[e[0]&2,i.value]);switch(e[0]){case 0:case 1:i=e;break;case 4:return r.label++,{value:e[1],done:!1};case 5:r.label++;u=e[1];e=[0];continue;case 7:e=r.ops.pop();r.trys.pop();continue;default:if(!(i=r.trys,i=i.length>0&&i[i.length-1])&&(e[0]===6||e[0]===2)){r=0;continue}if(e[0]===3&&(!i||e[1]>i[0]&&e[1]<i[3])){r.label=e[1];break}if(e[0]===6&&r.label<i[1]){r.label=i[1];i=e;break}if(i&&r.label<i[2]){r.label=i[2];r.ops.push(e);break}i[2]&&r.ops.pop();r.trys.pop();continue}e=t.call(n,r)}catch(o){e=[6,o];u=0}finally{f=i=0}if(e[0]&5)throw e[1];return{value:e[0]?e[1]:void 0,done:!0}}var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},f,u,i,e;return e={next:o(0),"throw":o(1),"return":o(2)},typeof Symbol=="function"&&(e[Symbol.iterator]=function(){return this}),e};Object.defineProperty(exports,"__esModule",{value:!0});exports.FetchData=void 0;var vue_1=require("vue"),vue_property_decorator_1=require("vue-property-decorator"),shared_1=require("../shared"),dtos_1=require("../shared/dtos"),FetchData=function(n){function t(){var t=n!==null&&n.apply(this,arguments)||this;return t.forecasts=null,t.id="",t.beforeDate="",t.afterDate="",t.belowTemp="",t.aboveTemp="",t}return __extends(t,n),t.prototype.mounted=function(){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(n){switch(n.label){case 0:return[4,this.reset()];case 1:return n.sent(),[2]}})})},t.prototype.reset=function(){return __awaiter(this,void 0,void 0,function(){var n;return __generator(this,function(t){switch(t.label){case 0:return n=this,[4,shared_1.client.get(new dtos_1.QueryWeatherForecasts)];case 1:return n.forecasts=t.sent().results,this.id="",this.afterDate="2018-05-01",this.beforeDate="2018-05-30",this.aboveTemp="-20",this.belowTemp="20",[2]}})})},t.prototype.filter=function(){return __awaiter(this,void 0,void 0,function(){var n,t;return __generator(this,function(i){switch(i.label){case 0:return n=new dtos_1.QueryWeatherForecasts,this.id&&(n.id=parseInt(this.id)),this.beforeDate&&(n.beforeDate=this.beforeDate),this.afterDate&&(n.afterDate=this.afterDate),this.belowTemp&&(n.belowTemperatureC=parseInt(this.belowTemp)),this.aboveTemp&&(n.aboveTemperatureC=parseInt(this.aboveTemp)),t=this,[4,shared_1.client.get(n)];case 1:return t.forecasts=i.sent().results,[2]}})})},__decorate([vue_property_decorator_1.Component({template:'\n<div>\n <h1>Weather forecast<\/h1>\n \n <p>This component demonstrates fetching data from the server.<\/p>\n \n <p v-if="!forecasts"><em><i class="svg-2x svg-loading"><\/i>Loading...<\/em><\/p>\n \n <div v-else>\n \n <form class="form-inline mb-2" @submit.prevent="">\n <label for="txtId">Filters: <\/label>\n <input class="mx-1" type="number" placeholder="[Id]" v-model="id" @input="filter"> \n <input type="date" v-model="afterDate" @change="filter">\n <input type="date" v-model="beforeDate" @change="filter">\n <input class="mx-1" type="number" placeholder="Above (C)" v-model="aboveTemp" @input="filter">\n <input class="mr-1" type="number" placeholder="Below (C)" v-model="belowTemp" @input="filter"> \n <button class="btn btn-secondary btn-sm" @click="reset">reset<\/button>\n <\/form>\n \n <table class="table">\n <thead>\n <tr>\n <th>Date<\/th>\n <th>Temp. (C)<\/th>\n <th>Temp. (F)<\/th>\n <th>Summary<\/th>\n <\/tr>\n <\/thead>\n <tbody>\n <tr v-for="forecast in forecasts">\n <td>{{ forecast.date | shortDateString }}<\/td>\n <td>{{ forecast.temperatureC }}<\/td>\n <td>{{ forecast.temperatureF }}<\/td>\n <td>{{ forecast.summary }}<\/td>\n <\/tr>\n <\/tbody>\n <\/table>\n <\/div>\n\n<\/div>'})],t)}(vue_1.default);exports.FetchData=FetchData; | |
})(); | |
(function(){ | |
"use strict";var __extends=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=i===null?Object.create(i):(r.prototype=i.prototype,new r)}}(),__decorate=this&&this.__decorate||function(n,t,i,r){var f=arguments.length,u=f<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,i):r,e,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")u=Reflect.decorate(n,t,i,r);else for(o=n.length-1;o>=0;o--)(e=n[o])&&(u=(f<3?e(u):f>3?e(t,i,u):e(t,i))||u);return f>3&&u&&Object.defineProperty(t,i,u),u},__awaiter=this&&this.__awaiter||function(n,t,i,r){function u(n){return n instanceof i?n:new i(function(t){t(n)})}return new(i||(i=Promise))(function(i,f){function o(n){try{e(r.next(n))}catch(t){f(t)}}function s(n){try{e(r["throw"](n))}catch(t){f(t)}}function e(n){n.done?i(n.value):u(n.value).then(o,s)}e((r=r.apply(n,t||[])).next())})},__generator=this&&this.__generator||function(n,t){function o(n){return function(t){return s([n,t])}}function s(e){if(f)throw new TypeError("Generator is already executing.");while(r)try{if(f=1,u&&(i=e[0]&2?u["return"]:e[0]?u["throw"]||((i=u["return"])&&i.call(u),0):u.next)&&!(i=i.call(u,e[1])).done)return i;(u=0,i)&&(e=[e[0]&2,i.value]);switch(e[0]){case 0:case 1:i=e;break;case 4:return r.label++,{value:e[1],done:!1};case 5:r.label++;u=e[1];e=[0];continue;case 7:e=r.ops.pop();r.trys.pop();continue;default:if(!(i=r.trys,i=i.length>0&&i[i.length-1])&&(e[0]===6||e[0]===2)){r=0;continue}if(e[0]===3&&(!i||e[1]>i[0]&&e[1]<i[3])){r.label=e[1];break}if(e[0]===6&&r.label<i[1]){r.label=i[1];i=e;break}if(i&&r.label<i[2]){r.label=i[2];r.ops.push(e);break}i[2]&&r.ops.pop();r.trys.pop();continue}e=t.call(n,r)}catch(o){e=[6,o];u=0}finally{f=i=0}if(e[0]&5)throw e[1];return{value:e[0]?e[1]:void 0,done:!0}}var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},f,u,i,e;return e={next:o(0),"throw":o(1),"return":o(2)},typeof Symbol=="function"&&(e[Symbol.iterator]=function(){return this}),e};Object.defineProperty(exports,"__esModule",{value:!0});exports.Home=void 0;var vue_1=require("vue"),vue_property_decorator_1=require("vue-property-decorator"),dtos_1=require("../shared/dtos"),shared_1=require("../shared"),Home=function(n){function t(){var t=n!==null&&n.apply(this,arguments)||this;return t.txtName="",t.result="",t}return __extends(t,n),t.prototype.onNameChanged=function(n){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(t){switch(t.label){case 0:return[4,this.nameChanged(n)];case 1:return t.sent(),[2]}})})},t.prototype.nameChanged=function(n){return __awaiter(this,void 0,void 0,function(){var t;return __generator(this,function(i){switch(i.label){case 0:return n?[4,shared_1.client.get(new dtos_1.Hello({name:n}))]:[3,2];case 1:return t=i.sent(),this.result=t.result,[3,3];case 2:this.result="";i.label=3;case 3:return[2]}})})},__decorate([vue_property_decorator_1.Watch("txtName")],t.prototype,"onNameChanged",null),__decorate([vue_property_decorator_1.Component({template:'\n<div>\n <h1>Hello, world!<\/h1>\n Welcome to your new app.\n \n <div class="row mt-4 p-0">\n <div class="col col-3">\n <v-input placeholder="Your name" v-model="txtName" />\n <\/div>\n <h3 class="col col-5 result mt-2">{{ result }}<\/h3>\n <\/div>\n<\/div>'})],t)}(vue_1.default);exports.Home=Home; | |
})(); | |
(function(){ | |
"use strict";var __extends=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=i===null?Object.create(i):(r.prototype=i.prototype,new r)}}(),__decorate=this&&this.__decorate||function(n,t,i,r){var f=arguments.length,u=f<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,i):r,e,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")u=Reflect.decorate(n,t,i,r);else for(o=n.length-1;o>=0;o--)(e=n[o])&&(u=(f<3?e(u):f>3?e(t,i,u):e(t,i))||u);return f>3&&u&&Object.defineProperty(t,i,u),u};Object.defineProperty(exports,"__esModule",{value:!0});exports.NavMenu=void 0;var vue_1=require("vue"),vue_property_decorator_1=require("vue-property-decorator"),router_1=require("../shared/router"),NavMenu=function(n){function t(){var t=n!==null&&n.apply(this,arguments)||this;return t.collapseNavMenu=!0,t}return __extends(t,n),Object.defineProperty(t.prototype,"navMenuCssClass",{get:function(){return this.collapseNavMenu?"collapse":null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"routes",{get:function(){return router_1.routes.filter(function(n){return n.hide!==!0})},enumerable:!1,configurable:!0}),t.prototype.btnClass=function(n){return"oi svg-lg "+n},t.prototype.toggleNavMenu=function(){this.collapseNavMenu=!this.collapseNavMenu},__decorate([vue_property_decorator_1.Component({template:'\n<div>\n <div class="top-row ps-4 navbar navbar-dark">\n <v-link tag="a" class="navbar-brand" to="/">My App<\/v-link>\n <button class="navbar-toggler" @click="toggleNavMenu()">\n <span class="navbar-toggler-icon"><\/span>\n <\/button>\n <\/div>\n <div :class="navMenuCssClass" @click="toggleNavMenu()">\n <ul class="nav flex-column">\n <li v-for="route in routes" class="nav-item px-3">\n <v-link class="nav-link" :to="route.path" :exact="route.exact">\n <span :class="btnClass(route.icon)" aria-hidden="true"><\/span> {{route.label}}\n <\/v-link>\n <\/li>\n <\/ul> \n <\/div> \n<\/div>'})],t)}(vue_1.default);exports.NavMenu=NavMenu;vue_1.default.component("nav-menu",NavMenu); | |
})(); | |
(function(){ | |
"use strict";var __extends=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=i===null?Object.create(i):(r.prototype=i.prototype,new r)}}(),ResponseError,ResponseStatus,QueryBase,QueryDb,WeatherForecast,HelloResponse,QueryResponse,Hello,QueryWeatherForecasts;Object.defineProperty(exports,"__esModule",{value:!0});exports.QueryWeatherForecasts=exports.Hello=exports.QueryResponse=exports.HelloResponse=exports.WeatherForecast=exports.QueryDb=exports.QueryBase=exports.ResponseStatus=exports.ResponseError=void 0;ResponseError=function(){function n(n){Object.assign(this,n)}return n}();exports.ResponseError=ResponseError;ResponseStatus=function(){function n(n){Object.assign(this,n)}return n}();exports.ResponseStatus=ResponseStatus;QueryBase=function(){function n(n){Object.assign(this,n)}return n}();exports.QueryBase=QueryBase;QueryDb=function(n){function t(t){var i=n.call(this,t)||this;return Object.assign(i,t),i}return __extends(t,n),t}(QueryBase);exports.QueryDb=QueryDb;WeatherForecast=function(){function n(n){Object.assign(this,n)}return n}();exports.WeatherForecast=WeatherForecast;HelloResponse=function(){function n(n){Object.assign(this,n)}return n}();exports.HelloResponse=HelloResponse;QueryResponse=function(){function n(n){Object.assign(this,n)}return n}();exports.QueryResponse=QueryResponse;Hello=function(){function n(n){Object.assign(this,n)}return n.prototype.createResponse=function(){return new HelloResponse},n.prototype.getTypeName=function(){return"Hello"},n}();exports.Hello=Hello;QueryWeatherForecasts=function(n){function t(t){var i=n.call(this,t)||this;return Object.assign(i,t),i}return __extends(t,n),t.prototype.createResponse=function(){return new QueryResponse},t.prototype.getTypeName=function(){return"QueryWeatherForecasts"},t}(QueryDb);exports.QueryWeatherForecasts=QueryWeatherForecasts; | |
})(); | |
(function(){ | |
"use strict";function log(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return exports.store.debug&&console.log.apply(console,arguments),t}function openUrl(n){return __awaiter(this,void 0,void 0,function(){return __generator(this,function(t){switch(t.label){case 0:return exports.store.desktop?[4,desktop_1.evaluateCode("openUrl('"+n+"')")]:[3,2];case 1:return t.sent(),[3,3];case 2:window.open(n);t.label=3;case 3:return[2]}})})}function exec(n,t){return __awaiter(this,void 0,void 0,function(){var i;return __generator(this,function(r){switch(r.label){case 0:return r.trys.push([0,2,3,4]),n.loading=!0,n.responseStatus=null,[4,t()];case 1:return[2,r.sent()];case 2:return i=r.sent(),log(i),n.responseStatus=i.responseStatus||(typeof i=="string"?{errorCode:"Error",message:i}:null)||i,n.$emit("error",n.responseStatus),[3,4];case 3:return n.loading=!1,[7];case 4:return[2]}})})}var __extends=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=i===null?Object.create(i):(r.prototype=i.prototype,new r)}}(),__awaiter=this&&this.__awaiter||function(n,t,i,r){function u(n){return n instanceof i?n:new i(function(t){t(n)})}return new(i||(i=Promise))(function(i,f){function o(n){try{e(r.next(n))}catch(t){f(t)}}function s(n){try{e(r["throw"](n))}catch(t){f(t)}}function e(n){n.done?i(n.value):u(n.value).then(o,s)}e((r=r.apply(n,t||[])).next())})},__generator=this&&this.__generator||function(n,t){function o(n){return function(t){return s([n,t])}}function s(e){if(f)throw new TypeError("Generator is already executing.");while(r)try{if(f=1,u&&(i=e[0]&2?u["return"]:e[0]?u["throw"]||((i=u["return"])&&i.call(u),0):u.next)&&!(i=i.call(u,e[1])).done)return i;(u=0,i)&&(e=[e[0]&2,i.value]);switch(e[0]){case 0:case 1:i=e;break;case 4:return r.label++,{value:e[1],done:!1};case 5:r.label++;u=e[1];e=[0];continue;case 7:e=r.ops.pop();r.trys.pop();continue;default:if(!(i=r.trys,i=i.length>0&&i[i.length-1])&&(e[0]===6||e[0]===2)){r=0;continue}if(e[0]===3&&(!i||e[1]>i[0]&&e[1]<i[3])){r.label=e[1];break}if(e[0]===6&&r.label<i[1]){r.label=i[1];i=e;break}if(i&&r.label<i[2]){r.label=i[2];r.ops.push(e);break}i[2]&&r.ops.pop();r.trys.pop();continue}e=t.call(n,r)}catch(o){e=[6,o];u=0}finally{f=i=0}if(e[0]&5)throw e[1];return{value:e[0]?e[1]:void 0,done:!0}}var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},f,u,i,e;return e={next:o(0),"throw":o(1),"return":o(2)},typeof Symbol=="function"&&(e[Symbol.iterator]=function(){return this}),e},Roles,EventBus;Object.defineProperty(exports,"__esModule",{value:!0});exports.exec=exports.openUrl=exports.log=exports.bus=exports.store=exports.Roles=exports.client=void 0;var vue_1=require("vue"),client_1=require("@servicestack/client"),desktop_1=require("@servicestack/desktop");exports.client=new client_1.JsonServiceClient("/"),function(n){n.Admin="Admin"}(Roles=exports.Roles||(exports.Roles={}));exports.store={debug:global.CONFIG.debug,desktop:global.CONFIG.desktop};EventBus=function(n){function t(){var t=n!==null&&n.apply(this,arguments)||this;return t.store=exports.store,t}return __extends(t,n),t}(vue_1.default);exports.bus=new EventBus({data:exports.store});exports.log=log;exports.openUrl=openUrl;exports.exec=exec;vue_1.default.filter("shortDateString",function(n){var t=client_1.toDate(n);return t.getDate()+"/"+(t.getMonth()+1)+"/"+t.getFullYear()}),function(){return __awaiter(void 0,void 0,void 0,function(){var n,t;return __generator(this,function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),n=exports.store,[4,desktop_1.desktopInfo()];case 1:return n.desktop=i.sent(),log("In Desktop app:",exports.store.desktop),[3,3];case 2:return t=i.sent(),log("Not in Desktop app:",t),[3,3];case 3:return[2]}})})}(); | |
})(); | |
(function(){ | |
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.redirect=exports.router=exports.routes=exports.Routes=void 0;var vue_1=require("vue"),vue_router_1=require("vue-router"),vue_2=require("@servicestack/vue"),Home_1=require("../components/Home"),Counter_1=require("../components/Counter"),FetchData_1=require("../components/FetchData"),Routes;(function(n){n.Home="/";n.Counter="/counter";n.FetchData="/fetchdata";n.Forbidden="/forbidden"})(Routes=exports.Routes||(exports.Routes={}));vue_1.default.use(vue_router_1.default);exports.routes=[{path:Routes.Home,component:Home_1.Home,label:"Home",icon:"home-nav",exact:!0},{path:Routes.Counter,component:Counter_1.Counter,label:"Counter",icon:"add-nav"},{path:Routes.FetchData,component:FetchData_1.FetchData,label:"Fetch data",icon:"loop-nav"},{path:Routes.Forbidden,component:vue_2.Forbidden,hide:!0},{path:"*",redirect:"/",hide:!0},];exports.router=new vue_router_1.default({mode:"history",linkActiveClass:"active",routes:exports.routes});exports.default=exports.router;exports.redirect=function(n){var t=n.indexOf("://")>=0;t?location.href=n:exports.router.push({path:n})}; | |
})(); | |
(function(){ | |
"use strict";var __extends=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=i===null?Object.create(i):(r.prototype=i.prototype,new r)}}(),__decorate=this&&this.__decorate||function(n,t,i,r){var f=arguments.length,u=f<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,i):r,e,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")u=Reflect.decorate(n,t,i,r);else for(o=n.length-1;o>=0;o--)(e=n[o])&&(u=(f<3?e(u):f>3?e(t,i,u):e(t,i))||u);return f>3&&u&&Object.defineProperty(t,i,u),u},__awaiter=this&&this.__awaiter||function(n,t,i,r){function u(n){return n instanceof i?n:new i(function(t){t(n)})}return new(i||(i=Promise))(function(i,f){function o(n){try{e(r.next(n))}catch(t){f(t)}}function s(n){try{e(r["throw"](n))}catch(t){f(t)}}function e(n){n.done?i(n.value):u(n.value).then(o,s)}e((r=r.apply(n,t||[])).next())})},__generator=this&&this.__generator||function(n,t){function o(n){return function(t){return s([n,t])}}function s(e){if(f)throw new TypeError("Generator is already executing.");while(r)try{if(f=1,u&&(i=e[0]&2?u["return"]:e[0]?u["throw"]||((i=u["return"])&&i.call(u),0):u.next)&&!(i=i.call(u,e[1])).done)return i;(u=0,i)&&(e=[e[0]&2,i.value]);switch(e[0]){case 0:case 1:i=e;break;case 4:return r.label++,{value:e[1],done:!1};case 5:r.label++;u=e[1];e=[0];continue;case 7:e=r.ops.pop();r.trys.pop();continue;default:if(!(i=r.trys,i=i.length>0&&i[i.length-1])&&(e[0]===6||e[0]===2)){r=0;continue}if(e[0]===3&&(!i||e[1]>i[0]&&e[1]<i[3])){r.label=e[1];break}if(e[0]===6&&r.label<i[1]){r.label=i[1];i=e;break}if(i&&r.label<i[2]){r.label=i[2];r.ops.push(e);break}i[2]&&r.ops.pop();r.trys.pop();continue}e=t.call(n,r)}catch(o){e=[6,o];u=0}finally{f=i=0}if(e[0]&5)throw e[1];return{value:e[0]?e[1]:void 0,done:!0}}var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},f,u,i,e;return e={next:o(0),"throw":o(1),"return":o(2)},typeof Symbol=="function"&&(e[Symbol.iterator]=function(){return this}),e};Object.defineProperty(exports,"__esModule",{value:!0});exports.App=void 0;var vue_1=require("vue"),vue_property_decorator_1=require("vue-property-decorator"),desktop_1=require("@servicestack/desktop"),shared_1=require("./shared"),App=function(n){function t(){var t=n!==null&&n.apply(this,arguments)||this;return t.bgColor="",t}return __extends(t,n),Object.defineProperty(t.prototype,"store",{get:function(){return shared_1.store},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"sidebarStyle",{get:function(){return this.bgColor?"background:"+this.bgColor:""},enumerable:!1,configurable:!0}),t.prototype.doColor=function(){return __awaiter(this,void 0,void 0,function(){var t,n;return __generator(this,function(i){switch(i.label){case 0:return(t=this,!this.bgColor)?[3,2]:[4,desktop_1.evaluateCode("chooseColor("+desktop_1.quote(this.bgColor)+")")];case 1:return n=i.sent(),[3,4];case 2:return[4,desktop_1.evaluateCode("chooseColor()")];case 3:n=i.sent();i.label=4;case 4:return t.bgColor=n,[2]}})})},__decorate([vue_property_decorator_1.Component({template:'\n<div id="app">\n <div class="sidebar" :style="sidebarStyle">\n <nav-menu />\n \n <div v-if="store.desktop" class="ms-5 mt-5">\n <button class="btn btn-outline-light" @click="doColor()">Choose Color<\/button>\n <\/div>\n <\/div>\n \n <div class="main">\n <div class="top-row px-4">\n <a href="https://sharpscript.net/sharp-apps/" target="_blank" class="ms-md-auto">About<\/a>\n <\/div>\n \n <div class="content px-4">\n <router-view><\/router-view>\n <\/div>\n <\/div>\n<\/div>'})],t)}(vue_1.default);exports.App=App;exports.default=App; | |
})(); | |
(function(){ | |
"use strict";var app;Object.defineProperty(exports,"__esModule",{value:!0});require("./app.scss");require("es6-shim");var vue_1=require("vue"),vue_2=require("@servicestack/vue"),router_1=require("./shared/router"),App_1=require("./App");vue_1.default.use(vue_2.default);app=new vue_1.default({el:"#app",render:function(n){return n(App_1.App)},router:router_1.router}); | |
})(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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TUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MTwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPHRpZmY6Q29tcHJlc3Npb24+NTwvdGlmZjpDb21wcmVzc2lvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzI8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+NDI8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjMyPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgICAgPGRjOnN1YmplY3Q+CiAgICAgICAgICAgIDxyZGY6QmFnLz4KICAgICAgICAgPC9kYzpzdWJqZWN0PgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxMy0xMS0xNlQwODoxMToyMzwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+UGl4ZWxtYXRvciAyLjIuMTwveG1wOkNyZWF0b3JUb29sPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4Kpcq+GAAAAsFJREFUWAnVl19oj1EYx2f+lxmFpESZ0hrFhfwp2YU/F6zWSq3kwg3SolyQcqGE4krkguTSlUVJwi1Js7mQi9ViYvOn2VjNzPD52u+t0+l3znvO3td+vz312fu+53me83z3/jnn+VVUTBKbGqGzkthdMA964A9MmMUIlbBZcB+aoBo+wlcoSzuJKokWEnkTNkPZmR79G0jE6vgL7sJWKCs7jRpTaHIuwbdgdbmorUXIECQC7eMAPv0zVVBS0wrwBGyB9nUbMVtKqpTi5wKESrjuvD7AaVASa6SqfQd9163ELyqF0jqKjkaKfUn8hH9o8ynaHilUd/w95P7eTmFSCXKZ1tQW6ALfY7d9fcTvgNxMQpvhAZyADaBt1LaFDJyBAbBFua77id0OuZmWIi3iKvgbXsFF2AR2r7CGMfUCLnH2+BdiN0JutoSZesEsJNFP4RAsgMQk/gh8AzPedf6WuBrIzc4yk6/YKfyLjWrrOddX7soxx58RV23kZjpdS/ZPMAvY5+/wH4M5INO7exvsuGLXN4jTN5HZ9BF1QrEi9tgL4nYWKmpHuhyYt7+Qk/nwMLCghKuTugRJY3I+IPczMSshs4U+RvMOP6eqVgPZBTB9xc7vEKOVJpPdI7vY5Gljn8jbXah8PWCOPYXYcR207HQEFHGJ/kHuPtA8j1PmeY0/eWU4jbPlhH8Hl5CQ8RHy94K6KK0Qvpyj+MdlB8jyTRzqG2aebaDt09d9deFXLxFlM4nWkhMqJi1OW6d2o6spcx7EH2XaEtOKx/r1U2YFfPDM3YZvBgSZfrPHdEUxgtWRtYArR/1EPaSaRKrRdU2UdVytnrqwTk+Na/icNh3PYdBEWcWk5V+hxnFPnW58c+GfaSeYDXrB1bZ1QFqBvPxqdBpg0FOzIelWpHgZrAL1nrKkUxq7+n9/tQE8gnWw1FGm/S9DpCdmD6gwqwAAAABJRU5ErkJggg== |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{{#raw}} | |
<div id="app"> | |
<div class="container"> | |
<div class="row p-4"> | |
<div id="content"> | |
<router-view></router-view> | |
</div> | |
</div> | |
</div> | |
</div> | |
{{/raw}} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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bnQzMgBGdW5jYDIAX19TdGF0aWNBcnJheUluaXRUeXBlU2l6ZT02NAAzNEM2OUZBM0NBNTA3OURDRDMxMjAxNjU5MDEwNTEwQkIyQUM2NjRBQzUyOUMwNkIxMEYxMjgzMDVCODA1Nzk3ADw+OQA8TW9kdWxlPgA8UHJpdmF0ZUltcGxlbWVudGF0aW9uRGV0YWlscz4AZ2V0X1RlbXBlcmF0dXJlQwBzZXRfVGVtcGVyYXR1cmVDAGdldF9BYm92ZVRlbXBlcmF0dXJlQwBzZXRfQWJvdmVUZW1wZXJhdHVyZUMAZ2V0X0JlbG93VGVtcGVyYXR1cmVDAHNldF9CZWxvd1RlbXBlcmF0dXJlQwBnZXRfVGVtcGVyYXR1cmVGAFNlcnZpY2VTdGFjay5JTwBTZXJ2aWNlU3RhY2suRGF0YQBTeXN0ZW0uRGF0YQBTZWVkRGF0YQBsQ3VzdERhdGEAPD5jAGNjAFN5c3RlbS5Db2xsZWN0aW9ucy5HZW5lcmljAERiU2NyaXB0c0FzeW5jAENDSG9va1Byb2MAZ2V0X0lkAHNldF9JZABBZGQAPFRlbXBlcmF0dXJlQz5rX19CYWNraW5nRmllbGQAPEFib3ZlVGVtcGVyYXR1cmVDPmtfX0JhY2tpbmdGaWVsZAA8QmVsb3dUZW1wZXJhdHVyZUM+a19fQmFja2luZ0ZpZWxkADxJZD5rX19CYWNraW5nRmllbGQAPE5hbWU+a19fQmFja2luZ0ZpZWxkADxEYXRlPmtfX0JhY2tpbmdGaWVsZAA8QmVmb3JlRGF0ZT5rX19CYWNraW5nRmllbGQAPEFmdGVyRGF0ZT5rX19CYWNraW5nRmllbGQAPFJlc3BvbnNlU3RhdHVzPmtfX0JhY2tpbmdGaWVsZAA8UmVzdWx0PmtfX0JhY2tpbmdGaWVsZAA8U3VtbWFyeT5rX19CYWNraW5nRmllbGQAQnVpbGQAaFduZABtZXRob2QATXlBcHAuU2VydmljZUludGVyZmFjZQBTZXJ2aWNlAGhJbnN0YW5jZQBnZXRfRGVidWdNb2RlAHNldF9EZWJ1Z01vZGUARW5kSW52b2tlAEJlZ2luSW52b2tlAElEaXNwb3NhYmxlAFJ1bnRpbWVGaWVsZEhhbmRsZQBSdW50aW1lVHlwZUhhbmRsZQBFbmFibGVUZW1wbGF0ZUhhbmRsZQBHZXRUeXBlRnJvbUhhbmRsZQBzZXRfQWNjZXNzUm9sZQBnZXRfTmFtZQBzZXRfTmFtZQBscFRlbXBsYXRlTmFtZQBzZXRfQXBwTmFtZQBEYXRlVGltZQBTeXN0ZW0uUnVudGltZQBzY29wZQBWYWx1ZVR5cGUATWljcm9zb2Z0LkFzcE5ldENvcmUAQ29uZmlndXJlAEhvdFJlbG9hZEZlYXR1cmUARGVza3RvcEZlYXR1cmUAU2hhcnBQYWdlc0ZlYXR1cmUAQXV0b1F1ZXJ5RmVhdHVyZQBBcHBIb3N0QmFzZQBIZWxsb1Jlc3BvbnNlAERpc3Bvc2UAZ2V0X0RhdGUAc2V0X0RhdGUAZ2V0X0JlZm9yZURhdGUAc2V0X0JlZm9yZURhdGUAZ2V0X0FmdGVyRGF0ZQBzZXRfQWZ0ZXJEYXRlAE11bHRpY2FzdERlbGVnYXRlAEVuYWJsZVRlbXBsYXRlAFNlcnZpY2VTdGFjay5Pcm1MaXRlAFNlcnZpY2VTdGFjay5Pcm1MaXRlLlNxbGl0ZQBFbWJlZGRlZEF0dHJpYnV0ZQBDb21waWxlckdlbmVyYXRlZEF0dHJpYnV0ZQBBdHRyaWJ1dGVVc2FnZUF0dHJpYnV0ZQBEZWJ1Z2dhYmxlQXR0cmlidXRlAE51bGxhYmxlQXR0cmlidXRlAEFzc2VtYmx5VGl0bGVBdHRyaWJ1dGUAUm91dGVBdHRyaWJ1dGUAVGFyZ2V0RnJhbWV3b3JrQXR0cmlidXRlAEFzc2VtYmx5RmlsZVZlcnNpb25BdHRyaWJ1dGUAQXNzZW1ibHlJbmZvcm1hdGlvbmFsVmVyc2lvbkF0dHJpYnV0ZQBBc3NlbWJseUNvbmZpZ3VyYXRpb25BdHRyaWJ1dGUASG9zdGluZ1N0YXJ0dXBBdHRyaWJ1dGUAQ29tcGlsYXRpb25SZWxheGF0aW9uc0F0dHJpYnV0ZQBBc3NlbWJseVByb2R1Y3RBdHRyaWJ1dGUAQXV0b0luY3JlbWVudEF0dHJpYnV0ZQBOdWxsYWJsZUNvbnRleHRBdHRyaWJ1dGUAQXNzZW1ibHlDb21wYW55QXR0cmlidXRlAFJ1bnRpbWVDb21wYXRpYmlsaXR5QXR0cmlidXRlAEJ5dGUAdmFsdWUAUmVzb2x2ZQBsU3RydWN0U2l6ZQBTaXplT2YARmxhZwBnZXRfQ29uZmlnAFNldENvbmZpZwBIb3N0Q29uZmlnAFN5c3RlbS5SdW50aW1lLlZlcnNpb25pbmcAU3RyaW5nAE1pY3Jvc29mdC5Bc3BOZXRDb3JlLkhvc3RpbmcATWljcm9zb2Z0LkV4dGVuc2lvbnMuSG9zdGluZwBTeXN0ZW0uRHJhd2luZwBtc2cAT3JtTGl0ZVNjaGVtYUFwaQBPcm1MaXRlV3JpdGVBcGkAQXN5bmNDYWxsYmFjawBzZXRfRW5hYmxlU3BhRmFsbGJhY2sAY2FsbGJhY2sAVXNlU2VydmljZVN0YWNrAEVuYWJsZUhvb2sAbHBmbkhvb2sATWFyc2hhbABNeUFwcC5TZXJ2aWNlTW9kZWwAQ29tRGxnMzIuZGxsAE15QXBwLmRsbABGcm9tSHRtbABUb0h0bWwAbFBhcmFtAHdQYXJhbQBQcm9ncmFtAEFsbG9jQ29UYXNrTWVtAEZyZWVDb1Rhc2tNZW0AU3lzdGVtAFByZXZlbnRGdWxsT3BlbgBJUGx1Z2luAFdlYkFwcGxpY2F0aW9uAFNlcnZpY2VTdGFjay5Db25maWd1cmF0aW9uAE1pY3Jvc29mdC5FeHRlbnNpb25zLkRlcGVuZGVuY3lJbmplY3Rpb24AU3lzdGVtLlJlZmxlY3Rpb24ASVNlcnZpY2VDb2xsZWN0aW9uAElEYkNvbm5lY3Rpb24AVXNlSHR0cHNSZWRpcmVjdGlvbgBTeXN0ZW0uRGF0YS5Db21tb24AU2VydmljZVN0YWNrLkNvbW1vbgBJUmV0dXJuAFJ1bgBIZWxsbwBTaG93SGVscABTZXJ2aWNlU3RhY2suRGVza3RvcABNeUFwcABJSG9zdGluZ1N0YXJ0dXAARnVucQBnZXRfUHJvdmlkZXIASVZpcnR1YWxQYXRoUHJvdmlkZXIASU9ybUxpdGVEaWFsZWN0UHJvdmlkZXIATWljcm9zb2Z0LkFzcE5ldENvcmUuQnVpbGRlcgBDcmVhdGVCdWlsZGVyAElBcHBsaWNhdGlvbkJ1aWxkZXIAV2ViQXBwbGljYXRpb25CdWlsZGVyAElXZWJIb3N0QnVpbGRlcgBidWlsZGVyAFVzZUV4Y2VwdGlvbkhhbmRsZXIAQ29udGFpbmVyAGNvbnRhaW5lcgBod25kT3duZXIAUmVnaXN0ZXIAU2VydmljZVN0YWNrLlNlcnZlcgBTb2xpZENvbG9yAENob29zZUNvbG9yAGNob29zZUNvbG9yAGRlZmF1bHRDb2xvcgBBbnlDb2xvcgBDb21tRGxnRXh0ZW5kZWRFcnJvcgBDb2xvclRyYW5zbGF0b3IALmN0b3IALmNjdG9yAE1pY3Jvc29mdC5Bc3BOZXRDb3JlLkRpYWdub3N0aWNzAFN5c3RlbS5EaWFnbm9zdGljcwBDdXN0b21NZXRob2RzAGdldF9TY3JpcHRNZXRob2RzAFNlcnZpY2VTdGFjay5JbnRlcmZhY2VzAENvbmZpZ3VyZVNlcnZpY2VzAFN5c3RlbS5SdW50aW1lLkludGVyb3BTZXJ2aWNlcwBTeXN0ZW0uUnVudGltZS5Db21waWxlclNlcnZpY2VzAE15U2VydmljZXMAc2VydmljZXMARGVidWdnaW5nTW9kZXMASVZpcnR1YWxGaWxlcwBnZXRfVmlydHVhbEZpbGVzAHNldF9WaXJ0dWFsRmlsZXMAU3lzdGVtLkRyYXdpbmcuUHJpbWl0aXZlcwBOdWxsYWJsZUZsYWdzAENob29zZUNvbG9yRmxhZ3MASUFwcFNldHRpbmdzAGdldF9BcHBTZXR0aW5ncwBhcmdzADw+NF9fdGhpcwBNaWNyb3NvZnQuQ29kZUFuYWx5c2lzAERlc2t0b3BVdGlscwBnZXRfUGx1Z2lucwBIc3RzQnVpbGRlckV4dGVuc2lvbnMASHR0cHNQb2xpY3lCdWlsZGVyRXh0ZW5zaW9ucwBFeGNlcHRpb25IYW5kbGVyRXh0ZW5zaW9ucwBOZXRDb3JlQXBwSG9zdEV4dGVuc2lvbnMASG9zdEVudmlyb25tZW50RW52RXh0ZW5zaW9ucwBPcm1MaXRlQ29ubmVjdGlvbkZhY3RvcnlFeHRlbnNpb25zAFNlcnZpY2VTdGFjay5EYXRhQW5ub3RhdGlvbnMATWljcm9zb2Z0LkFzcE5ldENvcmUuSG9zdGluZy5BYnN0cmFjdGlvbnMATWljcm9zb2Z0LkV4dGVuc2lvbnMuSG9zdGluZy5BYnN0cmFjdGlvbnMATWljcm9zb2Z0LkV4dGVuc2lvbnMuRGVwZW5kZW5jeUluamVjdGlvbi5BYnN0cmFjdGlvbnMATWljcm9zb2Z0LkFzcE5ldENvcmUuSHR0cC5BYnN0cmFjdGlvbnMAU3lzdGVtLkNvbGxlY3Rpb25zAFJ1bnRpbWVIZWxwZXJzAGN1c3RvbUNvbG9ycwBscEN1c3RDb2xvcnMAQXR0cmlidXRlVGFyZ2V0cwBVc2VIc3RzAFF1ZXJ5V2VhdGhlckZvcmVjYXN0cwBDcmVhdGVUYWJsZUlmTm90RXhpc3RzAGdldF9SZXNwb25zZVN0YXR1cwBzZXRfUmVzcG9uc2VTdGF0dXMAQ29uY2F0AE9iamVjdABvYmplY3QAU3FsaXRlRGlhbGVjdABHZXQAc2V0X01heExpbWl0AFJnYkluaXQAZ2V0X1Jlc3VsdABzZXRfUmVzdWx0AHJnYlJlc3VsdABJQXN5bmNSZXN1bHQAcmVzdWx0AGdldF9FbnZpcm9ubWVudABnZXRfSG9zdGluZ0Vudmlyb25tZW50AElIb3N0RW52aXJvbm1lbnQASVdlYkhvc3RFbnZpcm9ubWVudABJc0RldmVsb3BtZW50AFNlcnZpY2VTdGFjay5TY3JpcHQASW5zZXJ0AFdlYXRoZXJGb3JlY2FzdAByZXF1ZXN0AFNlcnZpY2VTdGFja0hvc3QAQXBwSG9zdABTY3JpcHRTY29wZUNvbnRleHQAU2NyaXB0Q29udGV4dABEb1dpbmRvdwBJbml0aWFsaXplQXJyYXkATWljcm9zb2Z0LkFzcE5ldENvcmUuSHR0cHNQb2xpY3kAZ2V0X0Fzc2VtYmx5AEFueQBDb3B5AGdldF9TdW1tYXJ5AHNldF9TdW1tYXJ5AGRiRmFjdG9yeQBJRGJDb25uZWN0aW9uRmFjdG9yeQBPcm1MaXRlQ29ubmVjdGlvbkZhY3RvcnkAAA0vAEUAcgByAG8AcgAAC00AeQBBAHAAcAAAE0QAZQBiAHUAZwBNAG8AZABlAAANbQB5AC0AYQBwAHAAARNBAGwAbABvAHcAQQBuAG8AbgAAEUYAcgBlAGUAegBpAG4AZwAAD0IAcgBhAGMAaQBuAGcAAAtCAGEAbABtAHkAAA1DAGgAaQBsAGwAeQAADyMAZgBmAGYAZgBmAGYAAA9IAGUAbABsAG8ALAAgAAADIQAAEToAbQBlAG0AbwByAHkAOgAAADmsX254NEpBqbUQtUDkRgEABCABAQgDIAABBSABARER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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment