var __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},__extends,TIPS;(function(n){var t;(function(t){var i=function(){function t(t){var i=this;if(this._jsonDataUrl=t,this._cachedSidebarState=null,this.WriteSidebarStateToStorage=n.Utilities.Debounce(function(t){if(!t)throw new Error("State is null");n.Utilities.SetCacheParameter(i.SidebarStateStorageKey,JSON.stringify(t))},200,!1),this._stateChangedListeners=[],this._filterChangedListeners=[],this._travelTimePathsChangedListeners=[],this._overlaysChangedListeners=[],this.OnFilterChanged=n.Utilities.Debounce(function(){var n=i.GetFilterLambda();i._filterChangedListeners.forEach(function(t){return t(n)});i._travelTimePathsChangedListeners.forEach(function(n){return n(i.GetTravelTimePathsEnabled())})},250,!1),!this._jsonDataUrl||this._jsonDataUrl.length===0)throw new Error("Json data url is null/invalid");}return t.prototype.GetJsonDataUrl=function(){return this._jsonDataUrl},t.prototype.GetSidebarState=function(){var i=n.Utilities.GetUrlParameter("lat"),t,r;if(!i&&this._cachedSidebarState)return this._cachedSidebarState;if(t=n.Utilities.GetUrlParameter("sidebarState"),t)try{return r=atob(t),this._cachedSidebarState=JSON.parse(r)}catch(f){console.warn("Could not parse url-param sidebar state")}else if(i)return this.DefaultSidebarState;if(t=n.Utilities.GetCacheParameter(this.SidebarStateStorageKey),!t)return this._cachedSidebarState=this.DefaultSidebarState;try{return this._cachedSidebarState=JSON.parse(t)}catch(u){return console.warn("Could not parse cached sidebar state: "+u),this._cachedSidebarState=this.DefaultSidebarState}},t.prototype.GetSidebarStateBase64=function(){return btoa(JSON.stringify(this.ForceComputeSidebarState()))},t.prototype.OnSidebarStateChanged=function(){this._cachedSidebarState=this.ForceComputeSidebarState();this.WriteSidebarStateToStorage(this._cachedSidebarState);this._stateChangedListeners.forEach(function(n){return n()})},t.prototype.AddStateChangedListener=function(n){if(!n)throw new Error("Listener is null");return this._stateChangedListeners.push(n),this},t.prototype.PopulateSidebar=function(n,t){return __awaiter(this,void 0,void 0,function(){var i,r;return __generator(this,function(u){switch(u.label){case 0:return i=this.GetSidebarState(),[4,this.PopulateSidebarInternal(n,t,i)];case 1:return r=u.sent(),r.AddStateChangedListener(this.OnSidebarStateChanged.bind(this)),[2]}})})},t.prototype.AddFilterChangedListener=function(n){if(!n)throw new Error("Listener is null");return this._filterChangedListeners.push(n),this},t.prototype.AddTravelTimePathsChangedListener=function(n){if(!n)throw new Error("Listener is null");return this._travelTimePathsChangedListeners.push(n),this},t.prototype.AddOverlaysChangedListener=function(n){if(!n)throw new Error("Listener is null");return this._overlaysChangedListeners.push(n),this},t.prototype.OnOverlaysChanged=function(){this._overlaysChangedListeners.forEach(function(n){return n()})},t}();t.OptionsConfigurationBase=i})(t=n.Configurations||(n.Configurations={}))})(TIPS||(TIPS={}));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},TIPS;(function(n){var t;(function(t){var i=function(i){function r(n,r,u,f,e){var o=i.call(this,n)||this;if(o._localizationManager=r,o._spriteService=u,o._map=f,o._tableDisplayLogic=e,o._googleTrafficBtn=null,o._timeSelector=null,!r)throw new Error("Localization manager is null");if(!u)throw new Error("Sprite service is null");if(!f)throw new Error("Map is null");return o._embedController=new t.EmbedControllerCapitalProjects(f,o),o}return __extends(r,i),r.prototype.GetClusterer=function(){return new t.M511Clusterer},r.prototype.GetEmbedController=function(){return this._embedController},r.prototype.GetTravelTimePathsEnabled=function(){return!1},Object.defineProperty(r.prototype,"DefaultSidebarState",{get:function(){return{ActiveIssuesEnabled:!0,FutureIssuesEnabled:!1,EndedIssuesEnabled:!1,GoogleTrafficEnabled:!1}},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"SidebarStateStorageKey",{get:function(){return"sidebar_state_capitalprojects_v1"},enumerable:!0,configurable:!0}),r.prototype.ForceComputeSidebarState=function(){var n,t;return{ActiveIssuesEnabled:(n=this._timeSelector.IsActiveEnabled)!==null&&n!==void 0?n:!0,FutureIssuesEnabled:this._timeSelector.IsFutureEnabled,EndedIssuesEnabled:this._timeSelector.IsEndedEnabled,GoogleTrafficEnabled:((t=this._googleTrafficBtn)===null||t===void 0?void 0:t.IsEnabled)||!1}},r.prototype.PopulateSidebarInternal=function(t,i,r){return __awaiter(this,void 0,void 0,function(){var f,u,h,c,s,l,a,e,v,y,p,w,o,b,k=this;return __generator(this,function(){if(!t||t.length===0)throw new Error("Sidebar is not defined");t.empty();f=new n.Framework.Sidebar.SidebarBody;u={};i.Entities.forEach(function(t){var i=n.Utilities.EntityTypeToDisplayString(t.EntityType);u.hasOwnProperty(t.IconClass)?u[t.IconClass].some(function(n){return n===i})||u[t.IconClass].push(i):u[t.IconClass]=[i]});i.Issues.forEach(function(n){var t=n.TableViewInfo.IconClass,i=k._localizationManager.GetEntitySubTypeNameById(n.TableViewInfo.IssueTypeId);u.hasOwnProperty(t)?u[t].some(function(n){return n===i})||u[t].push(i):u[t]=[i];n.Geometry.forEach(function(n){if(n.MarkerInfo.LocationTypeId&&n.MarkerInfo.LocationTypeId.split("|")[1]!=="1"){var i=k._localizationManager.GetLocationTypeNameById(n.MarkerInfo.LocationTypeId),t=n.MarkerInfo.IconClass;u.hasOwnProperty(t)||(u[t]=[]);u[t].some(function(n){return n===i})||u[t].push(i)}})});h=[];c={};for(s in u){if(!u.hasOwnProperty(s))return[2];h.push({iconClass:s,labels:u[s]})}return f.Append(new n.Framework.Sidebar.SidebarWhitespace(25)),f.Append(new n.Framework.Sidebar.SidebarHeading(n.Framework.Settings.Resources.TextView)),f.Append(new n.Framework.Sidebar.SidebarLanguageSelector),f.Append(new n.Framework.Sidebar.SidebarWhitespace(16)),l=new n.Framework.Sidebar.SidebarSwitchViewButton(this._tableDisplayLogic,this._map),f.Append(l),f.Append(new n.Framework.Sidebar.SidebarHorizontalLine),f.Append(new n.Framework.Sidebar.SidebarHeading(n.Framework.Settings.Resources.TextContentHeading)),this._timeSelector=new n.Framework.Sidebar.SidebarCapitalProjectsTimeSelector(r.ActiveIssuesEnabled,r.FutureIssuesEnabled,r.EndedIssuesEnabled,n.Framework.Settings.Resources.TextActiveProjects,n.Framework.Settings.Resources.TextFutureProjects,n.Framework.Settings.Resources.TextEndedProjects),this._timeSelector.AddStateChangedListener(this.OnFilterChanged.bind(this)),f.Append(this._timeSelector),f.Append(new n.Framework.Sidebar.SidebarWhitespace(30)),f.Append(new n.Framework.Sidebar.SidebarHorizontalLine),f.Append(new n.Framework.Sidebar.SidebarHeading(n.Framework.Settings.Resources.TextOtherContentAvailable)),a=new n.Framework.Sidebar.SidebarFooterLinkButton(n.Framework.Settings.Resources.TextOtherContent,"https://www.municipal511.ca/"),f.Append(a),f.Append(new n.Framework.Sidebar.SidebarWhitespace(25)),e=[],e.push(new n.Framework.Sidebar.SidebarHorizontalLine(1)),e.push(new n.Framework.Sidebar.SidebarWhitespace(15)),v=new n.Framework.Sidebar.SidebarM511ShowLegendModalButton,n.Framework.Sidebar.SidebarM511ShowLegendModalButton.UpdateLegendContent(h,c,this._spriteService),e.push(v),y=new n.Framework.Sidebar.SidebarEmbedTriggerButton,e.push(y),n.Framework.Settings.InjectedSettings.hasTou&&(p=new n.Framework.Sidebar.SidebarTouTriggerButton,e.push(p)),n.Framework.Settings.InjectedSettings.hasPrivacyStatement&&(w=new n.Framework.Sidebar.SidebarPrivacyStatementTriggerButton,e.push(w)),o=new n.Framework.Sidebar.SidebarRoot(t),b=new n.Framework.Sidebar.SidebarFooter(e),o.Append(f),o.Append(b),o.OnAppended(),this.OnFilterChanged(),[2,o]})})},r.prototype.GetFilterLambda=function(){var r=function(){return!0},t,i;return this._timeSelector.IsFutureEnabled||(r=function(t){return t.kind!=="IIssue"||t.CapitalProjectsStatus!=n.Framework.Data.CapitalProjectsStatus.Future}),t=function(){return!0},this._timeSelector.IsActiveEnabled||(t=function(t){return t.kind!=="IIssue"||t.CapitalProjectsStatus!=n.Framework.Data.CapitalProjectsStatus.Active}),i=function(){return!0},this._timeSelector.IsEndedEnabled||(i=function(t){return t.kind!=="IIssue"||t.CapitalProjectsStatus!=n.Framework.Data.CapitalProjectsStatus.Ended}),function(n){return r(n)&&t(n)&&i(n)}},r}(t.OptionsConfigurationBase);t.CapitalProjectsConfiguration=i})(t=n.Configurations||(n.Configurations={}))})(TIPS||(TIPS={})),function(n){var t;(function(t){var i=function(){function t(n){this._stops=n;this._cache={};n.sort(function(n,t){return n[0]-t[0]})}return t.prototype.GetClusterWidthMetres=function(n){for(var t=0;t<this._stops.length;t++)if(n<=this._stops[t][0])return this._stops[t][1];return this._stops[this._stops.length-1][1]},t.prototype.ClearCache=function(){this._cache={}},t.prototype.Cluster=function(t,i){if(console.log(i),this._cache[i])return this._cache[i];var r=this.GetClusterWidthMetres(i),u=6371e3,e=Math.ceil(Math.PI*u/r),o=Math.ceil(2*Math.PI*u/r),f=n.Framework.DisplayLogic.Map.MapDisplayLogic.Cluster(t,o,e);return this._cache[i]=f,f},t}();t.DurhamClusterer=i})(t=n.Configurations||(n.Configurations={}))}(TIPS||(TIPS={}));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},TIPS;(function(n){var t;(function(t){var i=function(i){function r(r,u,f,e,o){var s=i.call(this,r)||this;if(s._localizationManager=u,s._spriteService=f,s._map=e,s._tableDisplayLogic=o,s._spriteList=null,s._spriteBtns=[],s._entityBtns=[],s._sourceList=null,s._sourceBtns=[],s._timeSelector=null,s._travelTimeBtn=null,s._overlaysSection=null,s._googleTrafficBtn=null,s.EnableNewSprites=n.Utilities.GetUrlParameter("enableNewSprites")!=="false",s.EnableNewDivisions=n.Utilities.GetUrlParameter("enableNewDivisions")!=="false",!u)throw new Error("Localization manager is null");if(!f)throw new Error("Sprite service is null");if(!e)throw new Error("Map is null");return s._embedController=new t.EmbedControllerDurham(e,s),s}return __extends(r,i),r.prototype.GetClusterer=function(){return new t.DurhamClusterer(n.Framework.Settings.InjectedSettings.zoomStops)},r.prototype.GetEmbedController=function(){return this._embedController},r.prototype.GetTravelTimePathsEnabled=function(){return this._travelTimeBtn?this._travelTimeBtn.IsEnabled:!0},Object.defineProperty(r.prototype,"SidebarStateStorageKey",{get:function(){return"sidebar_state_durham_v5"},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"DefaultSidebarState",{get:function(){return{ActiveIssuesEnabled:!0,FutureIssuesEnabled:!0,DisabledSprites:[],EnabledSprites:[],GoogleTrafficEnabled:!1,LegendCollapsed:!1,PlannedSectionCollapsed:!1,DisabledEntityTypes:[],EnabledEntityTypes:[],TravelTimeEnabled:!1,DisabledSources:[],EnabledSources:[]}},enumerable:!0,configurable:!0}),r.prototype.ForceComputeSidebarState=function(){return{ActiveIssuesEnabled:this._timeSelector.IsActiveEnabled,FutureIssuesEnabled:this._timeSelector.IsFutureEnabled,EnabledSprites:this._spriteBtns.filter(function(n){return n.IsEnabled}).map(function(n){return n.Id}),DisabledSprites:this._spriteBtns.filter(function(n){return!n.IsEnabled}).map(function(n){return n.Id}),GoogleTrafficEnabled:this._googleTrafficBtn.IsEnabled,LegendCollapsed:!1,PlannedSectionCollapsed:!1,EnabledEntityTypes:this._entityBtns.filter(function(n){return n.IsEnabled}).map(function(n){return n.Id}),DisabledEntityTypes:this._entityBtns.filter(function(n){return!n.IsEnabled}).map(function(n){return n.Id}),TravelTimeEnabled:this._travelTimeBtn.IsEnabled,EnabledSources:this._sourceBtns.filter(function(n){return n.IsEnabled}).map(function(n){return n.Id}),DisabledSources:this._sourceBtns.filter(function(n){return!n.IsEnabled}).map(function(n){return n.Id})}},r.prototype.PopulateSidebarInternal=function(t,i,r){var u;return __awaiter(this,void 0,void 0,function(){var f,e,p,h,o,l,k,d,a,w,g,v,s,y,nt,c,b=this;return __generator(this,function(){if(!t||t.length===0)throw new Error("Sidebar is not defined");t.empty();f=new n.Framework.Sidebar.SidebarBody;e={};i.Issues.forEach(function(n){var t=n.TableViewInfo.IconClass,i=b._localizationManager.GetEntitySubTypeNameById(n.TableViewInfo.IssueTypeId);e.hasOwnProperty(t)?e[t].some(function(n){return n===i})||e[t].push(i):e[t]=[i]});p=[];for(s in e)e.hasOwnProperty(s)&&p.push(s);h={};o=[];i.Issues.forEach(function(t){var r=t.Source||n.Framework.Settings.Resources.TextIssueOther,i=t._sourceKey;h.hasOwnProperty(i)||(h[i]=r,o.push({key:i,disp:r}))});i.Entities.forEach(function(t){var r=t.Source||n.Framework.Settings.Resources.TextIssueOther,i=t._sourceKey;h.hasOwnProperty(i)||(h[i]=r,o.push({key:i,disp:r}))});o.sort(function(n,t){return n.disp.localeCompare(t.disp)});((u=n.Framework.Settings.InjectedSettings.sourcePriorityList)===null||u===void 0?void 0:u.length)&&(l=0,k=function(n,t){var i=n.splice(t,1)[0];n.splice(l,0,i);l++},n.Framework.Settings.InjectedSettings.sourcePriorityList.forEach(function(n){var t=o.findIndex(function(t,i){return i<l?!1:t.key===n});t>=0&&k(o,t)}));f.Append(new n.Framework.Sidebar.SidebarWhitespace(25));f.Append(new n.Framework.Sidebar.SidebarHeading(n.Framework.Settings.Resources.TextView));d=new n.Framework.Sidebar.SidebarSwitchViewButton(this._tableDisplayLogic,this._map);f.Append(d);f.Append(new n.Framework.Sidebar.SidebarHorizontalLine);f.Append(new n.Framework.Sidebar.SidebarHeading(n.Framework.Settings.Resources.TextMenuOptions));this._timeSelector=new n.Framework.Sidebar.SidebarTimeSelector(r.ActiveIssuesEnabled,r.FutureIssuesEnabled,n.Framework.Settings.Resources.TextCurrentEvents,n.Framework.Settings.Resources.TextFutureEvents);this._timeSelector.AddStateChangedListener(this.OnFilterChanged.bind(this));f.Append(this._timeSelector);f.Append(new n.Framework.Sidebar.SidebarWhitespace(10));a=[];this._map instanceof n.Common.Map.MapGoogle&&(this._googleTrafficBtn=new n.Framework.Sidebar.SidebarToggleButtonDefault("gtraffic",n.Framework.Settings.Resources.TextGoogleTraffic,null),w=new n.Framework.Overlay.GoogleTrafficOverlay(this._map),this._googleTrafficBtn.AddStateChangedListener(function(){b._googleTrafficBtn.IsEnabled?w.Show():w.Hide()}),r.GoogleTrafficEnabled?this._googleTrafficBtn.Enable():this._googleTrafficBtn.Disable(),a.push(this._googleTrafficBtn));a.length&&(f.Append(new n.Framework.Sidebar.SidebarButtonList(a,{AddMasterToggle:!1})),f.Append(new n.Framework.Sidebar.SidebarHorizontalLine(15)));g=function(t){return t.toLowerCase()==="spriteissueicon"?n.Framework.Settings.Resources.TextIssueOther:e[t].join(" / ")};this._spriteBtns=p.map(function(t){return new n.Framework.Sidebar.SidebarToggleButtonDefault(t,g(t),b._spriteService.GetMapIconForSprite(t))});this.EnableNewSprites?this._spriteBtns.filter(function(n){return r.DisabledSprites.some(function(t){return t===n.Id})}).forEach(function(n){return n.Disable()}):this._spriteBtns.filter(function(n){return!r.EnabledSprites.some(function(t){return t===n.Id})}).forEach(function(n){return n.Disable()});this._entityBtns=[3,2].map(function(t){var r=i.Entities.filter(function(n){return n.EntityType===t})[0].iconInfo;return new n.Framework.Sidebar.SidebarToggleButtonDefault(t.toString(),n.Utilities.EntityTypeToDisplayString(t),r)});this._entityBtns.filter(function(n){return!r.EnabledEntityTypes.some(function(t){return t===n.Id})}).forEach(function(n){return n.Disable()});this._travelTimeBtn=new n.Framework.Sidebar.SidebarToggleButtonDefault("travel-time",n.Framework.Settings.Resources.TextTravelTime,this._spriteService.GetMapIconForSprite("spriteTimeSmallIcon"));this._travelTimeBtn.Disable();r.TravelTimeEnabled?this._travelTimeBtn.Enable():this._travelTimeBtn.Disable();this._travelTimeBtn.AddStateChangedListener(this.OnFilterChanged.bind(this));this._spriteBtns.push(this._travelTimeBtn);this._spriteList=new n.Framework.Sidebar.SidebarButtonList(this._entityBtns.concat(this._spriteBtns),{AddMasterToggle:!0,MasterToggleHeaderText:n.Framework.Settings.Resources.TextMenuMapContent});this._spriteList.AddStateChangedListener(this.OnFilterChanged.bind(this));f.Append(this._spriteList);f.Append(new n.Framework.Sidebar.SidebarHorizontalLine);this._sourceBtns=o.map(function(t){return new n.Framework.Sidebar.SidebarToggleButtonDefault(t.key,t.disp,null)});this._sourceBtns.filter(function(n){return r.DisabledSources.some(function(t){return t===n.Id})}).forEach(function(n){return n.Disable()});this._sourceList=new n.Framework.Sidebar.SidebarButtonList(this._sourceBtns,{AddMasterToggle:!0,MasterToggleHeaderText:n.Framework.Settings.Resources.TextMenuSources});this._sourceList.AddStateChangedListener(this.OnFilterChanged.bind(this));f.Append(this._sourceList);v=[];for(s in e)v.push({iconClass:s,labels:e[s]});return y=[],i.Entities.map(function(n){return{type:n.EntityType,iconClass:n.IconClass}}).forEach(function(n){y.some(function(t){return t.type===n.type})||y.push(n)}),y.forEach(function(t){v.push({iconClass:t.iconClass,labels:[n.Utilities.EntityTypeToDisplayString(t.type)]})}),n.Framework.Sidebar.SidebarDurhamShowLegendModalButton.UpdateLegendContent(v,this._spriteService),nt=new n.Framework.Sidebar.SidebarFooter([new n.Framework.Sidebar.SidebarHorizontalLine(15),new n.Framework.Sidebar.SidebarDurhamShowLegendModalButton,new n.Framework.Sidebar.SidebarTouTriggerButton,new n.Framework.Sidebar.SidebarFooterLinkButton("Contact Us","https://www.durham.ca/en/living-here/traffic-watch-map.aspx#contactMainContainer")]),c=new n.Framework.Sidebar.SidebarRoot(t),c.Append(f),c.Append(nt),c.OnAppended(),this.OnFilterChanged(),[2,c]})})},r.prototype.GetFilterLambda=function(){var e=function(){return!0},t,i,r,n,u,f;this._timeSelector.IsFutureEnabled||(e=function(n){return!n.Planned});t=function(){return!0};i=function(){return!0};this._timeSelector.IsActiveEnabled||(t=function(n){return n.Planned},i=function(){return!1});var o=function(){return!0},s=function(){return!0},h=function(){return!0},c=function(){return!0},v=this._spriteBtns.filter(function(n){return n.IsEnabled}),l=this._spriteBtns.filter(function(n){return!n.IsEnabled}),y=this._sourceBtns.filter(function(n){return n.IsEnabled}),a=this._sourceBtns.filter(function(n){return!n.IsEnabled});return l.length>0&&(r={},l.map(function(n){return n.Id}).forEach(function(n){r[n]=!0}),o=function(n){return!r[n.TableViewInfo.IconClass]}),a.length>0&&(n={},a.map(function(n){return n.Id}).forEach(function(t){return n[t]=!0}),h=function(t){return!n[t._sourceKey]},c=function(t){return!n[t._sourceKey]}),u=this._entityBtns.filter(function(n){return!n.IsEnabled}),u.length>0&&(f={},u.forEach(function(n){return f[n.Id]=!0}),s=function(n){return!f[n.EntityType.toString()]}),function(n){var r,u;return n.kind==="IIssue"?(r=n,t(r)&&e(r)&&o(r)&&h(r)):n.kind==="IShape"?!0:n.kind==="IEntity"?(u=n,s(u)&&i(u)&&c(u)):void 0}},r}(t.OptionsConfigurationBase);t.DurhamTrafficWatchConfiguration=i})(t=n.Configurations||(n.Configurations={}))})(TIPS||(TIPS={}));__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)}}(),function(n){var t;(function(t){var i=function(n){function t(t,i){return n.call(this,t,i)||this}return __extends(t,n),t.prototype.GetCustomParams=function(){return[]},t}(n.Framework.Settings.EmbedController);t.EmbedControllerCapitalProjects=i})(t=n.Configurations||(n.Configurations={}))}(TIPS||(TIPS={}));__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)}}(),function(n){var t;(function(t){var i=function(n){function t(i,r){var u=n.call(this,i,r)||this;return t.$EnableNewDivisions.prop("checked",r.EnableNewDivisions),t.$EnableNewSprites.prop("checked",r.EnableNewSprites),u}return __extends(t,n),Object.defineProperty(t,"$EnableNewDivisions",{get:function(){return $("#DurhamEmbed_EnableNewDivisions")},enumerable:!0,configurable:!0}),Object.defineProperty(t,"$EnableNewSprites",{get:function(){return $("#DurhamEmbed_EnableNewSprites")},enumerable:!0,configurable:!0}),t.prototype.GetCustomParams=function(){var n=[];return n.push({key:"enableNewDivisions",value:t.$EnableNewDivisions.is(":checked").toString()}),n.push({key:"enableNewSprites",value:t.$EnableNewSprites.is(":checked").toString()}),n},t}(n.Framework.Settings.EmbedController);t.EmbedControllerDurham=i})(t=n.Configurations||(n.Configurations={}))}(TIPS||(TIPS={}));__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)}}(),function(n){var t;(function(t){var i=function(n){function t(t,i){return n.call(this,t,i)||this}return __extends(t,n),t.prototype.GetCustomParams=function(){var n=[];return n.push({key:"enableNewCategories",value:(!1).toString()}),n},t}(n.Framework.Settings.EmbedController);t.EmbedControllerM511=i})(t=n.Configurations||(n.Configurations={}))}(TIPS||(TIPS={}));__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)}}(),function(n){var t;(function(t){var i=function(n){function i(i,r){var u=n.call(this,i,r)||this;return t.EmbedControllerDurham.$EnableNewDivisions.prop("checked",r.EnableNewDivisions),t.EmbedControllerDurham.$EnableNewSprites.prop("checked",r.EnableNewSprites),u}return __extends(i,n),Object.defineProperty(i,"$EnableNewDivisions",{get:function(){return $("#DurhamEmbed_EnableNewDivisions")},enumerable:!0,configurable:!0}),Object.defineProperty(i,"$EnableNewSprites",{get:function(){return $("#DurhamEmbed_EnableNewSprites")},enumerable:!0,configurable:!0}),i.prototype.GetCustomParams=function(){var n=[];return n.push({key:"enableNewDivisions",value:t.EmbedControllerDurham.$EnableNewDivisions.is(":checked").toString()}),n.push({key:"enableNewSprites",value:t.EmbedControllerDurham.$EnableNewSprites.is(":checked").toString()}),n},i}(n.Framework.Settings.EmbedController);t.EmbedControllerOGRA=i})(t=n.Configurations||(n.Configurations={}))}(TIPS||(TIPS={})),function(n){var t;(function(t){var i=function(){function t(){this._cache={}}return Object.defineProperty(t.prototype,"ClusterZoomThreshold",{get:function(){return 13},enumerable:!0,configurable:!0}),t.prototype.ClearCache=function(){this._cache={}},t.prototype.Cluster=function(t,i){var r,u;if(this._cache[i])return this._cache[i];if(i>=this.ClusterZoomThreshold)return r=1e-7,u=n.Framework.DisplayLogic.Map.MapDisplayLogic.Cluster(t,Math.ceil(360/r),Math.ceil(180/r)),this._cache[i]=u,u;var f=1e3,e=6371e3,s=Math.ceil(Math.PI*e/f),h=Math.ceil(2*Math.PI*e/f),o=n.Framework.DisplayLogic.Map.MapDisplayLogic.Cluster(t,h,s);return this._cache[i]=o,o},t}();t.M511Clusterer=i})(t=n.Configurations||(n.Configurations={}))}(TIPS||(TIPS={}));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},TIPS;(function(n){var t;(function(t){var i=function(){function n(){this._config=null}return n.prototype.GetConfig=function(){return __awaiter(this,void 0,void 0,function(){var t=this;return __generator(this,function(i){switch(i.label){case 0:return this._config?[2,this._config]:[4,$.get(n.URL).then(function(n){if(!n)throw new Error("Invalid json");t._config=n})];case 1:return i.sent(),[2,this._config]}})})},n.URL="./Home/GetConfig",n}(),r=function(r){function u(n,u,f,e,o){var s=r.call(this,n)||this;if(s._localizationManager=u,s._spriteService=f,s._map=e,s._tableDisplayLogic=o,s._categoriesList=null,s._categoriesBtns=[],s._googleTrafficBtn=null,s._timeSelector=null,s._config=null,s._configLoader=new i,s.EnableNewCategories=!0,!u)throw new Error("Localization manager is null");if(!f)throw new Error("Sprite service is null");if(!e)throw new Error("Map is null");return s._configLoader=new i,s._embedController=new t.EmbedControllerM511(e,s),s}return __extends(u,r),u.prototype.GetClusterer=function(){return new t.M511Clusterer},u.prototype.GetEmbedController=function(){return this._embedController},u.prototype.GetTravelTimePathsEnabled=function(){return!1},Object.defineProperty(u.prototype,"DefaultSidebarState",{get:function(){return{ActiveIssuesEnabled:!0,DisabledCategories:[],EnabledCategories:[],FutureIssuesEnabled:!0,GoogleTrafficEnabled:!1}},enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,"SidebarStateStorageKey",{get:function(){return"sidebar_state_m511_v1"},enumerable:!0,configurable:!0}),u.prototype.ForceComputeSidebarState=function(){var n,t;return{ActiveIssuesEnabled:(n=this._timeSelector.IsActiveEnabled)!==null&&n!==void 0?n:!0,FutureIssuesEnabled:this._timeSelector.IsFutureEnabled,GoogleTrafficEnabled:((t=this._googleTrafficBtn)===null||t===void 0?void 0:t.IsEnabled)||!1,EnabledCategories:this._categoriesList.GetEnabledButtons().map(function(n){return n.Id}),DisabledCategories:this._categoriesList.GetDisabledButtons().map(function(n){return n.Id})}},u.prototype.PopulateSidebarInternal=function(t,i,r){return __awaiter(this,void 0,void 0,function(){var v,f,u,l,h,c,y,a,e,p,w,b,k,s,d,o=this;return __generator(this,function(g){switch(g.label){case 0:if(!t||t.length===0)throw new Error("Sidebar is not defined");return(t.empty(),!!this._config)?[3,2]:(v=this,[4,this._configLoader.GetConfig()]);case 1:v._config=g.sent();g.label=2;case 2:f=new n.Framework.Sidebar.SidebarBody;u={};i.Entities.forEach(function(t){var i=n.Utilities.EntityTypeToDisplayString(t.EntityType);u.hasOwnProperty(t.IconClass)?u[t.IconClass].some(function(n){return n===i})||u[t.IconClass].push(i):u[t.IconClass]=[i]});i.Issues.forEach(function(n){var t=n.TableViewInfo.IconClass,i=o._localizationManager.GetEntitySubTypeNameById(n.TableViewInfo.IssueTypeId);u.hasOwnProperty(t)?u[t].some(function(n){return n===i})||u[t].push(i):u[t]=[i];n.Geometry.forEach(function(n){if(n.MarkerInfo.LocationTypeId&&n.MarkerInfo.LocationTypeId.split("|")[1]!=="1"){var i=o._localizationManager.GetLocationTypeNameById(n.MarkerInfo.LocationTypeId),t=n.MarkerInfo.IconClass;u.hasOwnProperty(t)||(u[t]=[]);u[t].some(function(n){return n===i})||u[t].push(i)}})});l=[];h={};this._config.Categories.forEach(function(t){h[o._localizationManager.GetLocaleString(t.Label)]=[];var r=h[o._localizationManager.GetLocaleString(t.Label)],u=o.GetFilterLambdaForCategory(t);i.Issues.filter(u).forEach(function(n){var t=n.TableViewInfo.IconClass,i=n.TableViewInfo.issueTypeString,u=r.some(function(n){return n.iconClass===t})?r.filter(function(n){return n.iconClass===t})[0]:null;u?u.labels.some(function(n){return n===i})||u.labels.push(i):r.push({iconClass:t,labels:[i]})});i.Entities.filter(u).forEach(function(t){var i=t.IconClass,u=n.Utilities.EntityTypeToDisplayString(t.EntityType),f=r.some(function(n){return n.iconClass===i})?r.filter(function(n){return n.iconClass===i})[0]:null;f?f.labels.some(function(n){return n===u})||f.labels.push(u):r.push({iconClass:i,labels:[u]})})});for(c in u){if(!u.hasOwnProperty(c))return[2];l.push({iconClass:c,labels:u[c]})}return f.Append(new n.Framework.Sidebar.SidebarWhitespace(25)),f.Append(new n.Framework.Sidebar.SidebarHeading(n.Framework.Settings.Resources.TextView)),f.Append(new n.Framework.Sidebar.SidebarLanguageSelector),f.Append(new n.Framework.Sidebar.SidebarWhitespace(16)),y=new n.Framework.Sidebar.SidebarSwitchViewButton(this._tableDisplayLogic,this._map),f.Append(y),f.Append(new n.Framework.Sidebar.SidebarHorizontalLine),f.Append(new n.Framework.Sidebar.SidebarHeading(n.Framework.Settings.Resources.TextContentHeading)),this._timeSelector=new n.Framework.Sidebar.SidebarTimeSelector(r.ActiveIssuesEnabled,r.FutureIssuesEnabled,n.Framework.Settings.Resources.TextActiveIssues,n.Framework.Settings.Resources.Text7Days),this._timeSelector.AddStateChangedListener(this.OnFilterChanged.bind(this)),f.Append(this._timeSelector),f.Append(new n.Framework.Sidebar.SidebarWhitespace(30)),this._categoriesBtns=this._config.Categories.map(function(t){var i=o._localizationManager.GetLocaleString(t.Label),r=new n.Framework.Sidebar.SidebarToggleButtonDefault(o._localizationManager.GetEnglishString(t.Label),i,null);return{label:i,btn:r,cat:t}}),this.EnableNewCategories?this._categoriesBtns.forEach(function(n){r.DisabledCategories.some(function(t){return t===n.btn.Id})&&n.btn.Disable()}):this._categoriesBtns.forEach(function(n){r.EnabledCategories.some(function(t){return t===n.btn.Id})||n.btn.Disable()}),this._categoriesList=new n.Framework.Sidebar.SidebarButtonList(this._categoriesBtns.map(function(n){return n.btn}),{AddMasterToggle:!1}),this._categoriesList.AddStateChangedListener(this.OnFilterChanged.bind(this)),f.Append(this._categoriesList),this._map instanceof n.Common.Map.MapGoogle&&(this._googleTrafficBtn=new n.Framework.Sidebar.SidebarToggleButtonDefault("gtraffic",n.Framework.Settings.Resources.TextGoogleTraffic,null),this._googleTrafficBtn.RemoveMarginBelow(),a=new n.Framework.Overlay.GoogleTrafficOverlay(this._map),this._googleTrafficBtn.AddStateChangedListener(function(){return o._googleTrafficBtn.IsEnabled?a.Show():a.Hide()}),r.GoogleTrafficEnabled?this._googleTrafficBtn.Enable():this._googleTrafficBtn.Disable(),f.Append(this._googleTrafficBtn)),e=[],e.push(new n.Framework.Sidebar.SidebarHorizontalLine(1)),e.push(new n.Framework.Sidebar.SidebarWhitespace(15)),p=new n.Framework.Sidebar.SidebarM511ShowLegendModalButton,n.Framework.Sidebar.SidebarM511ShowLegendModalButton.UpdateLegendContent(l,h,this._spriteService),e.push(p),w=new n.Framework.Sidebar.SidebarEmbedTriggerButton,e.push(w),n.Framework.Settings.InjectedSettings.hasTou&&(b=new n.Framework.Sidebar.SidebarTouTriggerButton,e.push(b)),n.Framework.Settings.InjectedSettings.hasPrivacyStatement&&(k=new n.Framework.Sidebar.SidebarPrivacyStatementTriggerButton,e.push(k)),s=new n.Framework.Sidebar.SidebarRoot(t),d=new n.Framework.Sidebar.SidebarFooter(e),s.Append(f),s.Append(d),s.OnAppended(),this.OnFilterChanged(),[2,s]}})})},u.prototype.GetFilterLambda=function(){var i=this,r=this._categoriesBtns.filter(function(n){return n.btn.IsEnabled}).map(function(n){return n.cat}).map(this.GetFilterLambdaForCategory.bind(this)),t=function(){return!0},n;return this._timeSelector.IsFutureEnabled||(t=function(n){return n.kind!=="IIssue"||!n.Planned}),n=function(){return!0},this._timeSelector.IsActiveEnabled||(n=function(n){return n.kind!=="IIssue"||n.Planned}),function(u){return t(u)&&n(u)&&(i._categoriesBtns.length===0||r.some(function(n){return n(u)}))}},u.prototype.GetFilterLambdaForCategory=function(n){var t=n.Divisions.map(function(n){return{divId:n.DivisionId,issueFilter:u.DecodeFilterString(n.IssueSubTypesFilter),entityTypeFilter:u.DecodeFilterString(n.EntityTypesFilter)}});return function(n){var i,r,u,f;switch(n.kind){case"IIssue":return(i=n,r=t.filter(function(n){return n.divId===i.DivisionId})[0],!r)?!1:r.issueFilter(i.TableViewInfo.IssueTypeId.split("|")[2]);case"IShape":return!0;case"IEntity":return(u=n,f=t.filter(function(n){return n.divId===u.DivisionId})[0],!f)?!1:f.entityTypeFilter(u.EntityType.toString())}throw new Error("Unknown kind: "+n);}},u.DecodeFilterString=function(n){var t=n.toLowerCase(),i;return t==="all"?function(){return!0}:t==="none"?function(){return!1}:t.startsWith("not(")&&t.endsWith(")")?(i=t.substring(4,t.length-1).split("|"),function(n){return!i.some(function(t){return t===n})}):function(n){return t.split("|").some(function(t){return t===n})}},u}(t.OptionsConfigurationBase);t.M511Configuration=r})(t=n.Configurations||(n.Configurations={}))})(TIPS||(TIPS={}));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},TIPS;(function(n){var t;(function(t){var i=function(i){function r(r,u,f,e,o){var s=i.call(this,r)||this;return s._map=u,s._localizationManager=f,s._spriteService=e,s._tableDisplayLogic=o,s._spriteSection=null,s._spriteList=null,s._divSection=null,s._divList=null,s._plannedSection=null,s._activeIssuesBtn=null,s._futureIssuesBtn=null,s._overlaysSection=null,s._googleTrafficBtn=null,s.EnableNewSprites=n.Utilities.GetUrlParameter("enableNewSprites")!=="false",s.EnableNewDivisions=n.Utilities.GetUrlParameter("enableNewDivisions")!=="false",s._embedController=new t.EmbedControllerOGRA(u,s),s}return __extends(r,i),r.prototype.GetClusterer=function(){return new t.M511Clusterer},r.prototype.GetEmbedController=function(){return this._embedController},r.prototype.GetTravelTimePathsEnabled=function(){return!1},Object.defineProperty(r.prototype,"DefaultSidebarState",{get:function(){return{ActiveIssuesEnabled:!0,FutureIssuesEnabled:!0,DisabledDivisions:[],EnabledDivisions:[],DisabledSprites:[],EnabledSprites:[],GoogleTrafficEnabled:!1,LegendCollapsed:!1,SourceCollapsed:!1,PlannedSectionCollapsed:!1}},enumerable:!0,configurable:!0}),r.prototype.ForceComputeSidebarState=function(){return{ActiveIssuesEnabled:this._activeIssuesBtn.IsEnabled,FutureIssuesEnabled:this._futureIssuesBtn.IsEnabled,EnabledDivisions:this._divList.GetEnabledButtons().map(function(n){return parseInt(n.Id)}),DisabledDivisions:this._divList.GetDisabledButtons().map(function(n){return parseInt(n.Id)}),EnabledSprites:this._spriteList.GetEnabledButtons().map(function(n){return n.Id}),DisabledSprites:this._spriteList.GetDisabledButtons().map(function(n){return n.Id}),GoogleTrafficEnabled:this._googleTrafficBtn.IsEnabled,LegendCollapsed:this._spriteSection.IsCollapsed,SourceCollapsed:this._divSection.IsCollapsed,PlannedSectionCollapsed:this._plannedSection.IsCollapsed}},Object.defineProperty(r.prototype,"SidebarStateStorageKey",{get:function(){return"sidebar_state_ogra_v1"},enumerable:!0,configurable:!0}),r.prototype.PopulateSidebarInternal=function(t,i,r){return __awaiter(this,void 0,void 0,function(){var u,a,v,b,o,f,k,d,h,y,g,nt,c,l,p,e,tt,it,rt,ut,s,ft,w=this;return __generator(this,function(){if(!t||t.length===0)throw new Error("Sidebar is not defined");t.empty();u={};i.Entities.forEach(function(t){var i=n.Utilities.EntityTypeToDisplayString(t.EntityType);u.hasOwnProperty(t.IconClass)?u[t.IconClass].some(function(n){return n===i})||u[t.IconClass].push(i):u[t.IconClass]=[i]});i.Issues.forEach(function(n){var t=n.TableViewInfo.IconClass,i=w._localizationManager.GetEntitySubTypeNameById(n.TableViewInfo.IssueTypeId);u.hasOwnProperty(t)?u[t].some(function(n){return n===i})||u[t].push(i):u[t]=[i]});a=[];for(o in u)u.hasOwnProperty(o)&&a.push(o);v=[];b={};for(o in u){if(!u.hasOwnProperty(o))return[2];v.push({iconClass:o,labels:u[o]})}f=new n.Framework.Sidebar.SidebarBody;k=new n.Framework.Sidebar.SidebarImage({imageUrl:"./Content/Images/headerLogoImage_m511blueHighlight.png",linkUrl:"https://www.municipal511.ca/"});f.Append(new n.Framework.Sidebar.SidebarLanguageSelector);f.Append(new n.Framework.Sidebar.SidebarWhitespace(16));d=new n.Framework.Sidebar.SidebarSwitchViewButton(this._tableDisplayLogic,this._map);f.Append(d);f.Append(new n.Framework.Sidebar.SidebarWhitespace(16));h=a.map(function(t){return new n.Framework.Sidebar.SidebarToggleButtonDefault(t,u[t].join(" / "),w._spriteService.GetMapIconForSprite(t))});this.EnableNewSprites?h.filter(function(n){return r.DisabledSprites.some(function(t){return t===n.Id})}).forEach(function(n){return n.Disable()}):h.filter(function(n){return!r.EnabledSprites.some(function(t){return t===n.Id})}).forEach(function(n){return n.Disable()});this._spriteList=new n.Framework.Sidebar.SidebarButtonList(h,{AddMasterToggle:!0,MasterToggleHeaderText:"SHOW"});this._spriteList.AddStateChangedListener(this.OnFilterChanged.bind(this));this._spriteSection=new n.Framework.Sidebar.SidebarSection({Children:[this._spriteList],Collapsible:!0,StartCollapsed:r.LegendCollapsed,Title:n.Framework.Settings.Resources.TextLegend});f.Append(this._spriteSection);y=[];g=function(n){if(!i.DivisionNames.hasOwnProperty(n))return"continue";var t=parseInt(n);(i.Issues.some(function(n){return n.DivisionId===t})||i.Entities.some(function(n){return n.DivisionId===t}))&&y.push(n)};for(nt in i.DivisionNames)g(nt);return c=y.map(function(t){return new n.Framework.Sidebar.SidebarToggleButtonDefault(t,i.DivisionNames[t],null)}),this.EnableNewDivisions?c.filter(function(n){return r.DisabledDivisions.some(function(t){return t.toString()===n.Id})}).forEach(function(n){return n.Disable()}):c.filter(function(n){return!r.EnabledDivisions.some(function(t){return t.toString()===n.Id})}).forEach(function(n){return n.Disable()}),this._divList=new n.Framework.Sidebar.SidebarButtonList(c,{AddMasterToggle:!0,MasterToggleHeaderText:"SHOW"}),this._divList.AddStateChangedListener(this.OnFilterChanged.bind(this)),this._divSection=new n.Framework.Sidebar.SidebarSection({Children:[this._divList],Collapsible:!0,StartCollapsed:r.SourceCollapsed,Title:n.Framework.Settings.Resources.TextSource}),f.Append(this._divSection),this._activeIssuesBtn=new n.Framework.Sidebar.SidebarToggleButtonDefault("active_issues",n.Framework.Settings.Resources.TextActiveIssues,null),this._activeIssuesBtn.AddStateChangedListener(this.OnFilterChanged.bind(this)),r.ActiveIssuesEnabled||this._activeIssuesBtn.Disable(),this._futureIssuesBtn=new n.Framework.Sidebar.SidebarToggleButtonDefault("future_issues",n.Framework.Settings.Resources.TextFutureIssues,null),this._futureIssuesBtn.AddStateChangedListener(this.OnFilterChanged.bind(this)),r.FutureIssuesEnabled||this._futureIssuesBtn.Disable(),this._plannedSection=new n.Framework.Sidebar.SidebarSection({Children:[this._activeIssuesBtn,this._futureIssuesBtn],Collapsible:!1,StartCollapsed:r.PlannedSectionCollapsed,Title:n.Framework.Settings.Resources.TextTime}),f.Append(this._plannedSection),l=[],this._map instanceof n.Common.Map.MapGoogle&&(this._googleTrafficBtn=new n.Framework.Sidebar.SidebarToggleButtonDefault("gtraffic",n.Framework.Settings.Resources.TextGoogleTraffic,null),p=new n.Framework.Overlay.GoogleTrafficOverlay(this._map),this._googleTrafficBtn.AddStateChangedListener(function(){w._googleTrafficBtn.IsEnabled?p.Show():p.Hide()}),r.GoogleTrafficEnabled?this._googleTrafficBtn.Enable():this._googleTrafficBtn.Disable(),l.push(this._googleTrafficBtn)),!l.length||(this._overlaysSection=new n.Framework.Sidebar.SidebarSection({Children:l,Collapsible:!1,StartCollapsed:!1,Title:n.Framework.Settings.Resources.TextOverlays}),f.Append(this._overlaysSection)),e=[],e.push(new n.Framework.Sidebar.SidebarHorizontalLine(1)),e.push(new n.Framework.Sidebar.SidebarWhitespace(15)),tt=new n.Framework.Sidebar.SidebarM511ShowLegendModalButton,n.Framework.Sidebar.SidebarM511ShowLegendModalButton.UpdateLegendContent(v,b,this._spriteService),e.push(tt),it=new n.Framework.Sidebar.SidebarEmbedTriggerButton,e.push(it),n.Framework.Settings.InjectedSettings.hasTou&&(rt=new n.Framework.Sidebar.SidebarTouTriggerButton,e.push(rt)),n.Framework.Settings.InjectedSettings.hasPrivacyStatement&&(ut=new n.Framework.Sidebar.SidebarPrivacyStatementTriggerButton,e.push(ut)),s=new n.Framework.Sidebar.SidebarRoot(t),ft=new n.Framework.Sidebar.SidebarFooter(e),s.Append(k),s.Append(f),s.Append(ft),s.OnAppended(),this.OnFilterChanged(),[2,s]})})},r.prototype.GetFilterLambda=function(){var o=function(){return!0},i,r,u,f,n,s,t,e;return this._futureIssuesBtn.IsEnabled||(o=function(n){return!n.Planned}),i=function(){return!0},r=function(){return!0},this._activeIssuesBtn.IsEnabled||(i=function(n){return n.Planned},r=function(){return!1}),u=function(){return!0},f=function(){return!0},this._spriteList.GetDisabledButtons().length>0&&(n={},s={},this._spriteList.GetDisabledButtons().map(function(n){return n.Id}).forEach(function(t){n[t]=!0}),this._spriteList.GetEnabledButtons().map(function(n){return n.Id}).forEach(function(n){s[n]=!0}),u=function(t){return!n[t.TableViewInfo.IconClass]},f=function(t){return!n[t.IconClass]}),t=function(){return!0},this._divList.GetDisabledButtons().length>0&&(e={},this._divList.GetDisabledButtons().map(function(n){return parseInt(n.Id)}).forEach(function(n){return e[n]=!0}),t=function(n){return!e[n.DivisionId]}),function(n){var e,s;return n.kind==="IIssue"?(e=n,i(e)&&o(e)&&u(e)&&t(e)):n.kind==="IShape"?!0:n.kind==="IEntity"?(s=n,f(s)&&t(s)&&r(s)):void 0}},r}(t.OptionsConfigurationBase);t.OGRAConfiguration=i})(t=n.Configurations||(n.Configurations={}))})(TIPS||(TIPS={}));__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},function(n){var t;(function(t){var i=function(){function t(t){var i=this;if(this._jsonDataUrl=t,this._cachedSidebarState=null,this.WriteSidebarStateToStorage=n.Utilities.Debounce(function(t){if(!t)throw new Error("State is null");n.Utilities.SetCacheParameter(i.SidebarStateStorageKey,JSON.stringify(t))},200,!1),this._stateChangedListeners=[],this._filterChangedListeners=[],this._travelTimePathsChangedListeners=[],this._overlaysChangedListeners=[],this.OnFilterChanged=n.Utilities.Debounce(function(){var n=i.GetFilterLambda();i._filterChangedListeners.forEach(function(t){return t(n)});i._travelTimePathsChangedListeners.forEach(function(n){return n(i.GetTravelTimePathsEnabled())})},250,!1),!this._jsonDataUrl||this._jsonDataUrl.length===0)throw new Error("Json data url is null/invalid");}return t.prototype.GetJsonDataUrl=function(){return this._jsonDataUrl},t.prototype.GetSidebarState=function(){var i=n.Utilities.GetUrlParameter("lat"),t,r;if(!i&&this._cachedSidebarState)return this._cachedSidebarState;if(t=n.Utilities.GetUrlParameter("sidebarState"),t)try{return r=atob(t),this._cachedSidebarState=JSON.parse(r)}catch(f){console.warn("Could not parse url-param sidebar state")}else if(i)return this.DefaultSidebarState;if(t=n.Utilities.GetCacheParameter(this.SidebarStateStorageKey),!t)return this._cachedSidebarState=this.DefaultSidebarState;try{return this._cachedSidebarState=JSON.parse(t)}catch(u){return console.warn("Could not parse cached sidebar state: "+u),this._cachedSidebarState=this.DefaultSidebarState}},t.prototype.GetSidebarStateBase64=function(){return btoa(JSON.stringify(this.ForceComputeSidebarState()))},t.prototype.OnSidebarStateChanged=function(){this._cachedSidebarState=this.ForceComputeSidebarState();this.WriteSidebarStateToStorage(this._cachedSidebarState);this._stateChangedListeners.forEach(function(n){return n()})},t.prototype.AddStateChangedListener=function(n){if(!n)throw new Error("Listener is null");return this._stateChangedListeners.push(n),this},t.prototype.PopulateSidebar=function(n,t){return __awaiter(this,void 0,void 0,function(){var i,r;return __generator(this,function(u){switch(u.label){case 0:return i=this.GetSidebarState(),[4,this.PopulateSidebarInternal(n,t,i)];case 1:return r=u.sent(),r.AddStateChangedListener(this.OnSidebarStateChanged.bind(this)),[2]}})})},t.prototype.AddFilterChangedListener=function(n){if(!n)throw new Error("Listener is null");return this._filterChangedListeners.push(n),this},t.prototype.AddTravelTimePathsChangedListener=function(n){if(!n)throw new Error("Listener is null");return this._travelTimePathsChangedListeners.push(n),this},t.prototype.AddOverlaysChangedListener=function(n){if(!n)throw new Error("Listener is null");return this._overlaysChangedListeners.push(n),this},t.prototype.OnOverlaysChanged=function(){this._overlaysChangedListeners.forEach(function(n){return n()})},t}();t.OptionsConfigurationBase=i})(t=n.Configurations||(n.Configurations={}))}(TIPS||(TIPS={}));__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},function(n){var t;(function(t){var i=function(){function t(t){var i=this;if(this._jsonDataUrl=t,this._cachedSidebarState=null,this.WriteSidebarStateToStorage=n.Utilities.Debounce(function(t){if(!t)throw new Error("State is null");n.Utilities.SetCacheParameter(i.SidebarStateStorageKey,JSON.stringify(t))},200,!1),this._stateChangedListeners=[],this._filterChangedListeners=[],this._travelTimePathsChangedListeners=[],this._overlaysChangedListeners=[],this.OnFilterChanged=n.Utilities.Debounce(function(){var n=i.GetFilterLambda();i._filterChangedListeners.forEach(function(t){return t(n)});i._travelTimePathsChangedListeners.forEach(function(n){return n(i.GetTravelTimePathsEnabled())})},250,!1),!this._jsonDataUrl||this._jsonDataUrl.length===0)throw new Error("Json data url is null/invalid");}return t.prototype.GetJsonDataUrl=function(){return this._jsonDataUrl},t.prototype.GetSidebarState=function(){var r=n.Utilities.GetUrlParameter("enableNewCategories"),t,i;if(r)return this.DefaultSidebarState;if(this._cachedSidebarState)return this._cachedSidebarState;if(t=n.Utilities.GetUrlParameter("sidebarState"),t)try{return i=atob(t),this._cachedSidebarState=JSON.parse(i)}catch(f){console.warn("Could not parse url-param sidebar state")}if(t=n.Utilities.GetCacheParameter(this.SidebarStateStorageKey),!t)return this._cachedSidebarState=this.DefaultSidebarState;try{return this._cachedSidebarState=JSON.parse(t)}catch(u){return console.warn("Could not parse cached sidebar state: "+u),this._cachedSidebarState=this.DefaultSidebarState}},t.prototype.GetSidebarStateBase64=function(){return btoa(JSON.stringify(this.ForceComputeSidebarState()))},t.prototype.OnSidebarStateChanged=function(){this._cachedSidebarState=this.ForceComputeSidebarState();this.WriteSidebarStateToStorage(this._cachedSidebarState);this._stateChangedListeners.forEach(function(n){return n()})},t.prototype.AddStateChangedListener=function(n){if(!n)throw new Error("Listener is null");return this._stateChangedListeners.push(n),this},t.prototype.PopulateSidebar=function(n,t){return __awaiter(this,void 0,void 0,function(){var i,r;return __generator(this,function(u){switch(u.label){case 0:return i=this.GetSidebarState(),[4,this.PopulateSidebarInternal(n,t,i)];case 1:return r=u.sent(),r.AddStateChangedListener(this.OnSidebarStateChanged.bind(this)),[2]}})})},t.prototype.AddFilterChangedListener=function(n){if(!n)throw new Error("Listener is null");return this._filterChangedListeners.push(n),this},t.prototype.AddTravelTimePathsChangedListener=function(n){if(!n)throw new Error("Listener is null");return this._travelTimePathsChangedListeners.push(n),this},t.prototype.AddOverlaysChangedListener=function(n){if(!n)throw new Error("Listener is null");return this._overlaysChangedListeners.push(n),this},t.prototype.OnOverlaysChanged=function(){this._overlaysChangedListeners.forEach(function(n){return n()})},t}();t.OptionsConfigurationBase=i})(t=n.Configurations||(n.Configurations={}))}(TIPS||(TIPS={}))