{"version":3,"file":"bundle.components.js","mappings":"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","sources":["webpack:///./ts/components/index-exposed.js","webpack:///./ts/components/index.js","webpack:///./ts/react.js","webpack:///../node_modules/expose-loader/dist/runtime/getGlobalThis.js","webpack:///../node_modules/object-assign/index.js","webpack:///../node_modules/scheduler/cjs/scheduler.production.min.js","webpack:///../node_modules/scheduler/index.js","webpack:///./ts/alerts.ts","webpack:///./ts/apiHelper.ts","webpack:///./ts/awesome.ts","webpack:///./ts/components/Accordion/Accordion.tsx","webpack:///./ts/components/Accordion/AccordionPanel.tsx","webpack:///./ts/components/Alerts/AlertSubscriptionList.tsx","webpack:///./ts/components/BreadCrumbs/BreadCrumbs.tsx","webpack:///./ts/components/CDNDocument/CDNDocument.tsx","webpack:///./ts/components/CallToActionLink/CallToActionLink.tsx","webpack:///./ts/components/CallToActionSideBar/CallToActionSideBar.tsx","webpack:///./ts/components/ClickableImageBlocks/ClickableImageBlocks.tsx","webpack:///./ts/components/ContentAlerts/ContentAlertItem.tsx","webpack:///./ts/components/ContentAlerts/ContentAlertList.tsx","webpack:///./ts/components/DocumentNavigator/DocumentNavigator.tsx","webpack:///./ts/components/DocumentNavigator/DocumentNavigatorItem.tsx","webpack:///./ts/components/DocumentNavigator/DocumentNavigatorMenu.tsx","webpack:///./ts/components/DocumentNavigator/DocumentNavigatorTagCrumbs.tsx","webpack:///./ts/components/EventCalendar/Event.tsx","webpack:///./ts/components/EventCalendar/EventCalendar.tsx","webpack:///./ts/components/EventCalendar/EventDetails.tsx","webpack:///./ts/components/EventCalendar/EventFilters.tsx","webpack:///./ts/components/EventCalendar/EventTypeColorKey.tsx","webpack:///./ts/components/EventList/EventItem.tsx","webpack:///./ts/components/EventList/EventList.tsx","webpack:///./ts/components/Find/DocumentsBase.tsx","webpack:///./ts/components/Find/FindResultItemBase.tsx","webpack:///./ts/components/Find/FindResultsBase.tsx","webpack:///./ts/components/Find/Paging.tsx","webpack:///./ts/components/FormResults/FeedbackResultsDownload.tsx","webpack:///./ts/components/GIQueue/GIQueueDocumentApp.tsx","webpack:///./ts/components/GIQueue/GIQueueDocumentList.tsx","webpack:///./ts/components/GIQueue/GIQueueDocumentListItem.tsx","webpack:///./ts/components/GIQueue/GIQueueDocumentModal.tsx","webpack:///./ts/components/GlobalAlert/GlobalAlert.tsx","webpack:///./ts/components/HeroButtons/HeroButton.tsx","webpack:///./ts/components/HeroButtons/HeroButtons.tsx","webpack:///./ts/components/HeroHeader/HeroHeader.tsx","webpack:///./ts/components/InfoBox/InfoBox.tsx","webpack:///./ts/components/InfoBox/InfoBoxWithImageHeader.tsx","webpack:///./ts/components/InfoBox/InfoBoxWithThumbnail.tsx","webpack:///./ts/components/LeadershipBlock/LeadershipBlock.tsx","webpack:///./ts/components/Legend/Legend.tsx","webpack:///./ts/components/Legend/LegendItemList.tsx","webpack:///./ts/components/MCSNotification/MCSNotification.tsx","webpack:///./ts/components/MISOMatters/MISOMatters.tsx","webpack:///./ts/components/MailingList/MailingList.tsx","webpack:///./ts/components/MailingList/MailingListCategory.tsx","webpack:///./ts/components/MailingList/MailingListItem.tsx","webpack:///./ts/components/MailingList/MailingListUpdate.tsx","webpack:///./ts/components/MeetingList/MeetingItem.tsx","webpack:///./ts/components/MeetingList/MeetingList.tsx","webpack:///./ts/components/MeetingList/Meetings.tsx","webpack:///./ts/components/MeetingList/SubcommitteeMeetings.tsx","webpack:///./ts/components/Multiselect/Multiselect.tsx","webpack:///./ts/components/NewsOverview/NewsOverview.tsx","webpack:///./ts/components/NotificationList/NotificationList.tsx","webpack:///./ts/components/NotificationList/NotificationTopic.tsx","webpack:///./ts/components/ProfileDataModal/ProfileDataModal.tsx","webpack:///./ts/components/QBankDocument/QBankDocument.tsx","webpack:///./ts/components/RecentNotificationList/RecentNotificationList.tsx","webpack:///./ts/components/RegistrationStatus/RegistrationButtons.tsx","webpack:///./ts/components/RegistrationStatus/RegistrationIcon.tsx","webpack:///./ts/components/RegistrationStatus/RegistrationStatus.tsx","webpack:///./ts/components/RelatedDocuments/RelatedCorrelatedDocuments.tsx","webpack:///./ts/components/RelatedDocuments/RelatedDocumentComponents.tsx","webpack:///./ts/components/RelatedDocuments/RelatedDocumentsBase.tsx","webpack:///./ts/components/RelatedDocuments/RelatedDocumentsList.tsx","webpack:///./ts/components/RelatedDocuments/RelatedDocumentsListItem.tsx","webpack:///./ts/components/RelatedDocuments/RelatedMeetingMaterialDocuments.tsx","webpack:///./ts/components/RelatedDocuments/RelatedPageDocuments.tsx","webpack:///./ts/components/RelatedPages/RelatedPages.tsx","webpack:///./ts/components/Search/Search.tsx","webpack:///./ts/components/Search/SearchFacetItemTags.tsx","webpack:///./ts/components/Search/SearchFacetMenu.tsx","webpack:///./ts/components/Search/SearchFacetMenuSection.tsx","webpack:///./ts/components/Search/SearchResultPane.tsx","webpack:///./ts/components/Search/SearchResultPaneItem.tsx","webpack:///./ts/components/Search/TagTransformer.tsx","webpack:///./ts/components/SearchNavigation/MarketReportNavigationConfiguration.tsx","webpack:///./ts/components/SearchNavigation/MarketReportSearchNavigator.tsx","webpack:///./ts/components/SearchNavigation/SearchDocumentGrid.tsx","webpack:///./ts/components/SearchNavigation/SearchDocumentList.tsx","webpack:///./ts/components/SearchNavigation/SearchDocumentNavigator.tsx","webpack:///./ts/components/SearchNavigation/SearchNavigation.tsx","webpack:///./ts/components/SimpleCallToActionBlock/SimpleCallToActionBlock.tsx","webpack:///./ts/components/SnapshotDashboard/OutlookBox.tsx","webpack:///./ts/components/SnapshotDashboard/SnapshotDashboard.tsx","webpack:///./ts/components/StakeholderFeedbackList/StakeholderFeedbackItem.tsx","webpack:///./ts/components/StakeholderFeedbackList/StakeholderFeedbackList.tsx","webpack:///./ts/components/Tariff/Tariff.tsx","webpack:///./ts/components/Tariff/TariffDocuments.tsx","webpack:///./ts/components/Tariff/TariffPanel.tsx","webpack:///./ts/components/Tariff/TariffTabSearch.tsx","webpack:///./ts/components/Tariff/TariffTabs.tsx","webpack:///./ts/components/TwitterFeed/TwitterFeed.tsx","webpack:///./ts/components/UserRoleList/UserRoleList.tsx","webpack:///./ts/dateFormatter.ts","webpack:///./ts/follow.ts","webpack:///./ts/global.ts","webpack:///./ts/hocs/BlockBase.tsx","webpack:///./ts/hocs/Grid.tsx","webpack:///./ts/hocs/List.tsx","webpack:///./ts/hocs/ListDateRefiner.tsx","webpack:///./ts/hocs/ListPager.tsx","webpack:///./ts/modal.ts","webpack:///./ts/pageguid.ts","webpack:///./ts/reactHelpers.ts","webpack:///./ts/repeat.ts","webpack:///./ts/secured.ts","webpack:///./ts/sessionTimeout.ts","webpack:///./ts/toast.ts","webpack:///webpack/bootstrap","webpack:///webpack/runtime/amd define","webpack:///webpack/runtime/chunk loaded","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/node module decorator","webpack:///webpack/runtime/jsonp chunk loading","webpack:///webpack/startup"],"sourcesContent":["var ___EXPOSE_LOADER_IMPORT___ = require(\"-!../../../node_modules/source-map-loader/dist/cjs.js!./index.js\");\nvar ___EXPOSE_LOADER_GET_GLOBAL_THIS___ = require(\"../../../node_modules/expose-loader/dist/runtime/getGlobalThis.js\");\nvar ___EXPOSE_LOADER_GLOBAL_THIS___ = ___EXPOSE_LOADER_GET_GLOBAL_THIS___;\nif (typeof ___EXPOSE_LOADER_GLOBAL_THIS___[\"components\"] === 'undefined') ___EXPOSE_LOADER_GLOBAL_THIS___[\"components\"] = ___EXPOSE_LOADER_IMPORT___;\nmodule.exports = ___EXPOSE_LOADER_IMPORT___;\n","module.exports = {\n Accordion: require('./Accordion/Accordion'),\n AlertSubscriptionList: require('./Alerts/AlertSubscriptionList'),\n BreadCrumbs: require('./BreadCrumbs/BreadCrumbs'),\n CallToActionLink: require('./CallToActionLink/CallToActionLink'), \n CallToActionSideBar: require('./CallToActionSideBar/CallToActionSideBar'),\n CDNDocument: require('./CDNDocument/CDNDocument'),\n ClickableImageBlocks: require('./ClickableImageBlocks/ClickableImageBlocks'),\n ContentAlerts: require('./ContentAlerts/ContentAlertList'),\n DocumentNavigator: require('./DocumentNavigator/DocumentNavigator'),\n //Editorial: require('./Editorial/Editorial'),\n //EditorialLinkList: require('./EditorialLinkList/EditorialLinkList'),\n EventCalendar: require('./EventCalendar/EventCalendar'),\n EventList: require('./EventList/EventList'),\n FeedbackResultsDownload: require('./FormResults/FeedbackResultsDownload'),\n GIQueueDocumentApp: require('./GIQueue/GIQueueDocumentApp'),\n GlobalAlert: require('./GlobalAlert/GlobalAlert'),\n HeroHeader: require('./HeroHeader/HeroHeader'),\n HeroButton: require('./HeroButtons/HeroButton'),\n HeroButtons: require('./HeroButtons/HeroButtons'),\n InfoBox: require('./InfoBox/InfoBox'),\n InfoBoxWithImageHeader: require('./InfoBox/InfoBoxWithImageHeader'),\n InfoBoxWithThumbnail: require('./InfoBox/InfoBoxWithThumbnail'),\n LeadershipBlock: require('./LeadershipBlock/LeadershipBlock'),\n Legend: require('./Legend/Legend'),\n MailingList: require('./MailingList/MailingList'),\n Meetings: require('./MeetingList/Meetings'),\n MISOMatters: require('./MISOMatters/MISOMatters'),\n NewsOverview: require('./NewsOverview/NewsOverview'),\n NotificationList: require('./NotificationList/NotificationList'), \n QBankDocument: require('./QBankDocument/QBankDocument'),\n RecentNotificationList: require('./RecentNotificationList/RecentNotificationList'),\n RegistrationStatus: require('./RegistrationStatus/RegistrationStatus'),\n RelatedPages: require('./RelatedPages/RelatedPages'), //Occurances need to be converted before removal\n StakeholderFeedbackList: require('./StakeholderFeedbackList/StakeholderFeedbackList'),\n MCSNotification: require('./MCSNotification/MCSNotification'),\n RelatedDocuments: require('./RelatedDocuments/RelatedDocumentComponents'),\n Search: require('./Search/Search'),\n SearchNavigation: require('./SearchNavigation/SearchNavigation'),\n SimpleCallToActionBlock: require('./SimpleCallToActionBlock/SimpleCallToActionBlock'),\n SnapshotDashboard: require('./SnapshotDashboard/SnapshotDashboard'),\n //StakeholderFeedbackFormResults: require('./FormResults/StakeholderFeedbackFormResults'),\n Tariff: require('./Tariff/Tariff'),\n TwitterFeed: require('./TwitterFeed/TwitterFeed'),\n UserRoleList: require('./UserRoleList/UserRoleList'),\n ProfileDataModal: require('./ProfileDataModal/ProfileDataModal'),\n};\n","// All JavaScript in here will be loaded server-side\n// Expose components globally so ReactJS.Net can use them\n\n\nrequire('expose-loader?exposes=components!./components');","\"use strict\";\n\n// eslint-disable-next-line func-names\nmodule.exports = function () {\n if (typeof globalThis === \"object\") {\n return globalThis;\n }\n var g;\n try {\n // This works if eval is allowed (see CSP)\n // eslint-disable-next-line no-new-func\n g = this || new Function(\"return this\")();\n } catch (e) {\n // This works if the window reference is available\n if (typeof window === \"object\") {\n return window;\n }\n\n // This works if the self reference is available\n if (typeof self === \"object\") {\n return self;\n }\n\n // This works if the global reference is available\n if (typeof global !== \"undefined\") {\n return global;\n }\n }\n return g;\n}();","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/** @license React v0.20.2\n * scheduler.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f,g,h,k;if(\"object\"===typeof performance&&\"function\"===typeof performance.now){var l=performance;exports.unstable_now=function(){return l.now()}}else{var p=Date,q=p.now();exports.unstable_now=function(){return p.now()-q}}\nif(\"undefined\"===typeof window||\"function\"!==typeof MessageChannel){var t=null,u=null,w=function(){if(null!==t)try{var a=exports.unstable_now();t(!0,a);t=null}catch(b){throw setTimeout(w,0),b;}};f=function(a){null!==t?setTimeout(f,0,a):(t=a,setTimeout(w,0))};g=function(a,b){u=setTimeout(a,b)};h=function(){clearTimeout(u)};exports.unstable_shouldYield=function(){return!1};k=exports.unstable_forceFrameRate=function(){}}else{var x=window.setTimeout,y=window.clearTimeout;if(\"undefined\"!==typeof console){var z=\nwindow.cancelAnimationFrame;\"function\"!==typeof window.requestAnimationFrame&&console.error(\"This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills\");\"function\"!==typeof z&&console.error(\"This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills\")}var A=!1,B=null,C=-1,D=5,E=0;exports.unstable_shouldYield=function(){return exports.unstable_now()>=\nE};k=function(){};exports.unstable_forceFrameRate=function(a){0>a||125>>1,e=a[d];if(void 0!==e&&0I(n,c))void 0!==r&&0>I(r,n)?(a[d]=r,a[v]=c,d=v):(a[d]=n,a[m]=c,d=m);else if(void 0!==r&&0>I(r,c))a[d]=r,a[v]=c,d=v;else break a}}return b}return null}function I(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}var L=[],M=[],N=1,O=null,P=3,Q=!1,R=!1,S=!1;\nfunction T(a){for(var b=J(M);null!==b;){if(null===b.callback)K(M);else if(b.startTime<=a)K(M),b.sortIndex=b.expirationTime,H(L,b);else break;b=J(M)}}function U(a){S=!1;T(a);if(!R)if(null!==J(L))R=!0,f(V);else{var b=J(M);null!==b&&g(U,b.startTime-a)}}\nfunction V(a,b){R=!1;S&&(S=!1,h());Q=!0;var c=P;try{T(b);for(O=J(L);null!==O&&(!(O.expirationTime>b)||a&&!exports.unstable_shouldYield());){var d=O.callback;if(\"function\"===typeof d){O.callback=null;P=O.priorityLevel;var e=d(O.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?O.callback=e:O===J(L)&&K(L);T(b)}else K(L);O=J(L)}if(null!==O)var m=!0;else{var n=J(M);null!==n&&g(U,n.startTime-b);m=!1}return m}finally{O=null,P=c,Q=!1}}var W=k;exports.unstable_IdlePriority=5;\nexports.unstable_ImmediatePriority=1;exports.unstable_LowPriority=4;exports.unstable_NormalPriority=3;exports.unstable_Profiling=null;exports.unstable_UserBlockingPriority=2;exports.unstable_cancelCallback=function(a){a.callback=null};exports.unstable_continueExecution=function(){R||Q||(R=!0,f(V))};exports.unstable_getCurrentPriorityLevel=function(){return P};exports.unstable_getFirstCallbackNode=function(){return J(L)};\nexports.unstable_next=function(a){switch(P){case 1:case 2:case 3:var b=3;break;default:b=P}var c=P;P=b;try{return a()}finally{P=c}};exports.unstable_pauseExecution=function(){};exports.unstable_requestPaint=W;exports.unstable_runWithPriority=function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=P;P=a;try{return b()}finally{P=c}};\nexports.unstable_scheduleCallback=function(a,b,c){var d=exports.unstable_now();\"object\"===typeof c&&null!==c?(c=c.delay,c=\"number\"===typeof c&&0d?(a.sortIndex=c,H(M,a),null===J(L)&&a===J(M)&&(S?h():S=!0,g(U,c-d))):(a.sortIndex=e,H(L,a),R||Q||(R=!0,f(V)));return a};\nexports.unstable_wrapCallback=function(a){var b=P;return function(){var c=P;P=b;try{return a.apply(this,arguments)}finally{P=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","export class Alerts {\n\t\n\tpublic static registerManagedAlerts(selector: string) {\n\t\t$(selector).each(function (index: number, elem: Element) {\n\t\t\t$(elem).on('closed.bs.alert', function () {\n\t\t\t\tlocalStorage.setItem(this.id, \"dismissed\");\n\t\t\t});\n\n\t\t\tif (localStorage[elem.id] == null) {\n\t\t\t\t$('#' + elem.id).show();\n\t\t\t}\n\t\t});\n\t}\n}\n","import {IChoiceItem} from \"./ConfigurableChoice\";\n\nexport class Api {\n\n\tprivate static issuesLegendListPromise: JQueryXHR;\n\tpublic static getIssuesLegendLists(choices: string, callback: JQueryPromiseCallback) {\n\t\tif (Api.issuesLegendListPromise == null) {\n Api.issuesLegendListPromise = $.getJSON(\"/api/ConfigurableChoices/GetIssueLegendLists\");\n\t\t}\n\n\t\tApi.issuesLegendListPromise.done(callback);\n }\n private static giQueueLegendListPromise: JQueryXHR;\n public static getGiQueueLegendLists(choices: string, callback: JQueryPromiseCallback) {\n if (Api.giQueueLegendListPromise == null) {\n Api.giQueueLegendListPromise = $.getJSON(\"/api/ConfigurableChoices/GetGIQueueLegendLists\");\n }\n\n Api.giQueueLegendListPromise.done(callback);\n\n }\n private static TTFQueueLegendListPromise: JQueryXHR;\n public static GetTTFQueueLegendLists(choices: string, callback: JQueryPromiseCallback) {\n if (Api.TTFQueueLegendListPromise == null) {\n Api.TTFQueueLegendListPromise = $.getJSON(\"/api/TTFQueue/getTTFQueueLegendLists\");\n }\n\n Api.TTFQueueLegendListPromise.done(callback);\n\n }\n\n\tprivate static legendListPromise: JQueryXHR;\n\tpublic static getLegendLists(choices: Array, callback: JQueryPromiseCallback){\n\t\t\n\t\tvar choiceNames = choices.reduce((choices, choice, idx) => idx == 0 ? choice.configurableChoice : choices + \",\" + choice.configurableChoice, \"\" );\n\n\t\tif (Api.legendListPromise == null){\n\t\t\tApi.legendListPromise = $.getJSON(\"/api/legend/GetConfigurableChoices?choices=\" + choiceNames);\n\t\t}\n\n\t\tApi.legendListPromise.done(callback);\n\t}\n}","export class Awesome {\n\n public static getDocumentIcon(doc?: string, contentType?: string, style?: string) {\n var faClass = \"fa \";\n var fileType = \"\";\n \n if(fileType == \"\" && contentType != null){\n fileType = this.getFileType(contentType);\n }\n\n if (fileType == \"\" && doc != null && doc.indexOf(\".\") != -1) {\n fileType = this.getDocType(doc);\n } else if (fileType == \"\" && doc != null) {\n fileType = this.getDocType(\".\" + doc);\n }\n\n switch (fileType) {\n case \"pdf\":\n faClass += \" fa-file-pdf-o\";\n break;\n case \"code\": \n faClass += \" fa-file-code-o\";\n break;\n case \"excel\":\n faClass += \" fa-file-excel-o\";\n break;\n case \"word\":\n faClass += \" fa-file-word-o\";\n break; \n case \"powerpoint\": \n faClass += \" fa-file-powerpoint-o\";\n break;\n case \"archive\":\n faClass += \" fa-file-archive-o\";\n break;\n case \"image\":\n faClass += \" fa-file-image-o\";\n break;\n case \"video\":\n faClass += \" fa-file-video-o\";\n break;\n case \"text\":\n faClass += \" fa-file-text-o\";\n break; \n default:\n faClass += \"fa-file-o\";\n break;\n }\n\n if (style != null) {\n faClass += \" \" + style;\n }\n\n return ``;\n }\n public static getUnformattedDocumentIcon(doc?: string, contentType?: string, style?: string) {\n var faClass = \"fa \";\n var fileType = \"\";\n\n if (fileType == \"\" && contentType != null) {\n fileType = this.getFileType(contentType);\n }\n\n if (fileType == \"\" && doc != null && doc.indexOf(\".\") != -1) {\n fileType = this.getDocType(doc);\n } else if (fileType == \"\" && doc != null) {\n fileType = this.getDocType(\".\" + doc);\n }\n\n switch (fileType) {\n case \"pdf\":\n faClass += \" fa-file-pdf-o\";\n break;\n case \"code\":\n faClass += \" fa-file-code-o\";\n break;\n case \"excel\":\n faClass += \" fa-file-excel-o\";\n break;\n case \"word\":\n faClass += \" fa-file-word-o\";\n break;\n case \"powerpoint\":\n faClass += \" fa-file-powerpoint-o\";\n break;\n case \"archive\":\n faClass += \" fa-file-archive-o\";\n break;\n case \"image\":\n faClass += \" fa-file-image-o\";\n break;\n case \"video\":\n faClass += \" fa-file-video-o\";\n break;\n case \"text\":\n faClass += \" fa-file-text-o\";\n break;\n default:\n faClass += \"fa-file-o\";\n break;\n }\n\n if (style != null) {\n faClass += \" \" + style;\n }\n\n return faClass;\n }\n\n private static getFileType(contentType: string) {\n \n switch(contentType){\n case \"application/pdf\":\n return \"pdf\";\n case \"application/xml\": \n return \"code\"; \n case \"text/csv\":\n case \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\":\n case \"application/vnd.ms-excel.sheet.macroEnabled.12\":\n case \"application/vnd.ms-excel\":\n return \"excel\";\n case \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\":\n case \"application/vnd.ms-word\":\n return \"word\"; \n case \"application/vnd.openxmlformats-officedocument.presentationml.presentation\":\n case \"application/vnd.ms-powerpoint\":\n return \"powerpoint\";\n case \"application/zip\":\n return \"archive\";\n case \"image/png\":\n case \"image/jpeg\":\n case \"image/gif\":\n return \"image\"; \n case \"video/mpeg\":\n case \"video/mp4\":\n case \"video/avi\":\n return \"video\";\n case \"text/plain\":\n return \"text\";\n default: \n return \"\";\n }\n }\n\n private static getDocType(doc: string){\n var ext = doc.substr(doc.lastIndexOf(\".\"));\n\n switch (ext) {\n case \".pdf\":\n return \"pdf\";\n case \".xml\":\n return \"code\";\n case \".xls\":\n case \".xlsx\":\n case \".csv\":\n return \"excel\";\n case \".doc\":\n case \".docx\":\n return \"word\";\n case \".ppt\":\n case \".pptx\":\n return \"powerpoint\";\n case \".rar\":\n case \".zip\":\n case \".7z\":\n return \"archive\";\n case \".png\":\n case \".jpg\":\n case \".gif\":\n return \"image\";\n case \".avi\":\n case \".mov\":\n case \".mp4\":\n return \"video\";\n case \".txt\":\n return \"text\";\n default:\n return \"\";\n }\n }\n}\n","import React from 'react';\nimport AccordionPanel from \"./AccordionPanel\";\nimport BlockBase from '../../hocs/BlockBase';\nimport { IPagingProps } from '../Find/Paging';\nimport {IBlockBaseProps} from '../../hocs/BlockBase';\nimport Moment from \"moment\";\nimport * as dateFormatter from '../../dateFormatter';\nimport ListPager from '../../hocs/ListPager'\nimport List from '../../hocs/List';\n\nexport interface AccordionPagingProps extends IPagingProps, IAccordionProps{}\n\nexport interface PanelItem {\n title?:string;\n content?:string;\n image?:string;\n imageType?: string;\n contentElement?: HTMLElement;\n keyInt?: number;\n filteredOut?: boolean;\n};\ninterface IAccordionProps {\n accordionId: string; \n useSinglePanelStyle: boolean;\n displayAccordion:boolean;\n openFirstPanel:boolean;\n panels: Array;\n titleOverride?: string;\n contentOverride?: string;\n paging?: boolean;\n defaultPageSize?: number;\n secondaryTitle?: string;\n search?: boolean;\n}\ninterface state {\n pageSize: number;\n page: number;\n totalAvailableResults: number;\n allpanels: Array;\n panels: Array;\n resultSetCount: number;\n searchText: string;\n nonFilteredPanels: Array;\n}\nexport class AccordionItem extends React.Component {\n\n constructor(props) {\n super(props);\n this.state = { pageSize: 5, page: 0, totalAvailableResults: 0, allpanels:[], panels: [], resultSetCount:0, searchText: \"\", nonFilteredPanels: [] };\n\n }\n componentDidMount() {\n var allPanels = this.addKeyToPanels();\n var pageSize = this.props.defaultPageSize ? this.props.defaultPageSize : 5;\n this.setState({ totalAvailableResults: this.props.panels.length, allpanels: allPanels, nonFilteredPanels: allPanels, panels: allPanels.slice(0, pageSize), pageSize: pageSize, resultSetCount: pageSize });\n }\n componentDidUpdate(prevProps) {\n if (this.props != prevProps) {\n var allPanels = this.addKeyToPanels();\n this.setState({ totalAvailableResults: this.props.panels.length, allpanels: allPanels, nonFilteredPanels:allPanels, panels: allPanels.slice(0, this.state.pageSize), page: 0, resultSetCount: this.state.pageSize, searchText: \"\" });\n this.collapseAllPanels();\n }\n }\n\n private collapseAllPanels() {\n $('.show').removeClass('show');\n $('.accordion-link').addClass('collapsed');\n }\n\n private addKeyToPanels() {\n var allPanels = [];\n for (var i = 0; i < this.props.panels.length; i++) {\n var tempPanel = this.props.panels[i];\n if (!tempPanel.keyInt) {\n tempPanel.keyInt = i;\n }\n allPanels.push(tempPanel);\n }\n return allPanels;\n }\n public cleanTitle(title) {\n if (Moment(title, Moment.ISO_8601, true).isValid()) {\n return dateFormatter.DateFormatter.Format(title, \"M/D/YYYY\");\n }\n return title;\n }\n public OnPageChange(page) {\n var from = Math.ceil(page * this.state.pageSize);\n var to = Math.ceil(from + this.state.pageSize);\n this.setState({ panels: this.state.allpanels.slice(from, to), page:page })\n }\n\n public OnPageSizeChange(size) {\n var sizeParse = parseInt(size);\n var from = 0;\n var to = Math.ceil(from + sizeParse);\n var tempCount = sizeParse > this.state.totalAvailableResults ? this.state.totalAvailableResults : sizeParse\n this.setState({ panels: this.state.allpanels.slice(from, to), page: 0, resultSetCount: tempCount, pageSize: sizeParse })\n }\n\n\n public selectResultsPage(pageIndex) {\n var numPages = Math.ceil(this.state.totalAvailableResults / this.state.pageSize);\n\n if (pageIndex >= 0 && pageIndex < numPages && pageIndex != this.state.page) {\n this.setState({ page: pageIndex });\n }\n }\n\n private search(query: string) {\n this.setState({searchText: query})\n this.collapseAllPanels();\n if (query == '' || query == null) {\n // empty search, return all results\n var resultCount = this.state.nonFilteredPanels.length > this.state.pageSize ? this.state.pageSize : this.state.nonFilteredPanels.length\n this.setState({ panels: this.state.nonFilteredPanels.slice(0, this.state.pageSize), allpanels: this.state.nonFilteredPanels, totalAvailableResults: this.state.nonFilteredPanels.length, resultSetCount: resultCount, page: 0 })\n } else {\n // searching for a string\n var filteredPanels = this.state.nonFilteredPanels.filter(x => x[this.props.titleOverride] != undefined && x[this.props.titleOverride].toLowerCase().includes(query.toLowerCase()));\n var resultCount = filteredPanels.length > this.state.pageSize ? this.state.pageSize : filteredPanels.length\n this.setState({ panels: filteredPanels.slice(0, this.state.pageSize), allpanels: filteredPanels, totalAvailableResults: filteredPanels.length, resultSetCount: resultCount, page: 0})\n }\n }\n\n public render() {\n return (\n
\n {this.props.search &&\n
\n
\n
\n this.search(e.target.value)}/>\n
\n
\n
\n }\n
\n
\n {this.props.paging ?\n \n : this.state.panels.map((panel, i) => {\n return (\n \n )\n })\n }\n\n
\n
\n {!this.props.displayAccordion ?\n
\n
    \n {\n this.state.panels.map((panel, i) => {\n var title = this.props.titleOverride ? this.cleanTitle(panel[this.props.titleOverride]) : panel.title;\n return (\n
  • \n {title}\n
  • )\n })\n }\n
\n
\n {\n this.state.panels.map((panel, i) => {\n var content = this.props.contentOverride ? panel[this.props.contentOverride] : panel.content;\n \n return (\n
\n {\n panel.image && panel.imageType == \"icon\" ?\n
\n
\n \n
\n
\n {content}\n
\n
\n : panel.image && panel.imageType == \"image\" ?\n
\n
\n \n
\n
\n {content}\n
\n
\n\n :\n
{content}
\n }\n
\n )\n })\n }\n
\n
\n :\n }\n
\n )\n\t}\n}\n\n\nexport class Accordion extends React.Component {\n public render() {\n return (\n \n )\n\t}\n}\n\ninterface IAccordionBlockProps {}\n\nexport const AccordionBlock = BlockBase(AccordionItem, {});\n\n\nlet listOptions = {\n className: \"accordion-content\",\n dataSetName: \"panels\",\n dataItemPropName: \"panel\",\n};\nconst AccordionPanelList = ListPager(List(AccordionPanel, listOptions), listOptions);\nexport default AccordionPanelList;","import React from 'react';\nimport { PanelItem} from \"./Accordion\";\nimport Moment from \"moment\";\nimport * as dateFormatter from '../../dateFormatter';\n\n\nexport interface IAccordionPanelItem { panel: PanelItem, openFirstPanel: boolean, accordionId: string, contentOverride?:string, titleOverride?:string, secondaryTitle?:string }\n\ninterface State {\n}\nexport default class AccordionPanel extends React.Component{\n constructor(props) {\n super(props);\n }\n public cleanTitle(title) {\n if (typeof title === 'undefined') {\n return title;\n }\n if (Moment(title, Moment.ISO_8601, true).isValid()) {\n return dateFormatter.DateFormatter.Format(title, \"MM/DD/YYYY\");\n }\n return title.toString();\n }\n\n public render() {\n var title = this.props.titleOverride ? this.cleanTitle(this.props.panel[this.props.titleOverride]) : this.props.panel.title;\n var content = this.props.contentOverride ? this.props.panel[this.props.contentOverride] : this.props.panel.content;\n var secondaryTitle = this.props.secondaryTitle ? this.cleanTitle(this.props.panel[this.props.secondaryTitle]) : null;\n\n return (\n
\n
\n
\n

\n \n \n \n

\n {secondaryTitle ?\n

{secondaryTitle}

: \"\"}\n
\n
\n \n \n \n
\n
\n
\n
\n {\n this.props.panel.image && this.props.panel.imageType == \"icon\" ?\n
\n
\n \n
\n
\n
\n
\n
\n : this.props.panel.image && this.props.panel.imageType == \"image\" ?\n
\n
\n \n
\n
\n
\n
\n
\n :\n
\n\n }\n
\n
\n
\n\n )\n }\n}\n","import React from 'react';\nimport * as toast from '../../toast';\nimport * as dateFormatter from '../../dateFormatter';\nimport { IModalButton } from \"../../modal\";\nimport * as modal from '../../modal';\n\ninterface IAlertSubscriptionListProps { endpoint: string }\ninterface IAlertSubscriptionGroup { displayTitle: string, subscriptions:Array}\ninterface IAlertSubscriptionListItemProps { contentId: string, contentName: string, contentUrl: string, creationDate: Date }\ninterface IAlertUnsubscribeGroup { displayTitle: string, items: Array }\n\ninterface State {\n alertSubscriptionList: Array,\n showAll: boolean,\n unsubscribeLists: Array\n}\n\nexport class AlertSubscriptionList extends React.Component {\n\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = { alertSubscriptionList: [], showAll:false, unsubscribeLists: [] };\n\t\tthis.Unsubscribe = this.Unsubscribe.bind(this);\n\t}\n\n\tpublic componentDidMount() {\n\t\tthis.GetMySubscriptions();\n\t}\n\n\tprivate GetMySubscriptions() {\n\t\treturn $.getJSON(this.props.endpoint + \"/GetGroupedSubscriptions\",\n\t\t\tfunction (data) {\n this.setState({ alertSubscriptionList: data });\n\t\t\t}.bind(this));\n\t}\n\n private Unsubscribe(params: any): void {\n var unsubscribeGroup = this.state.unsubscribeLists.find(x => x.displayTitle === params.tabKey);\n var unsubscribeList = unsubscribeGroup ? unsubscribeGroup.items : [];\n\n\t\t$.ajax({\n type: 'post',\n data: JSON.stringify(unsubscribeList.map(x => x.contentId)),\n\t\t\turl: this.props.endpoint + '/Unsubscribe',\n\t\t\tcontentType: 'application/json',\n\t\t\tdataType: 'json'\n\t\t}).then(\n\t\t\tfunction (data) {\n toast.Toast.Display('Your subscriptions have been updated');\n this.state.unsubscribeLists.find(x => x.displayTitle === params.tabKey).items = [];\n this.setState({ unsubscribeLists: this.state.unsubscribeLists });\n this.GetMySubscriptions();\n\t\t\t}.bind(this)\n\t\t);\n }\n\n public buildList(items) {\n var listString = '
    ';\n items.map(item => {\n listString += '
  • ' + item.contentName + '
  • ';\n })\n listString += '
';\n return listString;\n }\n\n public SaveChanges(tabKey) {\n let unfollowBtn: IModalButton = { name: \"Unfollow\", func: this.Unsubscribe, params: { tabKey } };\n let cancelBtn: IModalButton = { name: \"Cancel\", func: null, params: null, btnClass: 'btn-default' };\n var items = this.state.unsubscribeLists.find(x => x.displayTitle === tabKey).items;\n\n // Prompt to unfollow\n modal.Modal.Display(\"Are you sure you want to unfollow the following items:
\" + this.buildList(items), [unfollowBtn, cancelBtn]);\n }\n\n public showAllClick() {\n this.setState({ showAll: true });\n }\n public showLessClick() {\n this.setState({ showAll: false });\n }\n\n public toggleUnsubscribe(displayTitle, id) {\n var unsubscribeGroup = this.state.unsubscribeLists.find(x => x.displayTitle === displayTitle);\n if (unsubscribeGroup) {\n if (unsubscribeGroup.items.find(x => x.contentId === id)) {\n this.state.unsubscribeLists.find(x => x.displayTitle === displayTitle).items = unsubscribeGroup.items.filter(x => x.contentId !== id);\n }\n else {\n this.state.unsubscribeLists.find(x => x.displayTitle === displayTitle).items.push(this.state.alertSubscriptionList.find(x => x.displayTitle === displayTitle).subscriptions.find(x => x.contentId === id));\n }\n\n this.setState({ unsubscribeLists: this.state.unsubscribeLists });\n }\n else {\n this.state.unsubscribeLists.push({ displayTitle: displayTitle, items: [this.state.alertSubscriptionList.find(x => x.displayTitle === displayTitle).subscriptions.find(x => x.contentId === id)] });\n this.setState({ unsubscribeLists: this.state.unsubscribeLists });\n }\n }\n\n public render() {\n\t\tif (this.state.alertSubscriptionList.length > 0) {\n return (\n
\n
\n

My Alerts

\n
\n\n
\n
\n
    \n {\n this.state.alertSubscriptionList.map((group, gi) => {\n var className = gi == 0 ? \"nav-link active\" : \"nav-link\";\n var target = \"#myAlerts\" + group.displayTitle + \"Tab\";\n return (\n
  • \n {group.displayTitle}\n
  • \n )\n })\n }\n
\n
\n
\n\n
\n {\n this.state.alertSubscriptionList.map((group, gi) => {\n var className = gi == 0 ? \"tab-pane fade show active in\" : \"tab-pane fade\";\n var id = \"myAlerts\" + group.displayTitle + \"Tab\";\n return (\n
\n
\n
\n {group.subscriptions.length > 0\n ?\n
\n

By unchecking an item below and clicking the \"Save Changes\" button, you will no longer get notified of changes made to that particular {group.displayTitle.toLowerCase().substring(0, group.displayTitle.length - 1)}.

\n
    \n {\n !this.state.showAll ?\n group.subscriptions.slice(0, 10).map((s, i) => {\n return (\n
  • \n
    \n
    \n x.displayTitle === group.displayTitle) || !this.state.unsubscribeLists.find(x => x.displayTitle === group.displayTitle).items.find(x => x.contentId === s.contentId)} onChange={() => this.toggleUnsubscribe(group.displayTitle, s.contentId)} />\n \n
    \n
    Created {dateFormatter.DateFormatter.Format(s.creationDate)}
    \n
    \n
  • \n )\n })\n\n :\n group.subscriptions.map((s, i) => {\n return (\n
  • \n
    \n
    \n x.displayTitle === group.displayTitle) || !this.state.unsubscribeLists.find(x => x.displayTitle === group.displayTitle).items.find(x => x.contentId === s.contentId)} onChange={() => this.toggleUnsubscribe(group.displayTitle, s.contentId)} />\n \n
    \n
    Created {dateFormatter.DateFormatter.Format(s.creationDate)}
    \n
    \n
  • \n )\n })\n }\n
\n {\n group.subscriptions.length > 10 && (\n
\n
\n \n
\n
\n )\n }\n
\n
\n
\n \n
\n
\n
\n :\n

You currently have no {group.displayTitle} subscriptions

\n }\n
\n
\n
\n )\n })\n }\n
\n
\n );\n\t\t}\n\t\telse {\n\t\t\treturn (\n\t\t\t\t

You currently have no subscriptions

\n\t\t\t)\n\t\t}\n\t}\n\n}","import React from 'react';\nimport * as Follow from '../../follow';\n\nexport interface IBreadCrumbsProps {\n showBreadCrumbs?: boolean,\n breadCrumbID?: string,\n showFollowFlag?: boolean,\n followGuid?: string,\n followButtonClass?: string\n}\n\ninterface State { Crumbs: Array, IsFollowing: boolean, Loading:boolean }\n\ninterface Crumb {\n pageName: string,\n link?:string,\n}\nexport class BreadCrumbs extends React.Component {\n constructor(props) {\n super(props);\n this.state = { Crumbs: [], IsFollowing:false, Loading:true };\n }\n public componentDidMount() {\n this.getCrumbs();\n this.getFollowing();\n }\n private getCrumbs() {\n if (this.props.showBreadCrumbs) {\n $.getJSON('/api/breadcrumbs/GetCrumbs?page=' + this.props.breadCrumbID,\n function (data) {\n this.setState({ Crumbs: data.crumbs, Loading:false });\n }.bind(this));\n }\n }\n private getFollowing() {\n if (this.props.showFollowFlag && this.props.followGuid.length > 0) {\n Follow.Follow.GetIsFollowing(this.props.followGuid).then(function (isFollowing) {\n this.setState({ IsFollowing: isFollowing });\n }.bind(this))\n }\n }\n public render() {\n if (!this.props.showBreadCrumbs) {\n return (
);\n }\n return (\n
\n
\n
\n \n { this.state.Loading &&\n <>\n \n \n \n }\n { \n this.state.Crumbs.map((crumb, i) => {\n return (\n < >\n \n {\n crumb.link ?\n {crumb.pageName}\n : {crumb.pageName}\n }\n \n )\n })\n }\n
\n {this.props.showFollowFlag ?\n
\n : \"\"}\n
\n
\n )\n\t}\n}\n","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport * as DocumentsBase from '../Find/DocumentsBase';\nimport * as Follow from '../../follow';\nimport * as dateFormatter from '../../dateFormatter';\ninterface State { results: Array, query: DocumentsBase.DocumentItem }\n\ninterface ICDNDocProps {\n\tcdnid: string, \n disableFollowing: false, \n overrideDescription: false, \n description: string,\n findServiceUrl: string\n}\n\nexport class CDNDocument extends React.Component{\n\n constructor(props){\n super(props);\n this.state = { results: [], query: null }\n }\n\n constructResultItem() : DocumentsBase.DocumentItem {\n return new DocumentsBase.DocumentItem();\n }\n\n componentDidMount(){\n // Get Document Data from EpiFind \n this.GetDocumentMetadata().then((data: DocumentsBase.DocumentItem) => {\n this.setState({query: data});\n });\n }\n\n private GetDocumentMetadata() { \n var deferred = $.Deferred();\n var xmlhttp = new XMLHttpRequest();\n \n xmlhttp.open(\"GET\", this.props.findServiceUrl + \"/\" + this.props.cdnid, true);\n xmlhttp.onload = function(e) {\n var data = JSON.parse(xmlhttp.responseText);\n var parsedResult = this.parseResults(data);\n\n this.getFollowedStatus(parsedResult).then((subscriptionData) => { \n if(subscriptionData.subscriptions.length > 0){\n for(var i=0; i {\n if (prop != \"source\") {\n if (parsedSingleResult.source && parsedSingleResult.source[prop]) {\n parsedSingleResult[prop] = parsedSingleResult.source[prop];\n }\n else if (parsedSingleResult.source && parsedSingleResult.source.properties && parsedSingleResult.source.properties[prop]) {\n parsedSingleResult[prop] = parsedSingleResult.source.properties[prop];\n }\n else if (data && data.fields && data.fields[prop]) {\n parsedSingleResult[prop] = data.fields[prop];\n }\n } \n else if (parsedSingleResult[prop][\"Properties\"] && Object.keys(parsedSingleResult[prop][\"Properties\"]).length > 0) {\n var sourceProperties = parsedSingleResult[prop][\"Properties\"];\n Object.keys(sourceProperties).forEach(propertyKey => {\n parsedSingleResult[propertyKey] = sourceProperties[propertyKey]\n });\n }\n });\n\n return parsedSingleResult; \n }\n\n private getFollowedStatus(documentItem: DocumentsBase.DocumentItem){\n return $.ajax({\n url: \"/api/documents/GetSubscribedDocuments\",\n type: \"POST\",\n data: JSON.stringify([documentItem.DocumentGuid]),\n dataType: 'json',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n success: (data) => {\n return data;\n },\n error: (error) => {\n // An error happened\n }\n });\n }\n\n private renderFollow(){\n if(!this.props.disableFollowing){\n return (\n
\n

\n

\n );\n }\n }\n\n private renderDescription(){\n if(this.props.overrideDescription){\n return (\n
\n );\n } else {\n return (\n
\n {this.state.query.Description}\n
\n );\n }\n }\n\n render() {\n if(this.state.query == null) return (
) \n return(\n
\n
\n
\n

{this.state.query.Name}

\n {this.state.query.effectivedate ?
Posted On - {dateFormatter.DateFormatter.Format(this.state.query.effectivedate, \"MM-DD-YYYY\")}
: }\n
\n {this.renderDescription()} \n
\n {this.renderFollow()} \n \n
\n )\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\n\nexport interface ICallToActionLinkProps {\n primaryText: string;\n primaryIcon?: string;\n linkUrl?: string;\n linkText?: string;\n linkIcon?: string;\n ctaClass?: string;\n image?: string;\n imageString?: string;\n}\n\ninterface State {}\n\nexport class CallToActionLink extends React.Component{\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n private renderCTALink() {\n const linkText =
{this.props.linkText}
\n const linkIcon = \n const primaryIcon = \n\n if (!this.props.linkText && this.props.linkUrl) {\n return (\n \n )\n }\n\n else {\n return (\n
\n {this.props.imageString ?\n \n : \"\"\n }\n
\n\n {this.props.primaryIcon ? primaryIcon : ''}\n
{this.props.primaryText}
\n\n {this.props.linkUrl ?\n //create an tag that will surround the Link text and icon, making it clickable\n \n {this.props.linkText ? linkText : ''}\n {this.props.linkIcon ? linkIcon : ''}\n \n\n //otherwise if there is not a link url, create a normal, non-clickable div around the link text and icon\n :
\n {this.props.linkText ? linkText : ''}\n {this.props.linkIcon ? linkIcon : ''}\n
\n }\n
\n
\n )\n } \n }\n\n public render() {\n return this.renderCTALink()\n \n } //end render function bracket\n}\n\n","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\n\ninterface ICallToActionSideBarProps {\n primaryText: string;\n secondaryText?: string;\n image?: string;\n imageString?: string;\n imageString2?: string;\n ctaClass?: string;\n buttonLinks?: Array;\n alignRightButtons: boolean;\n secondaryTextDangerous?: boolean;\n}\nexport interface epiLinks {\n subHeader?: string;\n text?: string;\n url?: any;\n icon?: string;\n openInNewTab: boolean;\n}\n\ninterface State {\n}\n\nexport class CallToActionSideBar extends React.Component{\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n public render() {\n //console.log(this.props);\n return (\n
\n {this.props.imageString ?
: \"\"}\n
\n
\n

{this.props.primaryText}

\n {(this.props.secondaryText ?\n this.props.secondaryTextDangerous ?

\n :

{this.props.secondaryText}

: \"\")}\n
\n\n
\n {this.props.buttonLinks ? this.props.buttonLinks.map(function (item, index) {\n return (\n {item.text} {item.icon ? : \"\"} \n )\n \n }) : \"\"}\n
\n
\n
\n )\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\n\ninterface IClickableImageBlocksProps {\n imageString: string;\n image: string;\n linkUrl?: string;\n buttonText?: string;\n showBorder?: boolean;\n}\n\ninterface State {}\n\nexport class ClickableImageBlocks extends React.Component{\n\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n public render() {\n return (\n \n )\n }\n}\n","import React from 'react';\nimport {IContentAlertListProps} from './ContentAlertList'\n\nexport interface IContentAlertSubscription { id: number, contentId: string, contentName: string, contentUrl: string, contentTypeId: string, source: string, creationDate: Date }\nexport interface IContentAlert { id: number, subscription: IContentAlertSubscription, creationDate: Date }\nexport interface IContentAlertResult { alertId: number, subscriberId: number, wasClicked: boolean, wasProcessed: boolean, processedDate: Date }\n\nexport interface IContentAlertItem { alert: IContentAlert, result: IContentAlertResult }\nexport interface IContentAlertItemProps { alert: IContentAlert, result: IContentAlertResult, index: number, parentProps: IContentAlertListProps, contentType: string }\n\ninterface State {\n\tdeleted: boolean\n}\n\nexport default class ContentAlertItem extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = { deleted: false };\n\t}\n\n\tprivate padTimeElement(str) {\n str = str.toString();\n return str.length < 2 ? \"0\" + str : str;\n}\n\n\tprivate formatDateTime(date: Date) {\n\t\tvar datestring = (\"0\" + (date.getMonth() + 1)).slice(-2) +\n\t\t\t\"/\" +\n\t\t\t(\"0\" + date.getDate()).slice(-2) +\n\t\t\t\"/\" +\n\t\t\tdate.getFullYear();\n\t\t\t\n\n\t\tif (this.props.parentProps.mode === 0) {\n\t\t\tvar hour = date.getHours();\n\t\t\tvar ampm = (hour < 12) ? \"AM\" : \"PM\";\n\t\t\tif (hour > 12) {\n\t\t\t\thour = hour - 12;\n\t\t\t}\n\t\t\tif (hour === 0) {\n\t\t\t\thour = 12;\n\t\t\t}\n\n\t\t\tdatestring += ' ' +\n\t\t\t\thour +\n\t\t\t\t\":\" +\n\t\t\t\tthis.padTimeElement(date.getMinutes()) +\n\t\t\t\t' ' +\n\t\t\t\tampm;\n\t\t}\n\n\t\treturn datestring;\n\t}\n\n\tprivate alertClicked() {\n\t\t$.ajax({\n\t\t\turl: this.props.parentProps.endpoint + \"UserAlertClicked?alertId=\" + this.props.alert.id,\n\t\t\ttype: 'POST',\n // dataType: 'json',\n\t\t\t//headers: {\n\t\t\t//\t'Accept': 'application/json',\n\t\t\t//\t'Content-Type': 'application/json'\n\t\t\t//}\n\t\t});\n\t}\n\n\tprivate alertDeleted() {\n\t\t$.ajax({\n\t\t\turl: this.props.parentProps.endpoint + \"DeleteUserAlert?alertId=\" + this.props.alert.id,\n\t\t\ttype: 'POST',\n // dataType: 'json',\n\t\t\t//headers: {\n\t\t\t//\t'Accept': 'application/json',\n\t\t\t//\t'Content-Type': 'application/json'\n\t\t\t//},\n\t\t\tsuccess: function () { this.setState({ deleted: true }); }.bind(this),\n\t\t\terror: function (data) { console.log('an error occured when attempting to delete'); }.bind(this)\n\t\t});\n\t}\n\n\tprivate navigateToAlertSubscriptionsource() {\n\t\tthis.alertClicked();\n\t\twindow.location.href = this.props.alert.subscription.contentUrl;\n\t}\n\n\tpublic render() {\n\t\treturn (\n\t\t\t
\n\t\t\t\t\n\t\t\t
\n\t\t)\n\t}\n}","import React from 'react';\nimport * as ReactDOM from \"react-dom\";\nimport ContentAlertItem from './ContentAlertItem';\nimport {IContentAlertItem} from './ContentAlertItem';\n\nexport enum ContentAlertListMode {\n\tFull = 0,\n\tDropdown = 10\n}\n\nexport interface IContentAlertListProps { endpoint: string; mode: ContentAlertListMode }\ninterface ISourceNameMapping { sourceName: string, contentTypeId: string, displayTitle: string }\ninterface IContentAlertGrouping { displayTitle: string; alerts: Array }\n\nclass ContentAlertGrouping implements IContentAlertGrouping {\n\t displayTitle: string; alerts: Array;\n\t constructor(displayTitle: string, alerts?: Array) { this.displayTitle = displayTitle; this.alerts = alerts || new Array(); }\n}\n\ninterface State {\n\talerts: Array;\n\tnumberOfUnseenAlerts: number;\n\tfullAlertsListUrl: string;\n\tsourceNameMappings: Array;\n\tgroupedAlerts: Array;\n\n}\n\nexport class ContentAlertList extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = { alerts: [], numberOfUnseenAlerts: 0, fullAlertsListUrl: '', sourceNameMappings: [], groupedAlerts: [] };\n\t}\n\n\t public componentDidMount() {\n\t\t if (this.props.mode != ContentAlertListMode.Full) {\n\t\t\t $(ReactDOM.findDOMNode(this)).parent().css(\"display\", \"inline-block\");\n\t\t }\n\t\t this.getActiveContentAlertData();\n\t}\n\n\t private getActiveContentAlertData() {\n\t\t var maxitems: string = \"\";\n\t\t if (this.props.mode != ContentAlertListMode.Full) {\n\t\t\t maxitems = \"?maxItems=5\";\n\t\t }\n\t\t return $.getJSON(this.props.endpoint + \"GetActiveContentAlertData\" + maxitems,\n\t\t\tfunction (data) {\n\t\t\t\tthis.setState(data);\n\t\t\t\tthis.setState({ groupedAlerts: this.groupAlerts() });\n\t\t\t\tif (this.props.mode == ContentAlertListMode.Full) {\n\t\t\t\t\tthis.userCheckedAlerts();\n\t\t\t\t}\n\t\t\t}.bind(this));\n\t }\n\n\t private userCheckedAlerts() {\n\t\t $.ajax({\n\t\t\t url: this.props.endpoint + \"UserCheckedAlerts\",\n\t\t\t type: 'POST',\n\t\t\t //dataType: 'json',\n\t\t\t// headers: {\n\t\t\t//\t 'Accept': 'application/json',\n\t\t\t//\t 'Content-Type': 'application/json'\n\t\t\t// },\n\t\t\t success: function (data) { this.setState({ numberOfUnseenAlerts: 0 }) }.bind(this),\n\t\t\t error: function (jqxhr, status, err) { console.log('an error occured when attempting to mark alerts as seen' + err); }.bind(this)\n\t\t });\n\t }\n\n\t private groupAlerts() {\n\t\t var groupedAlerts = new Array();\n\t\t var contentTypeMaps:Array = this.state.sourceNameMappings.filter(function (mapping: ISourceNameMapping) { return mapping.contentTypeId; });\n\t\t var sourcesWithContentTypeMaps: { [SourceName: string]: Array } = {};\n\t\t var mapping: ISourceNameMapping;\n\n\t\t for (var i = 0; i < this.state.sourceNameMappings.length; i++) {\n\t\t\t mapping = this.state.sourceNameMappings[i];\n\t\t\t if (mapping.contentTypeId) {\n\t\t\t\t if (sourcesWithContentTypeMaps[mapping.sourceName]) {\n\t\t\t\t\t sourcesWithContentTypeMaps[mapping.sourceName].push(mapping.contentTypeId.toLowerCase());\n\t\t\t\t }\n\t\t\t\t else\n\t\t\t\t {\n\t\t\t\t\t sourcesWithContentTypeMaps[mapping.sourceName] = [ mapping.contentTypeId.toLowerCase() ];\n\t\t\t\t }}\n\t\t\t }\n\n\t\t for(var i = 0; i < this.state.sourceNameMappings.length; i++) {\n\t\t\t mapping = this.state.sourceNameMappings[i];\n\t\t\t groupedAlerts.push(new ContentAlertGrouping(mapping.displayTitle, this.state.alerts.filter(function (alert: IContentAlertItem) {\n\t\t\t\t return (mapping.contentTypeId && alert.alert.subscription.contentTypeId && alert.alert.subscription.source\n\t\t\t\t\t\t&& alert.alert.subscription.contentTypeId.toLowerCase() === mapping.contentTypeId.toLowerCase() && alert.alert.subscription.source.toLowerCase() === mapping.sourceName.toLowerCase())\n\t\t\t\t\t || (!(sourcesWithContentTypeMaps[mapping.sourceName] && alert.alert.subscription.contentTypeId && sourcesWithContentTypeMaps[mapping.sourceName].indexOf(alert.alert.subscription.contentTypeId) >= 0)\n\t\t\t\t\t && !(mapping.contentTypeId) && alert.alert.subscription.source && alert.alert.subscription.source.toLowerCase() === mapping.sourceName.toLowerCase());\n\t\t\t })));\n\t\t }\n\n\t\t return groupedAlerts;\n\t }\n\n\tprivate renderAlerts(name: string, alerts: Array) {\n\t\tif (!alerts || alerts.length === 0) {\n\t\t\treturn (
There are no recent alerts for your followed {name}.
);\n\t\t}\n\t\tif (!this.state.groupedAlerts || this.state.groupedAlerts.length === 0) {\n\t\t\treturn (
There are no recent alerts for your followed {name}.
);\n\t\t}\n\t\treturn (\n\t\t\t
\n\t\t\t\t{this.props.mode === ContentAlertListMode.Dropdown && (\n\t\t\t\t\t
Followed Content Alerts
\n\t\t\t\t)}\n\t\t\t\t{\n\t\t\t\t\talerts.map((subscriberAlert: IContentAlertItem, i) => {\n\t\t\t\t\t\tvar contentType = '';\n\t\t\t\t\t\tthis.state.groupedAlerts.forEach((group) => {\n\t\t\t\t\t\t\tif (group.alerts.find(x => x.alert.subscription.contentId === subscriberAlert.alert.subscription.contentId)) {\n\t\t\t\t\t\t\t\tcontentType = group.displayTitle.substring(0, group.displayTitle.length - 1);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn ();\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t
\n\t\t);\n\t }\n\n public render() {\n\t\t if (this.props.mode == ContentAlertListMode.Full && this.state.groupedAlerts && this.state.groupedAlerts.length > 0) {\n\t\t\treturn (
\n\t\t\t\t{\n\t\t\t\tthis.state.groupedAlerts.map((alertGroup, i) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t

{alertGroup.displayTitle}

\n\t\t\t\t\t\t\t{ this.renderAlerts(alertGroup.displayTitle, alertGroup.alerts) }\n\t\t\t\t\t\t
\n\t\t\t\t\t);\n\t\t\t\t\t})\n\t\t\t\t}
\n\t\t\t);\n\t\t} else {\n\t\t\treturn (\n\t\t\t\t
\n\t\t\t\t\t this.userCheckedAlerts()}>\n\t\t\t\t\t\t\n\t\t\t\t\t\t{this.state.numberOfUnseenAlerts}\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t{ this.renderAlerts(\"Content\", this.state.alerts) }\n\t\t\t\t\t\t

View All

\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t);\n\t\t}\n\t}\n}","import React from 'react';\nimport DocumentNavigationItem, {IDocumentNavigationItem,IDocumentNavigatorFilter} from './DocumentNavigatorItem';\nimport DocumentNavigationMenu from './DocumentNavigatorMenu';\nimport DocumentNavigationTagCrumbs from './DocumentNavigatorTagCrumbs';\n\n\ninterface IDocumentNavigatorProps { \n InitialFilters:Array;\n\tDocumentNavigation:IDocumentNavigationItem;\n EnableFollowDocuments: boolean;\n OpenDocumentsInNewTarget: boolean;\n}\n\ninterface IDocumentNavigatorState {\n currentNavigationPath:Array;\n currentNavigationItem:IDocumentNavigationItem; \n navigationQueryValues:{[key:string]: string}; \n}\n\nexport class DocumentNavigator extends React.Component{\n private documentNavigationItemPanel:DocumentNavigationItem;\n\n constructor(props){\n super(props);\n this.state = { currentNavigationPath: [], currentNavigationItem: null, navigationQueryValues: {} };\n this.clickedNavigationItemCrumb = this.clickedNavigationItemCrumb.bind(this);\n this.clickedNavigationPropertyValue = this.clickedNavigationPropertyValue.bind(this); \n }\n\n componentWillMount() {\n addEventListener(\"hashchange\", this.handlePop.bind(this));\n }\n \n componentWillUnmount() {\n removeEventListener(\"hashchange\", this.handlePop.bind(this));\n }\n \n private prevUrl:string;\n public handlePop(event:HashChangeEvent) {\n let numnewlevels = (event.newURL || location.href).split(\"|\").length;\n let numoldlevels = (event.oldURL || this.prevUrl || \"\").split(\"|\").length;\n this.prevUrl = location.href;\n if (numnewlevels >= numoldlevels) {\n let lastNav = location.hash.substring(location.hash.lastIndexOf(\"|\") + 1);\n let slashspot = lastNav.indexOf(\"/\");\n let parentPropertyValue = slashspot > 0 ? lastNav.substring(0, slashspot) : lastNav;\n let childPropertySystemName = slashspot > 0 ? lastNav.substring(slashspot + 1) : null;\n\n this.clickedNavigationPropertyValue(parentPropertyValue, childPropertySystemName);\n }\n }\n\n public componentDidMount() {\n if (this.props.DocumentNavigation) {\n let initialNavigationState = this.props.DocumentNavigation;\n if (!initialNavigationState.title && ! initialNavigationState.parentPropertyValue) {\n initialNavigationState.title = \"Home\";\n }\n let currentNavigationPath = this.state.currentNavigationPath || [];\n currentNavigationPath.push(initialNavigationState);\n\n let navigationQueryValues = this.state.navigationQueryValues || {};\n this.setState( { \n currentNavigationPath: currentNavigationPath, \n currentNavigationItem: initialNavigationState,\n navigationQueryValues: navigationQueryValues\n }, this.parseDrillDownFromHashPath.bind(this));\n }\n }\n \n async parseDrillDownFromHashPath() {\n let decodedHash = location.hash ? decodeURIComponent(location.hash) : null;\n if (decodedHash && decodedHash.indexOf(\"|\") > 0 && decodedHash.indexOf(\"#/\") === 0) {\n this.documentNavigationItemPanel.setLoadingState();\n let navigationQueryValues = this.state.navigationQueryValues;\n let currentNavigationPath = this.state.currentNavigationPath;\n let paths = decodedHash.substring(2).split('|');\n let autonavItem = this.state.currentNavigationItem;\n\n for (let pathLevel = 0; pathLevel < paths.length; pathLevel++) {\n if (pathLevel > 0 && autonavItem) {\n let path = paths[pathLevel];\n let slashspot = path.indexOf(\"/\");\n let propertyValue = slashspot > 0 ? path.substring(0, slashspot) : path;\n let nextPropertySystemName = slashspot > 0 ? path.substring(slashspot + 1) : null;\n let nextNavigationItem:IDocumentNavigationItem = null;\n\n navigationQueryValues[autonavItem.childPropertySystemName] = propertyValue;\n \n if (autonavItem.childDocumentNavigationItems && autonavItem.childDocumentNavigationItems.length) {\n for (var i = 0; i < autonavItem.childDocumentNavigationItems.length; i++) {\n if (autonavItem.childDocumentNavigationItems[i].parentPropertyValue == propertyValue) {\n nextNavigationItem = autonavItem.childDocumentNavigationItems[i];\n break;\n }\n }\n }\n \n if (nextNavigationItem) {\n currentNavigationPath.push(nextNavigationItem); \n \n if (nextNavigationItem && nextNavigationItem.useDynamicChoiceMode && !(nextNavigationItem.childDocumentNavigationItems && nextNavigationItem.childDocumentNavigationItems.length > 0)) {\n await this.getDynamicNavigationItems(navigationQueryValues, currentNavigationPath, nextNavigationItem, true); \n }\n\n autonavItem = nextNavigationItem;\n } else {\n break;\n }\n\n }\n }\n\n this.setState({ \n currentNavigationPath: currentNavigationPath, \n currentNavigationItem: autonavItem,\n navigationQueryValues: navigationQueryValues\n });\n }\n }\n\n private clickedNavigationItemCrumb(index:number) {\n var currentNavigationPath = this.state.currentNavigationPath || [];\n var navigationQueryValues = this.state.navigationQueryValues || {};\n var lastUnremovedNavigationItem = currentNavigationPath[currentNavigationPath.length - 1];\n\n if (index < currentNavigationPath.length - 1) {\n var removedNavagationItems = currentNavigationPath.splice(index + 1);\n lastUnremovedNavigationItem = currentNavigationPath[currentNavigationPath.length - 1];\n\n for (var i = 0; i < removedNavagationItems.length; i++) {\n if (navigationQueryValues[removedNavagationItems[i].childPropertySystemName]) {\n delete navigationQueryValues[removedNavagationItems[i].childPropertySystemName];\n }\n }\n\n if (navigationQueryValues[lastUnremovedNavigationItem.childPropertySystemName]) {\n delete navigationQueryValues[lastUnremovedNavigationItem.childPropertySystemName];\n }\n } \n \n this.setState({\n currentNavigationPath: currentNavigationPath,\n currentNavigationItem: currentNavigationPath[currentNavigationPath.length - 1],\n navigationQueryValues: navigationQueryValues\n });\n }\n\n private clickedNavigationPropertyValue(propertyValue:string, childPropertySystemName:string, suppressStateUpdate:boolean = false) {\n var navigationQueryValues = this.state.navigationQueryValues || {};\n var currentNavigationItem = this.state.currentNavigationItem;\n var currentNavigationPath = this.state.currentNavigationPath || [];\n var nextNavigationItem:IDocumentNavigationItem = null;\n\n if (currentNavigationItem) {\n if(currentNavigationItem.childPropertySystemName && currentNavigationItem.childPropertySystemName != childPropertySystemName){\n navigationQueryValues[currentNavigationItem.childPropertySystemName] = propertyValue;\n\n if (currentNavigationItem.childDocumentNavigationItems && currentNavigationItem.childDocumentNavigationItems.length) {\n for (var i = 0; i < currentNavigationItem.childDocumentNavigationItems.length; i++) {\n if (currentNavigationItem.childDocumentNavigationItems[i].parentPropertyValue == propertyValue) {\n nextNavigationItem = currentNavigationItem.childDocumentNavigationItems[i];\n break;\n }\n }\n }\n\n if (nextNavigationItem) {\n currentNavigationPath.push(nextNavigationItem);\n }\n } else {\n // current item switches to sibling\n var currentNavDepth = currentNavigationPath.length;\n var parentNavigationItem = currentNavigationPath[currentNavDepth > 1 ? currentNavDepth - 2 : 0];\n\n navigationQueryValues[parentNavigationItem.childPropertySystemName] = propertyValue;\n \n for (var i = 0; i < parentNavigationItem.childDocumentNavigationItems.length; i++){\n if(parentNavigationItem.childDocumentNavigationItems[i].parentPropertyValue == propertyValue){\n nextNavigationItem = parentNavigationItem.childDocumentNavigationItems[i];\n break;\n }\n }\n\n // update nav path\n currentNavigationPath[currentNavigationPath.length - 1] = nextNavigationItem;\n } \n }\n\n if (nextNavigationItem && nextNavigationItem.useDynamicChoiceMode && !(nextNavigationItem.childDocumentNavigationItems && nextNavigationItem.childDocumentNavigationItems.length > 0)) {\n this.documentNavigationItemPanel.setLoadingState();\n this.getDynamicNavigationItems(navigationQueryValues, currentNavigationPath, nextNavigationItem, suppressStateUpdate); \n } else if (!suppressStateUpdate) {\n this.setState( { \n navigationQueryValues: navigationQueryValues, \n currentNavigationPath: currentNavigationPath, \n currentNavigationItem: nextNavigationItem\n });\n }\n }\n\n private getDynamicNavigationItems(navigationQueryValues = this.state.navigationQueryValues, currentNavigationPath = this.state.currentNavigationPath, nextNavigationItem = this.state.currentNavigationItem, suppressStateUpdate:boolean = false) : Promise {\n var promise1 = new Promise((resolve, reject) => {\n var body = {\n QueryValues: navigationQueryValues,\n NavigationItem: nextNavigationItem,\n EnableFollowDocuments: this.props.EnableFollowDocuments\n };\n\n $.ajax({\n url: '/api/documents/getdynamicnavigationitems',\n type: 'POST',\n data: JSON.stringify(body),\n dataType: 'json',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n success: function (data) {\n if (data) {\n\n if (data.navigationItems) {\n nextNavigationItem.childDocumentNavigationItems = data.navigationItems;\n }\n\n if (data.documents) {\n nextNavigationItem.loadedNavigableDocuments = data.documents;\n nextNavigationItem.totalAvailableResults = data.documents.length;\n }\n\n if (!suppressStateUpdate) {\n this.setState( { \n navigationQueryValues: navigationQueryValues, \n currentNavigationPath: currentNavigationPath, \n currentNavigationItem: nextNavigationItem\n });\n }\n } else {\n this.documentNavigationItemPanel.setLoadingState(false);\n }\n resolve();\n }.bind(this),\n error: function (data) {\n this.documentNavigationItemPanel.setLoadingState(false);\n reject();\n }.bind(this)\n });\n });\n\n return promise1;\n }\n\n public render() {;\n if (!this.state.currentNavigationPath || !this.state.currentNavigationPath.length || !this.state.currentNavigationItem)\n return (
);\n return (\n
\n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n { this.documentNavigationItemPanel = instance } } />\n
\n
\n
\n
\n
\n
\n );\n }\n}","import React from 'react';\nimport Moment from 'moment';\nimport * as Follow from '../../follow';\nimport * as awesome from '../../awesome';\nimport * as dateFormatter from '../../dateFormatter';\n\nexport interface IDocumentNavigationItem {\n parentPropertyValue: string;\n title: string;\n summary: string;\n childPropertySystemName: string;\n childDocumentNavigationItems: Array;\n displayResultInGrid: boolean;\n resultSortField: string;\n\tresultSortDirection: string;\n gridMetadataColumns: Array;\n tableStyle: string;\n dynamicChoiceSortDirection: string;\n useDynamicChoiceMode: string;\n useDynamicYearNavigation: boolean;\n useDynamicQuarterNavigation: boolean;\n useDynamicMonthNavigation: boolean;\n useDynamicDayNavigation: boolean;\n loadedNavigableDocuments: Array;\n useDisplayTitle: boolean;\n totalAvailableResults:number;\n}\n\nexport interface INavigableDocument {\n guid:string;\n fileName:string;\n url:string;\n isFollowing:Boolean;\n metadata:{[key:string]: any};\n}\n\nexport interface IDocumentNavigatorFilter {\n propertyName:string;\n operator:string;\n value:string;\n}\n\nexport interface IDocumentGridColumnDefinitionItem {\n propertyName:string;\n title:string;\n alignment?:\"start\"|\"left\"|\"center\"|\"right\"|\"end\";\n}\n\ninterface IDocumentNavigationItemProps { \n documentNavigationItem: IDocumentNavigationItem,\n navigationQueryValues: {[key:string]: string},\n filters: Array,\n enableFollowDocuments: boolean,\n openDocumentsInNewTarget: boolean\n}\n\ninterface State {\n navigableDocuments:Array;\n loading: boolean;\n pageSize: number;\n page: number;\n totalAvailableResults: number;\n}\n\nconst defaultPageSize = 10;\n\nexport default class documentNavigationItem extends React.Component{\n constructor(props){\n super(props);\n this.state = {navigableDocuments: null, loading: true, pageSize: defaultPageSize, page: 0, totalAvailableResults: 0};\n }\n\n public componentDidMount() {\n this.getNavigableDocuments();\n }\n\n public componentDidUpdate(prevProps, prevState) {\n if(this.props.documentNavigationItem.parentPropertyValue != prevProps.documentNavigationItem.parentPropertyValue\n || this.props.documentNavigationItem.childPropertySystemName != prevProps.documentNavigationItem.childPropertySystemName){\n this.setState({navigableDocuments: null, loading: true, pageSize: defaultPageSize, page: 0, totalAvailableResults: this.props.documentNavigationItem.totalAvailableResults || 0},\n () => this.getNavigableDocuments());\n } else if (prevState.pageSize != this.state.pageSize || prevState.page != this.state.page) {\n this.getNavigableDocuments();\n }\n }\n\n public setSort(propertyName) {\n if (this.props.documentNavigationItem.resultSortField === propertyName) {\n if (this.props.documentNavigationItem.resultSortDirection === \"desc\") {\n this.props.documentNavigationItem.resultSortDirection = \"asc\";\n } else {\n this.props.documentNavigationItem.resultSortDirection = \"desc\";\n }\n } else {\n this.props.documentNavigationItem.resultSortField = propertyName;\n this.props.documentNavigationItem.resultSortDirection = \"asc\";\n }\n\n let sortReturnValue = (this.props.documentNavigationItem.resultSortDirection === \"desc\") ? -1 : 1;\n\n // if we already have all the results, we can sort them locally, but if we only have partially paged results,\n // we will only have accurate data if we wipe out the pre-loaded documents and let the service give us sorted pages\n if (this.state.totalAvailableResults && this.props.documentNavigationItem.loadedNavigableDocuments \n && (this.props.documentNavigationItem.loadedNavigableDocuments.length >= this.state.totalAvailableResults)) {\n this.props.documentNavigationItem.loadedNavigableDocuments = this.props.documentNavigationItem.loadedNavigableDocuments.sort((navDoc1, navDoc2) => {\n let val1 = navDoc1[propertyName] || navDoc1.metadata[propertyName];\n let val2 = navDoc2[propertyName] || navDoc2.metadata[propertyName];\n if (!val1 && !val2) {\n return 0;\n } else if (!val1 && val2) {\n return 1;// -sortReturnValue; these two null checks Should use -sortReturnValue and sortReturnValue respectively, but qbank always sorts empty values at the bottom\n } else if (val1 && !val2) {\n return -1;// sortReturnValue;\n } else if (val1 < val2) {\n return -sortReturnValue;\n } else if (val1 > val2) {\n return sortReturnValue;\n } else {\n return 0;\n }\n });\n } else {\n this.props.documentNavigationItem.loadedNavigableDocuments = [];\n }\n\n this.getNavigableDocuments();\n }\n\n private onPageSizeChanged (event) {\n if (event.target.value != this.state.pageSize) {\n this.setState({page: 0, pageSize: event.target.value});\n }\n }\n\n private selectResultsPage (pageIndex) {\n var numPages = Math.ceil(this.state.totalAvailableResults / this.state.pageSize);\n\n if (pageIndex >= 0 && pageIndex < numPages && pageIndex != this.state.page) {\n this.setState({page: pageIndex});\n }\n }\n\n private setCurrentNavigableDocumentsFromLoaded(resolve:(value?: void | PromiseLike) => void, props = this.props, totalAvailableResults:number) {\n if (!props.documentNavigationItem.totalAvailableResults || props.documentNavigationItem.totalAvailableResults != totalAvailableResults) {\n props.documentNavigationItem.totalAvailableResults = totalAvailableResults;\n }\n\n if (props === this.props) {\n this.setState( { \n navigableDocuments: this.state.pageSize > 0 ? props.documentNavigationItem.loadedNavigableDocuments.slice((this.state.page * this.state.pageSize), ((this.state.page + 1) * this.state.pageSize)) : props.documentNavigationItem.loadedNavigableDocuments, \n totalAvailableResults: totalAvailableResults,\n loading: false\n }, () => resolve());\n } else {\n resolve();\n }\n }\n\n private getNavigableDocumentsPromises:Promise[] = [];\n\n private getNavigableDocuments(props = this.props) {\n if (this.getNavigableDocumentsPromises.length > 0) {\n this.getNavigableDocumentsPromises[this.getNavigableDocumentsPromises.length - 1].then(() => \n this.getNavigableDocumentsPromises.push(this.getNavigableDocumentsPromised(props)));\n } else {\n this.getNavigableDocumentsPromises.push(this.getNavigableDocumentsPromised(props));\n }\n }\n \n private getNavigableDocumentsPromised(props = this.props):Promise{\n return new Promise((resolve, reject) => {\n this.executeGetNavigableDocuments(resolve, reject, props);\n });\n }\n\n private executeGetNavigableDocuments(resolve:(value?: void | PromiseLike) => void, reject:(reason?:any) => void, props = this.props) { \n if (!this.state.loading) {\n this.setState({loading: true}, () => this.executeGetNavigableDocuments(resolve, reject, props));\n } else if (props.documentNavigationItem.loadedNavigableDocuments \n && (props.documentNavigationItem.loadedNavigableDocuments.length >= this.state.totalAvailableResults\n || (this.state.pageSize > 0 && props.documentNavigationItem.loadedNavigableDocuments.length >= ((this.state.page + 1) * this.state.pageSize))) ) {\n this.setCurrentNavigableDocumentsFromLoaded(resolve, props, this.state.totalAvailableResults);\n } else {\n var body = {\n QueryValues: props.navigationQueryValues,\n NavigationItem: props.documentNavigationItem,\n Filters: props.filters,\n enableFollowDocuments: props.enableFollowDocuments,\n Top: null,\n Skip: null\n };\n\n if (props.documentNavigationItem.loadedNavigableDocuments && props.documentNavigationItem.loadedNavigableDocuments.length && props.documentNavigationItem.loadedNavigableDocuments.length > 0) {\n body.Skip = props.documentNavigationItem.loadedNavigableDocuments.length;\n }\n\n if (this.state.pageSize && this.state.pageSize > 0) {\n if (body.Skip) {\n body.Top = ((this.state.page + 1) * this.state.pageSize) - body.Skip\n } else {\n body.Top = this.state.pageSize;\n }\n }\n\n $.ajax({\n url: '/api/documents/getnavigabledocuments',\n type: 'POST',\n data: JSON.stringify(body),\n dataType: 'json',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n success: function (data) {\n if (data.documents) {\n if (!props.documentNavigationItem.loadedNavigableDocuments) {\n props.documentNavigationItem.loadedNavigableDocuments = [];\n }\n data.documents.map((doc, i) => {\n props.documentNavigationItem.loadedNavigableDocuments.push(doc);\n }); \n \n this.setCurrentNavigableDocumentsFromLoaded(resolve, props, data.totalAvailableResults);\n }\n }.bind(this),\n error: function (data) {\n this.setState( { \n navigableDocuments: null,\n totalAvailableResults: 0,\n loading: false\n }, () => resolve());\n }.bind(this)\n });\n }\n }\n\n public setLoadingState(loadingState:boolean = true) {\n this.setState( { loading: loadingState });\n }\n\n public renderDocuments() {\n if(this.state.loading){\n return (
)\n } else {\n if(this.state.navigableDocuments != null && this.state.navigableDocuments.length > 0){\n if (this.props.documentNavigationItem.displayResultInGrid === true\n && this.props.documentNavigationItem.gridMetadataColumns && this.props.documentNavigationItem.gridMetadataColumns.length > 0) {\n return (\n \n \n \n {\n this.props.documentNavigationItem.gridMetadataColumns.map((col, colindex) => {\n if (col.propertyName === \"ObjectId\" || col.propertyName === \"CreatedBy\" || col.propertyName === \"UpdatedBy\") {\n return (\n \n )\n } else {\n return (\n \n )\n }\n })\n }\n \n \n \n \n \n {this.renderMetadataBody()} \n
\n {col.title || col.propertyName}\n this.setSort(col.propertyName) } id={col.propertyName} className={ col.propertyName === this.props.documentNavigationItem.resultSortField ? \"colheader-sortable colheader-sorted-\" + (this.props.documentNavigationItem.resultSortDirection || \"asc\") : \"colheader-sortable colheader-unsorted\" } >\n {col.title || col.propertyName}\n
{this.props.documentNavigationItem.gridMetadataColumns[0].title || this.props.documentNavigationItem.gridMetadataColumns[0].propertyName }
\n )\n } else {\n return (\n this.state.navigableDocuments.map((doc, i) => {\n return (\n
\n \n \n {doc.fileName} \n \n {this.renderFollow(doc)}\n
\n ) \n })\n )\n }\n } else {\n return (\n
In order to view documents related to {this.props.documentNavigationItem.title || this.props.documentNavigationItem.parentPropertyValue}, continue using the navigation on the left.
\n )\n }\n } \n }\n\n public renderPagingDescription() {\n if (this.state.pageSize > 0 && this.state.navigableDocuments.length < this.state.totalAvailableResults) {\n return (
Showing { (this.state.page * this.state.pageSize) + 1 }-{ Math.min((this.state.page + 1) * this.state.pageSize, this.state.totalAvailableResults) } of { this.state.totalAvailableResults } Entries
)\n } else {\n return (
Showing {this.state.navigableDocuments.length} Entries
)\n }\n \n }\n\n public renderPaging() {\n if (this.state.totalAvailableResults > defaultPageSize\n && this.state.navigableDocuments != null && this.state.navigableDocuments.length > 0) {\n var numPages = Math.ceil(this.state.totalAvailableResults / this.state.pageSize);\n var pageIndexes = [];\n var pageSizeValues = [5, 10, 25, 50, 100, 500]; // Set possible values for page size selector\n var pageSizeOptions = [];\n\n var first = (this.state.page < 2 ? 0 : this.state.page - 2);\n var last = (this.state.page < 2 ? 4 : this.state.page + 2);\n\n if(last > numPages - 1) {\n last = numPages - 1; \n first = last - 4 < 0 ? 0 : last -4;\n }\n\n for (var pageIndex = first; pageIndex <= last; pageIndex++){\n pageIndexes.push({index: pageIndex, label: pageIndex + 1, disabled: false});\n }\n\n for (var pageSizeIndex = 0; pageSizeIndex < pageSizeValues.length; pageSizeIndex++){\n if(pageSizeIndex > 0){\n if(this.state.totalAvailableResults / pageSizeValues[pageSizeIndex] > 2){\n pageSizeOptions.push({pageSizeValue: pageSizeValues[pageSizeIndex], pageSizeText: pageSizeValues[pageSizeIndex] + \" per page\"});\n }\n } else {\n pageSizeOptions.push({pageSizeValue: pageSizeValues[pageSizeIndex], pageSizeText: pageSizeValues[pageSizeIndex] + \" per page\"});\n }\n }\n\n if(this.state.totalAvailableResults < 1000){\n pageSizeOptions.push({pageSizeValue: -1, pageSizeText: \"All Results\"});\n }\n return (\n
\n { this.renderPagingDescription() }\n
    \n
  • this.selectResultsPage(0)}>\n \n \n First\n \n
  • \n
  • this.selectResultsPage(this.state.page - 1)}>\n \n \n Previous\n \n
  • \n {\n pageIndexes.map((pageIndex, i) => {\n return (
  • this.selectResultsPage(pageIndex.index)}>{pageIndex.label}
  • )\n })\n }\n
  • = (numPages - 1) ? \"disabled page-item\" : \"page-item\"} onClick={() => this.selectResultsPage(this.state.page + 1)}>\n \n \n Next\n \n
  • \n
  • = (numPages - 1) ? \"disabled page-item\" : \"page-item\"} onClick={() => this.selectResultsPage(numPages - 1)}>\n \n \n Last\n \n
  • \n
\n \n
\n )\n } else {\n return (\n
\n )\n }\n }\n\n public renderMetadataBody(){ \n return( \n this.state.navigableDocuments.map((doc, i) => { \n return (\n \n \n {\n this.props.documentNavigationItem.gridMetadataColumns.map((col, colindex) => {\n return (\n \n {this.renderMetadataColumn(doc, col, colindex)}\n \n )\n })\n }\n \n \n {doc[this.props.documentNavigationItem.gridMetadataColumns[0].propertyName] || doc.metadata[this.props.documentNavigationItem.gridMetadataColumns[0].propertyName] || \"\"}\n \n \n \n
    \n {\n this.props.documentNavigationItem.gridMetadataColumns.map((col, colindex) => {\n return (\n
  • \n {this.renderMobileMetadataContent(doc, col, colindex)}\n
  • \n )\n })\n }\n
\n \n \n \n )\n }) \n )\n }\n\n public renderMetadataColumn(doc: INavigableDocument, col: IDocumentGridColumnDefinitionItem, colindex: number){\n var property = doc[col.propertyName] || doc.metadata[col.propertyName] || \"\";\n var propertyDate = null;\n\n var hasTime = property.indexOf(\"T00:00:00\") == -1 ? true : false;\n var isUTC = property.indexOf(\"Z\") != -1 ? true : false;\n\n if(isUTC){\n propertyDate = Moment.utc(property, Moment.ISO_8601, true);\n } else {\n propertyDate = Moment(property, Moment.ISO_8601, true);\n }\n \n if(propertyDate.isValid()){\n if(hasTime) {\n property = dateFormatter.DateFormatter.Format(propertyDate, \"M/D/YYYY h:mm A\");\n } else {\n property = dateFormatter.DateFormatter.Format(propertyDate, \"M/D/YYYY\");\n } \n } //else {\n // property = ;\n // } \n\n if(colindex == 0){\n return (\n {property}\n )\n } else {\n return (\n property\n )\n }\n }\n\n public renderMobileMetadataContent(doc: INavigableDocument, col: IDocumentGridColumnDefinitionItem, colindex: number){\n var property = doc[col.propertyName] || doc.metadata[col.propertyName] || \"\";\n \n var propertyDate = Moment(property, Moment.ISO_8601, true);\n var hasTime = property.indexOf(\"T00:00:00\") == -1 ? true : false;\n\n if(propertyDate.isValid()){\n if(hasTime) {\n property = dateFormatter.DateFormatter.Format(property, \"M/D/YYYY h:mm A\");\n } else {\n property = dateFormatter.DateFormatter.Format(propertyDate, \"M/D/YYYY\");\n } \n } \n\n if(colindex > 0){\n return(\n
\n {col.title}\n {property}\n
\n )\n }\n }\n\n public renderFollow(doc){\n if(this.props.enableFollowDocuments){\n return (\n \n )\n }\n }\n\n public render() {\n return (\n
\n

{this.props.documentNavigationItem.title || this.props.documentNavigationItem.parentPropertyValue}

\n\n
\n\n
\n { this.renderPaging() }\n { this.renderDocuments() }\n { !this.state.loading ? this.renderPaging() :
}\n
\n
\n )\n }\n}","import React from 'react';\nimport * as ReactDOM from \"react-dom\";\nimport {IDocumentNavigationItem} from \"./DocumentNavigatorItem\";\n\ninterface IDocumentNavigatorMenuProps { \n CurrentNavigationItem:IDocumentNavigationItem, \n CurrentNavigationPath: Array, \n PathLength: number,\n UseParameterizedHash?:boolean,\n Loading:boolean,\n ForceLoading?:boolean\n}\ninterface State { animateClass: string }\n\nexport default class DocumentNavigatorMenu extends React.Component{\n constructor(props) {\n super(props);\n this.state = { animateClass: \"slideOut\" };\n }\n\n public componentDidMount() {\n var menuItems = $(ReactDOM.findDOMNode(this)).find(\".docnav-menuitem\");\n menuItems.addClass('active');\n }\n\n public componentWillReceiveProps(nextProps: IDocumentNavigatorMenuProps){\n if(this.props.CurrentNavigationItem.parentPropertyValue != nextProps.CurrentNavigationItem.parentPropertyValue){\n if(this.props.PathLength < nextProps.PathLength){\n this.setState({animateClass : \"slideOut\"});\n } else if(this.props.PathLength == nextProps.PathLength){\n this.setState({animateClass : \"slideOut\"}); \n } else {\n this.setState({animateClass : \"slideIn\"});\n }\n\n if(nextProps.CurrentNavigationItem.childDocumentNavigationItems && nextProps.CurrentNavigationItem.childDocumentNavigationItems.length > 0){\n $(ReactDOM.findDOMNode(this)).find(\".docnav-menuitem\").removeClass('active slideOut slideIn');\n }\n }\n }\n\n public componentDidUpdate(){ \n if(this.props.CurrentNavigationItem.childDocumentNavigationItems && this.props.CurrentNavigationItem.childDocumentNavigationItems.length > 0 ){\n var menuItems = $(ReactDOM.findDOMNode(this)).find(\".docnav-menuitem\");\n var animateClass = this.state.animateClass;\n \n var timeout = 0;\n menuItems.each(function(i){\n var menuItem = $(this);\n\n window.setTimeout( (j) => {\n menuItem.addClass('animate ' + animateClass).bind(\"animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd\", function(){$(this).removeClass('animate').addClass('active')});;\n }, timeout);\n\n timeout += 50;\n });\n }\n }\n\n private getMenuNavigationItems(): Array{\n if(this.props.CurrentNavigationItem.childDocumentNavigationItems && this.props.CurrentNavigationItem.childDocumentNavigationItems.length === 1\n && this.props.CurrentNavigationItem.childDocumentNavigationItems[0].useDynamicChoiceMode === \"DynamicChoices\") {\n return null;\n } else if(this.props.CurrentNavigationItem.childDocumentNavigationItems && this.props.CurrentNavigationItem.childDocumentNavigationItems.length > 0) {\n return this.props.CurrentNavigationItem.childDocumentNavigationItems;\n } else {\n if( this.props.CurrentNavigationPath != null){\n var pathPos = this.props.CurrentNavigationPath.length > 1 ? this.props.CurrentNavigationPath.length - 1 : 1;\n var menuNavigationItems = this.props.CurrentNavigationPath[pathPos-1].childDocumentNavigationItems;\n return menuNavigationItems;\n } else {\n return null;\n } \n }\n }\n\n public urisplitprotect(uricomponent:string):string {\n return uricomponent ? uricomponent.replace(/\\//g,\"//\").replace(/:/g,\"::\") : uricomponent;\n }\n\n public renderMenu() {\n let menuNavigationItems = this.getMenuNavigationItems(); \n if(!this.props.ForceLoading && menuNavigationItems != null && menuNavigationItems.length > 0) {\n let baseNavigationUrl = this.props.UseParameterizedHash ? \"#nt=\" : \"#\";\n let currentNavItem = this.props.CurrentNavigationItem;\n let menuKey = this.props.CurrentNavigationItem.childPropertySystemName;\n \n if (this.props.UseParameterizedHash) {\n let stopAtIndex = (currentNavItem.childDocumentNavigationItems && currentNavItem.childDocumentNavigationItems.length)\n ? this.props.CurrentNavigationPath.length - 1 : this.props.CurrentNavigationPath.length - 2;\n menuKey = this.props.CurrentNavigationPath[stopAtIndex].childPropertySystemName;\n for (let i = 0; i < stopAtIndex; i++) {\n if (this.props.CurrentNavigationPath[i].childPropertySystemName && this.props.CurrentNavigationPath[i + 1].parentPropertyValue) {\n baseNavigationUrl += \"/\" + this.urisplitprotect(this.props.CurrentNavigationPath[i].childPropertySystemName) + \":\" + this.urisplitprotect(this.props.CurrentNavigationPath[i + 1].parentPropertyValue)\n }\n }\n } else {\n this.props.CurrentNavigationPath.map((navItem, i) => {\n if (navItem.parentPropertyValue && navItem.childPropertySystemName && \n (navItem.childDocumentNavigationItems && navItem.childDocumentNavigationItems.length)) {\n baseNavigationUrl += \"|\" + navItem.parentPropertyValue + \"/\" + navItem.childPropertySystemName;\n } else if (navItem.childPropertySystemName && baseNavigationUrl == \"#\") {\n baseNavigationUrl += \"/\" + navItem.childPropertySystemName;\n } \n });\n }\n\n return (\n menuNavigationItems\n .filter(navItem => navItem.parentPropertyValue !== undefined && navItem.parentPropertyValue !== '')\n .map((navItem, i) => {\n let isCurrent = false;\n var menuItemClass = \"docnav-menuitem active\";\n var menuItemUrl = this.props.UseParameterizedHash ? baseNavigationUrl + \"/\" + this.urisplitprotect(menuKey) + \":\" + this.urisplitprotect(navItem.parentPropertyValue)\n : baseNavigationUrl + \"|\" + navItem.parentPropertyValue + (navItem.childPropertySystemName ? \"/\" + navItem.childPropertySystemName : \"\");\n\n if(menuNavigationItems[i].parentPropertyValue == this.props.CurrentNavigationItem.parentPropertyValue &&\n (!this.props.CurrentNavigationItem.childDocumentNavigationItems || this.props.CurrentNavigationItem.childDocumentNavigationItems.length == 0)) {\n isCurrent = true;\n menuItemClass += \" current\";\n }\n\n return (\n \n )\n })\n )\n } else {\n return null;\n // return (\n //
\n // )\n }\n }\n\n public render() {\n return (\n
\n\n
\n {\n this.renderMenu()\n }\n
\n
\n )\n }\n}","import React from 'react';\nimport {IDocumentNavigationItem} from './DocumentNavigatorItem';\n\ninterface IDocumentNavigatorTagCrumbs { CurrentNavigationPath:Array,\n UseParameterizedHash?:boolean, OnClickTabCrumb: (index: number) => void }\ninterface State {}\n\nexport default class DocumentNavigationTagCrumbs extends React.Component{\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n public componentDidMount() {\n }\n\n private selectTabCrumb(propertyValue) {\n this.props.OnClickTabCrumb(propertyValue);\n }\n\n public urisplitprotect(uricomponent:string):string {\n return uricomponent ? uricomponent.replace(/\\//g,\"//\").replace(/:/g,\"::\") : uricomponent;\n }\n\n public render() {\n var baseNavigationUrl = this.props.UseParameterizedHash ? \"#nt=\" : \"#\";\n return (\n
\n
\n {\n this.props.CurrentNavigationPath.map((navItem, i) => {\n if(i < this.props.CurrentNavigationPath.length-1){\n if (this.props.UseParameterizedHash) {\n if (i > 0 && this.props.CurrentNavigationPath[i - 1].childPropertySystemName && this.props.CurrentNavigationPath[i].parentPropertyValue) {\n baseNavigationUrl += \"/\" + this.urisplitprotect(this.props.CurrentNavigationPath[i-1].childPropertySystemName) + \":\" + this.urisplitprotect(this.props.CurrentNavigationPath[i].parentPropertyValue)\n }\n } else {\n if (navItem.parentPropertyValue && navItem.childPropertySystemName && \n (navItem.childDocumentNavigationItems && navItem.childDocumentNavigationItems.length)) {\n baseNavigationUrl += \"|\" + navItem.parentPropertyValue + \"/\" + navItem.childPropertySystemName;\n } else if (navItem.childPropertySystemName && baseNavigationUrl == \"#\") {\n baseNavigationUrl += \"/\" + navItem.childPropertySystemName;\n } \n }\n\n return (\n \n { this.selectTabCrumb(i) }}>\n {i > 0 ? <>{navItem.title || navItem.parentPropertyValue} : <>{navItem.title || navItem.parentPropertyValue} }\n \n \n \n\n\n )\n }\n })\n }\n
\n
\n )\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, for more\n// information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport Moment from \"moment\";\nimport { RegistrationStatusCalculated } from \"../RegistrationStatus/RegistrationStatus\";\nimport {EventAgenda} from \"./EventAgenda\";\n\ndeclare var Miso : any;\n\nexport interface IEvent { id: number, title: string, link: string, start: Date, end: Date, eventType: string, eventFormat: string, hostLocation: string, hostRoom: string, locations: Array, details: string, agenda: string, registrationOpenDate: Date, registrationCloseDate: Date, isRegistered: boolean, isCancelled: boolean, allowRegistration: boolean, registrationStatus: string, form: any, pageGuid: string, entityReferenceMobile: string, entities:Array }\n\ninterface IEventProps { index: number, event: IEvent, activeEvent: boolean, hash:string }\ninterface State { /*registered: boolean*/ }\n\nexport default class Event extends React.Component < IEventProps, State > {\n constructor(props: IEventProps){\n super(props);\n this.state = { /*registered: false*/ }; \n }\n\n //public componentDidMount(){\n // if(this.props.event.isRegistered){\n // this.setState({registered: true});\n // }\n //} \n \n private getActionLink(action) {\n \n var splitLink = this.props.event.link.split(\"?\");\n var globalLink = splitLink[0];\n return globalLink + action;\n }\n\n private renderDate(){\n if(this.props.event.start.getDate() == this.props.event.end.getDate()){\n return (\n
\n
\n Date:\n
\n\n
\n {Moment(this.props.event.start).format(\"dddd, MMMM Do, YYYY\")}\n
\n\n {Miso.DateFormatter.Format(this.props.event.start, \"LT\")} \n   -  \n {Miso.DateFormatter.Format(this.props.event.end, \"LT\")} Eastern Time \n
({Miso.DateFormatter.Format(Moment(this.props.event.start).add(-1,\"hour\").toDate(), \"LT\")} \n   -  \n {Miso.DateFormatter.Format(Moment(this.props.event.end).add(-1, \"hour\").toDate(), \"LT\")} Central Time)
\n
\n
\n ); \n } else {\n return (\n
\n
\n
\n Start Time:\n
\n
\n {Miso.DateFormatter.Format(this.props.event.start, \"l LT\")} ET
\n ({Miso.DateFormatter.Format(Moment(this.props.event.start).add(-1, \"hour\").toDate(), \"l LT\")} CT)\n
\n
\n
\n
\n End Time:\n
\n
\n {Miso.DateFormatter.Format(this.props.event.end, \"l LT\")} ET
\n ({Miso.DateFormatter.Format(Moment(this.props.event.end).add(-1,\"hour\").toDate(), \"l LT\")} CT)\n
\n
\n
\n );\n }\n }\n\n private renderLocation() {\n if(this.props.event.hostLocation != null){\n return(\n
\n
\n Location:\n
\n
\n
{this.props.event.hostLocation + \" - \" + this.props.event.hostRoom + \" (host)\"}
\n {this.props.event.locations.map((loc, i) => {\n return (\n
{loc}
\n ) \n })} \n
\n\n
\n );\n } else {\n return (\n
\n
\n Location:\n
\n
\n No meeting space available.\n
\n
\n )\n }\n }\n \n public render() {\n return (\n
\n \n\n
\n
\n \n {this.renderDate()}\n\n {this.renderLocation()}\n\n
\n
\n Entity:\n
\n\n
\n {this.props.event.entities ?\n this.props.event.entities.map((ent, i) => {\n return (\n \n )\n })\n :
No Related Entity
\n }\n
\n
\n\n\n
\n
\n Event Type:\n
\n
\n {this.props.event.eventType}\n
\n
\n\n
\n
\n Event Format:\n
\n
\n {this.props.event.eventFormat}\n
\n
\n\n \n\n
\n
\n Details:\n
\n
\n \n
\n
\n {/*
\n
\n \n
\n
*/}\n \n \n
\n {/*{}*/}\n\n \n \n Save to Calendar\n \n \n \n \n \n\n {}\n
\n
\n
\n
\n )\n }\n}\n","// A '.tsx' file enables JSX support in the TypeScript compiler,\n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport * as ReactDOM from \"react-dom\";\nimport Moment from \"moment\";\nimport EventDetails from \"./EventDetails\";\nimport EventFilters, {IFilter} from \"./EventFilters\";\nimport {IEvent} from \"./Event\";\nimport { IConfigurableChoice } from \"../../ConfigurableChoice\";\nimport * as dateFormatter from '../../dateFormatter';\n\ndeclare var $: any;\ndeclare var kendo: any;\n\n\ninterface IEventCalendarProps { \n endpoint: string,\n myEvents?: boolean,\n }\n\ninterface State { \n activeView: string, \n activeDate: Date, \n activeEvents: Array,\n activeEvent?: number, \n eventTypes: Array, \n eventFormats: Array, \n eventLocations: Array, \n filter: IFilter,\n loaded: boolean,\n hashUrl:string\n}\n\nexport class EventCalendar extends React.Component{\n static State: State;\n constructor(props: IEventCalendarProps){\n super(props);\n this.state = { activeView: \"month\", activeDate: new Date(), activeEvents: new Array(), activeEvent: null, eventTypes: null, eventFormats: null, eventLocations: null, filter: { eventType: \"All\", eventFormat: \"All\", eventLocation: \"All\", myEvents: this.props.myEvents }, loaded: false, hashUrl: \"\" }; \n this.updateFilter = this.updateFilter.bind(this);\n\n }\n\n public componentDidMount(){\n this.getConfigurableChoices().then((result) => {\n this.setState({ eventTypes: result.eventTypes, eventFormats: result.eventFormats, eventLocations: result.eventLocations}, this.initKendoScheduler); \n });\n if (window.location.hash.length == 0){\n this.generateHashUrl();\n }\n }\n componentDidUpdate(prevProps, prevState) {\n if (this.state.activeView !== prevState.activeView || this.state.activeDate !== prevState.activeDate) {\n this.generateHashUrl();\n }\n if (prevState.loaded == false && this.state.loaded == true) {\n this.recievedHashUrl();\n }\n }\n private initKendoScheduler() {\n var scheduler = $(ReactDOM.findDOMNode(this)).find(\"#Scheduler\"); \n\n scheduler.kendoScheduler({ \n date: new Date(),\n startTime: Moment(new Date()).startOf('day').toDate(),\n endTime: Moment(new Date()).endOf('day').toDate(),\n mobile: false, \n views: [\n {type: \"day\", dateHeaderTemplate: this.dayDateHeaderTemplate(), eventTemplate: this.dayEventTemplate(), allDayEventTemplate: this.dayEventTemplate(), allDaySlotTemplate: this.slotTemplate(), slotTemplate: this.slotTemplate(), startTime: Moment(\"1/1/1901 07:00\", \"M/D/Y hh:mm\").toDate(), endTime: Moment(\"1/1/1901 18:00\", \"M/D/Y hh:mm\").toDate()},\n {type: \"week\", dateHeaderTemplate: this.weekDateHeaderTemplate(), eventTemplate: this.weekEventTemplate(), allDayEventTemplate: this.weekAllDayEventTemplate(), allDaySlotTemplate: this.slotTemplate(), slotTemplate: this.slotTemplate(), startTime: Moment(\"1/1/1901 07:00\", \"M/D/Y hh:mm\").toDate(), endTime: Moment(\"1/1/1901 18:00\", \"M/D/Y hh:mm\").toDate()},\n {type: \"workWeek\", dateHeaderTemplate: this.weekDateHeaderTemplate(), eventTemplate: this.weekEventTemplate(), allDayEventTemplate: this.weekAllDayEventTemplate(), allDaySlotTemplate: this.slotTemplate(), slotTemplate: this.slotTemplate(), startTime: Moment(\"1/1/1901 07:00\", \"M/D/Y hh:mm\").toDate(), endTime: Moment(\"1/1/1901 18:00\", \"M/D/Y hh:mm\").toDate()},\n {type: \"month\", eventHeight: 37, workWeekStart: 1, workWeekEnd: 5, selected: true, eventTemplate: this.monthEventTemplate(), dayTemplate: this.dayTemplate()}\n ],\n editable: false,\n selectable: false,\n footer: false,\n change: (e) => { \n e.preventDefault(); \n },\n navigate: (e) => {\n e.preventDefault();\n },\n resize: (e) => {\n //console.log('resize');\n },\n dataBound: () => {\n scheduler.unbind('focus');\n scheduler.find(\".k-scheduler-monthview .k-scheduler-table th\").each(function (i) { $(this).html($(this).html().substr(0, 3)) }); \n scheduler.find(\".k-more-events\").each(function (i, value) {\n if ($(value).width() > 10) {\n $(value).html(\"+ Show More\")\n }\n else {\n $(value).css('display', 'none');\n }\n }); \n scheduler.find(\".k-scheduler-monthview .k-scheduler-table td\").unbind().on(\"click\", (e) => { \n var element = $(e.target);\n //var date = dateFormatter.DateFormatter.Format(new Date($(e.target).find(\".day\").data('date')), \"MM-DD-YYYY\");\n var elemDate = element.find(\".day\").data('date');\n if (elemDate == undefined) {\n elemDate = element.data('date');\n }\n var date = new Date(elemDate); \n this.changeDate(date); \n \n e.stopPropagation();\n });\n\n $(\".k-scheduler-weekview .k-scheduler-table td\").unbind().on(\"click\", (e) => {\n var date = new Date($(e.target).data('date'));\n //var date = dateFormatter.DateFormatter.Format(new Date($(e.target).find(\".day\").data('date')), \"MM-DD-YYYY\");\n this.changeDate(date);\n \n e.stopPropagation();\n });\n\n scheduler.find(\".k-event\").unbind().on(\"click\", (e) => {\n\n var ev = $(e.target);\n var elemDate = ev.data('date');\n if (elemDate == undefined) {\n ev = ev.parents('.event');\n }\n var date = new Date(ev.data('date'));\n if (this.state.activeView == \"day\") {\n this.changeDate(this.state.activeDate, ev.data('id'));\n } else {\n this.changeDate(date, ev.data('id'));\n } \n \n e.stopPropagation();\n });\n\n scheduler.find(\".k-more-events\").unbind().on(\"click\", (e) => {\n var element = $(ReactDOM.findDOMNode(this));\n var scheduler = element.find(\"#Scheduler\").data('kendoScheduler');\n var slot = scheduler.slotByElement(e.currentTarget);\n \n this.changeDate(slot.startDate);\n this.toggleCalendarView('day');\n\n e.stopPropagation();\n })\n\n if(!this.state.loaded){ \n this.selectDate(this.state.activeDate); \n this.getEvents(this.state.activeDate); \n this.setState({loaded:true}, () => {\n this.hideEmptyRows();\n }); \n \n var monthCal = scheduler.find('#MonthCalendar').kendoDatePicker({\n value: this.state.activeDate, \n footer: \"
\", \n change: function(e){ \n var date = e.sender.value(); \n this.changeDate(date);\n }.bind(this)\n });\n } \n },\n dataSource: {\n batch: true,\n transport: {\n read: function(options) { \n // Run on first load or when we tell it to\n if(!this.state.loaded || (typeof options.data.action != \"undefined\" && options.data.action == \"update\")){\n $.ajax({\n url: this.props.endpoint + \"/geteventsformonth?month=\" + (this.state.activeDate.getMonth() + 1) + \"&year=\" + this.state.activeDate.getFullYear(),\n dataType: \"json\", // \"jsonp\" is required for cross-domain requests; use \"json\" for same-domain requests\n success: (result) => {\n var allEvents = result.events.filter((ev) => {\n if (ev.IsCancelled) {\n return false;\n }\n\n ev.locations = this.getLocations(ev);\n\n if (this.state.filter.eventType != \"All\") {\n if (ev.eventType != this.state.filter.eventType) return false;\n }\n\n if (this.state.filter.eventFormat != \"All\") {\n if (ev.eventFormat != this.state.filter.eventFormat) return false;\n }\n\n if (this.state.filter.eventLocation != \"All\") {\n var matchedLocation = false;\n\n if (ev.hostLocation == this.state.filter.eventLocation) {\n matchedLocation = true;\n } else if (ev.eventLocations != null) {\n for (var i = 0; i < ev.EventLocations.length; i++) {\n if (ev.eventLocations[i].Location == this.state.filter.eventLocation) {\n matchedLocation = true;\n break;\n }\n }\n }\n\n if (!matchedLocation) return false;\n }\n return true;\n \n });\n var registrations = result.registrations;\n \n for (var i = 0; i < registrations.length; i++) {\n allEvents.filter((ev) => {\n return (ev.contentLink == registrations[i].formIdentifier.hostPageId);\n }).map((ev) => {\n ev.isRegistered = true;\n return ev;\n });\n }\n\n if (this.state.filter.myEvents) {\n allEvents = allEvents.filter((ev) => {\n return ev.isRegistered;\n });\n }\n // notify the data source that the request succeeded \n options.success(allEvents);\n },\n error: function(result) {\n // notify the data source that the request failed\n options.error(result);\n }\n });\n } else {\n options.error(\"Not loaded\");\n } \n }.bind(this),\n parameterMap: function(options, operation){\n if(operation !== \"read\" && options.models) {\n return {models: JSON.stringify(options.models)};\n }\n }\n },\n schema: {\n model: {\n id: \"ID\",\n fields: {\n ID: { type: \"number\", field: \"contentLink\" },\n title: { field: \"name\", defaultValue: \"No title\", validation: { required: true } }, \n link: { type: \"string\", field: \"linkURL\" },\n start: { type: \"date\", field: \"startDate\" },\n end: { type: \"date\", field: \"endDate\" }, \n eventType: { type: \"string\", field: \"eventType\" },\n eventFormat: { type: \"string\", field: \"eventFormat\" },\n form: { type: \"object\", field: \"registrationFormIdentifier\" },\n hostLocation: { type: \"string\", field: \"hostLocation\"},\n hostRoom: { type: \"string\", field: \"hostRoom\" },\n locations: { type: \"array\", field: \"locations\" },\n registrationOpenDate: { type: \"date\", field: \"registrationOpenDate\" },\n registrationCloseDate: { type: \"date\", field: \"registrationCloseDate\" },\n isCancelled: {type: \"boolean\", field: \"eventCanceled\" },\n isRegistered: { type: \"boolean\", field: \"isRegistered\" },\n allowRegistration: { type: \"boolean\", field: \"allowRegistration\" },\n registrationStatus: { type: \"string\", field: \"registrationStatus\" },\n details: { type: \"string\", field: \"eventDetails\" },\n pageGuid: { type: \"string\", field: \"contentGuid\" },\n entities: { type: \"object\", field:\"entityReferenceList\"}\n }\n }\n }\n }, \n resources: [\n {\n field: \"eventType\",\n dataTextField: \"text\",\n dataValueField: \"value\",\n dataColorField: \"description\",\n dataSource: this.getEventTypesDS()\n },\n {\n field: \"eventFormat\",\n dataTextField: \"text\",\n dataValueField: \"value\",\n dataSource: this.getEventFormatsDS()\n }\n ] \n });\n }\n\n public updateFilter(filter: IFilter) { \n this.setState({filter: filter}, () => { \n var element = $(ReactDOM.findDOMNode(this));\n var scheduler = element.find(\"#Scheduler\").data('kendoScheduler'); \n scheduler.dataSource.read({action:'update'});\n });\n }\n\n private getEvents(date: Date){ \n var element = $(ReactDOM.findDOMNode(this));\n var scheduler = element.find(\"#Scheduler\").data('kendoScheduler');\n\n var moment = Moment(date);\n var start = moment.startOf('day').toDate();\n var end = moment.add(1, 'day').startOf('day').toDate();\n\n var events = scheduler.occurrencesInRange(start, end);\n \n this.setState({activeEvents: events}); \n\n return events;\n }\n\n public changeDate(date, event?) { \n var element = $(ReactDOM.findDOMNode(this));\n var scheduler = element.find(\"#Scheduler\").data('kendoScheduler');\n \n // Reload data when month has changed\n if(this.state.activeDate.getMonth() != date.getMonth()){\n this.setState({activeDate: new Date(date), activeEvent: null, activeEvents: []}, () => {\n // Fetch month data\n scheduler.dataSource.read({action:'update'}).then((results) => { \n scheduler.select({});\n scheduler.date(date); \n\n var events = this.getEvents(date);\n this.selectDate(date);\n this.hideEmptyRows();\n // Set active event\n if(typeof event != \"undefined\" && event != null){\n this.setState({activeEvent: event});\n } else if(events.length > 0){ \n this.setState({activeEvent: events[0].id}); \n } else {\n this.setState({activeEvent: null});\n } \n });\n }); \n } else { \n this.setState({activeDate: new Date(date), activeEvent: null, activeEvents: []}, () => {\n scheduler.select({});\n scheduler.date(date);\n \n var events = this.getEvents(date);\n this.selectDate(date);\n this.hideEmptyRows();\n\n // Set active event\n if (typeof event != \"undefined\" && event != null) {\n this.setState({activeEvent: event});\n } else if (events.length > 0) { \n this.setState({activeEvent: events[0].id}); \n } else {\n this.setState({activeEvent: null});\n } \n }); \n } \n } \n\n public navMonth(nav: string){ \n var element = $(ReactDOM.findDOMNode(this)); \n var scheduler = element.find(\"#Scheduler\").data('kendoScheduler'); \n var date = Moment(new Date(this.state.activeDate));\n \n switch(nav){\n case 'prev':\n var newDate = date.subtract(1, 'month').toDate();\n this.changeDate(newDate); \n break;\n case 'next':\n var newDate = date.add(1, 'month').toDate(); \n this.changeDate(newDate);\n break;\n } \n\n this.hideEmptyRows();\n }\n\n public navWeek(nav: string){\n var element = $(ReactDOM.findDOMNode(this)); \n var scheduler = element.find(\"#Scheduler\").data('kendoScheduler'); \n var date = Moment(new Date(this.state.activeDate));\n \n switch(nav){\n case 'prev':\n var newDate = date.subtract(1, 'week').toDate();\n this.changeDate(newDate); \n break;\n case 'next':\n var newDate = date.add(1, 'week').toDate(); \n this.changeDate(newDate);\n break;\n }\n }\n\n public navDay(nav: string){\n var element = $(ReactDOM.findDOMNode(this)); \n var scheduler = element.find(\"#Scheduler\").data('kendoScheduler'); \n var date = Moment(new Date(this.state.activeDate));\n \n switch(nav){\n case 'prev':\n var newDate = date.subtract(1, 'day').toDate();\n this.changeDate(newDate); \n break;\n case 'next':\n var newDate = date.add(1, 'day').toDate(); \n this.changeDate(newDate);\n break;\n }\n }\n\n private hideEmptyRows() {\n var element = $(ReactDOM.findDOMNode(this));\n var scheduler = element.find(\"#Scheduler\").data('kendoScheduler');\n\n var rows = element.find(\".k-scheduler-table tr[role='row']\");\n var removedRows = 0;\n\n for (var i = 0; i < rows.length; i++) {\n var validDays = $(rows[i]).find('td').filter(function () {\n if (!$(this).hasClass('k-other-month')) {\n return true;\n }\n });\n if (validDays.length == 0) {\n $(rows[i]).hide();\n removedRows++;\n }\n }\n\n var table = element.find('.k-scheduler-monthview .k-scheduler-content .k-scheduler-table');\n var minimumHeight = 640;\n var tableHeight = (table.height() - (60 * removedRows));\n tableHeight = (tableHeight > minimumHeight ? tableHeight : minimumHeight);\n table.height(tableHeight + \"px\");\n scheduler.refresh();\n }\n\n public pickDay() {\n var element = $(ReactDOM.findDOMNode(this)); \n var calendar = element.find('#MonthCalendar').data('kendoDatePicker');\n calendar.value(this.state.activeDate); \n calendar.open();\n }\n\n private selectDate(date) {\n var element = $(ReactDOM.findDOMNode(this));\n element.find(\".k-state-selected\").removeClass('k-state-selected');\n element.find(\".day[data-date='\" + Moment(date).startOf('day').toISOString() + \"']\").parent().addClass(\"k-state-selected\");\n }\n\n public toggleCalendarView(view: string): void{\n var element = $(ReactDOM.findDOMNode(this));\n var scheduler = element.find(\"#Scheduler\").data('kendoScheduler');\n\n if (scheduler) {\n scheduler.view(view);\n }\n \n this.setState({activeView: view});\n\n if(view == \"month\"){ \n this.hideEmptyRows();\n }\n }\n\n public getLocations(ev) {\n var locations = new Array();\n\n if(ev.locations != null){\n for(var i=0; i slotRange.end.offsetLeft) {\n // startSlot = slotRange.end;\n // }\n\n // var startIndex = slotRange.start.index;\n // var endIndex = slotRange.end.index;\n // var eventCount = startSlot.eventCount;\n // var events = kendo.SchedulerView.collidingEvents(slotRange.events(), startIndex, endIndex);\n // var rightOffset = startIndex !== endIndex ? 5 : 4;\n\n // events.push({element: element, start: startIndex, end: endIndex });\n\n // var rows = kendo.ui.SchedulerView.createRows(events);\n\n // for (var idx = 0, length = Math.min(rows.length, eventCount); idx < length; idx++) {\n // var rowEvents = rows[idx].events;\n // var eventTop = startSlot.offsetTop + startSlot.firstChildHeight + idx * eventHeight + 3 * idx + \"px\";\n\n // for (var j = 0, eventLength = rowEvents.length; j < eventLength; j++) {\n // rowEvents[j].element[0].style.top = eventTop;\n // }\n // }\n\n // if (rows.length > eventCount) {\n // for (var slotIndex = startIndex; slotIndex <= endIndex; slotIndex++) {\n // var collection = slotRange.collection;\n\n // var slot = collection.at(slotIndex);\n\n // if (slot.more) {\n // return;\n // }\n\n // var MORE_BUTTON_TEMPLATE = kendo.template(\n // '
...
'\n // );\n\n // slot.more = $(MORE_BUTTON_TEMPLATE({\n // ns: kendo.ns,\n // start: slotIndex,\n // end: slotIndex,\n // width: slot.clientWidth - 2,\n // left: slot.offsetLeft + 2,\n // top: slot.offsetTop + slot.firstChildHeight + eventCount * eventHeight + 3 * eventCount\n // }));\n\n // this.content[0].appendChild(slot.more[0]);\n // }\n // } else {\n // slotRange.addEvent({element: element, start: startIndex, end: endIndex, groupIndex: startSlot.groupIndex });\n\n // element[0].style.width = slotRange.innerWidth() - rightOffset + \"px\";\n // element[0].style.left = startSlot.offsetLeft + 2 + \"px\";\n // element[0].style.height = eventHeight + \"px\";\n\n // group._continuousEvents.push({\n // element: element,\n // uid: element.attr(kendo.attr(\"uid\")),\n // start: slotRange.start,\n // end: slotRange.end\n // });\n\n // element.appendTo(this.content);\n // }\n // }\n //}\n\n // Kendo Templates \n private dayTemplate(){\n var dayTemplate = \n `#=kendo.toString(date, \" d\")#`;\n \n return dayTemplate;\n }\n\n private monthEventTemplate() {\n var monthEventTemplate = \n `#\n var multi = false;\n var color = \"\";\n var isStruck = \"none\";\n\n if(resources.length > 0) { color = resources[0].color }\n\n if(start.getDate() != end.getDate()){\n multi = true;\n }\n #\n\n #\n if(multi){\n #
#\n } else {\n #
#\n }\n #\n\n #\n if(isCancelled){\n #(canceled)#\n }\n \n if(isCancelled){\n isStruck = \"line-through\";\n } else{\n isStruck = \"none\";\n }\n #\n
#:title#\n #\n if(multi){ #
# }\n # \n\n
`;\n \n return monthEventTemplate;\n }\n \n private weekEventTemplate(){\n var weekEventTemplate = \n `#\n var multi = false;\n var color = \"\";\n if(resources.length > 0) { color = resources[0].color;} \n \n var isStruck = \"none\";\n var isDisplayed = \"none\";\n if(isCancelled){\n isStruck = \"line-through\";\n isDisplayed = \"block\";\n } \n #\n\n
\n
\n
\n (canceled)\n #:title#\n
\n
`;\n \n return weekEventTemplate;\n }\n\n private weekAllDayEventTemplate(){\n var weekAllDayEventTemplate = \n `#\n var color = \"\";\n if(resources.length > 0) { color = resources[0].color; } \n \n var isStruck = \"none\";\n var isDisplayed = \"none\";\n if(isCancelled){\n isStruck = \"line-through\";\n isDisplayed = \"block\";\n }\n #\n\n
\n
\n
\n (canceled)\n #:title#\n
\n
`;\n \n return weekAllDayEventTemplate;\n }\n\n private dayEventTemplate(){\n var dayEventTemplate = \n `#\n var color = \"\";\n if(resources.length > 0) { color = resources[0].color; } \n \n var isStruck = \"none\";\n var isDisplayed = \"none\";\n if(isCancelled){\n isStruck = \"line-through\";\n isDisplayed = \"block\";\n }\n #\n \n
\n
\n
\n
\n (canceled)\n #:title#\n
\n
`;\n\n return dayEventTemplate;\n }\n\n private weekDateHeaderTemplate(){\n var dateHeaderTemplate = \n `#=kendo.toString(date, 'ddd')#\n\t #=kendo.toString(date, 'dd')#`;\n\n return dateHeaderTemplate;\n }\n\n private dayDateHeaderTemplate(){\n var dateHeaderTemplate = ` `;\n\n return dateHeaderTemplate;\n }\n\n private slotTemplate(){\n var slotTemplate = `
 
`;\n \n return slotTemplate; \n } \n\n public recievedHashUrl() {\n\n var hashes = window.location.hash.split(\"/\");\n\n for (var i = 0; i < hashes.length; i++) {\n if ((hashes[i] == \"month\" || hashes[i] == \"week\" || hashes[i] == \"day\") && hashes[i].length > 0) {\n this.toggleCalendarView(hashes[i]);\n }\n if (Moment(hashes[i], \"MM-DD-YYYY\", true).isValid() && hashes[i].length > 0) {\n this.changeDate(Moment(hashes[i], 'MM-DD-YYYY').toDate());\n }\n }\n }\n public today() {\n var today = Moment(new Date()).toDate();\n this.changeDate(today);\n }\n public generateHashUrl() {\n\n var url = \"#/\" + this.state.activeView + \"/\" + dateFormatter.DateFormatter.Format(this.state.activeDate, \"MM-DD-YYYY\");\n window.location.hash = url;\n\n this.setState({ hashUrl: url });\n }\n\n public render() {\n return (\n
\n
\n\n
\n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n \n { this.navMonth('prev'); }}>\n { this.navMonth('next'); }}> \n \n
\n
\n\n
\n
\n\n \n { this.navWeek('prev'); }}>\n { this.navWeek('next'); }}> \n\n \n
\n
\n\n
\n
\n \n \n\n \n \n \n
\n
\n \n
\n
\n
\n\n
\n \n
\n
\n
\n \n
\n )\n } \n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport Event, {IEvent} from \"./Event\";\nimport * as dateFormatter from '../../dateFormatter';\nexport interface IEventDetailsProps { date: Date, events: Array, activeEvent?: number, hash: string}\ninterface state {}\nexport default class EventDetails extends React.Component{\n constructor(props) {\n super(props);\n } \n private isActiveEvent(index) {\n if(this.props.activeEvent != null){\n if(this.props.events[index].id == this.props.activeEvent){\n return true;\n } else {\n return false;\n }\n } else { \n if(index == 0){\n return true;\n } else {\n return false;\n }\n } \n }\n\n private compareEventTimes(eventA: IEvent, eventB: IEvent): number {\n return eventA.start.getTime() - eventB.start.getTime();\n }\n\n public render() {\n return (\n
\n

Event details

\n\n
\n

\n {this.props.date.getMonth() == 4 ? dateFormatter.DateFormatter.Format(this.props.date, \"ddd., MMM D, Y\")\n : dateFormatter.DateFormatter.Format(this.props.date, \"ddd., MMM. D, Y\")\n }\n

\n
\t\t\t\t\n
\n
\n {this.props.events.length > 0 ? \n this.props.events.sort(this.compareEventTimes).map((event, i) => {\n return(\n \n )\n }) \n : \n
There no events scheduled for this day.
\n }\n
\n
\t\t\t\t\t \t\t\t\n
\n
\n
\n )\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport EventTypeColorKey from \"./EventTypeColorKey\";\nimport {IConfigurableChoice} from \"../../ConfigurableChoice\";\n\nexport interface IFilter { eventType: string, eventFormat: string, eventLocation: string, myEvents: boolean }\ninterface IEventFilterProps {EventTypes: Array, EventFormats: Array, EventLocations: Array, UpdateFilter: (filter: IFilter) => void, Filter: IFilter}\ninterface State { filter: IFilter }\n\nexport default class EventFilters extends React.Component{\n constructor(props){\n super(props); \n this.state = { filter: this.props.Filter };\n }\n\n private onFilter(choice, value){\n var filter = this.state.filter; \n filter[choice] = value; \n this.setState({filter: filter});\n this.props.UpdateFilter(filter);\n\n }\n\n private RenderConfigurableChoices(choices: Array){\n if(choices != null){\n return(\n choices.map((choice, i) => {\n return(\n \n )\n })\n )\n }\n }\n\n render() {\n return(\n
\n
\n

\n Filter Calendar By\n

\n
\n
\n \n
\n
\n
\n
\n  \n \n
\n
\n
\n
\n  \n \n
\n
\n
\n
\n  \n \n
\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n )\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport {IConfigurableChoice} from \"../../ConfigurableChoice\";\n\ninterface IEventTypeColorKeyProps {EventTypes: Array}\ninterface state {}\nexport default class EventFilters extends React.Component{\n constructor(props) {\n super(props);\n this.state ={};\n }\n\n render() {\n return (\n \n Event Type Color Key\n \n

Event Type Color Key

\n {\n \n this.props.EventTypes ?\n this.props.EventTypes.map((eventType, i) => {\n var eventStyle = {\n backgroundColor: \"transparent\",\n borderColor: eventType.description\n }\n \n var eventBorderStyle = {\n //borderLeft: \"5px solid \" + eventType.description\n }\n\n var eventTypeStyle = {\n backgroundColor: eventType.description\n }\n\n return (\n
\n
\n
\n
\n {eventType.text}\n
\n
\n
\n )\n }):''\n } \n
\n
\n )\n }\n}","import React from 'react';\nimport { RegistrationStatusCalculated } from \"../RegistrationStatus/RegistrationStatus\";\nimport * as dateFormatter from '../../dateFormatter';\n\nexport interface IEventItem {\n id: string,\n name: string,\n startDate: Date,\n eventCanceled: boolean,\n isRegistered: boolean,\n linkURL: string,\n registrationStatus: string,\n registrationStatusMessage: string,\n addDateHeader: boolean,\n disableRegistrations: boolean,\n onlyMyEvents: boolean,\n registrationFormIdentifier: any,\n contentLink: string,\n registrationOpenDate: Date,\n registrationCloseDate: Date,\n allowRegistration: boolean\n}\n//interface EventItemProps { Subject: string, PublishDate: Date }\n\ninterface State {\n}\nexport default class EventItem extends React.Component{\n constructor(props) {\n super(props);\n this.state ={};\n }\n \n public getTime() {\n \n return dateFormatter.DateFormatter.Format(this.props.startDate, \"h:mm a\");\n }\n public getHeaderText() {\n var tempDate = new Date(this.props.startDate);\n if (this.props.addDateHeader) {\n var today = new Date();\n if (today.toDateString() == tempDate.toDateString()) {\n return \"Today\";\n \n } else {\n var newDate = dateFormatter.DateFormatter.Format(tempDate, \"dddd, MMMM D, Y\");\n return newDate;\n }\n } else {\n return \"\";\n }\n }\n\n private getEventName() {\n if (this.props.eventCanceled) {\n return {this.props.name} (canceled) ;\n } else {\n return {this.props.name};\n }\n }\n\n private renderCalButton() {\n if (this.props.onlyMyEvents) {\n if (this.props.eventCanceled) {\n return ();\n } else {\n return ();\n }\n }\n }\n private getActionLink(action) {\n var splitLink = this.props.linkURL.split(\"?\");\n var globalLink = splitLink[0];\n return globalLink + action;\n }\n\n public render() {\n return (\n <>\n
{this.getHeaderText() }
\n
\n
\n
\n \n \n {this.getEventName() }\n\n \n \n
\n
{this.getTime() }
\n
\n {}\n {this.renderCalButton() }\n
\n
\n
\n\n\n
\n
\n \n )\n }\n}\n","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport EventItem, {IEventItem} from \"./EventItem\";\nimport BlockBase from '../../hocs/BlockBase';\nimport {IBlockBaseProps} from '../../hocs/BlockBase';\n\ninterface IEventListProps extends IBlockBaseProps { disableRegistrations: boolean, onlyMyEvents: boolean, numberOfEvents: number}\n\ninterface State {\n events: Array,\n registrations: Array,\n filteredEvents: Array,\n view: string,\n loading:boolean\n}\nexport class EventListBlock extends React.Component{\n constructor(props) {\n super(props);\n this.state = { events: [], registrations: [], filteredEvents: [], view: \"all\", loading: true };\n this.defaultNumberOfEvents = this.props.numberOfEvents > 0 && this.props.numberOfEvents;\n }\n public defaultNumberOfEvents = 5;\n public componentDidMount() {\n if (!this.props.onlyMyEvents) {\n this.getEvents();\n\n } else {\n this.tabClick(\"my\");\n }\n this.getEventsForUser();\n }\n\n public shouldComponentUpdated() {\n this.getEventsForUser();\n this.getEvents();\n }\n\n private getEvents() {\n\t if (this.props.disableRegistrations) {\n $.getJSON('/api/events/GetEvents?take=' + this.defaultNumberOfEvents,\n\t\t\t\t\tfunction (data) {\n\t\t\t\t\t\tthis.setState({ events: data, filteredEvents: data, loading:false });\n\t\t\t\t\t}.bind(this));\n\t } else {\n $.getJSON('/api/events/GetEventsWithRegistrations?take=' + this.defaultNumberOfEvents,\n function (data) {\n\t\t\t\t var newEventState = data[\"events\"];\n var newRegistrationState = data[\"registrations\"];\n\t\t\t\t for (var i = 0; i < newEventState.length; i++) {\n\t\t\t\t\t for (var j = 0; j < newRegistrationState.length; j++) {\n if (newRegistrationState[j].formIdentifier.hostPageId == newEventState[i].Id) {\n\t\t\t\t\t\t\t newEventState[i].isRegistered = true;\n\t\t\t\t\t\t }\n\t\t\t\t\t }\n }\n\n this.setState({ events: newEventState, registrations: newRegistrationState, loading:false });\n\n\t\t\t }.bind(this));\n\t }\n }\n\n private getEventsForUser() {\n $.getJSON('/api/events/GetEventsForUser?take=' + this.defaultNumberOfEvents,\n function (data) {\n this.setState({ filteredEvents: data, loading: false })\n }.bind(this));\n }\n\n public tabClick(e) {\n this.setState({ view: e });\n }\n\n public renderButtons() {\n if (!this.props.onlyMyEvents) {\n return ();\n }\n }\n\n public render() {\n return (\n
\n {this.state.loading ?\n (() => {\n const defaults = [];\n\n for (let i = 0; i < this.defaultNumberOfEvents; i++) {\n defaults.push(
\n
\n

\n \n

\n

\n \n \n

\n
\n
);\n }\n\n return defaults;\n })()\n :\n
\n {\n this.state.view == \"my\" ?\n this.state.filteredEvents.length > 0 ?\n this.state.filteredEvents.map((event, i, array) => {\n\n var addDateHeader = false;\n\n if (array[i - 1]) {\n var eventDate = new Date(event.startDate);\n var lastDate = new Date(array[i - 1].startDate);\n if (eventDate.toDateString() != lastDate.toDateString()) {\n addDateHeader = true;\n }\n } else {\n addDateHeader = true;\n }\n return (\n \n )\n })\n :\"There are no events to be displayed\"\n :\n this.state.events.map((event, i, array) => {\n\n var addDateHeader = false;\n\n if (array[i - 1]) {\n var eventDate = new Date(event.startDate);\n var lastDate = new Date(array[i - 1].startDate);\n if (eventDate.toDateString() != lastDate.toDateString()) {\n addDateHeader = true;\n }\n } else {\n addDateHeader = true;\n }\n return (\n \n )\n })\n }\n
\n }\n
\n )\n }\n}\n\nexport class EventList extends React.Component {\n public render() {\n return (\n
\n \n
\n \n )\n\t}\n}\n\nexport const EventListHoc = BlockBase(EventListBlock, {});\n\nexport default EventList;","import * as FindResultsBase from \"../Find/FindResultsBase\";\nimport * as FindResultItemBase from \"../Find/FindResultItemBase\";\n\n\nexport class DocumentItem extends FindResultItemBase.FindResultItem {\n\tpublic ContentType: string = null;\n\tpublic Created: Date = null;\n\tpublic CreatedBy: string = null;\n\tpublic DisplayDate: Date = null;\n\tpublic FileName: string = null;\n\tpublic Name: string = null;\n\tpublic Description: string = null;\n\tpublic DocumentGuid: string = null;\n\tpublic properties: any = null;\n\tpublic Updated: Date = null;\n\tpublic UpdatedBy: string = null;\n\tpublic DocumentOwner: string = null;\n\tpublic DocumentOwnerEmail: string = null;\n\tpublic DocumentType: string = null;\n\tpublic Keywords: any = null;\n\tpublic expiration: Date = null;\n\tpublic Legaldoctype: string = null;\n\tpublic Legaldocsubtype: string = null;\n public RelatedPages: Array = null;\n public CommitteeDocType: Array = null;\n //public MeetingDate: Date = null;\n public StudyGroup: string = null;\n public StudyCycle: string = null;\n public DisplayTitle: string = null;\n public effectivedate: Date = null;\n public meetingdate: Date = null;\n}\n\nexport interface IDocumentsProps extends FindResultsBase.IResultsProps {\n\tdisableFollowing?:boolean;\t\n}\n\nexport interface IDocumentsState extends FindResultsBase.IResultsState {\n} \n\nexport abstract class DocumentsBase, TDocumentsState extends IDocumentsState> extends FindResultsBase.FindResultsBase {\n\tconstructor(props) {\n\t\tsuper(props);\n\t}\n}","export class FindResultItem {\n public _id: string = null;\n public ExtranetID: string = null;\n\tpublic MediaId: number = null;\n\tpublic _score: number = null;\n\tpublic _type: string = null;\n\tpublic source: any = null;\n\tpublic $type: string = null;\n\tpublic ___types: Array = null;\n\tpublic title: string = null;\n\tpublic description: string = null;\n\tpublic Description: string = null;\n\tpublic DocumentGuid: string = null;\n\tpublic Files: any = null;\n\tpublic isFollowing: boolean = false;\n public RolesWithReadAccess: string = null;\n\tpublic SearchTitle: string = null;\n\tpublic SearchSummary: string = null;\n\tpublic SearchText: string = null;\n\tpublic SearchHitUrl: string = null;\n\tpublic SearchTypeName: string = null;\n\tpublic SearchHitTypeName: string = null;\n\tpublic SearchSection: string = null;\n\tpublic SearchSubsection: string = null;\n\tpublic SearchAuthors: Array = null;\n\tpublic SearchGeoLocation: any = null;\n\tpublic SearchPublishDate: Date = null;\n\tpublic SearchUpdateDate: Date = null;\n\tpublic SearchAttachment: any = null;\n\tpublic SearchCategories: Array = null;\n\tpublic SearchFilename: string = null;\n\tpublic SearchFileExtension: string = null;\n public SearchMetaData: any = null;\n\n\tpublic get IsSecuredDocument(): boolean {\n\t\tlet url = this.SearchHitUrl ? this.SearchHitUrl : (this.Files && this.Files.original) ? this.Files.original : \"#\";\n\t\tif (this.RolesWithReadAccess && this.RolesWithReadAccess.length && this.RolesWithReadAccess.indexOf(\"Everyone\") < 0 && this.SearchTypeName !== \"Page\") {\n\t\t\treturn true;\n\t\t}\n\t\treturn (url.indexOf('://powered-by.qbank.se') > 0);\n\t}\n\n\tpublic GetDocumentUrl():string {\n\t\treturn this.GetCalculatedDocumentUrl().replace(\" \", \"%20\");\n\t}\n\t\n\tpublic GetCalculatedDocumentUrl():string {\n\t\tif (!this.IsSecuredDocument) {\n return this.SearchHitUrl ? this.SearchHitUrl : (this.Files && this.Files.original) ? this.Files.original : \"#\";\n } else if (this.ExtranetID) {\n return \"/api/extranetdocuments/getEdcDocument/\" + this.ExtranetID;\n\t\t} else if (this.SearchFilename) {\n\t\t\treturn \"/api/documents/getbyname/\" + this.SearchFilename;\n\t\t} else if (this.MediaId) {\n\t\t\treturn \"/api/documents/getbymediaId/\" + this.MediaId;\n\t\t} else if (this.DocumentGuid) {\n\t\t\treturn \"/api/documents/getbyguid/\" + this.DocumentGuid;\n\t\t} else {\n\t\t\treturn \"#\";\n\t\t}\n\t}\n}","import React from 'react';\nimport * as FindResultItemBase from \"./FindResultItemBase\";\n\nexport interface IResultsProps { \n findServiceUrl: string;\n initialResults?: Array; \n query?: any;\n disableFollowing?:boolean;\n}\n\nexport interface IResultsState { \n results: Array;\n query: any; \n totalAvailableResults:number;\n loading: boolean;\n forceLoading?: boolean;\n} \n\nexport abstract class FindResultsBase, TResultsState extends IResultsState > extends React.Component {\n constructor(props) {\n super(props);\n }\n\n public componentDidMount(){\n if (this.props.initialResults) {\n this.setState({ results: this.props.initialResults });\n }\n if (this.props.query) {\n this.setState({query: this.props.query} );\n }\n }\n \n public componentDidUpdate(prevprops, prevstate) {\n if ((this.state.query) && this.state.query != prevstate.query ) {\n\t\t\tthis.executeSearch();\n\t\t}\n }\n \n public initQueryExecution(query:any, successCallback:(data:any) => void) {\n var querybody = JSON.stringify(query);\n if (querybody) {\n var xmlhttp = new XMLHttpRequest();\n xmlhttp.open(\"POST\", this.props.findServiceUrl + \"/_search\", true);\n xmlhttp.onload = function(e) {\n var data = JSON.parse(xmlhttp.responseText);\n successCallback(data);\n }.bind(this);\n\n xmlhttp.send(querybody);\n } \n }\n public initSecondQueryExecution(query2: any, successCallback: (data: any) => void) {\n query2.from = this.state.results.length;\n var querybody = JSON.stringify(query2);\n\n if (querybody) {\n var xmlhttp = new XMLHttpRequest();\n xmlhttp.open(\"POST\", this.props.findServiceUrl + \"/_search\", true);\n xmlhttp.onload = function (e) {\n var data = JSON.parse(xmlhttp.responseText);\n successCallback(data);\n }.bind(this);\n xmlhttp.send(querybody);\n }\n }\n\n public executeSearch(query:any = null) {\n if (this.state.loading !== true) {\n this.setState({ loading: true }, () => this.executeSearch(query));\n } else {\n query = query || this.state.query || this.props.query;\n\n if(typeof query.size == \"undefined\" || query.size > 1000){\n query.size = 1000;\n } \n\n this.initQueryExecution(query, (data) => this.setParsedResults(data));\n } \n }\n\n abstract constructResultItem():TResultItem; \n\n private getParsedPropertyName(propertyName: string) {\n\n let index = propertyName.indexOf(\"$$\");\n return index !== -1 ? propertyName.slice(0, index) : propertyName;\n\n }\n\n protected parseHit(hit:any):TResultItem {\n let parsedSingleResult = this.constructResultItem();\n parsedSingleResult.source = hit.source || hit.fields?.source || hit.fields || hit._source;\n Object.getOwnPropertyNames(parsedSingleResult).forEach(prop => {\n if (prop != \"source\") {\n if (parsedSingleResult.source) {\n var sourceProp = Object.getOwnPropertyNames(parsedSingleResult.source).filter(x => {\n if (prop.length > x.length) {\n return false;\n } else {\n var parsedProp = this.getParsedPropertyName(x);\n return parsedProp === prop;\n }\n });\n if (sourceProp && sourceProp.length > 0) {\n parsedSingleResult[prop] = parsedSingleResult.source[sourceProp[0]];\n }\n }\n else if (hit && hit.fields) {\n var fieldsAsArray = Object.keys(hit.fields);\n var parsedField = fieldsAsArray.filter(p => this.getParsedPropertyName(p) === prop);\n\n if (parsedField) {\n parsedSingleResult[prop] = hit.fields[parsedField.toString()];\n }\n\n }\n if (parsedSingleResult[prop] && parsedSingleResult[prop][\"$type\"] === \"EPiServer.Core.XhtmlString, EPiServer\" && parsedSingleResult[prop][\"AsViewedByAnonymous$$string\"]) {\n parsedSingleResult[prop] = parsedSingleResult[prop][\"AsViewedByAnonymous$$string\"];\n }\n }\n else if (parsedSingleResult[prop][\"Properties\"] && Object.keys(parsedSingleResult[prop][\"Properties\"]).length > 0) {\n var sourceProperties = parsedSingleResult[prop][\"Properties\"];\n Object.keys(sourceProperties).forEach(propertyKey => {\n parsedSingleResult[propertyKey] = sourceProperties[propertyKey]\n });\n }\n });\n if (!parsedSingleResult.description && parsedSingleResult.source.descriptiong) {\n parsedSingleResult.description = parsedSingleResult.source.descriptiong;\n }\n\n return parsedSingleResult;\n }\n\n private setParsedResults(data: any) {\n if (data && data.hits && data.hits.hits && data.hits.hits.length) {\n var resultData:Array = new Array();\n\n let numberOfPagesInHits = 0;\n data.hits.hits.forEach((hit) => {\n let parsedHit = this.parseHit(hit);\n if (parsedHit.SearchTypeName === 'Page') { // Shift page type results to top of results.\n resultData.splice(numberOfPagesInHits++, 0, parsedHit);\n } else {\n resultData.push(this.parseHit(hit));\n }\n });\n \n let additionalState = this.performAdditionnalSearchResultParsing(resultData, data);\n \n this.getFollowedStatus(resultData).then((subscriptionData) => {\n var subscriptions = subscriptionData.subscriptions;\n\n if(subscriptions.length > 0){\n for(var i=0; i = new Array(data.hits.hits.length);\n\n data.hits.hits.forEach((hit, index) => {\n resultData[index] = this.parseHit(hit);\n });\n\n let additionalState = this.performAdditionnalSearchResultParsing(resultData, data);\n\n this.getFollowedStatus(resultData).then((subscriptionData) => {\n var subscriptions = subscriptionData.subscriptions;\n\n if (subscriptions.length > 0) {\n for (var i = 0; i < resultData.length; i++) {\n for (var j = 0; j < subscriptions.length; j++) {\n if (resultData[i].DocumentGuid == subscriptions[j].contentId) {\n // Add subscription status to document\n resultData[i].isFollowing = true;\n break;\n }\n }\n }\n }\n\n var combinedResultData: Array = new Array();\n combinedResultData = this.state.results.concat(resultData);\n\n this.setResultState(combinedResultData, data.hits.total, additionalState);\n this.onResultsUpdated(combinedResultData);\n });\n }\n }\n\n public performAdditionnalSearchResultParsing(results: Array, data:any) : any {\n // Placeholder for base classes to implement\n return null;\n }\n\n public onResultsUpdated(resultData: Array) {\n if (resultData.length < this.state.totalAvailableResults && this.state.query['size'] == 1000) {\n this.initSecondQueryExecution(this.state.query, (data) => this.setAdditionalParsedResults(data));\n }\n // TODO: If Necessary, override in derived class to handle results changing\n }\n\n\n private getFollowedStatus(resultsData: Array):JQueryPromise {\n if (this.props.disableFollowing) {\n return $.Deferred().resolve({subscriptions:[]}).promise();\n }\n\n var documentIds = resultsData.map((resultItem: any, index) => {\n return resultItem.DocumentGuid || resultItem.source.DocumentGuid || resultItem.ContentId || resultItem.source.ContentId;\n }).filter(resultItem => resultItem);\n\n if (!documentIds || !documentIds.length) {\n return $.Deferred().resolve({subscriptions:[]}).promise();\n }\n\n return $.ajax({\n url: \"/api/documents/GetSubscribedDocuments\",\n type: \"POST\",\n data: JSON.stringify(documentIds),\n dataType: 'json',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n success: (data) => {\n return data;\n },\n error: (error) => {\n // An error happened\n }\n })\n }\n\n protected setResultState(newResults:Array, totalAvailableResults:number = 0, additionalState:any = null) {\n let partialState = { results: newResults, totalAvailableResults:totalAvailableResults, loading: (false || (this.state.forceLoading || false)) };\n if (additionalState) {\n Object.getOwnPropertyNames(additionalState).map((prop, i) => {\n partialState[prop] = additionalState[prop];\n });\n }\n \n this.setState( partialState);\n }\n}","import React from 'react';\n\nexport interface IPagingProps {\n ResultSetCount: number;\n PageSize: number;\n Page: number;\n TotalAvailableResults: number; \n Loading: boolean;\n NoResultsText?: string; \n IncludePagingDescription?: boolean;\n OnPageSizeChange: (pageSize:number) => void;\n OnPageChange: (page:number) => void; \n OnSortClick?:(columnName:string) => void; \n ResultSortField?:string;\n ResultSortDirection?: string;\n HideFullEntriesText?: boolean;\n}\n\ninterface IPagingState {\n\n}\n\nexport default class Paging extends React.Component{\n constructor(props){\n super(props);\n this.state = { };\n }\n\n private onPageSizeChanged (event) {\n if (event.target.value != this.props.PageSize) {\n this.props.OnPageSizeChange(event.target.value);\n }\n }\n\n private selectResultsPage (pageIndex:number) {\n var numPages = Math.ceil(this.props.TotalAvailableResults / this.props.PageSize);\n\n if (pageIndex >= 0 && pageIndex < numPages && pageIndex != this.props.Page) {\n this.props.OnPageChange(pageIndex);\n }\n }\n\n public renderPagingDescription() {\n if (this.props.PageSize > 0 && this.props.ResultSetCount < this.props.TotalAvailableResults) {\n return (
Showing {(this.props.Page * this.props.PageSize) + 1}-{Math.min((this.props.Page + 1) * this.props.PageSize, this.props.TotalAvailableResults)} of { this.props.TotalAvailableResults }
)\n } else {\n return (
Showing {this.props.ResultSetCount} documents
)\n }\n \n }\n\n public render() {\n var pageSizeValues = [5, 10, 25, 50, 100, 500]; // Set possible values for page size selector\n \n if (this.props.ResultSetCount > 0 && this.props.TotalAvailableResults > pageSizeValues[0]) {\n var numPages = Math.ceil(this.props.TotalAvailableResults / this.props.PageSize);\n var pageIndexes = [];\n \n var pageSizeOptions = [];\n\n var first = (this.props.Page < 2 ? 0 : this.props.Page - 2);\n var last = (this.props.Page < 2 ? 4 : this.props.Page + 2);\n\n if(last > numPages - 1) {\n last = numPages - 1; \n first = last - 4 < 0 ? 0 : last -4;\n }\n\n for (var pageIndex = first; pageIndex <= last; pageIndex++){\n pageIndexes.push({index: pageIndex, label: pageIndex + 1, disabled: false});\n }\n\n for (var pageSizeIndex = 0; pageSizeIndex < pageSizeValues.length; pageSizeIndex++){\n pageSizeOptions.push({ pageSizeValue: pageSizeValues[pageSizeIndex], pageSizeText: pageSizeValues[pageSizeIndex] + \"\" });\n }\n\n //if(this.props.TotalAvailableResults < 1000){\n // pageSizeOptions.push({ pageSizeValue: -1, pageSizeText: \"All Results\" });\n // console.log(pageSizeOptions);\n //}\n return (\n
\n
\n {this.props.HideFullEntriesText ? \n <>\n \n :\n <>\n Show\n \n Entries\n \n \n }\n
\n
\n {this.props.IncludePagingDescription && this.renderPagingDescription()}\n
\n {/**/}\n \n \n {\n pageIndexes.map((pageIndex, i) => {\n return (\n )\n })\n }\n \n \n {/**/}\n
\n
\n
\n )\n } else {\n return (\n
\n )\n }\n }\n}","import React from 'react';\nimport * as FormResultItemBase from \"./FormResultItemBase\";\nimport * as FormResultsBase from \"./FormResultsBase\";\nimport * as Moment from 'moment';\nimport { Accordion, AccordionItem, PanelItem } from \"../Accordion/Accordion\";\nimport * as dateFormatter from '../../dateFormatter';\n//import * as MisoGlobal from \"../../global\";\n//declare var Miso: MisoGlobal.MisoGlobal;\n\nclass IFeedbackResultsDownload {\n address: string;\n approvalDate: string;\n approved: boolean;\n approver: string;\n byUser: string;\n committee: string;\n company: string;\n dueDate: string;\n email: string;\n feedback: string;\n finalized: boolean;\n firstName: string;\n isPublic: boolean;\n lastChanged: Date;\n lastName: string;\n postedDate: Date;\n responseTo: string;\n sector: string;\n smeEmail: string;\n submissionID: string;\n submittedFrom: string;\n time: string;\n}\n\ninterface IStakeholderFeedbackFormResultsProps {\n feedbackSubmissionItems: Array,\n/* formId: string,*/\n hostPageId:string\n}\ninterface IStakeholderFeedbackFormResultsState { }\n\nexport class FeedbackResultsDownload extends React.Component{\n constructor(props) {\n super(props);\n\n this.state = { }\n }\n\n componentDidMount() {\n }\n\n componentDidUpdate() {\n\n }\n\n public render() {\n console.log(this.props);\n\n return (\n\n this.props.feedbackSubmissionItems.length == 0 ?

Download Form Submissions

There are no results to download
:\n\n
\n

Download Form Submissions

\n

This does not work currently and is a seperate feature

\n {/*\n \n */}\n PDF - All \n PDF - Public \n PDF - Public & Approved\n
\n )\n }\n}","import React from 'react';\nimport * as DocumentsBase from '../Find/DocumentsBase';\nimport GIQueueDocumentModal from './GIQueueDocumentModal';\n\nexport class GIQueueItem extends DocumentsBase.DocumentItem {\n public entityname: string = null;\n public entityurl: string = null;\n public sortorder: string = null;\n public year: number = null;\n public month: string = null;\n}\n\nexport interface IGIQueueProps extends DocumentsBase.IDocumentsProps {\n FindServiceUrl: string;\n projectNumber: string;\n}\n\nexport interface IGIQueueState extends DocumentsBase.IDocumentsState {\n query: GIQueueQuery;\n showModal: boolean;\n}\n\nexport class GIQueueQuery {\n public partial_fields: {\n source: {\n exclude: Array\n }\n } = {\n source: {\n exclude: [\"documentText\"]\n }\n };\n script_fields: {\n documentTextExcerpt: {\n params: { field: string, length: number },\n script: string\n }\n } = {\n documentTextExcerpt: {\n params: { field: \"documentText\", length: 150 },\n script: \"ascropped\"\n }\n };\n sort: Array =\n [\n { \"Updated\": \"desc\" },\n { \"Name\": \"asc\" }\n\n ];\n query: {\n filtered: {\n filter: {\n and: Array\n }\n }\n } = {\n filtered: {\n filter: {\n and: []\n }\n }\n };\n\n public constructor(projectNumber: string = null) {\n if (projectNumber && projectNumber.trim().length > 0) {\n this.query.filtered.filter.and.push({ query: { term: { \"ProjectNumber\": projectNumber } } });\n }\n }\n\n}\n\nexport class GIQueueDocumentApp extends DocumentsBase.DocumentsBase {\n\n constructor(props) {\n super(props);\n this.state = { results: [], totalAvailableResults: 0, query: null, loading: true, showModal: true };\n }\n\n constructResultItem(): GIQueueItem {\n return new GIQueueItem();\n }\n\n componentDidMount() {\n super.componentDidMount();\n if (!this.state.query) {\n let newquery = new GIQueueQuery(this.props.projectNumber);\n this.setState({ query: newquery });\n }\n }\n\n public render() {\n return (\n
\n \n
\n );\n }\n}\n","import React from 'react';\nimport { GIQueueItem } from './GIQueueDocumentApp';\nimport GIQueueDocumentListItem from './GIQueueDocumentListItem';\n\ninterface GIQueueDocumentListProps {\n documents: GIQueueItem[];\n}\n\nconst GIQueueDocumentList: React.SFC = (props) => {\n\n let { documents } = props;\n\n return (\n
\n { documents.length == 0 ? There are no documents available for this GI Queue Item.:documents.map((document: GIQueueItem, index: number) => )}\n
\n );\n\n};\n\nexport default GIQueueDocumentList;","import React from 'react';\nimport { GIQueueItem } from './GIQueueDocumentApp';\nimport * as moment from 'moment';\nimport * as dateFormatter from '../../dateFormatter';\nimport * as awesome from '../../awesome';\ninterface GIQueueDocumentListItemProps {\n document: GIQueueItem;\n}\n\nconst GIQueueDocumentListItem: React.SFC = (props) => {\n\n let { document } = props;\n\n const getDisplayDate = (document: GIQueueItem) => {\n var displayDate = null;\n\n if (document.DisplayDate != null) {\n displayDate = moment.utc(document.DisplayDate, moment.ISO_8601, true);\n } else {\n displayDate = moment.utc(document.Updated, moment.ISO_8601, true);\n }\n\n return (\n
{dateFormatter.DateFormatter.Format(displayDate, \"MM/DD/YYYY\")}
\n )\n };\n\n return (\n
\n \n {getDisplayDate(document)}\n
\n );\n};\n\nexport default GIQueueDocumentListItem;","import React from 'react';\nimport { GIQueueItem } from './GIQueueDocumentApp';\nimport GIQueueDocumentList from './GIQueueDocumentList';\n\ninterface GIQueueDocumentModalProps extends React.Props {\n documents: GIQueueItem[];\n showModal: boolean;\n loading: boolean;\n projectNumber: string;\n}\n\ninterface GIQueueDocumentModalState {\n showModal: boolean;\n}\n\nclass GIQueueDocumentModal extends React.Component {\n\n constructor(props: GIQueueDocumentModalProps) {\n super(props);\n this.state = {\n showModal: props.showModal\n }\n }\n\n open = () => {\n this.setState({\n showModal: true\n });\n }\n\n close = () => {\n this.setState({\n showModal: false\n });\n }\n\n render() {\n return (\n
\n
\n
\n
\n
\n

Documents for Project: {this.props.projectNumber}

\n \n
\n
\n
\n {this.props.loading == true ? :\n }\n
\n
\n
\n
\n
\n
\n
\n );\n };\n}\n\nexport default GIQueueDocumentModal;\n","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\n\ninterface IGlobalAlertItem { title: string, message: any, start: Date, stop: Date }\n\ninterface IGlobalAlertProps {\n globalAlertListItems: Array\n}\n\ninterface State {\n activeAlerts: Array,\n currentAlertNumber: number,\n currentAlert: IGlobalAlertItem,\n hide: boolean,\n collapsed: boolean,\n}\n\nexport class GlobalAlert extends React.Component{\n constructor(props) {\n super(props);\n\n this.state = {\n currentAlert: {\n title: null,\n message: null,\n start: new Date(),\n stop: new Date()\n },\n currentAlertNumber: 0,\n activeAlerts: [],\n hide: false,\n collapsed: true\n };\n }\n\n public componentDidMount() {\n var activeAlerts = this.props.globalAlertListItems.filter((x) => !sessionStorage.getItem(x.title))\n this.setState({\n currentAlert: activeAlerts[0],\n currentAlertNumber: 0,\n activeAlerts: activeAlerts,\n hide: false,\n collapsed: true\n });\n }\n\n public prevAlert() {\n var i = this.state.currentAlertNumber - 1;\n\n if (i < 0)\n i = this.state.activeAlerts.length - 1;\n\n this.setState({\n currentAlert: this.state.activeAlerts[i],\n currentAlertNumber: i\n });\n }\n\n public nextAlert() {\n var i = this.state.currentAlertNumber + 1;\n\n if (i > this.state.activeAlerts.length - 1)\n i = 0;\n\n this.setState({\n currentAlert: this.state.activeAlerts[i],\n currentAlertNumber: i\n });\n }\n\n public hideAlerts() {\n\n sessionStorage.setItem(this.state.currentAlert.title, \"true\");\n var activeAlerts = this.props.globalAlertListItems.filter((x) => !sessionStorage.getItem(x.title))\n this.setState({\n activeAlerts: activeAlerts,\n currentAlert: activeAlerts[0],\n currentAlertNumber: 0,\n });\n }\n\n public toggleCollapse() {\n this.setState({\n collapsed: !this.state.collapsed\n });\n }\n\n public render() {\n return (\n (this.state.activeAlerts && this.state.activeAlerts.length >= 1) && (\n
\n
\n {/* Medium to large view */}\n
\n
\n
\n

\n { this.toggleCollapse() }}>\n {this.state.currentAlert.title}\n \n \n

\n
\n {(this.state.activeAlerts.length > 1) && (\n
\n { this.prevAlert() }}>\n \n \n {this.state.currentAlertNumber + 1} / {this.state.activeAlerts.length}\n { this.nextAlert() }}>\n \n \n
\n )}\n \n
\n
\n
\n
\n
\n
\n
\n {/* Small view */}\n
\n {(this.state.activeAlerts.length > 1) && (\n
\n { this.prevAlert() }}>\n \n \n {this.state.currentAlertNumber + 1} / {this.state.activeAlerts.length}\n { this.nextAlert() }}>\n \n \n
\n )}\n \n
\n
\n
\n
\n
\n
\n )\n )\n }\n}","import React from 'react';\n\nexport class HeroButtonDefault {\n buttonText: string;\n buttonLink: string;\n buttonClass: string; \n fAIconPosition: string; \n fAIcon: string;\n secureLink: boolean;\n newWindow:boolean;\n}\n\n\nexport class HeroButton extends React.Component {\n public render() {\n return (\n \n {this.props.fAIcon && this.props.fAIconPosition == \"left\" ? : \"\"}\n {this.props.buttonText}\n {this.props.fAIcon && this.props.fAIconPosition == \"right\" ? : \"\"}\n \n )\n\t}\n}","import React from 'react';\nimport {HeroButton} from \"./HeroButton\";\nimport {HeroButtonDefault} from \"../HeroButtons/HeroButton\";\n\nexport interface IHeroButtonProps {\n buttonText: string,\n buttonLink: string,\n buttonClass: string, \n fAIconPosition: string, \n fAIcon: string,\n secureLink: boolean,\n newWindow:boolean\n}\nexport interface IHeroButtonsProps {\n heroButtons: Array\n}\n\n\nexport class HeroButtons extends React.Component {\n public render() {\n return (\n
\n {this.props.heroButtons.map((buttonn, i) => {\n return ()\n \n })}\n
\n )\n\t}\n}","import React from 'react';\nimport {HeroButtons} from \"../HeroButtons/HeroButtons\";\nimport { HeroButtonDefault } from \"../HeroButtons/HeroButton\";\nimport { BreadCrumbs } from \"../BreadCrumbs/BreadCrumbs\";\nimport BlockBase from '../../hocs/BlockBase';\nimport {IBlockBaseProps} from '../../hocs/BlockBase';\n\nexport interface IHeroButtonsProps { textAlignment: string, heroButtons: Array}\n\nexport interface IHeroHeaderProps extends IBlockBaseProps {\n text?: string,\n textCSSClass?: string,\n secondaryText?: string,\n secondaryTextCSSClass?: string,\n tertiaryText?: string,\n tertiaryTextCSSClass?: string,\n textPosition?: string,\n heroButtons?: Array,\n showBreadCrumbs?: boolean,\n breadCrumbID?: string,\n showFollowFlag?: boolean,\n followGuid?: string,\n followButtonClass?:string\n}\ninterface State { }\n\nexport class HeroHeaderItem extends React.Component {\n //props: IHeroHeaderProps;\n //state: {};\n constructor(props: IHeroHeaderProps) {\n super(props);\n this.state = {};\n }\n\n public render() {\n const fullWidthImage = this.props[\"backgroundImagePosition\"] == \"fullwidth\" || !this.props[\"backgroundImagePosition\"] ? true : false;\n return (\n
\n\n
\n {this.props.text || this.props.secondaryText || this.props.tertiaryText || this.props.heroButtons ?\n
\n {this.props.showBreadCrumbs || this.props.showFollowFlag ?\n \n : \"\"}\n
\n {this.props[\"backgroundImageString\"] && this.props[\"backgroundImagePosition\"] == \"imageleft\" ?
: ''}\n
\n\n {this.props.tertiaryText ?\n

{this.props.tertiaryText}

\n : \"\"}\n {this.props.text ?\n

{this.props.text}

\n : \"\"}\n {this.props.secondaryText ?\n

{this.props.secondaryText}

\n : \"\"}\n {this.props.heroButtons ?\n \n : \"\"}\n\n
\n {this.props[\"backgroundImageString\"] && this.props[\"backgroundImagePosition\"] == \"imageright\" ?
: ''}\n
\n
: \"\"\n }\n
\n
\n )\n\t}\n}\n\n\nexport class HeroHeader extends React.Component {\n //props: IHeroHeaderProps;\n public render() {\n return (\n \n )\n\t}\n}\n\nexport const HeroHeaderBlock = BlockBase(HeroHeaderItem,{});\n","import React from 'react';\n\ninterface ActionLinks {\n actionString:string;\n actionLink:string;\n actionIcon:string;\n}\n\nexport interface IInfoBoxProps {\n headerTitleString?: string,\n titleString: string,\n titleLink?: string,\n titleIcon?: string,\n subTitleString:string,\n subTitleLink?:string,\n subTitleIcon?:string,\n actionLinkList?: Array,\n dangerousActionLinkList?: Array\n}\n\n\nexport class InfoBox extends React.Component {\n public render() {\n return (\n
\n
\n { this.props.headerTitleString ? \n
{this.props.headerTitleString}
\n : \"\"}\n
\n {this.props.titleLink ?\n {this.props.titleIcon ? : ''} \n : this.props.titleIcon ? : '' + this.props.titleString }\n
\n
\n
\n { this.props.subTitleLink ?\n \n \n \n \n \n : \n }\n
\n
\n {this.props.actionLinkList ? this.props.actionLinkList.map((actionLink, i) => {\n return (\n \n {actionLink.actionIcon ? : \"\"}\n {actionLink.actionString}\n )\n }) : \"\"}\n {this.props.dangerousActionLinkList ? this.props.dangerousActionLinkList.map((dangerLink, i) => {\n return (\n \n )\n }) :\"\"}\n \n
\n
\n
\n
\n )\n\t}\n}\n\n","import React from 'react';\nimport Moment from \"moment\";\nimport * as dateFormatter from '../../dateFormatter';\n\nexport interface IInfoBoxWithImageHeaderProps {\n image?: string,\n imageString:string,\n headerText: string,\n description: string,\n linkUrl?: string,\n linkText?: string,\n personName?: string,\n date?: string,\n category?: string\n}\n\n\n\nexport class InfoBoxWithImageHeader extends React.Component {\n\n public cleanDate(date) {\n if (Moment(date, Moment.ISO_8601, true).isValid()) {\n return dateFormatter.DateFormatter.Format(date, \"M/D/YYYY\");\n }\n return date.toString();\n }\n public render() {\n return (\n \n
\n {this.props.imageString && \n \n {this.props.headerText}\n \n }\n
\n

\n \n {this.props.headerText}\n \n

\n
\n
\n
\n\n
\n
\n
\n
\n {this.props.personName}\n
\n\n
\n {this.props.date && this.cleanDate(this.props.date)}\n
\n
\n\n {this.props.category ?\n
\n
\n {this.props.category}\n
\n
\n : \"\"\n }\n \n
\n
\n
\n
\n \n \n )\n\t}\n}\n\n","import React from 'react';\n\nexport interface IInfoBoxWithThumbnailProps {\n thumbnailImage?: string,\n imageString?: string,\n linkUrl: string,\n linkText?: string\n headerText: string,\n description: string,\n}\n\n\nexport class InfoBoxWithThumbnail extends React.Component {\n public render() {\n return (\n
\n
\n {this.props.headerText}\n
\n\n
\n

{this.props.headerText}

\n
\n
\n
\n \n \n
\n
\n )\n\t}\n}\n\n","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport { InfoBoxWithThumbnail } from \"../InfoBox/InfoBoxWithThumbnail\";\n\ninterface ILeadershipProps { }\n\ninterface State {\n LeadershipPages: Array;\n FilteredPages: Array;\n FilterCategory: String;\n CategoryList: Array;\n Loading: boolean;\n}\n\nexport class LeadershipBlock extends React.Component{\n constructor(props) {\n super(props);\n this.state = { LeadershipPages: [], FilterCategory: \"\", CategoryList:[], FilteredPages:[], Loading:true};\n }\n\n public componentDidMount() {\n this.getLeadershipPages();\n }\n\n private getLeadershipPages() {\n\n return $.getJSON(\"/api/Leadership/GetLeadershipPages\",\n function (data) {\n var listOfPages = [];\n for (var i = 0; i < data.leadershipPages.length; i++) {\n if (data.leadershipPages[i].leadershipRole.indexOf(data.categoryList[0]) > -1) {\n listOfPages.push(data.leadershipPages[i]);\n }\n }\n if (data.categoryList[0] == \"Executive Team\") {\n listOfPages.sort((a, b) => a.sortOrder - b.sortOrder)\n } else {\n listOfPages.sort((a, b) => a.personName.split(' ').slice(-1)[0].localeCompare(b.personName.split(' ').slice(-1)[0]))\n }\n console.log(listOfPages)\n this.setState({ LeadershipPages: data.leadershipPages, CategoryList: data.categoryList, FilteredPages: listOfPages, FilterCategory: data.categoryList[0], Loading: false });\n }.bind(this));\n }\n\n public categoryFilter(category) {\n var listOfPages = [];\n\n for (var i = 0; i < this.state.LeadershipPages.length; i++) {\n if (this.state.LeadershipPages[i].leadershipRole.indexOf(category) > -1) {\n listOfPages.push(this.state.LeadershipPages[i]);\n }\n }\n if (category == \"Executive Team\") {\n listOfPages.sort((a, b) => a.sortOrder - b.sortOrder)\n } else {\n listOfPages.sort((a, b) => a.personName.split(' ').slice(-1)[0].localeCompare(b.personName.split(' ').slice(-1)[0]))\n }\n\n console.log(listOfPages)\n this.setState({ FilterCategory: category, FilteredPages: listOfPages });\n }\n\n public renderTabSelector() {\n\n return (\n
\n \n
\n );\n }\n\n public render() {\n if (this.state.Loading) { \n return (

);\n }\n return (\n
\n
\n {this.renderTabSelector() }\n
\n {this.state.FilteredPages.length == 0 ?
\n :\n
\n {\n this.state.FilteredPages.map((leadershipPage, i) => {\n {\n return (\n
\n \n
\n )\n }\n })\n }\n
\n }\n
\n )\n }\n}\n","import React from 'react';\nimport LegendItemList, {ILegendItemList} from \"./LegendItemList\";\nimport {IChoiceItem} from \"../../ConfigurableChoice\";\n\ninterface ILegendProps { legendLabel: string, legendListItems: Array, choiceItems: Array, legendListDataRetriever: Function, placement?:string }\n\ninterface State {\n\tlegendListItems: Array\n}\n\nexport class Legend extends React.Component{\n\tprivate legendListDataRetriever: Function;\n\n\t constructor(props) {\n\t\tsuper(props);\n\t\tthis.state = { legendListItems: [] };\n\t }\n\n\tpublic componentDidMount() {\n\t\tthis.GetLegendLists();\n\t}\n\n\tprivate GetLegendLists() {\n\t\tif (!this.legendListDataRetriever && this.props.legendListDataRetriever) {\n\t\t\tif (typeof this.props.legendListDataRetriever === 'string') {\n\t\t\t\tthis.legendListDataRetriever = eval(this.props.legendListDataRetriever);\n\t\t\t} else if (typeof this.props.legendListDataRetriever === 'function') {\n\t\t\t\tthis.legendListDataRetriever = this.props.legendListDataRetriever;\n\t\t\t}\n\t\t}\n\n\t\tif ((this.props.legendListItems && this.props.legendListItems.length && this.props.legendListItems.length > 0)\n\t\t\t|| !this.legendListDataRetriever) {\n\t\t\tthis.setState({ legendListItems: this.props.legendListItems });\n\t\t\treturn $.Deferred().resolve().promise();\n\t\t}\n\t\tthis.legendListDataRetriever(\n\t\t\tthis.props.choiceItems,\n\t\t\tfunction (data) {\n\t\t\t\tif(this.props.choiceItems != null){\n\t\t\t\t\tthis.setState({ \n\t\t\t\t\t\tlegendListItems: data.map((legendItem,index) => {\n\t\t\t\t\t\t\tfor(var i=0; i\n\t\t\t\t\n\t\t\t\t{this.props.legendLabel} \n\t\t\t\t\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.state.legendListItems.map((legendList, i) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t\n \n )\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport {IConfigurableChoice} from \"../../ConfigurableChoice\";\n\n// export interface ILegendItem { Value: string, Text: string, Description: string }\nexport interface ILegendItemList { name: string, showLabel: boolean, displayName: string, showValue: boolean, isColorKey: boolean, items: Array, index: number }\n\nexport default class LegendItemList extends React.Component{\n private renderLegendListItem(legendListItem: IConfigurableChoice, i: number){\n if(this.props.isColorKey){\n var backColor = {backgroundColor: legendListItem.value};\n return (\n \n
\n \n\n
{(this.props.showValue ? \"(\" + legendListItem.value + \") \" : \"\") + legendListItem.text} - {legendListItem.description}
\n
\n )\n } else {\n return (\n
\n {this.props.showValue ? (
{legendListItem.value}
) : \"\"} {legendListItem.text}
- {legendListItem.description}
\n
\n )\n }\n }\n\n public render() {\n return (\n
\n \n {this.props.showLabel ?

{this.props.displayName}

: \"\"}\n \n {\n this.props.items.map((legendListItem, i) => {\n return (this.renderLegendListItem(legendListItem, i))\n })\n }\n
\n )\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport Moment from \"moment\";\nimport * as dateFormatter from '../../dateFormatter';\n\ninterface IMCSNotificationProps { id: string, overviewLandingPageUrl: string }\ninterface IMCSNotification {\n\tnotificationId : string,\n\tsubject: string,\n\tbody: string,\n\tpublishDate: string,\n\tpublishDateUnformatted: Date\n}\n\ninterface State {\n\tnotification: IMCSNotification\n}\n\nexport class MCSNotification extends React.Component {\n\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = { notification: {} };\n\t}\n\n\tprivate getMCSNotification() {\n\t\treturn $.getJSON('/api/topicnotifications/GetTopicNotification?id=' + this.props.id);\n\t}\n\n\tpublic componentDidMount() {\n\t\t$.when(this.getMCSNotification())\n\t\t .done(function (n) {\n\t\t\t this.setState({ notification: n });\n\t\t }.bind(this));\n\t}\n\tpublic FormatDate(date: Date) {\n\t\tvar tempDate = Moment.utc(date, Moment.ISO_8601, true);\n\t\treturn dateFormatter.DateFormatter.Format(tempDate, \"MM/DD/YYYY h:mmA\");\n\t}\n\tpublic render() {\n\t\treturn (\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t

Notification

\n\t\t\t\t\t
\n\t\t\t\t\t\t

{this.state.notification.subject}

\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{this.FormatDate(this.state.notification.publishDateUnformatted)}\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t
\t\n\t\t\t\t
\n\t\t\t
\n\t\t);\n\t}\n\t\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport { InfoBoxWithImageHeader } from \"../InfoBox/InfoBoxWithImageHeader\";\nimport * as dateFormatter from '../../dateFormatter';\n\ninterface IMISOMattersProps { fullDetailsView: boolean, numberOfBlogs?: number, seeAllLink: string }\n\ninterface State {\n Articles: Array;\n FilterArticles: Array;\n FilterCategory: String;\n CategoryList: Array;\n Loading: boolean;\n}\n\nexport class MISOMatters extends React.Component{\n constructor(props) {\n super(props);\n this.state = { Articles: [], FilterCategory: \"All\", CategoryList:[], FilterArticles:[], Loading:true};\n\n }\n\n public componentDidMount() {\n this.getArticles();\n }\n\n private getArticles() {\n return $.getJSON(\"/api/MISOMatters/GetBlogs?take=\" + this.props.numberOfBlogs,\n function (data) {\n this.setState({ Articles: data.articles, CategoryList: data.categoryList, FilterArticles: data.articles, Loading: false });\n }.bind(this));\n }\n\n public categoryFilter(category) {\n \n var listOfArticles = [];\n if (category == \"All\") {\n this.setState({ FilterCategory: category, FilterArticles: this.state.Articles });\n } else {\n for (var i = 0; i < this.state.Articles.length; i++) {\n if (this.state.Articles[i].categoryType == category) {\n listOfArticles.push(this.state.Articles[i]);\n }\n }\n this.setState({ FilterCategory: category, FilterArticles: listOfArticles, Loading:false });\n }\n\n }\n\n public getDisplayDate(date) {\n return dateFormatter.DateFormatter.Format(date, \"MM/DD/YYYY\");\n }\n public renderCatSelector() {\n return (\n
\n \n
\n );\n }\n public render() {\n if (this.state.Loading) {\n return (

);\n }\n return (\n
\n {\n this.props.fullDetailsView ? \n
\n {this.renderCatSelector()}\n
\n : \"\"\n }\n\n {this.state.FilterArticles.length == 0 ?
\n :\n
\n {\n this.state.FilterArticles.map((article, i) => {\n {\n return (\n
\n \"} personName={article.mediaContactName} date={article.publishDate} category={article.categoryType} />\n
\n )\n }\n })\n }\n
\n }\n
\n )\n }\n}","import React from 'react';\nimport MailingListUpdate from \"./MailingListUpdate\";\nimport MailingListCategory from \"./MailingListCategory\";\nimport {IMailingList} from \"./MailingListItem\";\nimport {IListCategory} from \"./MailingListCategory\";\ninterface IMailingListProps { }\n\ninterface State {\n listCategories: Array,\n mailingLists: Array,\n subOnly: boolean\n}\n\n\nexport class MailingList extends React.Component{ \n\n constructor(props) {\n super(props);\n this.state = {listCategories: [], mailingLists: [], subOnly: true};\n this.SubscribeList = this.SubscribeList.bind(this);\n this.UpdateSubscribedLists = this.UpdateSubscribedLists.bind(this);\n }\n\n public componentDidMount(){\n this.GetListCategories();\n this.GetMailingLists();\n } \n \n private GetListCategories(){\n\t\t\treturn $.getJSON(\"/api/MailingLists/GetMailingListCategories\", \n function(data){ \n this.setState({listCategories: data});\n }.bind(this));\n }\n\n private GetMailingLists(){\n var deferred = $.Deferred();\n\n $.getJSON(\"/api/MailingLists/GetMailingLists\", \n function(mailingListData){\n\n for(var i=0; i {\n list.subscribed = false;\n list.subscribe = false;\n list.subscriptionDate = new Date(list.subscriptionDate);\n return list;\n }); \n }\n\n $.ajax({\n\t\t\t\t\turl: \"/api/MailingLists/GetMailingListsForCurrentUser\", \n type: \"GET\",\n dataType: \"json\",\n success: function (data) { \n for(var i=0; i {\n if(list.listName == data[i].listName){\n list.subscribed = true;\n list.subscribe = true;\n list.subscriptionDate = new Date(data[i].subscriptionDate);\n }\n return list;\n }); \n }\n this.setState({mailingLists: mailingListData});\n deferred.resolve();\n }.bind(this), \n error: function(err){\n this.setState({mailingLists: mailingListData});\n deferred.resolve();\n }.bind(this)} \n ) \n }.bind(this));\n\n return deferred.promise();\n }\n\n private UpdateSubscribedLists(lists) : void{\n var updatedMailingLists = this.state.mailingLists.map((_list, i) => { \n var list = lists.filter((list: IMailingList, i) => {\n return list.listName == _list.listName;\n }) as Array;\n\n if(list.length > 0){\n _list.subscribed = true;\n _list.subscribe = true;\n _list.subscriptionDate = new Date(list[0].subscriptionDate);\n } else {\n _list.subscribed = false;\n _list.subscribe = false;\n }\n \n return _list;\n });\n\n this.setState({mailingLists: updatedMailingLists});\n }\n\n private GetCategoryLists(category, showAvailable = false) {\n var categoryLists = new Array();\n\n for(var i=0; i {\n if(_list.listName == list.listName){\n if(_list.subscribe){\n _list.subscribe = false; \n \n } else { \n _list.subscribe = true;\n } \n }\n\n return _list;\n })\n \n this.setState({mailingLists: updatedMailingLists});\n }\n\n public ToggleListView(subOnly: boolean) : void{ \n this.setState({subOnly: subOnly});\n }\n\n public render() {\n // if (!secured.Secured.LoggedIn)\n\t\t\t//\treturn (\n\t\t\t//\t\tYou must be logged in to manage your mailing list subscriptions.\n\t\t // );\n\t\t\t//else\n return (\n
\n
\n

Mailing Lists

\n
\n\n \n\n
\n
\n
\n
\n
\n {this.state.listCategories.map((category, i) => {\n return (\n \n )\n })}\n
\n
\n
\n
\n
\n
\n
\n
\n {this.state.listCategories.map((category, i) => {\n return (\n \n )\n })}\n
\n
\n
\n
\n\n
\n
\n \n {/**/}\n
\n
\n
\n
\n )\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport MailingListItem, {IMailingList} from \"./MailingListItem\";\n\nexport interface IListCategory { id: number; type: string; name: string; categoryDescription: string; pageOrderIndex: number; }\n\ninterface IMailingListCategoryProps { Category: IListCategory, Index: number, MailingLists: Array, SubscribeList: (list: IMailingList) => void }\n\ninterface State {\n useShowAll: boolean,\n showAll: boolean\n}\n\nexport default class MailingListCategory extends React.Component{\n constructor(props) {\n super(props);\n this.state = { useShowAll: true, showAll: false };\n }\n\n public showAllClick() {\n this.setState({ showAll: true });\n }\n public showLessClick() {\n this.setState({ showAll: false });\n }\n\n public handleTabChange() {\n $('#mailing-list-subscriptions a[href=\"#availableMailingListsTab\"]').tab('show');\n }\n\n public render(){\n return (\n
\n
\n

{this.props.Category.name}

\n
\n
\n
\n\n
\n
\n {this.props.MailingLists.length > 0 ?\n
\n {\n (this.state.useShowAll && !this.state.showAll) ?\n this.props.MailingLists.slice(0, 10).map((list, i) => {\n return (\n \n )\n })\n\n :\n this.props.MailingLists.map((list, i) => {\n return (\n \n )\n })\n }\n {\n this.props.MailingLists.length > 10 && (\n
\n
\n \n
\n
\n )\n }\n
\n : \n
\n
\n You are currently not subscribed to any lists for this section\n
\n
\n \n
\n
\n\n }\n \n
\n
\n
\n
\n
\n )\n }\n}\n\n","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport Moment from \"moment\";\nimport * as dateFormatter from '../../dateFormatter';\n\nexport interface IMailingList { listName: string, listTitle: string, listDescription: string, listCategory: string, subscriptionDate: Date, subscribed: boolean, subscribe: boolean, active: boolean; }\n\ninterface IMailingListItemProps { List: IMailingList, ListType: string, CategoryDescription: string, Index: number, ID: string, SubscribeList: (list: IMailingList) => void }\n\ninterface State { }\n\nexport default class MailingListItem extends React.Component{\n\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {};\n\t}\n\n\tpublic SubscribeList(event: React.FormEvent) {\n\t\tthis.props.SubscribeList(this.props.List);\n\t}\n\n\tpublic FormatDate(date: Date) {\n\t\tvar tempDate = Moment.utc(date, Moment.ISO_8601, true);\n\t\treturn dateFormatter.DateFormatter.Format(tempDate, \"MM/DD/YYYY\");\n\t}\n\n\tpublic render() {\n return (\n
\n
\n
\n
\n
\n {this.props.ListType && this.props.ListType == \"Open\" && (\n this.SubscribeList(e)} />\n )}\n
\n {this.props.CategoryDescription == null || (this.props.List.listDescription != null && this.props.CategoryDescription.trim() != this.props.List.listDescription.trim()) ?\n \n

{this.props.List.listTitle}

\n
\n :

{this.props.List.listTitle}

\n }\n {this.props.List.subscribed && (\n
\n {\"Subscription Date: \" + this.FormatDate(this.props.List.subscriptionDate)}\n
\n )}\n
\n
\n
\n
\n {this.props.CategoryDescription == null || (this.props.List.listDescription != null && this.props.CategoryDescription.trim() != this.props.List.listDescription.trim()) ?\n
\n \n \n \n
: \"\"}\n
\n
\n {this.props.CategoryDescription == null || (this.props.List.listDescription != null && this.props.CategoryDescription.trim() != this.props.List.listDescription.trim()) ?\n
\n
\n \n
\n
\n : \"\"}\n
\n
\n\t\t)\n\t}\n}","import React from 'react';\nimport {IMailingList} from \"./MailingListItem\";\nimport * as toast from '../../toast';\n\ninterface IMailingListUpdateProps { MailingLists: Array, UpdateSubscribedLists: (lists: Array) => void }\n\nexport default class MailingListUpdate extends React.Component{\n private SaveUpdates(subscribedLists){\n var updateLists = subscribedLists.map((list) => {\n return {\n active: list.active,\n listCategory:list.listCategory,\n listDescription: list.listDescription,\n listName: list.listName,\n listTitle: list.listTitle\n }\n });\n\n $.ajax( {\n\t\t\turl: \"/api/MailingLists/UpdateMailingLists\", \n type: 'POST',\n data: JSON.stringify(updateLists),\n dataType: 'json',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n success: function(updatedLists){\n toast.Toast.Display('Your subscriptions have been updated'); \n }, \n error: function(data){\n toast.Toast.Display('There was an error updating your subscriptions', null , 'error'); \n }\n }).then((updatedLists) => {\n this.props.UpdateSubscribedLists(updatedLists);\n });\n }\n\n public OnUpdateLists(event: React.FormEvent){ \n var subscribedLists = this.props.MailingLists.filter((list, i) => {\n return (list.subscribe);\n });\n\n this.SaveUpdates(subscribedLists);\n }\n\n public render(){\n return (\n
\n \n
\n )\n }\n}","import React from 'react';\nimport { RegistrationStatusCalculated } from \"../RegistrationStatus/RegistrationStatus\";\nimport * as dateFormatter from '../../dateFormatter';\n\nexport interface IMeetingItem {\n id: string, name: string, startDate: Date, eventCanceled: boolean, isRegistered: boolean, linkURL: string, registrationOpenDate: Date, registrationCloseDate: Date, registrationStatus: string, registrationStatusMessage: string, allowRegistration:boolean, disableRegistrations: boolean, changeRegistration: Function, form:any }\n//interface MeetingItemProps { Subject: string, PublishDate: Date }\n\ninterface State {\n}\nexport default class MeetingItem extends React.Component{\n constructor(props) {\n super(props);\n }\n\n public getTime() {\n //var tempDate = new Date(this.props.StartDate);\n return dateFormatter.DateFormatter.Format(this.props.startDate, \"MMMM D, h:mm a\");\n }\n\n private getMeetingName() {\n if (this.props.eventCanceled) {\n return {this.props.name} (cancelled) ;\n } else {\n return {this.props.name};\n } \n }\n private renderCalButton() {\n\n if (this.props.eventCanceled) {\n return ();\n } else {\n return (Add to Calendar);\n }\n \n }\n private getActionLink(action) {\n var splitLink = this.props.linkURL.split(\"?\");\n var globalLink = splitLink[0];\n return globalLink + action;\n }\n\n public render() {\n return (\n
\n
\n
\n \n {this.getMeetingName() }\n \n
\n
{this.getTime() }
\n
\n {this.renderCalButton()}\n {}\n \n
\n
\n\n \n
\n \n\n
\n
\n )\n }\n}\n","import React from 'react';\nimport MeetingItem, {IMeetingItem} from \"./MeetingItem\";\nimport BlockBase from '../../hocs/BlockBase';\nimport {IBlockBaseProps} from '../../hocs/BlockBase';\nimport * as dateFormatter from '../../dateFormatter';\n\ninterface IMeetingListProps extends IBlockBaseProps { disableRegistrations: boolean, committeeReference: string }\n\ninterface State {\n Meetings: Array,\n registrations: Array,\n yearList: Array,\n filterYear: string\n}\n\nexport class MeetingListBlock extends React.Component{\n constructor(props) {\n super(props);\n this.state = { Meetings: [], registrations: [], yearList: [], filterYear: '' };\n\n }\n\n public componentDidMount() {\n this.getMeetings();\n }\n\n public shouldComponentUpdated() {\n this.getMeetings();\n }\n\n private getMeetings() {\n if (this.props.disableRegistrations) {\n $.getJSON('/api/events/GetMeetings?committee=' + this.props.committeeReference,\n function (data) {\n this.setState({ Meetings: data[\"events\"] });\n }.bind(this));\n } else {\n $.getJSON('/api/events/GetMeetingsWithRegistrations?committee='+this.props.committeeReference,\n function (data) {\n var newMeetingState = data[\"events\"];\n var newRegistrationState = data[\"registrations\"];\n \n for (var i = 0; i < newMeetingState.length; i++) {\n for (var j = 0; j < newRegistrationState.length; j++) {\n if (newRegistrationState[j].FormIdentifier.HostPageId == newMeetingState[i].Id) {\n newMeetingState[i].IsRegistered = true;\n newMeetingState[i].Form = newRegistrationState[j].FormIdentifier;\n }\n }\n var tempDate = new Date(newMeetingState[i].startDate);\n\n if (tempYearList.indexOf(dateFormatter.DateFormatter.Format(tempDate, \"Y\")) < 0) {\n\n tempYearList.push(dateFormatter.DateFormatter.Format(tempDate, \"Y\").toString());\n }\n\n }\n\n this.setState({ Meetings: newMeetingState, registrations: newRegistrationState, yearList: tempYearList.sort() });\n var d = new Date();\n var n = d.getFullYear();\n\n if (this.state.yearList.indexOf(n.toString()) != -1) {\n this.yearFilter(n);\n } else {\n this.yearFilter(this.state.yearList[this.state.yearList.length -1]);\n }\n }.bind(this));\n }\n var tempYearList = [];\n\n }\n\n private changeRegistration(e) {\n var tempMeetingState = this.state.Meetings;\n for (var i = 0; i < tempMeetingState.length; i++) {\n if (tempMeetingState[i].Id == e) {\n tempMeetingState[i].IsRegistered = false;\n }\n\n }\n\n this.setState({ Meetings: tempMeetingState });\n\n }\n\n public yearFilter(year) {\n this.setState({filterYear:year});\n }\n\n public render() {\n // 1/3/18: Because this block is typically nested inside an accordian, it does not render an accordain\n // at mobile viewports like other tabbed components \n return (\n
\n {this.state.yearList.length > 0 ?\n
\n \n
: \"\"}\n {\n this.state.Meetings.map((meeting, i) => {\n var meetingDate = new Date(meeting.startDate);\n if (this.state.filterYear == meetingDate.getFullYear() ||this.state.filterYear == '') {\n return (\n \n )\n }\n })\n }\n {\n (this.state.Meetings.length > 0 ?\n :\n
There are no items to display for this selection.
)\n }\n\n
\n )\n }\n}\n\nexport class MeetingList extends React.Component {\n\n public render() {\n return (\n
\n \n
\n \n )\n\t}\n}\n\ninterface IMeetingListHoc {}\n\nexport const MeetingListHoc = BlockBase(MeetingListBlock,{});","export * from \"./SubcommitteeMeetings\"\nexport * from \"./MeetingList\" ","import React from 'react';\nimport { MeetingList } from \"./MeetingList\";\nimport {RelatedMeetingMaterialDocuments} from \"../RelatedDocuments/RelatedMeetingMaterialDocuments\"\n\ninterface ICommittee {\n name:string,\n id:string,\n committeeAcronym:string,\n contentGuid:string\n}\n\nclass CommitteePanelSetting {\n Committee:ICommittee;\n PanelTitle:string;\n Loaded:Boolean = false;\n}\n\ninterface ISubcommitteeMeetingsProps { \n parentCommittee:ICommittee;\n subcommittees:Array\n}\n\ninterface ISubcommitteeMeetingsState {\n committeePanelSettings:Array;\n}\n\nexport class SubcommitteeMeetings extends React.Component{\n constructor(props) {\n super(props);\n this.state = { committeePanelSettings: [] };\n }\n\n public componentDidMount() {\n var committees = [];\n\n committees.push({\n Committee: this.props.parentCommittee,\n PanelTitle: this.props.parentCommittee.name + \"(\" + this.props.parentCommittee.committeeAcronym + \")\"\n });\n\n this.props.subcommittees.map((subcommittee) => {\n committees.push({\n Committee: subcommittee,\n PanelTitle: subcommittee.name + \"(\" + subcommittee.committeeAcronym + \")\"\n });\n })\n\n this.setState({committeePanelSettings: committees});\n }\n\n public render() {\n return (\n
\n
\n {\n this.state.committeePanelSettings.map((committeePanel, i) => {\n return (\n
{ if (!committeePanel.Loaded) { committeePanel.Loaded = true; this.setState( { committeePanelSettings: this.state.committeePanelSettings }); } } }>\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n {committeePanel.Loaded && }\n
\n
\n {committeePanel.Loaded && }\n
\n
\n
\n
\n )\n })\n }\n
\n
\n );\n }\n}","import React, { createRef } from 'react';\n\ninterface IMutliselectProps {\n items: Array,\n keepOpen?: boolean,\n openByDefault?: boolean,\n sortColumnsAlphabetically?: boolean;\n roleDisplayLimit?: number, \n updateSelectedItems: (selectedItems: Array) => void,\n}\n\ninterface IMultiselectState {\n inputText: string;\n selectedItems: string[];\n dropdownOpen: boolean;\n}\n\nexport class Multiselect extends React.Component{\n dropdownRef: React.RefObject;\n inputRef: React.RefObject;\n\n constructor(props) {\n super(props);\n\n this.state = {\n inputText: '',\n selectedItems: [],\n dropdownOpen: this.props.keepOpen || this.props.openByDefault,\n };\n\n this.dropdownRef = createRef();\n this.inputRef = createRef();\n\n this.openDropdown = this.openDropdown.bind(this);\n this.handleClickOutside = this.handleClickOutside.bind(this);\n this.updateInputText = this.updateInputText.bind(this);\n this.selectItem = this.selectItem.bind(this);\n this.removeAllItems = this.removeAllItems.bind(this);\n this.renderSelectedItemsInInput = this.renderSelectedItemsInInput.bind(this);\n }\n\n public componentDidMount() {\n document.addEventListener('mousedown', this.handleClickOutside);\n }\n\n public componentWillUnmount() {\n document.removeEventListener('mousedown', this.handleClickOutside);\n }\n\n public componentDidUpdate() {\n // Check if selected items still exist in updated props list; remove them if not.\n for (let i = 0; i < this.state.selectedItems.length; i++)\n {\n let nextSelectedItem = this.state.selectedItems[i];\n if (!this.props.items.includes(nextSelectedItem)) {\n this.selectItem(nextSelectedItem);\n }\n }\n }\n\n private openDropdown() {\n this.setState({ dropdownOpen: true });\n }\n\n private handleClickOutside(event) {\n if (this.props.keepOpen) return;\n\n if (this.dropdownRef.current &&\n !this.dropdownRef.current.contains(event.target) &&\n !this.inputRef.current.contains(event.target)) {\n this.setState({ dropdownOpen: false });\n }\n }\n\n private updateInputText(text: string) {\n this.setState({ inputText: text });\n }\n\n private selectItem(item) {\n let indexOfSelectedItem = this.state.selectedItems.indexOf(item);\n let updatedSelectedItems = this.state.selectedItems.slice();\n if (indexOfSelectedItem > -1) {\n updatedSelectedItems.splice(indexOfSelectedItem, 1);\n } else {\n updatedSelectedItems.push(item);\n }\n\n this.props.updateSelectedItems(updatedSelectedItems);\n this.setState({\n ...this.state,\n selectedItems: updatedSelectedItems,\n });\n }\n\n private removeAllItems() {\n this.props.updateSelectedItems([]);\n this.setState({\n ...this.state,\n selectedItems: [],\n });\n }\n\n private renderSelectedItemsInInput() {\n if (this.props.roleDisplayLimit && this.state.selectedItems.length >= this.props.roleDisplayLimit) {\n return (\n
  • \n {this.state.selectedItems.length} roles selected  \n \n
  • \n );\n }\n\n return this.state.selectedItems.map((value, i) =>\n
  • \n {value}  \n this.selectItem(value)}>\n
  • \n );\n }\n\n private sortItemsByColumn(items: string[], numberOfColumns: number = 4): string[] {\n let alphabetizedItems = items.sort((a, b) => a.localeCompare(b));\n let numberOfRolesInEachColumn = Math.ceil(items.length / numberOfColumns);\n let sortedItems = [];\n let step = 0;\n let offset = 0;\n let columnizedIndex = 0;\n\n for (let i = 0; i < alphabetizedItems.length; i++) {\n if (i !== 0 && i % numberOfRolesInEachColumn === 0) {\n offset += columnizedIndex + numberOfColumns + step;\n step--;\n }\n\n columnizedIndex = i + i * numberOfColumns - offset;\n sortedItems[columnizedIndex] = alphabetizedItems[i];\n }\n\n return sortedItems;\n }\n\n private getFormattedItemsList() {\n let items = this.props.sortColumnsAlphabetically ? this.sortItemsByColumn(this.props.items) : this.props.items;\n\n return items.filter((item) => item.toLowerCase().includes(this.state.inputText.toLowerCase()))\n .map((item, i) => {\n return (\n
  • { this.selectItem(item); }}\n >\n {item}\n
  • \n );\n });\n }\n\n public render() {\n return (\n
    \n
    \n
    \n
      \n {this.renderSelectedItemsInInput()}\n this.updateInputText(event.currentTarget.value)} />\n
    \n
    \n
    \n {this.state.dropdownOpen &&\n
    \n {this.getFormattedItemsList()}\n
    \n }\n
    \n )\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport { Accordion } from \"../Accordion/Accordion\";\nimport * as dateFormatter from '../../dateFormatter';\n\ninterface INewsOverviewProps { Topic: string, SiteURL: string }\n\ninterface State {\n Articles: Array;\n FilterYear: string;\n YearList: Array;\n Loading: boolean;\n}\n\nexport class NewsOverview extends React.Component{\n constructor(props) {\n super(props);\n this.state = { Articles: [], FilterYear: \"All\", YearList:[],Loading:true};\n\n }\n\n public componentDidMount() {\n this.getArticles();\n }\n\n private getArticles() {\n return $.getJSON(\"/api/News/GetNews\",\n function (data) {\n this.setState({ Articles: data.articles, YearList: data.yearList, FilterYear: \"All\", Loading:false });\n }.bind(this));\n }\n\n private getArticlesByYear(year) {\n return $.getJSON(\"/api/News/GetNewsByYear?year=\"+year,\n function (data) {\n this.setState({ Articles: data.articles, Loading:false});\n }.bind(this));\n }\n\n public yearFilter(year) {\n this.setState({ FilterYear: year, Loading: true });\n if (year == \"All\") {\n this.getArticles();\n } else {\n this.getArticlesByYear(year.toString());\n }\n \n }\n\n public getDisplayDate(date) {\n return dateFormatter.DateFormatter.Format(date, \"MM/DD/YYYY\");\n }\n public renderDateSelector() {\n return (
    \n \n
    \n \n {\n this.state.YearList.map((year, i) => {\n return ()\n })\n }\n
    \n
    );\n }\n public render() {\n return (\n
    \n
    \n MISO News Releases {this.renderDateSelector()}\n
    \n {this.state.Loading ? \n

    \n :\n
    \n this.state.Articles[key])} titleOverride={\"name\"} contentOverride={\"text\"} secondaryTitle={\"releaseDate\"} />\n
    \n }\n
    \n )\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport NotificationTopic from \"./NotificationTopic\";\nimport {INotificationTopic} from \"./NotificationTopic\";\ninterface INotification { notificationTopic: string, subject: string, body: string, publishDate: string, permanentLinkUrl: string }\ninterface INotificationGroup { topic: string, notifications: Array }\ninterface INotificationListProps { topic: string, siteURL: string, overviewAdditionalText: string, callToActionText: string }\n\ninterface State {\n\ttopics: Array,\n groupedNotifications: Array,\n topic: string,\n take: number,\n loading: boolean\n}\n\nexport class NotificationList extends React.Component{\n constructor(props){\n super(props);\n this.state = { topics: [], groupedNotifications: [], topic: \"\", take: 0, loading: true};\n }\n\n public componentDidMount() {\n\t this.getTopicChoices();\n if(this.props.topic != \"All\"){\n this.setState({topic: this.props.topic}, function(){this.getNotifications()});\n } else { \n this.getNotifications();\n }\n }\n\n\tprivate getTopicChoices() {\n\t\treturn $.getJSON(\"/api/topicnotifications/GetTopicChoices\",\n\t\t\tfunction (data) {\n\t\t\t\tthis.setState({ topics: data, topic:data[0].value });\n\t\t\t}.bind(this));\n }\n\n private getNotifications(){\n return $.getJSON(\"/api/topicnotifications/GetGroupedNotifications?topic=\" + this.state.topic + \"&take=\" + this.state.take, \n function (data) {\n for (var i = 0; i < data.length; i++) {\n for (var j = 0; j < data[i].notifications.length; j++) {\n data[i].notifications[j].body = this.formatBody(data[i].notifications[j].body, data[i].notifications[j].permanentLinkUrl);\n }\n }\n this.setState({ groupedNotifications: data, loading: false });\n }.bind(this));\n }\n public formatBody(body, pageLink) {\n if (body) {\n body = body + '
    ';\n var bodyText = body + ' Go to Page Details';\n return bodyText;\n } else {\n return ' Go to Page Details';\n }\n \n //return bodyText;\n }\n private getNotificationsForTopic(topic): Array {\n for (var i = 0; i < this.state.groupedNotifications.length; i++) {\n if (this.state.groupedNotifications[i].topic == topic) {\n return this.state.groupedNotifications[i].notifications; \n }\n }\n }\n\n private updateNotifications(topic: string, take: number): void{\n var currentState = this.state;\n \n var temploading = true;\n var temptopic = this.state.topic;\n if(topic != currentState.topic){\n temptopic = topic;\n }\n var temptake = this.state.take;\n if(take != currentState.take){\n temptake = take;\n }\n\n this.setState({ loading: temploading, topic: temptopic, take: temptake }, function () {\n this.getNotifications();\n }) \n\n }\n private updateTopic(topic: string): void {\n this.setState({ topic: topic })\n }\n\n public render() {\n if (this.state.loading) {\n return (
    );\n }\n\n else {\n let topicNotifications = this.state.groupedNotifications.findIndex(obj => {\n return obj.topic === this.state.topic;\n });\n let topicData = this.state.topics.find(obj => {\n return obj.value === this.state.topic;\n });\n return (\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n )\n }\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\n\nimport { Accordion } from \"../Accordion/Accordion\";\nimport { CallToActionSideBar, epiLinks } from '../CallToActionSideBar/CallToActionSideBar';\ninterface INotification { notificationTopic: string, subject: string, body: string, publishDate: string, permanentLinkUrl: string }\nexport interface INotificationTopic { text: string, value: string, description: string }\ninterface INotificationTopicProps { topic: INotificationTopic, notifications: Array, siteURL: string, overviewAdditionalText:string, callToActionText:string }\ninterface state { }\n\nexport default class NotificationTopic extends React.Component{\n constructor(props) {\n super(props);\n }\n public render() {\n let links: epiLinks[] = [{\n openInNewTab: false,\n text: \"Get Started\",\n url: this.props.siteURL + \"manage/profile\"\n }]\n return (\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n Overview\n
    \n\n
    \n
    \n
    \n {this.props.topic.description}\n

    \n
    \n\n
    \n
    \n
    \n \n
    \n
    \n\n
    \n
    \n this.props.notifications[key])} titleOverride={\"subject\"} contentOverride={\"body\"} secondaryTitle={\"publishDate\"} />\n
    \n
    \n
    \n )\n }\n}\n","import React from 'react';\nimport * as toast from '../../toast';\nimport * as dateFormatter from '../../dateFormatter';\nimport { Multiselect } from '../Multiselect/Multiselect';\n\n\ninterface IProfileDataModalProps {\n profile: Array;\n roleList: Array;\n isAdmin: boolean;\n isITOCUser: boolean;\n isClientRelationsEditor: boolean;\n isStakeholderRelationsEditor: boolean;\n}\nclass RoleInformation {\n roleName: string;\n friendlyName: string;\n extranetRole: boolean;\n gridUnityRole: boolean;\n adminOnlyRole: boolean;\n}\n\ninterface State {\n showModal: boolean;\n loading: boolean;\n showAccessApprovals: boolean;\n approveRole: string;\n approvedRoles: Array;\n updatedRoleNames: Array;\n}\n\nexport class ProfileDataModal extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n showModal: true,\n loading: true,\n showAccessApprovals: false,\n approveRole: \"approve\",\n approvedRoles: [],\n updatedRoleNames: []\n }\n\n this.updateNewRolesList = this.updateNewRolesList.bind(this);\n }\n\n public componentDidMount() {\n this.GetUserRoles();\n }\n\n public GetUserRoles() {\n $.getJSON(\"/ProfileLookupPage/GetUserAccessStatus?userEmail=\" + encodeURIComponent(this.props.profile['email']),\n function (data) {\n this.nullCheck(data);\n data.roles = data.roles.sort();\n this.setState({ approvedRoles: data.roles, loading: false });\n }.bind(this));\n }\n\n private updateNewRolesList(updatedRoleNames: Array) {\n this.setState({ updatedRoleNames });\n }\n\n private grantAccess() {\n $.ajax({\n type: 'post',\n data: JSON.stringify({\n Email: this.props.profile['email'],\n Roles: this.state.updatedRoleNames\n }),\n url: \"/ProfileLookupPage/GrantUserRoles\",\n contentType: 'application/json',\n dataType: 'json',\n success: function (data) {\n this.nullCheck(data);\n this.GetUserRoles(this.props.profile['email']);\n toast.Toast.Display(\"Access for \" + this.props.profile['firstname'] + \" \" + this.props.profile['lastname'] + \" has been granted.\", \"Granted\");\n }.bind(this)\n });\n }\n\n private revokeAccess() {\n var comments = document.querySelector(`input[name=\"revokeComments\"]`);\n\n if (comments[\"value\"] == null || comments[\"value\"] == \"\") {\n alert(\"Comments are required when revoking access.\");\n return;\n }\n\n $.ajax({\n type: 'post',\n data: JSON.stringify({\n Email: this.props.profile['email'],\n Roles: this.state.updatedRoleNames,\n Comment: comments[\"value\"]\n }),\n url: \"/ProfileLookupPage/RevokeUserRoles\",\n contentType: 'application/json',\n dataType: 'json',\n success: function (data) {\n this.nullCheck(data);\n this.GetUserRoles(this.props.profile['email']);\n toast.Toast.Display(\"Access for \" + this.props.profile['firstname'] + \" \" + this.props.profile['lastname'] + \" has been revoked.\", \"Revoked\", \"error\");\n }.bind(this)\n });\n document.querySelector(`input[name=\"revokeComments\"]`)[\"value\"] = \"\";\n \n }\n\n private unlockProfile() {\n $.ajax({\n type: 'post',\n data: JSON.stringify({\n Email: this.props.profile['email']\n }),\n url: \"/ProfileLookupPage/UnlockUser\",\n contentType: 'application/json',\n dataType: 'json',\n success: function (data) {\n this.GetUserRoles(this.props.profile['email']);\n this.props.profile['islockedout'] = !data;\n var statusMessage = (data ? \"Successfully unlocked profile for \" : \"Failed to unlock profile for \") + this.props.profile['email']\n toast.Toast.Display(statusMessage, data ? \"Profile Unlocked\" : \"Profile Unlock Failed\");\n }.bind(this)\n });\n }\n\n private confirmUser() {\n $.ajax({\n type: 'post',\n data: JSON.stringify({\n Email: this.props.profile['email']\n }),\n url: \"/ProfileLookupPage/ConfirmUser\",\n contentType: 'application/json',\n dataType: 'json',\n success: function (data) {\n this.GetUserRoles(this.props.profile['email']);\n this.props.profile['isactive'] = data;\n this.props.profile['isconfirmed'] = data;\n var statusMessage = (data ? \"Confirmed and activated user: \" : \"Failed to confirm and/or activate user: \") + this.props.profile['email']\n toast.Toast.Display(statusMessage, data ? \"User Confirmed\" : \"User Confirmation Failed\");\n }.bind(this)\n });\n }\n\n private resendConfirmationEmail() {\n $.ajax({\n type: 'post',\n data: JSON.stringify({\n Email: this.props.profile['email']\n }),\n url: \"/ProfileLookupPage/ResendConfirmationEmail\",\n contentType: 'application/json',\n dataType: 'json',\n success: function (data) {\n this.GetUserRoles(this.props.profile['email']);\n var statusMessage = (data ? \"Resent confirmation email to \" : \"Failed to resend confirmation email to \") + this.props.profile['email']\n toast.Toast.Display(statusMessage, data ? \"Resent Confirmation Email\" : \"Failed to Resend Confirmation Email\");\n }.bind(this)\n });\n }\n\n public open() {\n this.setState({\n showModal: true\n });\n }\n\n public close() {\n this.setState({\n showModal: false\n });\n }\n public showApprovalSection() {\n this.setState({ showAccessApprovals: true });\n }\n\n public hideApprovalSection() {\n this.setState({ showAccessApprovals: false });\n }\n public toggleApproveAndDeny(e) {\n var approveBoxes = document.querySelectorAll(`input[name=\"approveRole\"]:checked`);\n for (var i = 0; i < approveBoxes.length; i++) {\n approveBoxes[i][\"checked\"] = false;\n }\n\n var rejectBoxes = document.querySelectorAll(`input[name=\"rejectRole\"]:checked`);\n for (var i = 0; i < rejectBoxes.length; i++) {\n rejectBoxes[i][\"checked\"] = false;\n }\n\n this.setState({ approveRole: e });\n }\n\n private nullCheck(data) {\n if (data == \"null\") {\n this.close();\n }\n }\n\n private getAppropriateMultiselectValues(): Array {\n if (this.state.approveRole === \"approve\") {\n return this.props.roleList\n .filter(role => this.state.approvedRoles.indexOf(role.roleName) == -1 && (this.props.isAdmin || (!this.props.isAdmin && !role.adminOnlyRole && !role.gridUnityRole)))\n .map(role => role.roleName);\n } else if (this.state.approveRole === \"revoke\") {\n return this.props.roleList\n .filter(role => this.state.approvedRoles.indexOf(role.roleName) > -1 && (this.props.isAdmin == true || (this.props.isAdmin == false && role.adminOnlyRole == false && role.gridUnityRole == false)))\n .map(role => role.roleName);\n }\n\n console.error('Invalid Approval State.');\n return new Array();\n }\n\n public render() {\n for (var i in this.props.profile) {\n if (this.props.profile[i] === \"undefined\" || this.props.profile[i] === undefined) {\n this.props.profile[i] = \"\";\n }\n }\n return (\n <>\n {this.state.showModal && (\n \n
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {this.props.profile['isactive'] == \"true\" ? : }\n \n \n \n {this.props.profile['isconfirmed'] == \"true\"\n ? \n : }\n \n \n \n {this.props.profile['islockedout'] == \"true\"\n ? \n : \n }\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    User Info
    Email Address{this.props.profile['email']}
    First & Last Name{this.props.profile['firstname']} {this.props.profile['lastname']}
    Company{this.props.profile['companyname']}
    Address{this.props.profile['streetaddress']}
    City, State{this.props.profile['city']}, {this.props.profile['state']}
    Zip{this.props.profile['zipcode']}
    Phone Number{this.props.profile['phonenumber']}
    Secondary Phone Number{this.props.profile['secondaryphonenumber']}
    Account StatusActiveNot Active
    Confirmed StatusConfirmed\n
    \n
    Not Confirmed
    \n
    \n {this.props.isAdmin && (\n \n )}\n {(this.props.isAdmin || this.props.isClientRelationsEditor) && (\n \n )}\n
    \n
    \n
    Lock Status\n
    \n
    Locked
    \n {(this.props.isAdmin || this.props.isITOCUser) && (\n
    \n \n
    \n )}\n
    \n
    Unlocked
    Lockout End{dateFormatter.DateFormatter.Format(this.props.profile['lockoutend'], \"M/D/YYYY HH:mm\")}
    Last Lockout Date{dateFormatter.DateFormatter.Format(this.props.profile['lastlockoutdate'], \"M/D/YYYY HH:mm\")}
    Creation Date{dateFormatter.DateFormatter.Format(this.props.profile['creationdate'], \"M/D/YYYY HH:mm\")}
    Last Login Date{dateFormatter.DateFormatter.Format(this.props.profile['lastlogindate'], \"M/D/YYYY HH:mm\")}
    \n
    \n
    \n \n \n \n \n\n \n \n \n {\n this.state.approvedRoles.length > 0 ?\n this.state.approvedRoles.map((sub, i) => {\n return ();\n })\n : \n }\n\n \n
    Current Access
    {sub}
    No Current Access
    \n
    \n
    \n\n
    \n {(this.props.isAdmin || this.props.isClientRelationsEditor) && (\n this.state.showAccessApprovals ?\n :\n \n )}\n
    \n {this.state.loading == false && this.state.showAccessApprovals == true ?\n\n
    \n \n
    \n {\n this.state.approveRole === \"approve\" ?\n

    Grant Access

    :\n

    Revoke Access

    \n }\n
    \n \n {\n this.state.approveRole == \"revoke\" ?\n
    Reason*\n \n
    *Indicates a required field
    \n
    :\n \n\n }\n
    \n \n {this.state.approveRole == \"approve\" ?\n :\n }\n
    \n\n
    :\n
    \n }\n
    \n\n
    \n )}\n \n \n );\n\n };\n}\n","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport * as DocumentsBase from '../Find/DocumentsBase';\nimport * as Follow from '../../follow';\nimport * as dateFormatter from '../../dateFormatter';\n\ninterface State { results: Array, query: DocumentsBase.DocumentItem }\n\ninterface IQBankDocProps {\n\tQBankID: number, \n disableFollowing: false, \n OverrideDescription: false, \n Description: string,\n FindServiceUrl: string\n}\n\nexport class QBankDocument extends React.Component{\n\n constructor(props){\n super(props);\n this.state = { results: [], query: null }\n }\n\n constructResultItem() : DocumentsBase.DocumentItem {\n return new DocumentsBase.DocumentItem();\n }\n\n componentDidMount(){\n // Get Document Data from EpiFind \n this.GetDocumentMetadata().then((data: DocumentsBase.DocumentItem) => {\n this.setState({query: data});\n });\n }\n\n private GetDocumentMetadata(){ \n var deferred = $.Deferred();\n var fields = \"DocumentGuid,Name,Description,Files\";\n var xmlhttp = new XMLHttpRequest();\n \n xmlhttp.open(\"GET\", this.props.FindServiceUrl + \"/\" + this.props.QBankID + \"?fields=\" + fields, true);\n xmlhttp.onload = function(e) {\n var data = JSON.parse(xmlhttp.responseText);\n var parsedResult = this.parseResults(data);\n\n this.getFollowedStatus(parsedResult).then((subscriptionData) => { \n if(subscriptionData.subscriptions.length > 0){\n for(var i=0; i {\n if (prop != \"source\") {\n if (parsedSingleResult.source && parsedSingleResult.source[prop]) {\n parsedSingleResult[prop] = parsedSingleResult.source[prop];\n }\n else if (parsedSingleResult.source && parsedSingleResult.source.properties && parsedSingleResult.source.properties[prop]) {\n parsedSingleResult[prop] = parsedSingleResult.source.properties[prop];\n }\n else if (data && data.fields && data.fields[prop]) {\n parsedSingleResult[prop] = data.fields[prop];\n }\n }\n }); \n\n return parsedSingleResult; \n }\n\n private getFollowedStatus(documentItem: DocumentsBase.DocumentItem){\n return $.ajax({\n url: \"/api/documents/GetSubscribedDocuments\",\n type: \"POST\",\n data: JSON.stringify([documentItem.DocumentGuid]),\n dataType: 'json',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n success: (data) => {\n return data;\n },\n error: (error) => {\n // An error happened\n }\n });\n }\n\n private renderFollow(){\n if(!this.props.disableFollowing){\n return (\n
    \n

    \n

    \n );\n }\n }\n\n private renderDescription(){\n if(this.props.OverrideDescription){\n return (\n
    \n );\n } else {\n return (\n
    \n {this.state.query.Description}\n
    \n );\n }\n }\n\n render(){\n if(this.state.query == null) return (
    ) \n\n return(\n
    \n
    \n
    \n

    {this.state.query.Name}

    \n {this.state.query.source.EffectiveDate$$date ?
    Effective - {dateFormatter.DateFormatter.Format(this.state.query.source.EffectiveDate$$date, \"MM-DD-YYYY\")}
    : }\n
    \n {this.renderDescription()} \n
    \n {this.renderFollow()} \n \n
    \n )\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport { InfoBox } from \"../InfoBox/InfoBox\";\n\ninterface RecentNotificationItem { subject: string, publishDate: Date, linkURL: string }\ninterface IRecentNotificationListProps { topics: string, take: number }\ninterface State {\n notifications: Array,\n loading: boolean\n}\nexport class RecentNotificationList extends React.Component{\n constructor(props) {\n super(props);\n this.state = { notifications: [], loading:true};\n\n }\n public componentDidMount() {\n this.getNotifications();\n } \n\n private buildPayload() {\n var topics = [];\n if (this.props.topics != null || this.props.topics != '') {\n topics = this.props.topics.split(',');\n }\n return JSON.stringify({\n topics: topics,\n take: this.props.take\n }) \n }\n\n private getNotifications() {\n return $.ajax({\n url: '/api/topicnotifications/getrecentnotifications',\n type: 'POST',\n dataType: 'json',\n data: this.buildPayload(),\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n success: function (data) {\n \n this.setState({ notifications: data, loading:false });\n }.bind(this)\n });\n }\n\n public render() {\n if (this.state.loading) {\n return (
    );\n }\n return (\n
    \n
    \n {\n this.state.notifications.map((notification, i) => {\n return (\n \n )\n }) \n }\n
    \n
    \n )\n }\n}","import React from 'react';\nimport * as toast from '../../toast';\n\nexport interface IRegistrationButtonsItem { target: string, Form: any, Registrations: Array, Status: string, LinkUrl: string, ChangeRegistration: Function, HideModal: Function, DisplayModal: Function, showModal: boolean, LoggedIn: boolean, Hash?: string }\n\ninterface State {\n}\nexport default class RegistrationButtons extends React.Component{\n constructor(props) {\n super(props);\n }\n\n public getLinkUrl() {\n if (this.props.LinkUrl && this.props.Status == 'open') {\n var link = this.props.LinkUrl.replace(/\\/+$/, '') + '/register' + (this.props.Hash ? this.props.Hash : '');\n return link;\n }\n else {\n return this.props.LinkUrl;\n }\n }\n open = () => {\n this.props.DisplayModal();\n }\n close = () => {\n this.props.HideModal();\n }\n public unregisterButton(submission, displayName) {\n var tempSubmission = submission.toString();\n $.ajax({\n url: \"/api/events/Unregister\",\n type: 'POST',\n data: JSON.stringify({ formIdentifier: this.props.Form, submission: tempSubmission }),\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n success: function (data) {\n toast.Toast.Display(displayName + data);\n this.props.ChangeRegistration();\n return data;\n\n }.bind(this)\n });\n }\n public renderButton() {\n if (this.props.Status == \"cancelled\") {\n return ();\n }\n else if (this.props.Registrations.length > 0) {\n return ();\n }\n else if (this.props.Status == \"open\") {\n return (Register );\n }\n else {\n return ();\n }\n }\n public render() {\n return (\n \n {\n this.props.Registrations.length > 0 || this.props.showModal ?\n
    \n
    \n
    \n
    \n
    Who would you like to unregister from this event?
    \n
    \n
    \n
    \n {\n this.props.Registrations.length == 0\n ? You have no submissions for this event\n\n : this.props.Registrations.map((reg, i) => {\n var displayName = reg.GuestEmail ? reg.GuestEmail : reg.SYSTEMCOLUMN_SubmitUser;\n return (\n
    {displayName}
    \n )\n })\n }\n\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    :''\n\n }\n {this.renderButton() }\n
    \n )\n }\n \n}\n","import React from 'react';\nimport * as toast from '../../toast';\nexport interface IRegistrationIconItem {\n target:string,Form: any, Registrations: Array, Status: string, LinkUrl: string, DisableRegistrations: boolean, ChangeRegistration: Function, HideModal: Function, DisplayModal: Function, showModal: boolean\n}\n//interface EventItemProps { Subject: string, PublishDate: Date }\n\ninterface State {\n\n}\nexport default class RegistrationIcon extends React.Component{\n constructor(props) {\n super(props);\n }\n open = () => {\n this.props.DisplayModal();\n }\n close = () => {\n this.props.HideModal();\n }\n public unregisterButton(submission, displayName) {\n var tempSubmission = submission.toString();\n $.ajax({\n url: \"/api/events/Unregister\",\n type: 'POST',\n data: JSON.stringify({ formIdentifier: this.props.Form, submission: tempSubmission }),\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n success: function (data) {\n toast.Toast.Display(displayName + data);\n this.props.ChangeRegistration();\n return data;\n\n }.bind(this)\n });\n }\n private renderRegistrationIcon() {\n if (this.props.Registrations.length > 0 && this.props.Status == \"cancelled\") {\n return ();\n } else if (this.props.Registrations.length > 0) {\n return ();\n } else if (this.props.Status == \"cancelled\") {\n return ();\n } else if (this.props.Status == \"open\") {\n var registerURL = this.props.LinkUrl.replace(/\\/+$/, '') + '/register';\n return (Register);\n }\n else {\n return ( Register);\n }\n }\n\n public getLinkUrl() {\n if (this.props.LinkUrl && this.props.Status == 'open') {\n var link = this.props.LinkUrl.replace(/\\/+$/, '') + '/register';\n return link;\n }\n else {\n return '';\n }\n }\n\n public render() {\n return (\n
    \n \n {this.props.Registrations.length > 0 || this.props.showModal ?\n
    \n
    \n
    \n
    \n
    Who would you like to unregister from this event?
    \n
    \n
    \n
    \n {\n this.props.Registrations.length == 0\n ? You have no submissions for this event\n\n : this.props.Registrations.map((reg, i) => {\n var displayName = reg.GuestEmail ? reg.GuestEmail : reg.SYSTEMCOLUMN_SubmitUser;\n return (\n
    {displayName}
    \n )\n })\n }\n\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    : ''}\n {this.renderRegistrationIcon()}\n
    \n \n )\n }\n}\n``","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\nimport RegistrationButtons, {IRegistrationButtonsItem} from \"./RegistrationButtons\";\nimport RegistrationIcon, {IRegistrationIconItem} from \"./RegistrationIcon\";\n\ninterface IRegistrationStatusProps { target:string,eventStatus: string, disableRegistrations: boolean, form: any, view: string, linkUrl: string, loggedIn: boolean, hash?:string }\n\ninterface State {\n registrations: Array,\n showModal: boolean\n}\ninterface registration {\n formIdentifier: any,\n registeredDateTime: string,\n submissionId: string,\n user:string\n}\nexport class RegistrationStatus extends React.Component{\n constructor(props) {\n super(props);\n this.state = { registrations: [], showModal: false};\n\n }\n public componentDidMount() {\n this.getEvents();\n }\n\n componentDidUpdate(prevProps, prevState) {\n if (this.props !== prevProps) {\n this.getEvents(); \n }\n }\n\n private getEvents() {\n if (this.props.form) {\n $.ajax({\n url: \"/api/events/GetUserAllRegistrations\",\n type: 'POST',\n data: JSON.stringify(this.props.form),\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n success: function (data) {\n this.setState({ registrations: data });\n }.bind(this)\n });\n } else {\n this.setState({ registrations: [] });\n }\n }\n\n public changeRegistration() {\n this.getEvents();\n if (this.state.registrations.length == 0) {\n this.hideModal();\n }\n }\n\n public displayModal() {\n this.setState({ showModal: true });\n }\n\n public hideModal() {\n this.setState({ showModal: false });\n }\n\n public render() {\n \n return (\n (this.props.view == \"Buttons\"\n ? \n : )\n )\n }\n}\ninterface IRegistrationStatusCalculatedProps extends IRegistrationStatusProps {\n isCancelled: boolean;\n allowRegistration: boolean;\n registrationOpenDate: Date;\n registrationCloseDate: Date;\n\n}\n\nexport const RegistrationStatusCalculated: React.SFC = (props) => {\n function calcEventStatus() {\n var rightNow = new Date();\n if (props.isCancelled) {\n return \"cancelled\";\n }\n else if (!props.allowRegistration || !props.form) {\n return \"special\";\n }\n else if (rightNow < props.registrationOpenDate) {\n return \"preOpen\";\n }\n else if (rightNow > props.registrationOpenDate && rightNow < props.registrationCloseDate) {\n return \"open\";\n }\n else if (rightNow > props.registrationOpenDate && rightNow > props.registrationCloseDate) {\n return \"postOpen\";\n }\n else {\n return \"\";\n }\n }\n if (props.eventStatus) {\n return ()\n }\n return ()\n}","import React from 'react';\nimport RelatedDocumentsBase, { RelatedDocumentItem, IRelatedDocumentsProps, IRelatedDocumentsState } from './RelatedDocumentsBase'\nimport RelatedDocumentsList from './RelatedDocumentsList';\n\n\ninterface IRelatedCorrelatedDocumentsProps extends IRelatedDocumentsProps {\n contentGuid:string;\n isInEditMode:Boolean;\n}\n\nexport class RelatedCorrelatedDocuments extends RelatedDocumentsBase> {\n constructor(props) {\n super(props);\n this.state = { results: [], totalAvailableResults: 0, query: null, loading: true };\n }\n \n constructResultItem(): RelatedDocumentItem {\n return new RelatedDocumentItem();\n } \n\n protected getRelatedPageGuid():string {\n return this.props.contentGuid || \"{00000000-0000-0000-0000-000000000000}\";\n }\n\n public render() {\n return (\n
    \n {this.props.isInEditMode && \n
    \n \n Correlation Content Guid: { this.props.contentGuid }\n
    }\n {this.renderResults()}\n
    \n )\n }\n\n public renderResults() {\n if (this.state.loading) {\n return (
    )\n } else if (!this.state.results || !this.state.results.length) {\n return (
    { this.props.noResultsText || \"There are currently no documents that match this criteria.\"}
    );\n } else {\n return (\n \n );\n }\n }\n}\n","export * from \"./RelatedPageDocuments\" \nexport * from \"./RelatedMeetingMaterialDocuments\" \nexport * from \"./RelatedCorrelatedDocuments\" \n","import * as DocumentsBase from '../Find/DocumentsBase';\nimport Miso from \"../../global\";\n\nexport class RelatedDocumentItem extends DocumentsBase.DocumentItem {\n}\n\nexport interface IRelatedDocumentsProps extends DocumentsBase.IDocumentsProps {\n noResultsText?: string;\n includeQueryTerms?: Array<{ termName: string, termValue: string }>;\n includeMultipleQueryTerms?: { termName: string, terms: Array<{string}> };\n excludeQueryTerms?: Array<{ termName: string, termValue: string }>;\n sortQuery?: Array<{ sortBy: string, sortDirection: string }>;\n allowCompressedDownload?: boolean;\n}\n\nexport interface IRelatedDocumentsState extends DocumentsBase.IDocumentsState {\n query: RelatedDocumentsQuery;\n}\n\nexport class RelatedDocumentsQuery {\n public partial_fields: {\n source: {\n exclude: Array\n }\n } = {\n source: {\n exclude: [\"documentText\"]\n }\n };\n script_fields: {\n documentTextExcerpt: {\n params: { field: string, length: number },\n script: string\n }\n } = {\n documentTextExcerpt: {\n params: { field: \"documentText\", length: 150 },\n script: \"ascropped\"\n }\n };\n sort: Array =\n [\n\n ];\n query: {\n filtered: {\n filter: {\n and: Array\n }\n }\n } = {\n filtered: {\n filter: {\n and: []\n }\n }\n };\n\n public constructor(pageGuid: string = null) {\n if (pageGuid && pageGuid.trim().length > 0) {\n this.query.filtered.filter.and.push({ query: { term: { \"RelatedPages\": pageGuid } } });\n }\n }\n\n public includeTerm(termName: string, termValue: string) {\n let queryTerm = { query: { term: {} } };\n queryTerm.query.term[termName] = termValue;\n\n this.query.filtered.filter.and.push(queryTerm);\n }\n public includeTerms(queryTermName: string, termValues: Array<{ string }>) {\n let queryzTerm = { query: { terms: {} } };\n queryzTerm.query.terms = {\n \"minimum_should_match\": 1\n };\n queryzTerm.query.terms[queryTermName] = termValues;\n\n this.query.filtered.filter.and.push(queryzTerm);\n }\n\n public excludeTerm(termName: string, termValue: string) {\n let queryTerm = { not: { query: { term: {} } } };\n queryTerm.not.query.term[termName] = termValue;\n\n this.query.filtered.filter.and.push(queryTerm);\n }\n public sortQuery(sortByname: string, sortDirection: string) {\n let querySort = {};\n let sortDirectionObject = {\n \"order\": sortDirection,\n \"ignore_unmapped\": true\n };\n var sortByNameWithType = sortByname === \"SearchPublishDate\" ? `${sortByname}$$date` : (sortByname === \"Name\" ? `${sortByname}$$string` : sortByname);\n querySort[sortByNameWithType] = sortDirectionObject;\n this.sort.push(querySort);\n }\n}\n\nexport default abstract class RelatedDocumentsBase, TRelatedDocumentsState extends IRelatedDocumentsState> extends DocumentsBase.DocumentsBase {\n constructor(props) {\n super(props);\n }\n\n componentDidMount() {\n super.componentDidMount();\n\n if (!this.state.query) {\n let newquery = new RelatedDocumentsQuery(this.getRelatedPageGuid());\n newquery = this.extendRelatedDocumentsQuery(newquery);\n\n this.setState({ query: newquery });\n }\n }\n\n protected getRelatedPageGuid(): string {\n return Miso.PageGuid.CurrentPageGuid;\n }\n\n protected extendRelatedDocumentsQuery(newquery: RelatedDocumentsQuery): RelatedDocumentsQuery {\n if (this.props.includeQueryTerms && this.props.includeQueryTerms.length) {\n this.props.includeQueryTerms.map((term, i) => {\n newquery.includeTerm(term.termName, term.termValue);\n });\n } \n if (this.props.includeMultipleQueryTerms) {\n newquery.includeTerms(this.props.includeMultipleQueryTerms.termName, this.props.includeMultipleQueryTerms.terms);\n } \n if (this.props.excludeQueryTerms && this.props.excludeQueryTerms.length) {\n this.props.excludeQueryTerms.map((term, i) => {\n newquery.excludeTerm(term.termName, term.termValue);\n });\n }\n if (this.props.sortQuery && this.props.sortQuery.length) {\n this.props.sortQuery.map((term, i) => {\n newquery.sortQuery(term.sortBy, term.sortDirection);\n });\n }\n else {\n newquery.sortQuery(\"Name$$string\", \"asc\");\n newquery.sortQuery(\"SearchPublishDate$$date\", \"desc\");\n }\n\n return newquery;\n }\n}\n","import { RelatedDocumentItem } from './RelatedDocumentsBase'\nimport RelatedDocumentsListItem from './RelatedDocumentsListItem'\nimport ListDateRefiner from '../../hocs/ListDateRefiner';\nimport List from '../../hocs/List';\nimport BlockBase, { IBlockBaseProps } from '../../hocs/BlockBase';\n\ninterface IRelatedDocumentsListProps extends IBlockBaseProps {\n RelatedDocumentItems: Array;\n disableFollowing:boolean;\n PublishDatePrefixText?: string;\n DateSelections?: Array;\n allowCompressedDownload: boolean;\n loading?: boolean;\n}\n\nexport const RelatedDocumentsList = BlockBase(List(RelatedDocumentsListItem, {\n className: \"linkList\",\n dataSetName: \"RelatedDocumentItems\",\n dataItemPropName: \"RelatedDocumentItem\"\n}), {\n className: \"linkList\",\n dataSetName: \"RelatedDocumentItems\",\n dataItemPropName: \"RelatedDocumentItem\"\n});\n\nexport default RelatedDocumentsList;\n\nexport const DateRefinedRelatedDocumentsList = BlockBase(ListDateRefiner(List(RelatedDocumentsListItem, {\n className: \"linkList\",\n dataSetName: \"RelatedDocumentItems\",\n dataItemPropName: \"RelatedDocumentItem\"\n}), { \n dataSetName: \"RelatedDocumentItems\", \n dateFieldName: \"meetingdate\",\n selectionLabel: \"All meeting dates\"\n}), {\n className: \"linkList\",\n dataSetName: \"RelatedDocumentItems\",\n dataItemPropName: \"RelatedDocumentItem\"\n});\n","import React from 'react';\nimport { RelatedDocumentItem } from './RelatedDocumentsBase'\nimport { InfoBox } from '../InfoBox/InfoBox'\nimport * as awesome from '../../awesome';\nimport * as dateFormatter from '../../dateFormatter';\nimport * as Follow from '../../follow';\n\ninterface IRelatedDocumentsListItemProps {\n RelatedDocumentItem: RelatedDocumentItem;\n disableFollowing:boolean;\n PublishDatePrefixText?:string;\n}\n\ninterface IRelatedDocumentsListItemState {\n \n}\n\nexport default class RelatedDocumentsListItem extends React.Component{\n constructor(props) {\n super(props);\n this.state = { };\n }\n\n public render() {\n let prefix = this.props.PublishDatePrefixText ? this.props.PublishDatePrefixText + \" \" : \"\" ;\n let subString = prefix + dateFormatter.DateFormatter.Format(this.props.RelatedDocumentItem.SearchPublishDate, \"MM/DD/YYYY\").toString();\n\n let followString = this.props.RelatedDocumentItem.IsSecuredDocument || this.props.disableFollowing ? null : Follow.Follow.Display(this.props.RelatedDocumentItem.DocumentGuid, this.props.RelatedDocumentItem.isFollowing, true);\n return (\n \n );\n }\n}","import { DateFormatter } from '../../dateFormatter';\nimport RelatedDocumentsList, {DateRefinedRelatedDocumentsList} from './RelatedDocumentsList';\nimport React from 'react';\nimport {IBlockBaseProps} from '../../hocs/BlockBase';\nimport RelatedDocumentsBase, { RelatedDocumentItem, RelatedDocumentsQuery, IRelatedDocumentsProps, IRelatedDocumentsState } from './RelatedDocumentsBase';\nimport * as dateFormatter from '../../dateFormatter';\n\ninterface IRelatedMeetingMaterialDocumentsProps extends IRelatedDocumentsProps, IBlockBaseProps {\n committeePageGuid:string;\n meetingdate?:string;\n}\n\ninterface IRelatedMeetingMaterialDocumentsState extends IRelatedDocumentsState {\n meetingDates?:Array;\n}\n\nexport class RelatedMeetingMaterialDocuments extends RelatedDocumentsBase{\n constructor(props) { \n super(props);\n this.state = { results: [], totalAvailableResults: 0, query: null, loading: true };\n }\n\n constructResultItem(): RelatedDocumentItem {\n return new RelatedDocumentItem();\n }\n\n protected getRelatedPageGuid():string {\n return this.props.committeePageGuid || \"{00000000-0000-0000-0000-000000000000}\";\n }\n\n protected extendRelatedDocumentsQuery(newquery:RelatedDocumentsQuery) : RelatedDocumentsQuery {\n let newQuery = super.extendRelatedDocumentsQuery(newquery);\n \n const meetingMaterialTerms = {or: [\n {\n query: {\n term: {\n \"Properties.committeedoctype\": \"Meeting Material\"\n }\n }\n },\n {\n query: {\n term: {\n \"Properties.committeedoctype\": \"Both\"\n }\n }\n }\n ]}\n\n newQuery.query.filtered.filter.and.push(meetingMaterialTerms);\n newQuery.query.filtered.filter.and.push({ exists: {\"field\":\"Properties.meetingdate\"}});\n\n if (this.props.meetingdate) {\n\n const meetingDate = DateFormatter.DateCast(this.props.meetingdate);\n const aDifferentMeetingDate = DateFormatter.Format(meetingDate, \"YYYY-MM-DDTHH:mm:ss\");\n const fromDate = meetingDate.clone().add(1, 'days'); \n const fromDateWithoutZ = DateFormatter.Format(fromDate, \"YYYY-MM-DDTHH:mm:ss\");\n newQuery.query.filtered.filter.and.push( { \n range: { \"Properties.meetingdate\": { \"gte\": aDifferentMeetingDate, \"lt\": fromDateWithoutZ } } \n });\n } //else { // TODO: finish implementing dynamic loading in the daterefiner so that results can be loaded per selected date, rather than dates parsed from all results\n // newQuery[\"size\"] = 0;\n // newQuery[\"facets\"] = { \"MeetingDate\": {\n // \"terms\": { \"field\": \"MeetingDate\", \"order\": \"term\"}\n // } }\n // }\n\n return newquery;\n }\n\n public performAdditionnalSearchResultParsing(results: Array, data:any) : any {\n if (!this.state.meetingDates && data.facets && data.facets[\"Properties.meetingdate\"] && data.facets[\"Properties.meetingdate\"].terms) {\n let meetingDates = [];\n\n data.facets[\"Properties.meetingdate\"].terms.map((meetingDateFacet) => {\n let time = meetingDateFacet.term + 18000000;\n meetingDates.push(dateFormatter.DateFormatter.DateCast(time));\n });\n\n this.setState({ meetingDates: meetingDates });\n }\n }\n\n public render() {\n if (this.props.meetingdate) {\n return ();\n } else {\n return ();\n }\n }\n\n}","import React from 'react';\nimport RelatedDocumentsBase, { RelatedDocumentItem, IRelatedDocumentsProps, IRelatedDocumentsState } from './RelatedDocumentsBase';\nimport RelatedDocumentsList from './RelatedDocumentsList'\n\nexport class RelatedPageDocuments extends RelatedDocumentsBase, IRelatedDocumentsState> {\n constructor(props) {\n super(props);\n this.state = { results: [], totalAvailableResults: 0, query: null, loading: true };\n }\n \n constructResultItem(): RelatedDocumentItem {\n return new RelatedDocumentItem();\n } \n\n public render() {\n return (\n \n );\n }\n}\n","import React from 'react';\nimport BlockBase from '../../hocs/BlockBase';\nimport {IBlockBaseProps} from '../../hocs/BlockBase';\n\ninterface LinkItem {\n url:string;\n text:string;\n subHeader?:string;\n icon?: string;\n openInNewTab: boolean;\n}\nexport interface IRelatedPagesProps extends IBlockBaseProps {\n relatedPages: Array\n}\n\ninterface state {}\nexport class RelatedPagesItem extends React.Component {\n constructor(props) {\n super(props);\n this.state={};\n }\n public render() { \n return (\n
    \n {this.props.relatedPages ?\n this.props.relatedPages.map((page, i) => {\n return (\n \n {page.text} {page.icon ? : \"\"}\n {page.subHeader ? \n {page.subHeader}\n : \"\"}\n \n )\n \n })\n :
    There are no Related Pages for this page.
    \n }\n
    \n )\n\t}\n}\n\n\nexport class RelatedPages extends React.Component {\n public render() {\n return (\n
    \n {this.props[\"relatedPages\"] ?\n \n :\"\"}\n
    \n \n )\n\t}\n}\n\ninterface IRelatedPagesBlockProps {}\n\nexport const RelatedPagesBlock = BlockBase(RelatedPagesItem,{});","import React from 'react';\nimport SearchResultPane from './SearchResultPane';\nimport {SearchResultItem} from './SearchResultPaneItem';\nimport * as FindResultsBase from '../Find/FindResultsBase';\nimport SearchFacetMenu from './SearchFacetMenu';\nimport { ISearchFacetItem, SearchFacet } from './SearchFacetMenuSection';\nimport SearchFacetItemTags from './SearchFacetItemTags';\nimport $ from 'jquery';\nimport * as dateFormatter from '../../dateFormatter';\ndeclare var ga: any;\n\ninterface ISearchProps extends FindResultsBase.IResultsProps {\n\tquery: string;\n}\n\ninterface ISearchState extends FindResultsBase.IResultsState {\n facets: Array;\n pageSize: number;\n page: number;\n sort: string;\n sortDirection: string;\n filters: string; \n prevQuery: string;\n prevFilters: string;\n}\n\nconst AMPERSAND_PLACEHOLDER = \"{AND}\";\nconst defaultPageSize = 10;\n\nexport class Search extends FindResultsBase.FindResultsBase{\n //private SearchItemPanel:SearchItem;\n private queryTextBox:HTMLInputElement;\n\n private static hashToStateMap = [\n { hashParam: \"q\", stateParam: \"query\"},\n { hashParam: \"t\", stateParam: \"pageSize\"},\n { hashParam: \"p\", stateParam: \"page\"},\n { hashParam: \"s\", stateParam: \"sort\"},\n { hashParam: \"sd\", stateParam: \"sortDirection\"},\n { hashParam: \"f\", stateParam: \"filters\"},\n ];\n\n constructor(props){\n super(props);\n if (typeof window !== \"undefined\") {\n window.addEventListener(\"hashchange\", this.handlePop.bind(this));\n }\n this.state = { pageSize: defaultPageSize, page: 0, facets: [], results: [], filters: null, prevQuery: null, prevFilters: null, totalAvailableResults: 0, query: \"\", sort: null, sortDirection:null, loading: true}; \n }\n\n constructResultItem() : SearchResultItem {\n\t\treturn new SearchResultItem();\n\t}\n\n //componentWillMount() {\n // addEventListener(\"hashchange\", this.handlePop.bind(this));\n // }\n \n // componentWillUnmount() {\n // removeEventListener(\"hashchange\", this.handlePop.bind(this));\n // }\n\n private _hashParams:any;\n get hashParams():any {\n if (!this._hashParams && location.hash && location.hash.length > 1) {\n this._hashParams = this.parseParams(location.hash.substr(1));\n } else if (!this._hashParams && this.props.query) {\n this._hashParams = {q : this.props.query };\n }\n\n return this._hashParams;\n }\n\n private oldURL:string;\n public handlePop(event:HashChangeEvent) {\n let oldURL = event.oldURL || this.oldURL;\n let newUrl = event.newURL || location.href;\n this.oldURL = location.href;\n\n if (oldURL != newUrl) {\n\n let gaParams = this.parseParams(location.hash.substring(1));\n\n if (gaParams) {\n\n if (gaParams['f']) {\n gaParams['f'] = gaParams['f'].replace(/&/g, ' ');\n }\n\n let gaUrl = location.pathname + '?q=' + gaParams['q'] + '&f=' + gaParams['f'];\n\n ga('send', 'pageview', {\n 'page': gaUrl\n }); \n }\n \n this._hashParams = null;\n }\n }\n\n public componentDidMount() {\n super.componentDidMount();\n window.addEventListener(\"resize\", this.updateView.bind(this));\n this.setStateFromHash(() => {\n if (!this.state.query && !this.props.query && this.state.loading) {\n this.setState({loading: false});\n }\n }); \n }\n\n public componentDidUpdate(prevProps, prevState) {\n if ((this.state.query) && (this.state.query != prevState.query || this.state.page != prevState.page || this.state.pageSize != prevState.pageSize || this.state.sort != prevState.sort || this.state.sortDirection != prevState.sortDirection || this.state.filters != prevState.filters )) {\n this.ensureUpdatedHash();\n this.executeSearch();\n\t\t}\n }\n\n private resetSearchState(query:any = \"\") {\n if (query && this.state.query != query) {\n this.setState({query: query, page: 0, pageSize: defaultPageSize, sort: null, sortDirection: null, facets: [], results: [], filters: null });\n }\n }\n\n private ensureUpdatedHash() {\n let somethingChanged = false;\n\n if (!this.hashParams) {\n this._hashParams = {};\n }\n\n Search.hashToStateMap.map((hashToState, i) => {\n if (typeof(this.state[hashToState.stateParam]) !== 'undefined' && this.hashParams[hashToState.hashParam] !== this.state[hashToState.stateParam]) {\n this.hashParams[hashToState.hashParam] = this.state[hashToState.stateParam];\n somethingChanged = true;\n }\n });\n\n if (somethingChanged) {\n window.location.hash = $.param(this.hashParams);\n }\n }\n\n private setStateFromHash(callback:Function=null) {\n let somethingChanged = false;\n let stateSetting = {};\n\n if (this.hashParams) {\n Search.hashToStateMap.map((hashToState, i) => {\n if (typeof(this.hashParams[hashToState.hashParam]) !== 'undefined' && this.hashParams[hashToState.hashParam] !== this.state[hashToState.stateParam]) {\n stateSetting[hashToState.stateParam] = this.hashParams[hashToState.hashParam];\n somethingChanged = true;\n }\n });\n }\n\n if (somethingChanged) {\n this.setState(stateSetting, () => { \n this.queryTextBox.value = this.state.query;\n if (callback) {\n callback();\n }\n });\n } else if (callback) {\n callback();\n }\n }\n\n private parseParams(str) {\n if (str) {\n return str.split('&').reduce(function (params, param) {\n var paramSplit = param.split('=').map(function (value) {\n return decodeURIComponent(value.replace('+', ' ')\n .replace(AMPERSAND_PLACEHOLDER, '&'));\n });\n params[paramSplit[0]] = paramSplit[1];\n return params;\n }, {});\n } else {\n return null;\n }\n }\n\n private sanitizeParamsString(str) {\n let returnString = '';\n let insideBackets = false;\n for (let i = 0; i < str.length; i++)\n {\n if (str[i] === '[') { insideBackets = true; }\n if (str[i] === ']') { insideBackets = false; }\n returnString += (str[i] === '&' && insideBackets) ? AMPERSAND_PLACEHOLDER : str[i];\n }\n return returnString;\n }\n\n public executeSearch(query:any = this.state.query) {\n if (this.state.loading !== true) { \n this.setState({ loading: true }, () => this.executeSearch(query));\n } else {\n const rootUrl = location.pathname.lastIndexOf(\"/\") === (location.pathname.length-1) ? location.pathname : location.pathname + \"/\";\n const withFacets = (query != this.state.prevQuery || this.state.filters != this.state.prevFilters || !this.state.facets || !this.state.facets.length ) ? \"WithFacets\" : \"\";\n $.ajax({\n url: `${rootUrl}GetResults${withFacets}?take=${this.state.pageSize}&skip=${this.state.pageSize * this.state.page}&sort=${ this.state.sort }&sortDirection=${ this.state.sortDirection }&q=${ (query ) }&f=${encodeURIComponent(this.state.filters)}`,\n type: 'POST',\n //data: JSON.stringify(body),\n dataType: 'json',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n success: function (data) {\n if (data.facets) {\n this.setParsedFacets(data);\n }\n\n if (data.hits) {\n this.setParsedResults(data);\n }\n }.bind(this),\n error: function (data) {\n console.error(arguments);\n }.bind(this)\n });\n }\n }\n\n private setParsedFacets(data: any) {\n if (data.facets) {\n var facets:Array = [];\n var parsedFilters = this.parseFilterString(this.state.filters);\n\n Object.getOwnPropertyNames(data.facets).forEach(facetName => {\n if (facetName === \"BaseType\") {\n return;\n }\n let facet = new SearchFacet();\n\n facet.name = facetName;\n facet.title = facetName;\n facet.facetType = data.facets[facetName][\"_type\"];\n facet.facetItems = data.facets[facetName].terms || data.facets[facetName].entries;\n\n if (facetName === \"Type\" && data.facets[\"BaseType\"] && data.facets[\"BaseType\"].terms) {\n // Hack to psuedo-combine these two facets into one, so we can group all page types, but split by mime type for documents\n for (let i = 0; i < data.facets[\"BaseType\"].terms.length; i++) {\n if (data.facets[\"BaseType\"].terms[i].term === \"Page\") {\n facet.facetItems.push(data.facets[\"BaseType\"].terms[i]);\n break;\n }\n }\n }\n\n if (facet.facetItems && facet.facetItems.length) {\n facet.facetItems.map((facetItem, facetItemIndex) => {\n if (!facetItem.facet) {\n facetItem.facet = facet; \n }\n \n if (!facetItem.itemValue) {\n if (facetItem.time) {\n if (typeof (facetItem.time) === 'number') {\n facetItem.time += 18000000;\n }\n if (facet.name.lastIndexOf(\"Year\", facet.name.length - \"Year\".length) !== -1) {\n facetItem.itemValue = dateFormatter.DateFormatter.Format(facetItem.time, \"YYYY\");\n } else if (facet.name.lastIndexOf(\"Month\", facet.name.length - \"Month\".length) !== -1) {\n facetItem.itemValue = dateFormatter.DateFormatter.Format(facetItem.time, \"MMMM YYYY\");\n } else {\n facetItem.itemValue = dateFormatter.DateFormatter.Format(facetItem.time, \"M/D/YYYY\");\n }\n } else if (facetItem.term) {\n facetItem.itemValue = facetItem.term;\n }\n }\n\n if (parsedFilters && parsedFilters[facet.name] && parsedFilters[facet.name].length && parsedFilters[facet.name].indexOf(facetItem.itemValue) > -1) {\n facetItem.selected = true;\n }\n });\n }\n\n facets.push(facet);\n });\n\n this.setState( { facets: facets, prevQuery: this.state.query, prevFilters: this.state.filters });\n }\n }\n \n public updateView() {\n if (window.innerWidth > 767) {\n $('.docnav-menu').css('display', 'block');\n $('.docnav-view').css('display', ' block');\n }\n else {\n this.hideFacetMenu();\n }\n }\n public showFacetMenu() {\n $('.docnav-menu').css('display', 'block');\n $('.docnav-view').css('display', 'none');\n $('.filterButton').css('display', 'none');\n $('.closeButton').css('display', 'block');\n }\n public hideFacetMenu() {\n $('.docnav-menu').css('display', 'none');\n $('.docnav-view').css('display', 'block');\n $('.filterButton').css('display', 'block');\n $('.closeButton').css('display', 'none');\n }\n public toggleFacet(toggledFacetItem:ISearchFacetItem) { \n toggledFacetItem.selected = !toggledFacetItem.selected; \n let filters:{[key:string]: Array} = {};\n\n this.state.facets.map((facet, facetIndex) => {\n facet.facetItems.map((facetItem, facetItemIndex) => {\n if (facetItem.selected) {\n if (!filters[facetItem.facet.name]) {\n filters[facetItem.facet.name] = [];\n }\n\n filters[facetItem.facet.name].push(facetItem.itemValue);\n }\n });\n });\n\n let filterString = \"\";\n let concatenator = \"\";\n Object.getOwnPropertyNames(filters).map((filterName, i) => {\n filterString += concatenator + filterName + \"=\" + JSON.stringify(filters[filterName]);\n\n if (!concatenator) {\n concatenator = \"&\";\n }\n });\n \n this.setState({ facets: this.state.facets, filters: filterString, page: 0 });//, () => facet.selected = !facet.selected);\n }\n\n public parseFilterString(filterString:string):{[key:string]: Array}\n {\n if (filterString) {\n let sanitizedParamsString = this.sanitizeParamsString(filterString);\n let splitFilters = this.parseParams(sanitizedParamsString);\n let parsedFilters:{[key:string]: Array} = {};\n\n Object.getOwnPropertyNames(splitFilters).map((filterName, i) => {\n parsedFilters[filterName] = JSON.parse(splitFilters[filterName]);\n });\n\n return parsedFilters;\n } else {\n return {}\n }\n }\n\n public render() {\n //if (!this.state.currentNavigationPath || !this.state.currentNavigationPath.length || !this.state.currentNavigationItem)\n // return (
    );\n return ( \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n this.queryTextBox = input} onKeyUp={ (e) => { if (e.keyCode === 13) { this.resetSearchState(this.queryTextBox.value); } } } />\n \n
    \n
    \n \n
    \n
    \n
    \n this.setState({ page: 0, pageSize: pageSize })} OnPageChange={(pageIndex) => this.setState( { page: pageIndex } )} OnSortChange={(sort, sortDirection) => this.setState({sort: sort, sortDirection: sortDirection})} />\n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n\n
    \n );\n }\n}","import React from 'react';\nimport { SearchFacet } from './SearchFacetMenuSection';\nimport transformTagToReadableString from './TagTransformer';\n\ninterface ISearchFacetItemTagProps { Facets:Array, OnFacetItemClicked: Function, Loading:boolean}\ninterface State { }\n\nexport default class SearchFacetItemTags extends React.Component{\n constructor(props) {\n super(props);\n this.state = { };\n }\n\n public componentDidMount() {\n\n }\n\n public render() {\n return (\n
    \n {\n this.props.Facets.filter(facet => facet.facetItems && facet.facetItems.some(facetItem => facetItem.selected === true)).map((facet, facetIndex) => {\n return (\n
    \n \n
    \n \n {\n facet.facetItems.filter(facetItem => facetItem.selected === true).map((facetItem, facetItemIndex) => {\n return (\n \n \n \n {transformTagToReadableString(facetItem.itemValue)}\n { this.props.OnFacetItemClicked( facetItem ); } }>\n \n \n )\n })\n }\n
    \n
    \n ) \n })\n }\n
    \n )\n }\n}","import React from 'react';\nimport SearchFacetMenuSection, { SearchFacet } from './SearchFacetMenuSection';\n\ninterface ISearchFacetMenuProps { Facets:Array, OnFacetItemClicked:Function, Loading:boolean}\ninterface ISearchFacetMenuState { animateClass: string, facetList:Array }\n\nexport default class SearchFacetMenu extends React.Component{\n constructor(props) {\n super(props);\n this.state = { animateClass: \"slideOut\", facetList: [] };\n }\n\n public render() {\n\n return (\n
    \n {\n this.props.Facets.filter(facet => facet.facetItems && facet.facetItems.length > 0).map((facet, i) => {\n return (\n \n )\n })\n }\n
    \n )\n }\n}","import React from 'react';\nimport transformTagToReadableString from './TagTransformer';\n\nexport class SearchFacet {\n name: string;\n title: string;\n facetType: string;\n facetItems: Array;\n}\n\nexport interface ISearchFacetItem {\n facet: SearchFacet;\n itemValue: string;\n time?: any;\n term?: any;\n selected: boolean;\n count:number;\n filter:string;\n}\n\ninterface ISearchFacetMenuSectionProps \n{ \n Facet:SearchFacet, \n OnFacetItemClicked:Function, \n Loading:boolean\n}\n\ninterface ISearchFacetMenuSectionState \n{ \n maxItems:number\n}\n\nconst defaultMaxItems = 5;\n\nexport default class SearchFacetMenuSection extends React.Component{\n constructor(props) {\n super(props);\n this.state = { maxItems: defaultMaxItems };\n this.toggleMaxItems = this.toggleMaxItems.bind(this);\n }\n\n private toggleMaxItems() {\n if (this.state.maxItems > 0) {\n this.setState({maxItems: -1 });\n } else {\n this.setState({maxItems: defaultMaxItems });\n }\n }\n\n public render() {\n let moreOrLess = this.state.maxItems <= 0 \n ? View Less\n : View More;\n\n let maxItemsToggler =
    \n\n return (\n
    \n

    {this.props.Facet.title}

    \n
    \n {\n this.props.Facet.facetItems.map((facetItem, i) => {\n let isMaxedOut = (this.state.maxItems > 0 && (i + 1) > this.state.maxItems);\n if (!isMaxedOut && facetItem.itemValue) {\n return ( \n
    \n \n
    \n )\n }\n })\n }\n { (this.props.Facet.facetItems.length > this.state.maxItems) && maxItemsToggler }\n
    \n
    \n );\n }\n}","import React from 'react';\nimport SearchResultPaneItem, {SearchResultItem} from './SearchResultPaneItem';\nimport Paging from '../Find/Paging';\n\ninterface ISearchResultPaneProps {\n Results: Array;\n PageSize: number;\n Page: number;\n TotalAvailableResults: number; \n Sort: string;\n SortDirection: string;\n Loading: boolean;\n OnPageSizeChange: (pageSize:number) => void;\n OnPageChange: (page:number) => void; \n OnSortChange: (sort:string, sortDirection:string) => void;\n}\n\ninterface ISearchResultPaneState {\n}\n\nexport default class SearchResultPane extends React.Component{\n constructor(props){\n super(props);\n this.state = { };\n }\n\n public componentDidMount() {\n }\n\n public renderResultsBody() {\n if(this.props.Loading){\n return (
    )\n } else if (!this.props.Results || !this.props.Results.length) {\n return (\n
    \n Sorry, no results were found that match your query.\n
    \n )\n } else {\n return (\n
    \n
    \n {\n this.props.Results.map((result, i) => {\n return (\n \n )\n })\n }\n
    \n
    \n \n
    \n
    \n )\n }\n }\n\n public renderSorting() {\n if (!this.props.Results || !this.props.Results.length) {\n return (\n
    \n )\n } else {\n return (\n
    \n \n \n
    \n )\n }\n }\n\n public render() {\n return (\n
    \n
    \n \n { this.renderSorting() }\n
    \n

    \n { this.renderResultsBody() } \n
    \n )\n }\n}","import React from 'react';\nimport * as FindResultItemBase from '../Find/FindResultItemBase';\nimport Moment from \"moment\";\nimport * as awesome from '../../awesome';\nimport * as dateFormatter from '../../dateFormatter';\n\nexport class SearchResultItem extends FindResultItemBase.FindResultItem {\n}\n\ninterface ISearchResultPaneItemProps {\n Result:SearchResultItem;\n Loading: boolean;\n}\n\ninterface ISearchResultPaneItemState {\n}\n\nexport default class SearchResultPaneItem extends React.Component{\n constructor(props){\n super(props);\n this.state = { };\n }\n\n private getDisplayDate(date) {\n if (!Moment.utc(date, Moment.ISO_8601, true).isValid()) {\n return \"\";\n }\n var tempDate = Moment.utc(date, Moment.ISO_8601, true);\n return dateFormatter.DateFormatter.Format(tempDate, \"MM/DD/YYYY\");\n }\n\n public render() {\n return (\n
    \n
    \n
    \n\n \n \n {this.props.Result.SearchFilename || this.props.Result.SearchTitle}\n \n {this.getDisplayDate(this.props.Result.SearchPublishDate)}\n
    \n
    \n
    {this.props.Result.SearchSummary == ', , , ') !== -1 ? '' : this.props.Result.Description || this.props.Result.description || this.props.Result.SearchText || this.props.Result.SearchSummary}\n
    \n\n
    \n
    \n
    \n );\n }\n}","// Maps tag to a readable string based on defined rules.\nexport default function transformTagToReadableString(tag: string): string {\n return tag.startsWith('S-') ? 'Secure ' + tag.substring(2) : tag;\n}\n","import {IDocumentNavigationItem} from '../DocumentNavigator/DocumentNavigatorItem';\n\nexport function GenerateMarketReportNavigationItem(\n parentPropertyValue:string, \n title:string,\n summary:string,\n childPropertySystemName:string\n ):IDocumentNavigationItem {\n return {\n parentPropertyValue: parentPropertyValue,\n title: title,\n summary: summary,\n childPropertySystemName: childPropertySystemName,\n childDocumentNavigationItems: [],\n displayResultInGrid: true,\n resultSortField: \"MarketReportPublished\",\n resultSortDirection: \"desc\",\n gridMetadataColumns: [{ propertyName: \"FileName\", title: \"File\" }, { propertyName: \"MarketReportPublished\", title: \"Published\", alignment: \"end\" }],\n tableStyle: \"none\",\n useDynamicChoiceMode: \"DynamicChoices\",\n dynamicChoiceSortDirection: \"asc\",\n useDisplayTitle: false,\n useDynamicYearNavigation: false,\n useDynamicQuarterNavigation: false,\n useDynamicMonthNavigation: false,\n useDynamicDayNavigation: false,\n loadedNavigableDocuments: null,\n totalAvailableResults:null\n };\n}\n\nexport function GenerateMarketReportTopLevelNavigationItem():IDocumentNavigationItem {\n let navItem = GenerateMarketReportNavigationItem(null, \"Market Reports\", null, \"MarketReportType\");\n navItem.childDocumentNavigationItems.push(\n GenerateMarketReportNavigationItem(null, null, null, \"MarketReportName\")\n );\n\n return navItem;\n}","import React from 'react';\nimport * as MarketReportNavigationConfiguration from './MarketReportNavigationConfiguration';\nimport {SearchDocumentNavigator, SearchDocumentNavigatorQuery} from './SearchDocumentNavigator';\nimport * as awesome from '../../awesome';\n\nexport class MarketReportSearchNavigator extends SearchDocumentNavigator {\n protected get placeholderTemplate() {\n return \"In order to view Market Reports, continue using the navigation on the left\";\n }\n\n public componentDidMount(){ \n super.componentDidMount();\n\n let initialNavigationState = MarketReportNavigationConfiguration.GenerateMarketReportTopLevelNavigationItem(); \n let currentNavigationPath = [initialNavigationState];\n let navTrail = this.state.navigationTrail || [];\n\n let initialState = this.getPartialStateFromHash();\n initialState.currentNavigationPath = currentNavigationPath;\n initialState.currentNavigationItem = initialNavigationState;\n initialState.navigationTrail = navTrail;\n\n if (location.hash && location.hash.indexOf(\"#\") >= 0 && location.hash.indexOf(\"nt=\") >= 0 && this.hashParams.nt) {\n initialState.forceLoading = true;\n }\n \n this.setState(initialState); \n }\n\n protected postComposeFilters(queryFilters:Array, resultFilters:Array) {\n let kind = this.props.marketReportKind || \"Active\";\n\n if (queryFilters && queryFilters.length >= 2 && \"Active\" === kind) {\n let readersGuideQuery = new SearchDocumentNavigatorQuery();\n delete readersGuideQuery.facets;\n \n if (resultFilters && resultFilters.length) {\n readersGuideQuery.filter.and = resultFilters;\n } else {\n delete readersGuideQuery.filter;\n }\n\n let readersGuidFilters:Array = []; \n queryFilters.map((filter, i) => {\n if (filter.query && filter.query.term && filter.query.term.MarketReportName) {\n readersGuidFilters.push({query: { term: {MarketReportName: MarketReportSearchNavigator.trimParentheticalValues(filter.query.term.MarketReportName).trim()} } });\n } else {\n readersGuidFilters.push(filter);\n }\n });\n readersGuideQuery.query.filtered.filter.and = readersGuidFilters;\n readersGuideQuery.query.filtered.filter.and.push( {query: { term: { \"MarketReportKind\": \"Readers\" } } });\n readersGuideQuery.size = 1;\n\n this.initQueryExecution(readersGuideQuery, this.parseReadersGuidResult.bind(this));\n }\n\n if (\"Active\" === kind) {\n let kindOr = { or: [ {not: { exists: {field: \"MarketReportKind\"}}},{query: { term: { \"MarketReportKind\": kind } } } ] };\n queryFilters.push(kindOr);\n } else {\n queryFilters.push( {query: { term: { \"MarketReportKind\": kind } } });\n }\n }\n\n private static trimParentheticalValues(stringWithPotentialParentheticalValues:string):string {\n if (typeof stringWithPotentialParentheticalValues === 'string' && stringWithPotentialParentheticalValues.length) {\n return stringWithPotentialParentheticalValues.replace(/\\([^()]*\\)/g, \"\");\n } else {\n return stringWithPotentialParentheticalValues;\n }\n }\n\n private parseReadersGuidResult(data:any) {\n if (data && data.hits && data.hits.hits && data.hits.hits.length) {\n this.setState({readersGuide: this.parseHit(data.hits.hits[0]) })\n }\n }\n\n public renderReadersGuide() {\n if (this.state.readersGuide) {\n return ( \n \t\t\t\t\t\n )\n }\n }\n}\n","import React from 'react';\nimport Moment from \"moment\";\nimport {SearchNavigableDocumentItem} from './SearchNavigation';\nimport {IDocumentGridColumnDefinitionItem} from '../DocumentNavigator/DocumentNavigatorItem';\nimport {IPagingProps} from '../Find/Paging';\nimport Grid, {IGridProps} from '../../hocs/Grid';\nimport ListPager from '../../hocs/ListPager';\nimport * as dateFormatter from '../../dateFormatter';\n\ninterface ISearchDocumentGridProps extends IPagingProps, IGridProps {\n Results: Array;\n disableFollowing: boolean; \n UseDisplayTitle: boolean;\n TableStyle: string;\n}\n\ninterface ISearchDocumentGridItemProps {\n Result:SearchNavigableDocumentItem;\n Loading:boolean;\n Columns:Array;\n OpenDocumentsInNewTarget: boolean;\n}\n\nconst renderMetadataColumn = function (result: SearchNavigableDocumentItem, col: IDocumentGridColumnDefinitionItem, colindex: number, openDocumentsInNewTarget?:boolean){\n var property = result[col.propertyName] || result.source[col.propertyName] || \"\";\n var propertyDate = null;\n\n var hasTime = property.indexOf(\"T00:00:00\") == -1 ? true : false;\n var isUTC = property.indexOf(\"Z\") != -1 ? true : false;\n\n if(isUTC){\n propertyDate = Moment.utc(property, Moment.ISO_8601, true);\n } else {\n propertyDate = Moment(property, Moment.ISO_8601, true);\n }\n \n if(propertyDate.isValid()){\n if(hasTime) {\n property = dateFormatter.DateFormatter.Format(propertyDate, \"M/D/YYYY h:mm A\");\n } else {\n property = dateFormatter.DateFormatter.Format(propertyDate, \"M/D/YYYY\");\n } \n } \n\n const openDocumentsInNewTargetElement = document.getElementById('openDocumentsInNewTarget') as HTMLInputElement;\n const openDocumentsInNewTargetValue = openDocumentsInNewTargetElement ? openDocumentsInNewTargetElement.value === 'true' : false;\n\n if(colindex == 0){\n return (\n {property}\n )\n } else {\n return (\n property\n )\n }\n}\n\nconst renderMobileMetadataContent = function (result: SearchNavigableDocumentItem, col: IDocumentGridColumnDefinitionItem, colindex: number) {\n var property = result[col.propertyName] || result.source[col.propertyName] || \"\";\n \n var propertyDate = Moment(property, Moment.ISO_8601, true);\n var hasTime = property.indexOf(\"T00:00:00\") == -1 ? true : false;\n\n if(propertyDate.isValid()){\n if(hasTime) {\n property = dateFormatter.DateFormatter.Format(property, \"M/D/YYYY h:mm A\");\n } else {\n property = dateFormatter.DateFormatter.Format(propertyDate, \"M/D/YYYY\");\n } \n } \n\n if(colindex > 0){\n return(\n
    \n {col.title}\n {property}\n
    \n )\n }\n}\n\nconst SearchDocumentGridItem: React.SFC = (props) => {\n return (\n \n \n {\n props.Columns.map((col, colindex) => {\n return (\n \n {renderMetadataColumn(props.Result, col, colindex, props.OpenDocumentsInNewTarget)}\n \n )\n })\n }\n \n \n {props.Result[props.Columns[0].propertyName] || props.Result.source[props.Columns[0].propertyName] || \"\"}\n \n \n \n
      \n {\n props.Columns.map((col, colindex) => {\n return (\n
    • \n {renderMobileMetadataContent(props.Result, col, colindex)}\n
    • \n )\n })\n }\n
    \n \n \n \n );\n}\n\nlet listOptions = {\n className: \"linkList\",\n dataSetName: \"Results\",\n dataItemPropName: \"Result\"\n};\nexport const SearchDocumentGrid = ListPager(Grid(SearchDocumentGridItem, listOptions), listOptions);\n\nexport default SearchDocumentGrid;","import React from 'react';\nimport {SearchNavigableDocumentItem} from './SearchNavigation';\nimport {IPagingProps} from '../Find/Paging';\nimport List from '../../hocs/List';\nimport ListPager from '../../hocs/ListPager';\nimport * as dateFormatter from '../../dateFormatter';\nimport * as awesome from '../../awesome';\n\ninterface ISearchDocumentListProps extends IPagingProps {\n Results: Array;\n disableFollowing:boolean;\n Columns: Array;\n UseDisplayTitle: boolean;\n TableStyle: string;\n}\n\ninterface ISearchDocumentListItemProps {\n Result:SearchNavigableDocumentItem;\n Loading: boolean;\n UseDisplayTitle: boolean;\n}\n\ninterface ISearchDocumentListItemState {\n}\n\nconst SearchDocumentListItem: React.SFC = (props) => {\n return (\n \n );\n}\n\nlet listOptions = {\n className: \"linkList\",\n dataSetName: \"Results\",\n dataItemPropName: \"Result\"\n};\nconst SearchDocumentList = ListPager(List(SearchDocumentListItem, listOptions), listOptions);\n\nexport default SearchDocumentList;","import React from 'react';\nimport * as DocumentsBase from '../Find/DocumentsBase';\nimport {IDocumentNavigationItem,IDocumentNavigatorFilter} from '../DocumentNavigator/DocumentNavigatorItem';\nimport DocumentNavigatorTagCrumbs from '../DocumentNavigator/DocumentNavigatorTagCrumbs';\nimport DocumentNavigatorMenu from '../DocumentNavigator/DocumentNavigatorMenu';\nimport SearchDocumentList from './SearchDocumentList';\nimport SearchDocumentGrid from './SearchDocumentGrid';\n\nexport class SearchNavigableDocumentItem extends DocumentsBase.DocumentItem {\n marketReportName:string=null;\n marketReportPublished:Date=null;\n marketReportType:string=null;\n marketReportKind:string=null;\n}\n\nexport interface ISearchDocumentNavigatorProps extends DocumentsBase.IDocumentsProps {\n marketReportKind?:string;\n initialFilters:Array;\n\tdocumentNavigation:IDocumentNavigationItem;\n enableFollowDocuments: boolean;\n openDocumentsInNewTarget: boolean;\n}\n\nexport interface ISearchDocumentNavigatorState extends DocumentsBase.IDocumentsState {\n query:SearchDocumentNavigatorQuery;\n navigating:boolean;\n navigationTrail:Array<{MenuKey:string,MenuValue:string}>;\n pageSize: number;\n page: number;\n currentNavigationPath:Array;\n currentNavigationItem:IDocumentNavigationItem;\n currentNavigationValues:Array;\n readersGuide:SearchNavigableDocumentItem;\n sort: string;\n sortDirection: string;\n}\n\nexport class SearchDocumentNavigatorQuery {\n from:number;\n size:number;\n\tsort: Array = \n\t\t[ \n\t\t\t{ \"FileName\": {\"order\":\"asc\"} },\n\t\t\t{ \"Name\":\"asc\" }, \n\t\t\t\"_score\" \n ];\n filter: {\n and:Array\n } = {\n and:[]\n };\n facets = { \n };\n\tquery: {\n\t\tfiltered:{\n\t\t\tfilter: { \n\t\t\t\tand:Array\n\t\t\t},\n\t\t\tquery: {\n\t\t\t\tquery_string: { query:string }\n\t\t\t}\n\t\t}\n\t} = {\n\t\tfiltered: {\n\t\t\tfilter: {\n\t\t\tand: []\n\t\t},\n\t\tquery: {\n\t\t\tquery_string: { query: \"*\" } \n\t\t}\n\t}\n };\n\n\tpublic constructor() { \n\t}\n}\n\nconst defaultPageSize = 10;\n\nexport class SearchDocumentNavigator extends DocumentsBase.DocumentsBase {\n private static hashToStateMap = [\n { hashParam: \"t\", stateParam: \"pageSize\"},\n { hashParam: \"p\", stateParam: \"page\"},\n { hashParam: \"s\", stateParam: \"sort\"},\n { hashParam: \"sd\", stateParam: \"sortDirection\"},\n //{ hashParam: \"f\", stateParam: \"filters\"},\n ];\n\n protected get placeholderTemplate() {\n if (!this.state.currentNavigationItem.childDocumentNavigationItems || !this.state.currentNavigationItem.childDocumentNavigationItems.length) {\n return \"Sorry, no results were found that match your query.\";\n }\n else {\n return `In order to view documents related to ${this.state.currentNavigationItem.title || this.state.currentNavigationItem.parentPropertyValue}, continue using the navigation on the left`;\n }\n }\n \n constructor(props) {\n\t\tsuper(props);\n\t\tthis.state = { results: [], pageSize: defaultPageSize, page: 0, sort: null, sortDirection: null, navigationTrail: [], currentNavigationPath: [], currentNavigationItem: null, currentNavigationValues:[], totalAvailableResults: 0, query: null, loading: true, navigating: false, readersGuide: null };\n this.clickedNavigationItemCrumb = this.clickedNavigationItemCrumb.bind(this);\n if (typeof window !== \"undefined\") {\n window.addEventListener(\"hashchange\", this.handlePop.bind(this));\n }\n };\n\n\n\n componentWillUnmount() {\n //TODO\n removeEventListener(\"hashchange\", this.handlePop.bind(this));\n }\n\n private _hashParams:any;\n get hashParams():any {\n if (!this._hashParams && location.hash && location.hash.length > 1) {\n this._hashParams = this.parseParams(location.hash.substr(1));\n } \n\n return this._hashParams;\n }\n\n private oldURL:string;\n public handlePop(event: HashChangeEvent){\n let oldURL = event.oldURL || this.oldURL;\n let newUrl = event.newURL || location.href;\n this.oldURL = location.href;\n\n if (oldURL != newUrl) {\n this._hashParams = null;\n\n if (this.hashParams && this.hashParams.nt) {\n let navTrail = this.parseNavigationPath(this.hashParams.nt);\n\n if (navTrail && navTrail.length && navTrail != this.state.navigationTrail && \n this.doEndsOfNavigationTrailsDiffer(navTrail,this.state.navigationTrail )) {\n if (navTrail.length > this.state.navigationTrail.length) { \n this.SetNextNavigationItemStateFromNavTrail(navTrail, this.state.currentNavigationItem);\n\n } else if (navTrail.length == this.state.navigationTrail.length) {\n let previousNavigationItem = this.state.currentNavigationPath[this.state.currentNavigationPath.length - 2]\n \n this.SetNextNavigationItemStateFromNavTrail(navTrail, previousNavigationItem);\n }\n }\n }\n }\n }\n\n private doEndsOfNavigationTrailsDiffer(navTrail1:Array<{MenuKey:string,MenuValue:string}>,navTrail2:Array<{MenuKey:string,MenuValue:string}>) {\n if (!navTrail1 || !navTrail2 ) {\n return false;\n } else {\n if (navTrail1.length != navTrail2.length) {\n return true;\n }\n\n let lastNavTrailItem1 = navTrail1[navTrail1.length - 1];\n let lastNavTrailItem2 = navTrail2[navTrail2.length - 1];\n\n return (lastNavTrailItem1.MenuKey != lastNavTrailItem2.MenuKey || lastNavTrailItem1.MenuValue != lastNavTrailItem2.MenuValue )\n }\n }\n\n private SetNextNavigationItemStateFromNavTrail(navTrail:Array<{MenuKey:string,MenuValue:string}>, navigatingItem:IDocumentNavigationItem) {\n let partialNavigationItemState = this.GetNextNavigationItemFromNavTrail(navTrail, navigatingItem);\n\n if (partialNavigationItemState) {\n partialNavigationItemState.page = 0;\n partialNavigationItemState.pageSize = defaultPageSize;\n partialNavigationItemState.sort = null;\n partialNavigationItemState.sortDirection = null;\n partialNavigationItemState.loading = true;\n this.setState(partialNavigationItemState);\n }\n }\n\n private GetNextNavigationItemFromNavTrail(navTrail:Array<{MenuKey:string,MenuValue:string}>, navigatingItem:IDocumentNavigationItem):any {\n let lastNavTrailItem = navTrail[navTrail.length - 1];\n\n if (lastNavTrailItem.MenuKey === navigatingItem.childPropertySystemName) {\n let potentialMatchingChildItems = navigatingItem.childDocumentNavigationItems.filter((childItem, i) => {\n return childItem.parentPropertyValue === lastNavTrailItem.MenuValue;\n });\n\n if (potentialMatchingChildItems && potentialMatchingChildItems.length) {\n let newNavigationItem = potentialMatchingChildItems[0];\n let navigationPath = this.state.currentNavigationPath;\n\n if (navigationPath[navigationPath.length - 1] != navigatingItem) {\n navigationPath.splice(-1, 1);\n }\n navigationPath.push(newNavigationItem);\n\n return {\n currentNavigationItem: newNavigationItem, \n currentNavigationPath: navigationPath,\n navigationTrail: navTrail,\n results: [],\n query: null,\n readersGuide: null\n };\n }\n }\n }\n\n public clickedNavigationItemCrumb(index: number) {\n if (index < this.state.currentNavigationPath.length - 1) {\n let navigationPath = this.state.currentNavigationPath;\n navigationPath.splice(index + 1);\n let navTrail = this.state.navigationTrail;\n navTrail.splice(index);\n let newNavigationItem = navigationPath[navigationPath.length - 1];\n\n this.setState({\n currentNavigationItem: newNavigationItem, \n currentNavigationPath: navigationPath, \n navigationTrail: navTrail,\n page: 0, \n pageSize: defaultPageSize,\n results: [],\n readersGuide: null,\n sort: null,\n sortDirection: null,\n query: null,\n loading: true\n });\n }\n }\n\n public componentDidMount(){\n super.componentDidMount(); \n if (this.props.documentNavigation) {\n let initialNavigationState = this.props.documentNavigation;\n if (!initialNavigationState.title && ! initialNavigationState.parentPropertyValue) {\n initialNavigationState.title = \"Home\";\n }\n let currentNavigationPath = [initialNavigationState];\n let navTrail = this.state.navigationTrail || [];\n\n let initialState = this.getPartialStateFromHash();\n initialState.currentNavigationPath = currentNavigationPath;\n initialState.currentNavigationItem = initialNavigationState;\n initialState.navigationTrail = navTrail;\n if (location.hash && location.hash.indexOf(\"#\") >= 0 && location.hash.indexOf(\"nt=\") >= 0 && this.hashParams.nt) {\n \n initialState.forceLoading = true;\n }\n\n this.setState(initialState);\n }\n }\n\n protected postComposeFilters(queryFilters:Array, resultFilters:Array) {\n\n }\n\n public componentDidUpdate(prevProps, prevState) {\n if ((this.state.query) && \n (this.state.query != prevState.query || this.state.page != prevState.page || this.state.pageSize != prevState.pageSize || this.state.sort != prevState.sort || this.state.sortDirection != prevState.sortDirection)) {\n this.ensureUpdatedHash(); \n\n if (this.state.query.size != this.state.pageSize || this.state.query.from != (this.state.page * this.state.pageSize)) {\n this.state.query.size = this.state.pageSize;\n this.state.query.from = (this.state.page * this.state.pageSize);\n }\n\n if (this.state.sort &&\n (!(this.state.sort in this.state.query.sort[0]) || this.state.query.sort[0][this.state.sort].order != this.state.sortDirection)) {\n let sort = {};\n sort[\"Properties.\" + this.state.sort] = { order: this.state.sortDirection};\n this.state.query.sort[0] = sort ;\n }\n\n if (this.state.forceLoading) {\n this.state.query.size = 10;\n }\n\n if (this.state.query.size < 0) {\n delete this.state.query.size;\n }\n\n this.executeSearch();\n } else if (this.state.currentNavigationItem != prevState.currentNavigationItem) {\n let query = new SearchDocumentNavigatorQuery();\n\n if (this.state.currentNavigationItem.childPropertySystemName && this.state.currentNavigationItem.useDynamicChoiceMode === \"DynamicChoices\" \n && (!this.state.currentNavigationItem.childDocumentNavigationItems || this.state.currentNavigationItem.childDocumentNavigationItems.length <= 1) ) {\n query.facets = {};\n query.facets[this.state.currentNavigationItem.childPropertySystemName] = {\n \"terms\": { \"field\": \"Properties.\" + this.state.currentNavigationItem.childPropertySystemName, \"size\": 1000, \n \"order\": this.state.currentNavigationItem.dynamicChoiceSortDirection === \"desc\" ? \"reverse_term\" : \"term\"}\n }\n } else {\n delete query.facets;\n }\n\n let fieldsToFilter:{[key:string]: string} = {};\n let queryFilters:Array = [];\n let resultFilters:Array = [];\n this.composeChildFilters(fieldsToFilter, this.state.currentNavigationItem);\n\n if (this.state.navigationTrail && this.state.navigationTrail.length) {\n this.state.navigationTrail.map((navTrailItem, i) => {\n fieldsToFilter[navTrailItem.MenuKey] = navTrailItem.MenuValue;\n });\n } \n\n if (this.props.initialFilters && this.props.initialFilters.length) {\n this.props.initialFilters.map((configuredFilter, i) => {\n if (configuredFilter.propertyName) {\n if (configuredFilter.value) {\n let term = {};\n term[configuredFilter.propertyName] = configuredFilter.value;\n queryFilters.push({query: { term: term } });\n } else {\n queryFilters.push({ exists: {field: \"Properties.\" + configuredFilter.propertyName}});\n }\n }\n })\n }\n\n Object.getOwnPropertyNames(fieldsToFilter).map((fieldFilterName, i) => {\n if (fieldsToFilter[fieldFilterName]) {\n let term = {};\n term[fieldFilterName] = fieldsToFilter[fieldFilterName];\n queryFilters.push({query: { term: term } });\n } else {\n //queryFilters.push({ exists: {field: fieldFilterName}});\n resultFilters.push({not: { exists: {field: fieldFilterName}}});\n }\n })\n\n this.postComposeFilters(queryFilters, resultFilters);\n \n query.query.filtered.filter.and = queryFilters;\n if (resultFilters && resultFilters.length) {\n query.filter.and = resultFilters;\n } else {\n delete query.filter;\n }\n\n query.from = this.state.page * this.state.pageSize;\n query.size = this.state.pageSize;\n\n const sortField = this.state.sort || this.state.currentNavigationItem.resultSortField;\n const sortDirection = this.state.sortDirection || this.state.currentNavigationItem.resultSortDirection;\n\n if (sortField)\n {\n let sort = {};\n sort[sortField] = { order: sortDirection || \"asc\" };\n query.sort[0] = sort ;\n }\n\n this.setState({query: query, results: [], sort: sortField, sortDirection: sortDirection });\n }\n }\n\n private composeChildFilters(fieldsToFilter:{[key:string]: string}, navItem:IDocumentNavigationItem) {\n if (navItem && navItem.childDocumentNavigationItems && navItem.childDocumentNavigationItems.length) {\n navItem.childDocumentNavigationItems.map((childNavItem, i) => {\n this.composeChildFilters(fieldsToFilter, childNavItem);\n });\n }\n\n if (navItem.childPropertySystemName) {\n fieldsToFilter[navItem.childPropertySystemName] = null;\n let possibleChosenFilters = this.state.currentNavigationPath.filter((pathItem, i) => {\n return pathItem.childPropertySystemName === navItem.childPropertySystemName\n });\n }\n }\n\n private ensureUpdatedHash() {\n let somethingChanged = false;\n\n if (!this.hashParams) {\n this._hashParams = {};\n }\n\n SearchDocumentNavigator.hashToStateMap.map((hashToState, i) => {\n if (typeof(this.state[hashToState.stateParam]) !== 'undefined' && this.hashParams[hashToState.hashParam] !== this.state[hashToState.stateParam]) {\n this.hashParams[hashToState.hashParam] = this.state[hashToState.stateParam];\n somethingChanged = true;\n }\n });\n\n if (somethingChanged) {\n window.location.hash = $.param(this.hashParams);\n }\n }\n\n protected getPartialStateFromHash():any {\n let somethingChanged = false;\n let stateSetting:any = {};\n let currentState = this.state;\n\n if (location.hash && location.hash.length && location.hash.indexOf(\"#/\") == 0) {\n this.handleLegacyHash();\n }\n\n if (this.hashParams) {\n SearchDocumentNavigator.hashToStateMap.map((hashToState, i) => {\n if (typeof(this.hashParams[hashToState.hashParam]) !== 'undefined' && this.hashParams[hashToState.hashParam] !== currentState[hashToState.stateParam]) {\n if (typeof currentState[hashToState.stateParam] === 'number') {\n stateSetting[hashToState.stateParam] = Number(this.hashParams[hashToState.hashParam]);\n } else {\n stateSetting[hashToState.stateParam] = this.hashParams[hashToState.hashParam];\n }\n somethingChanged = true;\n }\n });\n }\n \n return stateSetting;\n }\n\n private handleLegacyHash() {\n let legacyNavHash = location.hash.substring(1);\n location.hash = \"nt=\" + encodeURIComponent(legacyNavHash.replace(/\\|/g,\":\"));\n }\n\n private parseNavigationPath(navigationPath:string):Array<{MenuKey:string,MenuValue:string}> {\n if (navigationPath && navigationPath.indexOf(\"/\") >= 0 ) {\n let splitNavPath = navigationPath.match(/(?:[^\\/]|\\/\\/)+/g);\n let navTrail:Array<{MenuKey:string,MenuValue:string}> = [];\n\n splitNavPath.map((navPathItem, i) => {\n if (navPathItem && navPathItem.indexOf(':') > 0) {\n let splitKeyValue = navPathItem.match(/(?:[^\\:]|::)+/g);\n\n if (splitKeyValue && splitKeyValue.length === 2) {\n navTrail.push({ MenuKey: splitKeyValue[0].replace(/\\/\\//g,\"/\").replace(/::/g,\":\"), MenuValue: splitKeyValue[1].replace(/\\/\\//g,\"/\").replace(/::/g,\":\") });\n }\n }\n });\n\n return navTrail;\n } else {\n return null;\n }\n }\n\n private parseParams(str) {\n if (str) {\n return str.split('&').reduce(function (params, param) {\n var paramSplit = param.split('=').map(function (value) {\n return decodeURIComponent(value.replace('+', ' '));\n });\n params[paramSplit[0]] = paramSplit[1];\n return params;\n }, {});\n } else {\n return null;\n }\n }\n\n\n\tconstructResultItem() : SearchNavigableDocumentItem {\n\t\treturn new SearchNavigableDocumentItem();\n\t}\n\n\tpublic GenerateDocumentNavigatorQuery():SearchDocumentNavigatorQuery {\n\t\tvar query = new SearchDocumentNavigatorQuery();\n\n\t\treturn query;\n }\n \n public performAdditionnalSearchResultParsing(results: Array, data:any) : any {\n if (data.facets && data.facets[this.state.currentNavigationItem.childPropertySystemName] && data.facets[this.state.currentNavigationItem.childPropertySystemName].terms) {\n let generatedChildOptions:Array = [];\n\n if (this.state.currentNavigationItem.useDynamicChoiceMode === \"DynamicChoices\" \n && this.state.currentNavigationItem.childDocumentNavigationItems\n && this.state.currentNavigationItem.childDocumentNavigationItems.length == 1\n && !this.state.currentNavigationItem.childDocumentNavigationItems[0].parentPropertyValue) {\n\n data.facets[this.state.currentNavigationItem.childPropertySystemName].terms.map((facetItem, facetIndex) => {\n let generatedChild = { ... this.state.currentNavigationItem.childDocumentNavigationItems[0]};\n generatedChild.parentPropertyValue = facetItem.term;\n generatedChild.title = facetItem.term;\n generatedChild.summary = null;\n generatedChildOptions.push(generatedChild);\n })\n } else if (this.state.currentNavigationItem.useDynamicChoiceMode === \"DynamicChoices\"\n && (!this.state.currentNavigationItem.childDocumentNavigationItems\n || !this.state.currentNavigationItem.childDocumentNavigationItems.length)) {\n\n data.facets[this.state.currentNavigationItem.childPropertySystemName].terms.map((facetItem, facetIndex) => {\n let generatedChild = { ... this.state.currentNavigationItem};\n generatedChild.childPropertySystemName = null;\n generatedChild.parentPropertyValue = facetItem.term;\n generatedChild.title = facetItem.term;\n generatedChild.summary = null;\n generatedChild.useDynamicChoiceMode = \"None\";\n generatedChildOptions.push(generatedChild);\n })\n }\n\n if (generatedChildOptions && generatedChildOptions.length > 0) {\n this.state.currentNavigationItem.childDocumentNavigationItems = generatedChildOptions;\n }\n } \n\n if (this.state.forceLoading && this.hashParams && this.hashParams.nt) {\n let navTrail = this.parseNavigationPath(this.hashParams.nt);\n let desiredNavTrailLength = navTrail.length;\n \n if (desiredNavTrailLength <= this.state.navigationTrail.length) {\n return { forceLoading: false };\n } else {\n navTrail.splice(this.state.navigationTrail.length + 1);\n let updatedNavState = this.GetNextNavigationItemFromNavTrail(navTrail, this.state.currentNavigationItem) || {};\n \n if (desiredNavTrailLength === this.state.navigationTrail.length + 1) {\n updatedNavState.forceLoading = false;\n }\n return updatedNavState;\n }\n } else if (this.state.currentNavigationItem.childDocumentNavigationItems && this.state.currentNavigationItem.childDocumentNavigationItems.length === 1\n && (!data.hits || !data.hits.total)) {\n let navTrail = this.state.navigationTrail;\n navTrail.push({ MenuKey:this.state.currentNavigationItem.childPropertySystemName,MenuValue:this.state.currentNavigationItem.childDocumentNavigationItems[0].parentPropertyValue });\n let updatedNavState = this.GetNextNavigationItemFromNavTrail(navTrail, this.state.currentNavigationItem);\n return updatedNavState;\n }\n }\n\n public getPropertyNameForNavigation() {\n if (this.state.currentNavigationItem.childPropertySystemName) {\n return this.state.currentNavigationItem.childPropertySystemName;\n } else if (this.state.currentNavigationPath.length > 1) {\n return this.state.currentNavigationPath[this.state.currentNavigationPath.length - 2].childPropertySystemName;\n }\n }\n\n public setSort(propertyName) {\n let sortField = this.state.sort || this.state.currentNavigationItem.resultSortField;\n let sortDirection = this.state.sortDirection || this.state.currentNavigationItem.resultSortDirection;\n\n if (sortField === propertyName) {\n if (sortDirection === \"desc\") {\n sortDirection = \"asc\";\n } else {\n sortDirection = \"desc\";\n }\n } else {\n sortField = propertyName;\n sortDirection = \"asc\";\n }\n \n this.setState({ page: 0, sort: sortField, sortDirection: sortDirection });\n }\n\n public renderReadersGuide() {\n return null;\n }\n \n public render() {\n\n if (!this.state.currentNavigationPath || !this.state.currentNavigationPath.length || !this.state.currentNavigationItem)\n return (
    error with doc nav!
    );\n\n let SearchDocumentResults = this.state.currentNavigationItem.displayResultInGrid && this.state.currentNavigationItem.gridMetadataColumns && this.state.currentNavigationItem.gridMetadataColumns.length ? SearchDocumentGrid : SearchDocumentList;\n\n return ( \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n {this.renderReadersGuide()}\n
    \n
    \n {this.state.currentNavigationItem && (this.state.currentNavigationItem.title || this.state.currentNavigationItem.parentPropertyValue) &&

    {this.state.currentNavigationItem.title || this.state.currentNavigationItem.parentPropertyValue}

    }\n {this.state.currentNavigationItem && this.state.currentNavigationItem.summary &&
    }\n this.setSort(columnName)} OnPageSizeChange={(pageSize) => this.setState({ page: 0, pageSize: pageSize })} OnPageChange={(pageIndex) => this.setState({ page: pageIndex })} UseDisplayTitle={this.state.currentNavigationItem.useDisplayTitle}/>\n
    \n
    \n
    \n
    \n
    \n \n
    \n );\n }\n}\n","export * from \"./SearchDocumentNavigator\"\nexport * from \"./MarketReportSearchNavigator\"","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\n\nexport interface ISimpleCallToActionBlockProps {\n imageString?: string;\n primaryText: string;\n linkText?: string;\n linkUrl?: string;\n simpleCTAClass?: string;\n}\n\ninterface State { }\n\nexport class SimpleCallToActionBlock extends React.Component{\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n public render() {\n return (\n
    \n
    \n
    \n
    \n

    {this.props.primaryText}

    \n {this.props.linkText && this.props.linkUrl ?\n \n {this.props.linkText} \n \n : \"\"\n }\n
    \n
    \n\n {this.props.imageString ?\n
    \n \n
    :\n \"\"}\n
    \n )\n }\n}","import React from 'react';\n\nexport interface IOutlookBox {\n box: Object,\n}\n\ninterface State {\n snapshots: Array\n}\n\nexport class OutlookBox extends React.Component {\n constructor(props) {\n super(props);\n this.state = { snapshots:[]};\n }\n\n //function to pick color based on class title\n private setColor(id) {\n switch (id) {\n case \"0\":\n return \"forecast\";\n\n case \"1\":\n return \"current\";\n\n case \"2\":\n return \"lmp\";\n\n case \"3\":\n return \"nsi\";\n\n default:\n return \"not-defined\";\n }\n }\n\n private getPicture(id) {\n switch (id) {\n case \"0\":\n return \"f\";\n\n case \"1\":\n return \"c\";\n\n case \"2\":\n return \"m\";\n\n case \"3\":\n return \"n\";\n\n default:\n return null;\n }\n }\n\n render() {\n const title = this.props.box[\"t\"];\n const titleStr = String(\" \" + title);\n const val = this.props.box[\"v\"];\n const id = this.props.box[\"id\"];\n\n return (\n
    \n
    \n
    \n
    \n
    \n {titleStr || \"--\"}\n
    \n
    \n
    \n
    \n
    {val || \"--\"}
    \n
    \n
    \n
    \n );\n }\n}\n","import React from 'react';\nimport { OutlookBox } from \"./OutlookBox\";\n\ninterface ISnapshotDashboardProps {\n service_url: string,\n current_demand_service_url: string,\n title: string,\n}\n\ninterface State {\n snapshots: Array;\n currentDemand: string;\n hasError: boolean;\n isLoaded: boolean;\n}\n\nexport class SnapshotDashboard extends React.Component {\n constructor(props) {\n super(props);\n this.state = { snapshots: [], currentDemand: null, hasError: false, isLoaded: false };\n }\n\n componentDidMount() {\n this.getSnapshots();\n\n // Periodically fetch current demand from DataBroker to keep snapshot consistent with fuel mix on homepage.\n setInterval(this.getCurrentDemand.bind(this), 1000 * 60 * 5); // 5 minute interval\n }\n\n componentDidCatch() {\n this.setState({ hasError: true });\n }\n\n getSnapshots() {\n var serviceUrl = this.props.service_url;\n\n $.ajax({\n url: serviceUrl,\n type: \"GET\", \n headers: {\n 'Accept': \"application/json\",\n 'Content-Type': \"application/json\",\n \"Access-Control-Allow-Origin\": \"*\",\n \"Access-Control-Allow-Credentials\": \"true\",\n \"Access-Control-Allow-Headers\": \"content-type\"\n\n },\n success: function (data) {\n this.setState({ snapshots: data, isLoaded: true });\n this.getCurrentDemand();\n }.bind(this)\n });\n }\n\n // The demand delivered from the snapshot and from the Data Broker API are usually slightly\n // different. We default to use the current demand from the Data Broker to keep the\n // snapshot box consistent with the charts. If there is a failure when polling the Data Broker\n // API, then the demand will default to the value provided by the snapshot. This may display\n // a discrepancy between the values showed in the fuel mix and in the snapshot box, but it is\n // probably better than displaying nothing.\n getCurrentDemand() {\n var currentDemandServiceUrl = this.props.current_demand_service_url;\n $.ajax({\n url: currentDemandServiceUrl,\n type: \"GET\",\n success: function (data) {\n let updatedDemand = data[\"TotalMW\"];\n let copyOfSnapshots = [...this.state.snapshots];\n copyOfSnapshots.forEach((snapshot, _) => {\n if (snapshot['id'] === \"1\" && updatedDemand !== undefined) {\n snapshot['v'] = (Number(updatedDemand)).toLocaleString(); // Adds commas\n }\n });\n this.setState({ snapshots: copyOfSnapshots });\n }.bind(this),\n });\n }\n\n private getAsOfDate() {\n var latestDate = this.state.snapshots[0][\"d\"];\n\n this.state.snapshots.map((snapshot, _) => {\n if (Date.parse(snapshot[\"d\"]) > Date.parse(latestDate)) {\n latestDate = snapshot[\"d\"];\n }\n });\n\n return latestDate;\n }\n\n render() {\n if (!this.state.isLoaded) {\n return
    \n }\n\n if (this.state.isLoaded && !this.state.hasError && this.state.snapshots.length > 0) {\n const asOf = this.getAsOfDate();\n\n return (\n
    \n
    \n
    {this.props.title}
    \n
    {asOf}
    \n
    \n
    \n {\n this.state.snapshots.map((snapshot, i) => {\n return ;\n })\n }\n
    \n
    \n );\n } else {\n const today = new Date().toUTCString();\n var b = new OutlookBox({\"t\":\"--\"});\n\n return (\n
    \n
    \n {this.props.title}\n
    as of {today}
    \n
    \n\n \n
    \n );\n }\n }\n}\n","import React from 'react';\nimport * as dateFormatter from '../../dateFormatter';\n\nexport interface IStakeholderFeedbackItem { Name: string, DueDate: Date, Description: string, Url:string, Id:string }\ninterface state {}\nexport default class StakeholderFeedbackItem extends React.Component{\n constructor(props) {\n super(props);\n this.state = {};\n }\n public getDisplayDate() {\n var tempDate = this.props.DueDate;\n return dateFormatter.DateFormatter.Format(tempDate, \"MM/DD/YYYY\");\n }\n\n public render() {\n return (\n
    \n
    \n
    \n

    \n \n {this.props.Name}\n \n

    \n

    {this.getDisplayDate()}

    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n )\n }\n}","import React from 'react';\nimport ReactDOM from \"react-dom\";\nimport StakeholderFeedbackItem from \"./StakeholderFeedbackItem\";\nimport * as dateFormatter from '../../dateFormatter';\ndeclare var kendo: any;\n\nexport interface IStakeholderFeedbackListProps {list:string}\ninterface State {\n feedback: Array,\n entity: string,\n topic: string,\n fromDate: Date,\n toDate: Date,\n active: string,\n entityList: Array,\n topicList: Array,\n filterItems: Array,\n yearList: Array,\n activeYear: string\n\n}\ninterface SRFeedbackPages {\n committeeReferences: Array,\n dueDate: Date,\n topics: Array,\n name: string,\n description: string,\n linkURL: string,\n contentLink:string\n}\n\nconst LOCAL_STORAGE_FILTER_PREFIX = 'stakeholder-feedback-';\n\nexport class StakeholderFeedbackList extends React.Component{\n private startDateRef: React.RefObject;\n private endDateRef: React.RefObject;\n private startDatePicker: any;\n private endDatePicker: any;\n\n constructor(props) {\n super(props);\n this.state = { feedbacks: [], entity: 'All', topic: 'All', fromDate: '', toDate: '', active: 'Active', entityList: [], topicList: [], filterItems: [], yearList: [], activeYear: '', loading: true };\n\n this.startDateRef = React.createRef();\n this.endDateRef = React.createRef();\n\n this.findLocallyStoredFilterValue = this.findLocallyStoredFilterValue.bind(this);\n this.findPreviousFilters = this.findPreviousFilters.bind(this);\n this.clearFilters = this.clearFilters.bind(this);\n this.clearDatePickers = this.clearDatePickers.bind(this);\n this.getKendoDateValue = this.getKendoDateValue.bind(this);\n this.handleKendoFromDateChange = this.handleKendoFromDateChange.bind(this);\n this.handleKendoToDateChange = this.handleKendoToDateChange.bind(this);\n }\n\n public componentDidMount() {\n this.initKendo();\n this.findPreviousFilters();\n this.getFeedback();\n }\n\n private findLocallyStoredFilterValue(filterKey) {\n return localStorage.getItem(`${LOCAL_STORAGE_FILTER_PREFIX}${filterKey}`);\n }\n private findPreviousFilters() {\n let entityFilter: string = this.findLocallyStoredFilterValue('entity');\n let topicFilter: string = this.findLocallyStoredFilterValue('topic');\n let fromDateFilter: string = this.findLocallyStoredFilterValue('fromDate');\n let toDateFilter: string = this.findLocallyStoredFilterValue('toDate');\n let activeLevelFilter: string = this.findLocallyStoredFilterValue('active');\n let selectedYearFilter: string = this.findLocallyStoredFilterValue('activeYear');\n\n this.setState({\n entity: entityFilter ?? 'All',\n topic: topicFilter ?? 'All',\n fromDate: fromDateFilter ?? '',\n toDate: toDateFilter ?? '',\n active: activeLevelFilter ?? 'Active',\n activeYear: selectedYearFilter ?? new Date().getFullYear().toString()\n });\n }\n\n private preserveFilter(filterKey, filterValue) { \n localStorage.setItem(`${LOCAL_STORAGE_FILTER_PREFIX}${filterKey}`, filterValue);\n }\n private removeAllFiltersFromLocalStorage() {\n localStorage.removeItem(`${LOCAL_STORAGE_FILTER_PREFIX}entity`);\n localStorage.removeItem(`${LOCAL_STORAGE_FILTER_PREFIX}topic`);\n localStorage.removeItem(`${LOCAL_STORAGE_FILTER_PREFIX}fromDate`);\n localStorage.removeItem(`${LOCAL_STORAGE_FILTER_PREFIX}toDate`);\n localStorage.removeItem(`${LOCAL_STORAGE_FILTER_PREFIX}active`);\n localStorage.removeItem(`${LOCAL_STORAGE_FILTER_PREFIX}activeYear`);\n }\n\n private getFeedback() {\n var url = '/api/ClosedCommitteeFeedback/GetClosedCommitteeFeedback';\n if (this.props.list == \"Stakeholder Feedback\") {\n url = '/api/Feedback/GetStakeHolderFeedback';\n } \n\n $.getJSON(url,\n function (data) {\n var pages = data.feedbackPages;\n var tempEntities = [];\n var tempTopics = [];\n var nowDate = new Date();\n var tempYearList = [];\n var activeYear = dateFormatter.DateFormatter.Format(Date.now(), \"YYYY\");\n for (var i = 0; i < pages.length; i++) {\n if (pages[i].committeeNames) {\n for (var j = 0; j < pages[i].committeeNames.length; j++) {\n if (tempEntities.indexOf(pages[i].committeeNames[j]) == -1) {\n tempEntities.push(pages[i].committeeNames[j]);\n }\n }\n } else {\n pages[i].committeeNames = [];\n }\n\n var expireDate = new Date(pages[i].dueDate);\n\n pages[i].active = nowDate > expireDate ? \"Expired\" : \"Active\";\n if (pages[i].topics) {\n\n for (var j = 0; j < pages[i].topics.length; j++) {\n if (tempTopics.indexOf(pages[i].topics[j]) == -1) {\n tempTopics.push(pages[i].topics[j]);\n }\n }\n } else {\n pages[i].topics = [];\n }\n var tempYear = dateFormatter.DateFormatter.Format(pages[i].dueDate, \"YYYY\");\n if (tempYearList.indexOf(tempYear) == -1) {\n tempYearList.push(tempYear);\n }\n }\n tempYearList.sort();\n tempEntities.sort();\n tempTopics.sort();\n\n if (tempYearList.indexOf(activeYear) == -1) {\n activeYear = tempYearList.slice(-1).toString();\n }\n pages = pages.sort(function (a, b) {\n a = new Date(a.dueDate);\n b = new Date(b.dueDate);\n return a > b ? 1 : a < b ? -1 : 0;\n });\n this.setState({ feedbacks: pages, entityList: tempEntities, topicList: tempTopics, yearList: tempYearList,loading:false });\n }.bind(this));\n }\n\n private initKendo() {\n const startDate = $(ReactDOM.findDOMNode(this.startDateRef.current)).kendoDatePicker({\n value: this.getKendoDateValue('fromDate'),\n change: this.handleKendoFromDateChange,\n }).data(\"kendoDatePicker\");\n\n const endDate = $(ReactDOM.findDOMNode(this.endDateRef.current)).kendoDatePicker({\n value: this.getKendoDateValue('toDate'),\n change: this.handleKendoToDateChange,\n }).data(\"kendoDatePicker\");\n\n // Store references to the date pickers\n this.startDatePicker = startDate;\n this.endDatePicker = endDate;\n }\n\n private getKendoDateValue(filterKey) {\n let storedDateValue = this.findLocallyStoredFilterValue(filterKey);\n return storedDateValue ? new Date(storedDateValue) : null;\n }\n private handleKendoFromDateChange(e) {\n var date = e.sender.value();\n this.setState({ fromDate: date });\n this.preserveFilter('fromDate', date);\n }\n private handleKendoToDateChange(e) {\n var date = e.sender.value();\n this.setState({ toDate: date });\n this.preserveFilter('toDate', date);\n }\n\n public filterYear(year) {\n this.setState({ activeYear: year });\n this.preserveFilter('activeYear', year);\n }\n public filterEntity(entity) {\n this.setState({ entity: entity });\n this.preserveFilter('entity', entity);\n }\n public filterTopic(topic) {\n this.setState({ topic: topic });\n this.preserveFilter('topic', topic);\n }\n public filterActive(active) {\n this.setState({ active: active });\n this.preserveFilter('active', active);\n }\n public clearFilters() {\n this.setState({\n entity: 'All',\n topic: 'All',\n fromDate: '',\n toDate: '',\n active: 'Active',\n activeYear: new Date().getFullYear().toString()\n });\n this.clearDatePickers();\n this.removeAllFiltersFromLocalStorage()\n }\n public clearDatePickers() {\n if (this.startDatePicker) {\n this.startDatePicker.value(null);\n }\n\n if (this.endDatePicker) {\n this.endDatePicker.value(null);\n }\n }\n public filtersAreDefault() {\n return this.state.entity === 'All' &&\n this.state.topic === 'All' &&\n this.state.fromDate === '' &&\n this.state.toDate === '' &&\n this.state.active === 'Active';\n }\n public getFilteredFeedbackItems() {\n return this.state.feedbacks.filter(feedback => {\n return (this.state.entity === 'All' || this.state.entity === '' || feedback.committeeNames.indexOf(this.state.entity) > -1)\n && (feedback.topics.indexOf(this.state.topic) > -1 || this.state.topic === 'All' || this.state.topic === '')\n && (new Date(feedback.dueDate) > this.state.fromDate || this.state.fromDate === '' || !this.state.fromDate)\n && (new Date(feedback.dueDate) < this.state.toDate || this.state.toDate === '' || !this.state.toDate)\n && (feedback.active === this.state.active || this.state.active === 'All' || this.state.active === '')\n && (new Date(feedback.dueDate).getFullYear().toString() === this.state.activeYear);\n });\n }\n\n public render() {\n return (\n
    \n

    \n Filter Feedback By\n {!this.filtersAreDefault() &&\n \n }\n

    \n
    \n
    \n \n
    \n\n \n
    \n \n {\n this.state.entityList.map((entity, i) => {\n return (\n \n )\n })\n }\n
    \n\n
    \n
    \n
    \n
    \n \n
    \n\n \n
    \n \n {\n this.state.topicList.map((topic, i) => {\n return (\n \n )\n })\n }\n
    \n\n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n {this.state.loading &&\n
    \n }\n
    \n
    \n\n {\n this.getFilteredFeedbackItems().map((feedback, i) => { \n return (\n \n ) \n })\n\n }\n {\n this.getFilteredFeedbackItems().length == 0 && !this.state.loading ?
    There are no items that match this criteria
    :
    \n }\n
    \n
    \n
    \n
    \n )\n }\n}\n","export * from \"./TariffTabs\"\nexport * from \"./TariffDocuments\" ","import React from 'react';\nimport * as DocumentsBase from '../Find/DocumentsBase';\nimport Moment from \"moment\";\nimport * as follow from '../../follow';\nimport * as dateFormatter from '../../dateFormatter';\n\nclass TariffDocumentItem extends DocumentsBase.DocumentItem {\n\tpublic entityname: string = null;\n\tpublic entityurl: string = null;\n\tpublic DocumentSortOrder: string = null;\n\tpublic year: number = null;\n\tpublic month: string = null;\n}\n\nexport interface ITariffDocumentsProps extends DocumentsBase.IDocumentsProps {\n\ttariffGroup:string;\n}\n\nexport interface ITariffDocumentsState extends DocumentsBase.IDocumentsState {\n\tquery:TariffDocumentsQuery;\n}\n\nexport class TariffDocumentsQuery {\n\tpublic partial_fields: {\n\t\tsource: {\n\t\t\texclude:Array\n\t\t}\n\t} = {\n\t\tsource: {\n\t\t\texclude: [\"documentText\"]\n\t\t}\n\t};\n\tscript_fields: {\n\t\tdocumentTextExcerpt: {\n\t\t\tparams: { field: string, length: number },\n\t\t\tscript: string\n\t\t}\n\t} = {\n\t\tdocumentTextExcerpt: {\n\t\t\tparams: { field: \"documentText\", length: 150 },\n\t\t\tscript: \"ascropped\"\n\t\t}\n\t};\n\tsort: Array = \n\t\t[ \n\t\t\t{ \"DocumentSortOrder\": {\"order\":\"asc\"} },\n\t\t\t{ \"Name\":\"asc\" }, \n\t\t\t\"_score\" \n\t\t];\n\tquery: {\n\t\tfiltered:{\n\t\t\tfilter: { \n\t\t\t\tand:Array\n\t\t\t},\n\t\t\tquery: {\n query_string: { query:string }\n\t\t\t}\n\t\t}\n\t} = {\n\t\tfiltered: {\n\t\t\tfilter: {\n\t\t\t\tand: [\n\t\t\t\t\t{ query: { term: { \"Properties.legaldoctype\": \"Tariff\" } } }\n\t\t\t\t]\n\t\t},\n\t\tquery: {\n query_string: { query: \"*\"} \n\t\t}\n\t}\n };\n\n\tpublic constructor(tariffGroup:string = null) { \n\t\tif (tariffGroup && tariffGroup.trim().length > 0) {\n\t\t\tthis.query.filtered.filter.and.push({query: { term: { \"Properties.legaldocsubtype\": tariffGroup } } });\n\t\t}\n\t}\n\n\tpublic SetAdditionalQueryText(queryText:string) : void {\n if (queryText && queryText.trim().length > 0) {\n this.query.filtered.query.query_string.query = '\"' + queryText + '\"';\n\t\t}\n else {\n\t\t\tthis.query.filtered.query.query_string.query = \"*\";\n\t\t}\n\t}\n\n\tpublic ClearAdditionalQueryText() : void {\n\t\tthis.SetAdditionalQueryText(null);\n\t}\n}\n\nexport class TariffDocuments extends DocumentsBase.DocumentsBase {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = { results: [], totalAvailableResults: 0, query: null, loading: true };\n\t\tthis.SetAdditionalQueryText = this.SetAdditionalQueryText.bind(this);\n\t\tthis.ClearAdditionalQueryText = this.ClearAdditionalQueryText.bind(this);\n\t\tthis.GenerateTariffDocumentQuery = this.GenerateTariffDocumentQuery.bind(this);\n\t}\n\n\tconstructResultItem() : TariffDocumentItem {\n\t\treturn new TariffDocumentItem();\n\t}\n\n\tcomponentDidMount(){ \n\t\tsuper.componentDidMount();\n\t\t\n\t\tif (this.props.tariffGroup) {\n\t\t\tthis.setState({query: this.GenerateTariffDocumentQuery() });\n\t\t}\n }\n\n\tpublic SetAdditionalQueryText(queryText:string) : void {\n\t\tvar query:TariffDocumentsQuery = (this.state.query as TariffDocumentsQuery) || this.GenerateTariffDocumentQuery();\n\t\tquery.SetAdditionalQueryText(queryText);\n\n\n\t\tif (query != this.state.query) {\n\t\t\tthis.setState({query: query});\n\t\t}\n\t\telse {\n\t\t\tthis.executeSearch();\n\t\t}\n\t}\n\n\tpublic ClearAdditionalQueryText() : void {\n\t\tthis.SetAdditionalQueryText(null);\n\t}\n\n\tpublic GenerateTariffDocumentQuery():TariffDocumentsQuery {\n\t\tvar query = new TariffDocumentsQuery(this.props.tariffGroup);\n\t\treturn query;\n\t}\n\n\tprivate getDisplayDate(date: Date){\n\t\tif(date != null){\n\t\t\tvar mDate = Moment.utc(date, Moment.ISO_8601, true);\n\n\t\t\treturn (\n\t\t\t\t
    {dateFormatter.DateFormatter.Format(mDate, \"MM/DD/YYYY\") }
    \t\t\t\t\t\t\t\n\t\t\t)\n\t\t}\n\t}\n\n\tpublic render() {\n\t\tif (!this.state.results || !this.state.results.length) {\n\t\t\treturn (
    There are no Tariff Documents that match this criteria.
    );\n }\n return (
    \n\t\t\t
    \n {\n this.state.results.map((resultItem:TariffDocumentItem, resultItemIndex:number) => {\n\t\t\t\t\tvar responsibleCommittee = \"\";\n\t\t\t\t\treturn(\n
    \n\t\t\t\t\t\t\t
    \n \n {this.getDisplayDate(resultItem.effectivedate) }
    \n
    \t\t\t\t\t\t\t\n );\n })\n }\n
    );\n }\n}\n","import React from 'react';\nimport TariffTabSearch from \"./TariffTabSearch\";\nimport * as TariffDocList from \"./TariffDocuments\";\n\nexport interface ITariffPanel { tariffDocumentType: string }\nexport interface ITariffPanelConfiguration { value: string, text: string, description: string }\ninterface ITariffPanelProps { findServiceUrl:string, tariffTabId: string, tabId: number, activeTab: number, tariffDocTypeName: string, tariffDocTypeTitle:string, tariffDocTypeDescription:string, updateTab: (tabId:number) => void, disableFollowing:boolean }\ninterface State { }\n\nexport default class TariffPanel extends React.Component{\n\n constructor(props){\n super(props); \n this.state = { };\n this.search = this.search.bind(this);\n }\n\n private TariffDocList:TariffDocList.TariffDocuments;\n\n private search(query?: string): void {\n if (this.TariffDocList) {\n this.TariffDocList.SetAdditionalQueryText(query);\n }\n }\n\n render() {\n return(\n
    \n
    \n
    \n \n
    \n
    \n \n { this.TariffDocList = instance; } } disableFollowing={this.props.disableFollowing} />\n
    \n
    \n
    \n
    \n
    \n )\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\n\ninterface ITariffTabSearchProps { Search: (query:string) => void }\ninterface State { query: string }\n\nexport default class TariffTabSearch extends React.Component{\n\n constructor(props){\n super(props);\n this.state = { query: \"\" }\n }\n\n componentDidMount(){\n }\n\n private clearSearch(){\n this.setState({query: \"\"}, ()=>{this.search()});\n }\n\n private updateQuery(event: React.FormEvent){\n var value = (event.target as HTMLInputElement).value; \n this.setState({query: value});\n }\n\n private onKeyPress(event: React.KeyboardEvent) { \n if(event.key == \"Enter\"){\n this.search();\n }\n }\n\n private search(){ \n this.props.Search(this.state.query);\n }\n \n render() {\n\n return(\n
    \n \n  \n Help With Search\n \n

    You can search for tariff documents by title or text within the document.

    \n

    \n To improve your search results, consider these options:
    \n Use quotation marks to search a specific phrase.
    \n Use AND to search for documents with both \"this phrase\" and \"that phrase.\"
    \n Use OR to search for documents with either \"this phrase\" or \"that phrase.\"
    \n

    \n
    \n
    \n
    \n

    \n
    \n \n
    \n \n \n
    \n
    \n\n
    \n
    \n )\n }\n}","import React from 'react';\nimport TariffPanel, {ITariffPanel} from \"./TariffPanel\";\n\ninterface ITariffTabProps {findServiceUrl:string, panels: Array, tariffDocTypeChoices: Array, disableFollowing:boolean }\ninterface ITariffDocTypeConfiguration { value: string, text: string, description: string }\ninterface State { activeTab: number; componentId: string }\n\nexport class TariffTabs extends React.Component{\n\n constructor(props){\n super(props);\n //this.state = { activeTab: 0, componentId: this.newComponentId() } \n this.state = { activeTab: 0, componentId: \"\" } \n this.updateTab = this.updateTab.bind(this);\n }\n\n private docTypeConfigs: { [id:string] : ITariffDocTypeConfiguration; };\n private getSafeDocTypeConfig(panelDocType:string): ITariffDocTypeConfiguration {\n if (!this.docTypeConfigs) {\n this.docTypeConfigs = {};\n if (this.props.tariffDocTypeChoices && this.props.tariffDocTypeChoices.length) {\n this.props.tariffDocTypeChoices.forEach(config => {\n this.docTypeConfigs[config.value] = config;\n });\n } \n }\n return this.docTypeConfigs[panelDocType] \n || { value: panelDocType, text: panelDocType, description: \"Unknown Tariff Document Type\" };\n }\n\n //private newComponentId() {\n // return 'xxxxxxxx_xxxx_4xxx_yxxx_xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {\n // var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);\n // return v.toString(16);\n // });\n //}\n\n private updateTab(tabId: number){\n window.setTimeout(()=>{this.setState({activeTab: tabId});}, 250);\n }\n\n private renderTabs() {\n return ( \n
    \n \n \n
    \n
    \n {\n this.props.panels.map((panel,i) => {\n var docTypeConfig = this.getSafeDocTypeConfig(panel.tariffDocumentType);\n return (\n \n )\n })\n }\n
    \n
    \n
    \n ) \n }\n\n render() {\n return(this.renderTabs())\n }\n}","// A '.tsx' file enables JSX support in the TypeScript compiler, \n// for more information see the following page on the TypeScript wiki:\n// https://github.com/Microsoft/TypeScript/wiki/JSX\nimport React from 'react';\n\nexport class TwitterFeed extends React.Component{\n constructor(props) {\n super(props);\n }\n\n public render() {\n return (\n
    \n {/*

    Latest Tweets

    */}\n
    \n
    \n Tweets by @MISO_energy\n {/*TODO: This should probably be downloaded, but we need to verify our X account first, so I'm not going to figure out how to link it just yet*/}\n \n
    \n
    \n
    \n \n )\n }\n}","import React from 'react';\nimport { CallToActionLink } from \"../CallToActionLink/CallToActionLink\";\n\ninterface IUserRoleListProps {\n extranetRoles: Array,\n gridUnityRoles: Array,\n adminOnlyRoles: Array\n}\n\ninterface IFriendlyRoleMapItem {\n roleName: string,\n friendlyName: string,\n extranetRole: boolean,\n gridUnityRole: boolean,\n adminOnlyRole: boolean,\n referenceUrl: any\n}\n\ninterface State {\n hasExtranetRoles: boolean,\n hasGridUnityRoles: boolean,\n hasAdminOnlyRoles: boolean\n}\n\nexport class UserRoleList extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n hasExtranetRoles: Array.isArray(props.extranetRoles) && props.extranetRoles.length > 0,\n hasGridUnityRoles: Array.isArray(props.gridUnityRoles) && props.gridUnityRoles.length > 0,\n hasAdminOnlyRoles: Array.isArray(props.adminOnlyRoles) && props.adminOnlyRoles.length > 0\n };\n }\n\n public render() {\n return (\n
    \n
    \n

    Restricted Access

    \n
    \n\n
    \n

    Extranet Access

    \n {this.state.hasExtranetRoles ?\n this.props.extranetRoles.map((sub, i) => {\n return (
    );\n })\n :
    \n \n
    \n }\n
    \n\n
    \n

    Generator Interconnection Portal Access

    \n {this.state.hasGridUnityRoles ?\n this.props.gridUnityRoles.map((sub, i) => {\n return (
    );\n })\n :
    \n \n
    \n }\n
    \n\n {this.state.hasAdminOnlyRoles ?\n
    \n

    Additional Access

    \n {\n this.props.adminOnlyRoles.map((sub, i) => {\n return (
    );\n })\n }\n
    \n :
    \n }\n
    \n );\n }\n}","import * as moment from 'moment';\nimport * as momentTimezone from 'moment-timezone';\n\nexport class DateFormatter {\n\n\tpublic static Format(date: moment.MomentInput, format: string = \"M/D/YYYY\") {\n\t\tif (date === \"undefined\" || date === undefined || date === \"Invalid Date\" || date === \"\") {\n\t\t\treturn \"Never\";\n\t\t}\n return DateFormatter.DateCast(date).format(format);\n\t}\n\n\tpublic static DateCast(date: moment.MomentInput): moment.Moment {\n\t\treturn momentTimezone.tz(date, \"America/New_York\");\n\t}\n\n}","import {IModalButton} from \"./modal\";\nimport Miso from \"./global\";\nimport * as secured from './secured';\nimport * as toast from './toast';\nimport * as modal from './modal';\n\nexport class Follow {\n public static DisplayFromReact(itemID: string, displayLink: boolean) {\n var deferred = $.Deferred();\n let stringToReturn: string;\n let follow: JQueryPromise = this.GetIsFollowing(itemID)\n .then(\n (following: boolean) => {\n stringToReturn = this.Display(itemID, following, displayLink);\n deferred.resolve(stringToReturn);\n }\n \n )\n return deferred.promise();\n }\n public static Display(itemID: string, following: boolean, displayLink: boolean, isButton?: boolean) {\n var renderHTML = '';\n var text = '';\n var cssClass = 'btn btn-small';\n var onClick = null;\n if (following) { \n text = ' Following';\n cssClass += isButton ? ' follow-btn btn-default dark-blue' : ' follow-link btn-link green'; \n } else { \n text = ' Follow';\n cssClass += isButton ? ' follow-btn btn-primary' : ' follow-link btn-link dark-blue';\n }\n\n onClick = \"Miso.Follow.Follow.Follow('\" + itemID + \"',\" + displayLink + \")\";\n\n if (!Miso.Secured.LoggedIn) {\n cssClass += ' logged-out secured-link';\n }\n\n renderHTML = '';\n \n return renderHTML;\n }\n\n public static Follow(id: string, displayLink: boolean) {\n var el = $(\"[id='Follow\" + id + \"']\");\n var following = el.data(\"following\");\n\n if (following) {\n let unfollowBtn: IModalButton = { name: \"Unfollow\", func: this.onUnfollow, params: { id, displayLink } };\n let cancelBtn: IModalButton = { name: \"Cancel\", func: null, params: null, btnClass: 'btn-default' };\n\n // Prompt to unfollow\n Miso.Modal.Display(\"Are you sure you want to unfollow?\", [unfollowBtn, cancelBtn]);\n } else {\n // Call subscribe web service\n $.ajax({\n\t\t\t url: '/api/contentalerting/subscribe',\n type: 'POST',\n data: JSON.stringify(id),\n dataType: 'json',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n success: function (data) {\n // Now following\n Miso.Toast.Display('You are now following ' + data.subscription.contentName, 'Congratulations');\n\n // Change button status \n el.data(\"following\", true);\n\n el.html(' Following');\n el.removeClass(\"dark-blue\").addClass(\"green\");\n if (el.hasClass(\"btn-primary\")) {\n el.removeClass(\"btn-primary\").addClass(\"btn-default\");\n }\n },\n error: function (err) {\n Miso.Toast.Display('You are unable to follow this item at this time.', 'Whoops!', 'error');\n }\n }); \n }\n }\n\n public static GetIsFollowing(id: string) {\n var deferred = $.Deferred();\n\n // Call subscribe web service\n $.ajax({\n url: '/api/contentalerting/getissubscribed?contentId=' + id,\n type: 'GET',\n success: function (data) {\n deferred.resolve(data);\n },\n error: function (err) {\n deferred.resolve(false);\n }\n });\n\n return deferred.promise();\n }\n\n private static onUnfollow(params: any) {\n var el = $(\"[id='Follow\" + params.id + \"']\")\n\n // Call subscribe web service\n $.ajax({\n url: '/api/contentalerting/unsubscribe',\n type: 'POST',\n\t\t\tdata: JSON.stringify([params.id]),\n\t\t\tcontentType: 'application/json',\n\t\t\tdataType: 'json', \n success: function (data) {\n // Not following\n Miso.Toast.Display('You are no longer following this item.');\n\n // Change button status\n el.data(\"following\", false);\n\n el.html(' Follow');\n el.removeClass(\"green\").addClass(\"dark-blue\");\n if (el.hasClass(\"btn-default\")) {\n el.removeClass(\"btn-default\").addClass(\"btn-primary\");\n }\n },\n error: function (err) {\n console.log(err);\n }\n });\n }\n}\n","\n/*/// */\n\nimport * as alerts from './alerts';\nimport * as follow from './follow';\nimport * as modal from './modal';\nimport * as repeat from './repeat';\nimport * as secured from './secured';\nimport * as toast from './toast';\nimport * as dateFormatter from './dateFormatter';\nimport * as apiHelper from './apiHelper';\nimport * as awesome from './awesome';\nimport * as PageGuid from './pageguid';\nimport * as reactHelper from './reactHelpers';\n//import * as sessionTimeout from './sessionTimeout';\nimport { sessionTimeoutInstance } from './sessionTimeout';\n\n/*export class Miso {\n\tstatic Alerts = alerts.Alerts;\n\tstatic Follow = follow.Follow;\n\tstatic Modal = modal.Modal;\n\tstatic Repeat = repeat.Repeat;\n\tstatic Secured = secured.Secured;\n\tstatic Toast = toast.Toast;\n\tstatic DateFormatter = dateFormatter.DateFormatter;\n\tstatic Api = apiHelper.Api;\n\tstatic Awesome = awesome.Awesome;\n\tstatic PageGuid = PageGuid.PageGuid;\n\tstatic ReactHelper = reactHelper.ReactHelper;\n\tstatic SessionTimeout = sessionTimeoutInstance;\n}*/\nexport const Miso ={\n\tAlerts:alerts.Alerts,\n\tFollow: follow,\n\tModal: modal.Modal,\n\tRepeat: repeat.Repeat,\n\tSecured: secured.Secured,\n\tToast: toast.Toast,\n\tDateFormatter: dateFormatter.DateFormatter,\n\tApi: apiHelper.Api,\n\tAwesome: awesome.Awesome,\n\tPageGuid: PageGuid.PageGuid,\n\tReactHelper: reactHelper.ReactHelper,\n\tSessionTimeout: sessionTimeoutInstance\n}\nexport default Miso;\nglobal.Miso = Miso;","import React from 'react';\nimport { Modal, IModalButton, IModalInput } from '../modal';\n\ninterface IBlockBaseState {\n}\nexport interface IBlockBaseProps {\n showIntegratedBorder?: boolean;\n integrateHeader?: boolean;\n headerColor?: string;\n backgroundColor?: string;\n backgroundImage?:string;\n backgroundImageString?: string;\n backgroundImagePosition?: string;\n showHorizontalDivider?:boolean;\n textAlignment?:string;\n integrateHeaderString?:string;\n integrateSubHeaderString?:string;\n integrateHeaderLink?:string;\n integrateHeaderText?: string;\n allowCompressedDownload?: boolean;\n}\nexport interface IListOptions {\n className?: string;\n dataSetName?: string;\n dataItemPropName?: string;\n dateFieldName?: string;\n selectionLabel?: string;\n}\n\ndeclare var ga: any;\n\nexport default function BlockBase(\n ItemComponent: (React.ComponentClass | React.StatelessComponent), \n options:IListOptions) { \n return class BlockBase extends React.Component {\n constructor(props) {\n super(props);\n //this.state = { };\n }\n\n private showDownloadAllModal() {\n const btns: Array = [{\n name: 'Request Files',\n func: () => {\n this.downloadCompressedFile(jQuery('#modalInput').val().toString());\n },\n params: null\n },\n {\n name: 'Cancel',\n func: () => { $('#myModal').modal('hide') },\n params: null,\n btnClass: 'btn-default'\n }];\n\n const modalInput: IModalInput = {\n label: 'Email Address: ',\n inputId: 'modalInput',\n inputType: 'text'\n };\n\n const modalText = \"Enter your email address to receive a link to download the files.\";\n\n Modal.Display(modalText, btns, modalInput)\n }\n\n private downloadCompressedFile(userEmail: string) {\n let serializedFileUrls = \"\";\n let fileUrls = [];\n\n this.props[options.dataSetName].map((dataItem, dataItemIndex: number) => {\n if (typeof dataItem.GetDocumentUrl === 'function') {\n serializedFileUrls += dataItem.GetDocumentUrl() + \"|\";\n fileUrls.push(dataItem.GetDocumentUrl());\n }\n });\n\n var pageTitle = $(document).attr('title');\n\n $.ajax({\n url: '/api/documents/RequestZipDocsByEmail',\n type: 'POST',\n data: JSON.stringify({ userEmail, fileUrls, pageTitle }),\n dataType: 'json',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n success: function (data) {\n if (data === \"Success\") {\n Modal.Display(\"Your request to zip the files has been accepted. Watch your email for the download link. This may take several minutes depending on the size of the files requested.\",\n [{\n name: 'Ok',\n func: () => { },\n params: null\n }]\n )\n } else {\n Modal.Display(\"There was an error processing your request. Please try again, or reach out to Stakeholder Relations for assistance.\",\n [{\n name: 'Ok',\n func: () => { },\n params: null\n }]\n )\n }\n },\n error: function (err) {\n console.log(\"this is to be checked after epi12 upgrade\");\n Modal.Display(\"There was an error processing your request. Please try again, or reach out to Stakeholder Relations for assistance.\",\n [{\n name: 'Ok',\n func: () => { },\n params: null\n }]\n )\n }\n });\n\n ga('send', 'event', 'ZippedFiles', 'download', serializedFileUrls);\n }\n\n public render() {\n const backgroundImagePosition = (this.props.backgroundImagePosition ? this.props.backgroundImagePosition : \"fullwidth\");\n return (\n
    \n {this.props.integrateHeader ? \n
    \n
    \n

    {this.props.integrateHeaderString}

    \n {this.props.integrateSubHeaderString ?\n
    {this.props.integrateSubHeaderString}
    \n :\"\"}\n
    \n
    \n {this.props.allowCompressedDownload === true ? : }\n {this.props.integrateHeaderText && this.props.integrateHeaderLink ?\n

    \n {this.props.integrateHeaderText}\n

    \n : \"\" }\n
    \n
    \n :
    }\n
    \n \n
    \n \n
    );\n }\n }\n}\n\n","import React from 'react';\n\nexport interface IListOptions {\n className:string;\n dataSetName:string;\n dataItemPropName: string;\n}\n\nexport interface IGridProps {\n Columns:Array;\n OnSortClick?:(columnName:string) => void; \n ResultSortField?:string;\n ResultSortDirection?:string;\n}\n\ninterface IListState {\n}\n\nexport default function List(\n ItemComponent: (React.ComponentClass | React.StatelessComponent), \n options:IListOptions) { \n return class List extends React.Component {\n constructor(props) {\n super(props);\n this.state = { };\n } \n\n public render() {\n var tableStyles = \" table table-bordered docnav-metadata dataTable no-footer\";\n if (this.props[\"TableStyle\"] && this.props[\"TableStyle\"].length) {\n tableStyles = this.props[\"TableStyle\"] + tableStyles;\n }\n let itemOverriddenProps = {};\n if (!this.props[options.dataSetName] || !this.props[options.dataSetName].length) {\n return (
    )\n }\n return (\n
    \n \n \n \n {\n this.props.Columns.map((col, colindex) => {\n if (this.props.OnSortClick) {\n return (\n \n )\n } else {\n return (\n \n )\n }\n })\n }\n \n \n \n \n \n {\n this.props[options.dataSetName].map((dataItem, dataItemIndex: number) => {\n let itemOverriddenProps = {};\n itemOverriddenProps[options.dataItemPropName] = dataItem;\n return (\n \n );\n })\n } \n
    this.props.OnSortClick(col.propertyName)} id={col.propertyName} className={(col.propertyName === this.props.ResultSortField ? \"sortableth sortableth--\" + (this.props.ResultSortDirection || \"asc\") : \"colheader-sortable colheader-unsorted\") + (col.Alignment ? \" text-\" + col.Alignment : \"\") } >\n {col.title || col.propertyName}\n \n {col.title || col.propertyName}\n
    {this.props.Columns[0].title || this.props.Columns[0].propertyName }
    \n
    \n
    );\n }\n }\n}","import React from 'react';\n\nexport interface IListOptions {\n className: string;\n dataSetName: string;\n dataItemPropName: string;\n}\n\ninterface IListState {\n showAll: boolean;\n}\n\nconst SHOW_MORE_ITEMS_MAX_THRESHOLD = 5;\n\nexport default function List(\n ItemComponent: (React.ComponentClass | React.StatelessComponent),\n options: IListOptions) {\n return class List extends React.Component {\n constructor(props) {\n super(props);\n this.state = { showAll: false };\n }\n \n ShowAll = () => {\n this.setState({\n showAll: true\n });\n }\n\n ShowLess = () => {\n this.setState({\n showAll: false\n });\n }\n public render() {\n if (this.props[\"loading\"]) {\n return (
    )\n }\n if (!this.props[options.dataSetName] || !this.props[options.dataSetName].length) {\n return (
    {this.props[\"noResultsText\"] || \"There are currently no documents that match this criteria.\"}
    )\n }\n return (\n\n
    \n
    \n {\n this.state.showAll || options.dataSetName != \"RelatedDocumentItems\" ?\n this.props[options.dataSetName].map((dataItem, dataItemIndex: number) => {\n let itemOverriddenProps = {};\n itemOverriddenProps[options.dataItemPropName] = dataItem;\n return (\n \n );\n })\n :\n this.props[options.dataSetName].slice(0, SHOW_MORE_ITEMS_MAX_THRESHOLD).map((dataItem, dataItemIndex: number) => {\n let itemOverriddenProps = {};\n itemOverriddenProps[options.dataItemPropName] = dataItem;\n return (\n \n );\n })\n\n }\n {\n options.dataSetName == \"RelatedDocumentItems\" ?\n (this.props[options.dataSetName].length > SHOW_MORE_ITEMS_MAX_THRESHOLD && !this.state.showAll ?\n

    Show More

    :\n (\n this.state.showAll ?\n

    Show Less

    : ''\n )) : ''\n }\n
    \n\n );\n }\n }\n}","import React from 'react';\nimport * as dateFormatter from '../dateFormatter';\nimport Moment from 'moment';\n\n\n\ninterface IListDateRefinerOptions {\n dateFieldName:string;\n dataSetName:string;\n selectionLabel:string;\n sortByFieldName?: string;\n}\n\ninterface IListDateRefinerState {\n filterYear: number,\n filterDay: string,\n yearList: Array,\n daySelections: Array,\n overridingProps: any,\n filteredResults?: {[key:string]: Array}\n} \n\nexport default function ListDateRefiner(\n WrappedList: (React.ComponentClass | React.StatelessComponent), \n options:IListDateRefinerOptions) { \n return class DateRefiner extends React.Component }, IListDateRefinerState> {\n constructor(props) {\n super(props);\n this.state = { filterYear: 0, filterDay: null, yearList: [], daySelections: [], overridingProps:{} };\n } \n \n public componentDidMount() {\n this.createRefinement();\n }\n\n public componentDidUpdate(prevProps, prevState) {\n if (this.props[options.dataSetName] != prevProps[options.dataSetName] || this.props.DateSelections != prevProps.DateSelections) {\n this.createRefinement();\n } else if (prevState.filterYear != this.state.filterYear || prevState.filterDay != this.state.filterDay) {\n let filterItems = [];\n \n if (this.state.filterDay) {\n this.props[options.dataSetName].map((dataItem, i) => { \n const dataItemDate = dataItem[options.dateFieldName] ? dateFormatter.DateFormatter.DateCast(dataItem[options.dateFieldName]) : null; \n if (dataItemDate && this.state.filterYear == dataItemDate.year() && (this.state.filterDay == options.selectionLabel || this.state.filterDay == dateFormatter.DateFormatter.Format(dataItemDate, \"MM/DD/YYYY\"))) {\n filterItems.push(dataItem);\n } \n })\n }\n\n let overridingProps = { };\n overridingProps[options.dataSetName] = filterItems;\n \n this.setState( { overridingProps: overridingProps });\n }\n }\n\n private createRefinement() {\n if (this.props.DateSelections && this.props.DateSelections.length && !(this.state.yearList && this.state.yearList.length)) {\n let tempYearList:Array = [];\n\n this.props.DateSelections.map((dataItemDate, i) => {\n if (!tempYearList.some(x => dataItemDate && x === dataItemDate.year())) {\n tempYearList.push(dataItemDate.year()); \n }\n });\n\n this.setState({ yearList: tempYearList, daySelections: this.props.DateSelections, filterYear: 2017, filterDay: options.selectionLabel });\n \n } else if (this.props[options.dataSetName] && this.props[options.dataSetName].length && !(this.state.yearList && this.state.yearList.length)) {\n const d = Moment.utc();\n const sortByFieldName = options.sortByFieldName || \"Name\";\n\n let tempYearList:Array = [];\n let tempDaySelections:Array = []; \n\n this.props[options.dataSetName].sort(function (d1, d2) {\n if (!d1[sortByFieldName] && !d2[sortByFieldName]) {\n return 0;\n } else if (!d1[sortByFieldName] && d2[sortByFieldName]) {\n return 1;\n } else if (d1[sortByFieldName] && !d2[sortByFieldName]) {\n return -1;\n } else if (d1[sortByFieldName] < d2[sortByFieldName]) {\n return -1;\n } else if (d1[sortByFieldName] > d2[sortByFieldName]) {\n return 1;\n } else {\n return 0;\n }\n });\n \n this.props[options.dataSetName].map((dataItem, i) => {\n const dataItemDate = dataItem[options.dateFieldName] ? dateFormatter.DateFormatter.DateCast(dataItem[options.dateFieldName]).startOf('day') : null;\n\n\t\t\t\t\t\t\t\t\tif (dataItemDate) {\n\t\t\t\t\t\t\t\t\t\tif (!tempYearList.some(x => dataItemDate && x === dataItemDate.year())) {\n\t\t\t\t\t\t\t\t\t\t\ttempYearList.push(dataItemDate.year());\n\t\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\t\tif (!tempDaySelections.some(x => dataItemDate && dataItemDate.isSame(x, 'day'))) {\n\t\t\t\t\t\t\t\t\t\t\ttempDaySelections.push(dataItemDate);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\n })\n\n tempYearList.sort();\n tempDaySelections.sort(function (d1, d2) {\n if (!d1 && !d2) {\n return 0;\n } else if (!d1 && d2) {\n return 1;\n } else if (d1 && !d2) {\n return -1;\n } else if (d1 < d2) {\n return -1;\n } else if (d1 > d2){\n return 1;\n } else {\n return 0;\n }\n });\n\n let initDay = tempDaySelections[tempDaySelections.length - 1];\n for (let i = 0; i < tempDaySelections.length; i++) {\n if (tempDaySelections[i] > d) {\n initDay = tempDaySelections[i];\n break;\n }\n }\n\n const initYear = initDay.year();\n this.setState({ yearList: tempYearList, daySelections: tempDaySelections, filterYear: initYear, filterDay: dateFormatter.DateFormatter.Format(initDay, \"MM/DD/YYYY\") });\n }\n }\n\n public yearFilter(year) {\n this.setState({ filterYear: year, filterDay: null });\n }\n public dayFilter(day) {\n this.setState({ filterDay: day });\n }\n public renderDateSelector() {\n\n return (
    \n \n
    \n \n {\n this.state.daySelections.map((day, i) => {\n if (day.year() == this.state.filterYear) {\n const formattedDay = dateFormatter.DateFormatter.Format(day, \"MM/DD/YYYY\");\n return ()\n }\n })\n }\n
    \n
    );\n }\n\n public render() {\n // 1/3/18: Because this block is typically nested inside an accordian, it does not render an accordain\n // at mobile viewports like other tabbed components \n return (\n
    \n
    \n
    \n \n
    \n
    \n
    {this.renderDateSelector() }
    \n \n
    \n
    \n
    \n \n )\n \n }\n }\n}\n","import Paging, { IPagingProps } from '../components/Find/Paging';\nimport React from 'react';\nimport {IListOptions} from './List';\n\ninterface IListState {\n}\n\nexport default function ListPager(\n WrappedList: (React.ComponentClass), \n options:IListOptions) { \n return class Pager extends React.Component {\n constructor(props) {\n super(props);\n this.state = { };\n } \n\n public renderResultsBody() {\n if(this.props.Loading){\n return (
    )\n } else if (!this.props[options.dataSetName] || !this.props[options.dataSetName].length) {\n return ( \n
    \n { this.props.NoResultsText || \"Sorry, no results were found that match your query.\" }\n
    \n )\n } else {\n return (\n
    \n \n { !this.props.Loading ? \n
    \n \n
    :
    }\n
    \n )\n }\n }\n\n public render() {\n return (\n
    \n {/*
    \n \n
    \n

    */}\n {this.renderResultsBody()}\n
    );\n }\n\n \n }\n}","export interface IModalButton { name: string, func: (any?) => void, params: any, btnClass?: string }\nexport interface IModalInput { label: string, inputId?: string, inputType?: string }\n\nexport class Modal {\n\n private static GenerateInput(input?: IModalInput) {\n if (input === undefined || input === null) {\n return '';\n }\n\n if (input.inputId == null || input.inputId === undefined) input.inputId = 'modalInput';\n if (input.inputType == null || input.inputType === undefined) input.inputType = 'text';\n\n return `\n
    \n
    \n \n \n
    \n `;\n }\n\n public static Display(message: string, options: Array, input?: IModalInput) {\n var modal = $(\n `
    \n
    \n
    \n
    \n
    \n
    \n
    ${message}
    \n ${this.GenerateInput(input)}\n
    \n
    \n
    \n
    \n
    \n
    `\n );\n\n // Apply defaults to any options not provided\n if (typeof options != \"undefined\") {\n var buttonCount = (options.length > 2 ? 2 : options.length);\n for (var i = 0; i < buttonCount; i++) {\n var option = options[i];\n\n if (option.btnClass == null) {\n option.btnClass = \"btn-primary\";\n }\n\n var btn = $('');\n btn.on('click', function () {\n var i = $(this).data(\"buttonId\");\n if (typeof options[i].func == \"function\") {\n options[i].func(options[i].params);\n }\n });\n\n modal.find(\".modal-footer\").append(btn);\n }\n } else {\n var btn = $('');\n modal.find(\".modal-footer\").append(btn);\n };\n\n $(modal).modal('show');\n }\n}\n\n\n","export class PageGuid {\n static CurrentPageGuid: string;\n\n public static SetPageGuid(guid: string) {\n this.CurrentPageGuid = guid;\n }\n}","import React from 'react';\nimport * as ReactDOM from \"react-dom\";\n\nexport class ReactHelper {\n\n public static unmount(id: string) { \n ReactDOM.unmountComponentAtNode(document.getElementById(id));\n }\n\n}\n\n\n\n\n\n","interface IRepeatEvent { name: string, onResize: boolean, onEvent: (any?) => void, params?: any };\n\nexport class Repeat {\n private resizeEvents: Array = [];\n private repeatEvents: Array = [];\n private lastUpdate: number;\n private delay: number;\n private timeout: number;\n\n constructor(delay: number) {\n this.lastUpdate = 0;\n this.timeout = null;\n this.delay = delay;\n\n window.onresize = this.WatchResize.bind(this); \n window.setInterval(this.WatchRepeat.bind(this), delay);\n }\n\n public RegisterEvent(rev: IRepeatEvent, isResize: boolean) {\n this.timeout = null;\n\n if (isResize) {\n // Add resize events to watch\n this.resizeEvents.push(rev);\n this.WatchResize(null);\n } else {\n // Add resize events to watch\n this.repeatEvents.push(rev);\n }\n } \n\n // Watch repeat events\n private WatchRepeat(ev: UIEvent): void {\n // Handle repeat events\n for (var i = 0; i < this.repeatEvents.length; i++) {\n this.repeatEvents[i].onEvent(this.repeatEvents[i].params);\n }\n }\n\n // Watch resize events\n private WatchResize(ev: UIEvent): void {\n if (this.timeout == null) {\n var elapsed = (new Date().getTime() - this.lastUpdate);\n\n if (elapsed >= this.delay) {\n this.lastUpdate = new Date().getTime();\n\n // Handle resize events\n for (var i = 0; i < this.resizeEvents.length; i++) {\n this.resizeEvents[i].onEvent(this.resizeEvents[i].params);\n }\n } else { \n this.timeout = window.setTimeout(function () {\n this.timeout = null;\n this.WatchResize(ev); \n }.bind(this), this.delay - elapsed);\n }\n }\n }\n\n}","import {IModalButton} from \"./modal\";\nimport Miso from \"./global\";\n\nexport class Secured {\n public static LoggedIn: boolean = false;\n public static LoginUrl: string = \"#\"; \n\n public static SecureLinks() {\n var loggedIn = this.LoggedIn;\n\n $('.secured-link').each(function () { \n if ($(this).data('secured') == null) {\n\n if (!loggedIn) {\n $(this).addClass('logged-out');\n }\n\n // Cache event\n var eventArray = new Array();\n var events = $[\"_data\"](this, 'events');\n\n if (this.onclick != null) {\n eventArray.push(this.onclick);\n }\n\n if (typeof events != \"undefined\" && typeof events.click != \"undefined\") {\n for (var i = 0; i < events.click.length; i++) {\n eventArray.push(events.click[i].handler);\n }\n }\n\n // Add navigation event to event array for links\n if (this.hasAttribute('href')) {\n var href = this.attributes['href'].value;\n $(this).data('href', href);\n this.removeAttribute(\"href\"); \n eventArray.push((data) => {\n window.location.href = data.href;\n }); \n }\n\n // Remove the event from the link\n this.onclick = null;\n $(this).unbind('click');\n\n this.onclick = function (e) {\n e.stopImmediatePropagation();\n e.preventDefault();\n\n Miso.Secured.Action(eventArray, $(e.currentTarget).data());\n }\n\n $(this).data('secured', true);\n }\n });\n }\n\n public static SetLoginStatus(loggedIn: boolean, loginUrl: string){\n this.LoggedIn = loggedIn;\n this.LoginUrl = loginUrl;\n }\n\n public static Action(callbacks: Array<(any) => any>, parameters: any) {\n if (this.LoggedIn) { \n if (callbacks.length >= 0) {\n for (var i = 0; i < callbacks.length; i++) {\n callbacks[i](parameters);\n }\n }\n } else {\n if (parameters.href) {\n var callbackUrl = '/account/login?ReturnUrl=' + parameters.href;\n Secured.SetLoginStatus(this.LoggedIn, callbackUrl);\n }\n var loginCallback = () => this.LoginModalCallback();\n let loginButton: IModalButton = {name: \"Login\", func: loginCallback, params: null}\n\n // Call Modal\n Miso.Modal.Display(\"Whoops! You need to log in to perform this action.\", [loginButton]);\n }\n }\n\n private static LoginModalCallback(){\n window.location.href = this.LoginUrl;\n } \n}\n","import {Modal, IModalButton} from \"./modal\";\nimport Miso from \"./global\";\n\n\n\nexport class SessionTimeout {\n\n private readonly loginRoot: string = '/account/login?ReturnUrl=';\n private _loggedIn: boolean = false;\n private _timeout: number = 0;\n private timerId: number = 0;\n \n constructor() {\n }\n\n public get loggedIn(): boolean {\n return this._loggedIn;\n }\n\n public set loggedIn(newLoggedIn: boolean) {\n this._loggedIn = newLoggedIn;\n }\n\n public get timeout(): number {\n return this._timeout;\n }\n\n public set timeout(val: number) {\n this._timeout = val * 60 * 1000; \n }\n\n public startSession() {\n\n if (this.loggedIn) {\n this.startTimer();\n }\n }\n\n\n public updateSession() {\n\n if (this.loggedIn) {\n this.clearTimer();\n this.startTimer();\n }\n\n }\n\n private startTimer() {\n if (this.timerId === 0) {\n //TO DO\n const timeout2 = setTimeout(() => {\n\n this.clearTimer();\n\n let callbackUrl = this.getCallbackUrl();\n let loginCallback = () => this.loginModalCallback(callbackUrl);\n let homepageCallback = () => this.homepageModalCallback();\n\n let loginButton: IModalButton = { name: \"Login and stay\", func: loginCallback, params: callbackUrl }\n let homepageButton: IModalButton = { name: \"Continue as Guest\", func: homepageCallback, params: null }\n\n // Call Modal\n Modal.Display(\"Whoops! It looks like your session has timed out. Please login again or continue as guest.

    If you are on a secure page and choose to continue as guest, you will be taken back to the homepage.\", [loginButton, homepageButton]);\n },\n this.timeout);\n }\n }\n\n private clearTimer() {\n if (this.timerId !== 0) {\n clearTimeout(this.timerId);\n this.timerId = 0;\n }\n }\n\n private getRootSiteUrl() {\n return window.location.protocol + '//' + window.location.hostname + (window.location.port ? ':' + window.location.port : '') + '/';\n }\n\n private getCallbackUrl() {\n return this.loginRoot + (window.location.pathname !== '/' ? window.location.pathname : this.getRootSiteUrl());\n }\n\n private loginModalCallback(loginUrl: string) {\n this.navigateTo(loginUrl);\n }\n\n private homepageModalCallback() {\n this.navigateTo(this.getRootSiteUrl());\n }\n\n private navigateTo(url: string) {\n window.location.href = url;\n }\n\n\n}\n\nexport let sessionTimeoutInstance = new SessionTimeout(); ","import Toastr from 'toastr';\nimport $ from \"jquery\";\n\nexport class Toast {\n public static Display(message: string, title: string = null, type: string = 'success', options?: { closeButton: boolean, progressBar: boolean, showDuration: number, hideDuration: number, timeOut: number, extendedTimeOut: number, showMethod: string, hideMethod: string }) {\n // Set defaults\n var defaultOpts = {\n closeButton: true,\n progressBar: true,\n showDuration: 300,\n hideDuration: 1000,\n timeOut: 5000,\n extendedTimeOut: 1000,\n showMethod: \"slideLeft\",\n hideMethod: \"fadeOut\"\n }\n // Apply defaults to any options not provided\n if (typeof options != \"undefined\") {\n options.closeButton = options.closeButton != null ? options.closeButton : defaultOpts.closeButton;\n options.progressBar = options.progressBar != null ? options.progressBar : defaultOpts.progressBar;\n options.showDuration = options.showDuration || defaultOpts.showDuration;\n options.hideDuration = options.hideDuration || defaultOpts.hideDuration;\n options.timeOut = options.timeOut || defaultOpts.timeOut;\n options.extendedTimeOut = options.extendedTimeOut || defaultOpts.extendedTimeOut;\n options.showMethod = options.showMethod || defaultOpts.showMethod;\n options.hideMethod = options.hideMethod || defaultOpts.hideMethod;\n } else {\n options = defaultOpts;\n }\n\n // Add slideLeft function to jQuery if not defined\n $.fn.extend({\n slideLeft: function () {\n return this.each(function () {\n $(this).show().animate({ 'right': '30px' });\n });\n }\n });\n // Display Toast. Yay Toast!\n Toastr[type](message, title, options);\n }\n\n // Clear toasts\n public static Clear() {\n Toastr.clear();\n }\n}","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdD = function () {\n\tthrow new Error('define cannot be used indirect');\n};","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t179: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = this[\"webpackChunk\"] = this[\"webpackChunk\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [76,644], () => (__webpack_require__(9198)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["___EXPOSE_LOADER_IMPORT___","___EXPOSE_LOADER_GLOBAL_THIS___","module","exports","Accordion","AlertSubscriptionList","BreadCrumbs","CallToActionLink","CallToActionSideBar","CDNDocument","ClickableImageBlocks","ContentAlerts","DocumentNavigator","EventCalendar","EventList","FeedbackResultsDownload","GIQueueDocumentApp","GlobalAlert","HeroHeader","HeroButton","HeroButtons","InfoBox","InfoBoxWithImageHeader","InfoBoxWithThumbnail","LeadershipBlock","Legend","MailingList","Meetings","MISOMatters","NewsOverview","NotificationList","QBankDocument","RecentNotificationList","RegistrationStatus","RelatedPages","StakeholderFeedbackList","MCSNotification","RelatedDocuments","Search","SearchNavigation","SimpleCallToActionBlock","SnapshotDashboard","Tariff","TwitterFeed","UserRoleList","ProfileDataModal","globalThis","g","this","Function","e","window","self","getOwnPropertySymbols","Object","hasOwnProperty","prototype","propIsEnumerable","propertyIsEnumerable","assign","test1","String","getOwnPropertyNames","test2","i","fromCharCode","test3","order2","map","n","join","split","forEach","letter","keys","err","target","source","from","to","val","TypeError","s","arguments","length","key","call","symbols","k","l","p","q","t","u","w","f","h","x","y","A","B","C","D","E","G","H","a","b","c","push","d","I","J","K","pop","m","v","r","sortIndex","id","performance","now","unstable_now","Date","MessageChannel","setTimeout","clearTimeout","unstable_shouldYield","unstable_forceFrameRate","console","z","cancelAnimationFrame","requestAnimationFrame","error","Math","floor","F","port2","port1","onmessage","postMessage","L","M","N","O","P","Q","R","S","T","callback","startTime","expirationTime","U","V","priorityLevel","W","unstable_IdlePriority","unstable_ImmediatePriority","unstable_LowPriority","unstable_NormalPriority","unstable_Profiling","unstable_UserBlockingPriority","unstable_cancelCallback","unstable_continueExecution","unstable_getCurrentPriorityLevel","unstable_getFirstCallbackNode","unstable_next","unstable_pauseExecution","unstable_requestPaint","unstable_runWithPriority","unstable_scheduleCallback","delay","unstable_wrapCallback","apply","registerManagedAlerts","selector","$","each","index","elem","on","localStorage","setItem","show","Alerts","getIssuesLegendLists","choices","Api","issuesLegendListPromise","getJSON","done","getGiQueueLegendLists","giQueueLegendListPromise","GetTTFQueueLegendLists","TTFQueueLegendListPromise","getLegendLists","choiceNames","reduce","choice","idx","configurableChoice","legendListPromise","getDocumentIcon","doc","contentType","style","faClass","fileType","getFileType","indexOf","getDocType","getUnformattedDocumentIcon","substr","lastIndexOf","Awesome","Component","componentDidMount","allPanels","addKeyToPanels","pageSize","props","defaultPageSize","setState","totalAvailableResults","panels","allpanels","nonFilteredPanels","slice","resultSetCount","componentDidUpdate","prevProps","state","page","searchText","collapseAllPanels","removeClass","addClass","tempPanel","keyInt","cleanTitle","title","ISO_8601","isValid","dateFormatter","DateFormatter","Format","OnPageChange","ceil","OnPageSizeChange","size","sizeParse","parseInt","tempCount","selectResultsPage","pageIndex","numPages","search","query","filteredPanels","resultCount","filter","undefined","titleOverride","toLowerCase","includes","render","className","width","marginBottom","placeholder","type","value","onChange","displayAccordion","accordionId","role","paging","AccordionPanelList","ResultSetCount","TotalAvailableResults","IncludePagingDescription","Page","PageSize","bind","panel","openFirstPanel","contentOverride","secondaryTitle","href","content","image","imageType","src","AccordionItem","AccordionBlock","listOptions","dataSetName","dataItemPropName","toString","dangerouslySetInnerHTML","__html","GetMySubscriptions","endpoint","data","alertSubscriptionList","Unsubscribe","params","unsubscribeGroup","unsubscribeLists","find","displayTitle","tabKey","unsubscribeList","items","ajax","JSON","stringify","contentId","url","dataType","then","toast","Toast","Display","buildList","listString","item","contentName","SaveChanges","unfollowBtn","name","func","modal","Modal","btnClass","showAllClick","showAll","showLessClick","toggleUnsubscribe","subscriptions","group","gi","substring","padding","checked","htmlFor","creationDate","textAlign","onClick","disabled","getCrumbs","getFollowing","showBreadCrumbs","breadCrumbID","Crumbs","crumbs","Loading","showFollowFlag","followGuid","Follow","GetIsFollowing","isFollowing","IsFollowing","crumb","link","pageName","constructResultItem","DocumentsBase","DocumentItem","GetDocumentMetadata","deferred","Deferred","xmlhttp","XMLHttpRequest","open","findServiceUrl","cdnid","onload","parse","responseText","parsedResult","parseResults","getFollowedStatus","subscriptionData","DocumentGuid","resolve","send","promise","parsedSingleResult","_source","fields","prop","sourceProperties","properties","propertyKey","documentItem","headers","success","renderFollow","disableFollowing","renderDescription","overrideDescription","description","Description","Name","effectivedate","Files","Values","results","renderCTALink","linkText","linkIcon","primaryIcon","linkUrl","ctaClass","imageString","primaryText","alignRightButtons","secondaryText","secondaryTextDangerous","buttonLinks","openInNewTab","text","icon","buttonText","padTimeElement","str","formatDateTime","date","hour","ampm","datestring","getMonth","getDate","getFullYear","parentProps","mode","getHours","getMinutes","alertClicked","alert","alertDeleted","deleted","log","navigateToAlertSubscriptionsource","location","subscription","contentUrl","display","ContentAlertListMode","alerts","Array","Full","ReactDOM","findDOMNode","parent","css","getActiveContentAlertData","maxitems","groupedAlerts","groupAlerts","userCheckedAlerts","numberOfUnseenAlerts","jqxhr","status","mapping","sourcesWithContentTypeMaps","sourceNameMappings","contentTypeId","sourceName","ContentAlertGrouping","renderAlerts","Dropdown","subscriberAlert","result","alertGroup","fullAlertsListUrl","ContentAlertList","componentWillMount","addEventListener","handlePop","componentWillUnmount","removeEventListener","event","parentPropertyValue","numnewlevels","newURL","numoldlevels","oldURL","prevUrl","slashspot","lastNav","hash","childPropertySystemName","clickedNavigationPropertyValue","initialNavigationState","currentNavigationPath","navigationQueryValues","DocumentNavigation","currentNavigationItem","parseDrillDownFromHashPath","decodedHash","decodeURIComponent","documentNavigationItemPanel","setLoadingState","paths","autonavItem","pathLevel","path","propertyValue","nextNavigationItem","childDocumentNavigationItems","useDynamicChoiceMode","getDynamicNavigationItems","clickedNavigationItemCrumb","removedNavagationItems","splice","lastUnremovedNavigationItem","suppressStateUpdate","currentNavDepth","parentNavigationItem","Promise","reject","body","QueryValues","NavigationItem","EnableFollowDocuments","navigationItems","documents","loadedNavigableDocuments","CurrentNavigationItem","CurrentNavigationPath","PathLength","OnClickTabCrumb","documentNavigationItem","filters","InitialFilters","enableFollowDocuments","openDocumentsInNewTarget","OpenDocumentsInNewTarget","ref","instance","getNavigableDocuments","prevState","navigableDocuments","loading","setSort","propertyName","resultSortField","resultSortDirection","sortReturnValue","sort","navDoc1","navDoc2","val1","metadata","val2","onPageSizeChanged","setCurrentNavigableDocumentsFromLoaded","getNavigableDocumentsPromises","getNavigableDocumentsPromised","executeGetNavigableDocuments","Filters","Top","Skip","loadingState","renderDocuments","displayResultInGrid","gridMetadataColumns","col","colindex","renderMetadataBody","rel","awesome","fileName","renderPagingDescription","min","renderPaging","pageIndexes","pageSizeValues","pageSizeOptions","first","last","label","pageSizeIndex","pageSizeValue","pageSizeText","pageSizeOption","renderMetadataColumn","renderMobileMetadataContent","property","propertyDate","hasTime","utc","guid","valueOf","summary","componentWillReceiveProps","nextProps","animateClass","menuItems","timeout","menuItem","j","getMenuNavigationItems","pathPos","urisplitprotect","uricomponent","replace","renderMenu","menuNavigationItems","ForceLoading","UseParameterizedHash","currentNavItem","stopAtIndex","navItem","isCurrent","menuItemClass","menuItemUrl","selectTabCrumb","baseNavigationUrl","getActionLink","action","renderDate","start","end","format","Miso","add","toDate","renderLocation","hostLocation","hostRoom","locations","loc","activeEvent","isCancelled","textDecoration","color","entities","ent","eventType","eventFormat","details","RegistrationStatusCalculated","allowRegistration","registrationOpenDate","registrationCloseDate","eventStatus","registrationStatus","form","view","disableRegistrations","loggedIn","getConfigurableChoices","eventTypes","eventFormats","eventLocations","initKendoScheduler","generateHashUrl","activeView","activeDate","loaded","recievedHashUrl","scheduler","kendoScheduler","startOf","endTime","endOf","mobile","views","dateHeaderTemplate","dayDateHeaderTemplate","eventTemplate","dayEventTemplate","allDayEventTemplate","allDaySlotTemplate","slotTemplate","weekDateHeaderTemplate","weekEventTemplate","weekAllDayEventTemplate","eventHeight","workWeekStart","workWeekEnd","selected","monthEventTemplate","dayTemplate","editable","selectable","footer","change","preventDefault","navigate","resize","dataBound","unbind","html","element","elemDate","changeDate","stopPropagation","ev","parents","slot","slotByElement","currentTarget","startDate","toggleCalendarView","selectDate","getEvents","hideEmptyRows","kendoDatePicker","sender","dataSource","batch","transport","read","options","allEvents","events","IsCancelled","getLocations","eventLocation","matchedLocation","EventLocations","Location","registrations","contentLink","formIdentifier","hostPageId","isRegistered","myEvents","parameterMap","operation","models","schema","model","ID","field","defaultValue","validation","required","pageGuid","resources","dataTextField","dataValueField","dataColorField","getEventTypesDS","getEventFormatsDS","updateFilter","moment","occurrencesInRange","activeEvents","select","navMonth","nav","newDate","subtract","navWeek","navDay","rows","removedRows","hasClass","hide","table","tableHeight","height","refresh","pickDay","calendar","toISOString","Room","mapConfigurableChoice","fieldType","Value","Text","hashes","today","hashUrl","EventTypes","EventFormats","UpdateFilter","Filter","isActiveEvent","compareEventTimes","eventA","eventB","getTime","onFilter","RenderConfigurableChoices","eventStyle","backgroundColor","borderColor","getHeaderText","tempDate","addDateHeader","toDateString","getEventName","eventCanceled","renderCalButton","onlyMyEvents","linkURL","registrationFormIdentifier","tabClick","getEventsForUser","shouldComponentUpdated","defaultNumberOfEvents","filteredEvents","newEventState","newRegistrationState","Id","renderButtons","defaults","array","eventDate","lastDate","registrationStatusMessage","numberOfEvents","EventListBlock","EventListHoc","FindResultItemBase","FindResultItem","ContentType","Created","CreatedBy","DisplayDate","FileName","Updated","UpdatedBy","DocumentOwner","DocumentOwnerEmail","DocumentType","Keywords","expiration","Legaldoctype","Legaldocsubtype","CommitteeDocType","StudyGroup","StudyCycle","DisplayTitle","meetingdate","FindResultsBase","_id","ExtranetID","MediaId","_score","_type","$type","___types","RolesWithReadAccess","SearchTitle","SearchSummary","SearchText","SearchHitUrl","SearchTypeName","SearchHitTypeName","SearchSection","SearchSubsection","SearchAuthors","SearchGeoLocation","SearchPublishDate","SearchUpdateDate","SearchAttachment","SearchCategories","SearchFilename","SearchFileExtension","SearchMetaData","original","GetDocumentUrl","GetCalculatedDocumentUrl","IsSecuredDocument","initialResults","prevprops","prevstate","executeSearch","initQueryExecution","successCallback","querybody","initSecondQueryExecution","query2","setParsedResults","getParsedPropertyName","parseHit","hit","parsedField","sourceProp","descriptiong","resultData","additionalState","hits","parsedHit","performAdditionnalSearchResultParsing","setResultState","total","onResultsUpdated","setAdditionalParsedResults","combinedResultData","concat","resultsData","documentIds","resultItem","ContentId","newResults","partialState","forceLoading","HideFullEntriesText","feedbackSubmissionItems","entityname","entityurl","sortorder","year","month","GIQueueItem","projectNumber","partial_fields","exclude","script_fields","documentTextExcerpt","script","filtered","and","trim","term","GIQueueQuery","newquery","showModal","document","displayDate","close","GIQueueDocumentModal","activeAlerts","globalAlertListItems","sessionStorage","getItem","currentAlert","currentAlertNumber","collapsed","prevAlert","nextAlert","hideAlerts","toggleCollapse","message","stop","HeroButtonDefault","buttonLink","buttonClass","secureLink","newWindow","fAIcon","fAIconPosition","heroButtons","buttonn","tertiaryText","followButtonClass","backgroundImage","backgroundImageString","tertiaryTextCSSClass","textCSSClass","secondaryTextCSSClass","HeroHeaderItem","HeroHeaderBlock","headerTitleString","titleLink","titleIcon","titleString","subTitleLink","subTitleString","actionLinkList","actionLink","actionIcon","actionString","dangerousActionLinkList","dangerLink","cleanDate","alt","headerText","personName","category","getLeadershipPages","listOfPages","leadershipPages","leadershipRole","categoryList","sortOrder","localeCompare","LeadershipPages","CategoryList","FilteredPages","FilterCategory","categoryFilter","renderTabSelector","leadershipPage","thumbnailUrl","jobTitle","legendListItems","GetLegendLists","legendListDataRetriever","eval","choiceItems","legendItem","choiceItem","displayName","showValue","isColorKey","showLabel","legendItems","placement","legendLabel","legendList","renderLegendListItem","legendListItem","backColor","getMCSNotification","when","notification","FormatDate","subject","publishDateUnformatted","getArticles","numberOfBlogs","Articles","articles","FilterArticles","listOfArticles","categoryType","getDisplayDate","renderCatSelector","fullDetailsView","article","imageUrl","overview","mediaContactName","publishDate","GetListCategories","GetMailingLists","listCategories","mailingListData","list","subscribed","subscribe","subscriptionDate","listName","mailingLists","UpdateSubscribedLists","lists","updatedMailingLists","_list","GetCategoryLists","showAvailable","categoryLists","listCategory","SubscribeList","ToggleListView","subOnly","Category","Index","MailingLists","handleTabChange","tab","categoryDescription","useShowAll","List","ListType","CategoryDescription","listDescription","listTitle","SaveUpdates","subscribedLists","updateLists","active","updatedLists","OnUpdateLists","getMeetingName","getMeetings","committeeReference","newMeetingState","FormIdentifier","HostPageId","IsRegistered","Form","tempYearList","yearList","yearFilter","changeRegistration","tempMeetingState","filterYear","meeting","meetingDate","MeetingListBlock","MeetingListHoc","MeetingList","committees","Committee","parentCommittee","PanelTitle","committeeAcronym","subcommittees","subcommittee","committeePanelSettings","committeePanel","Loaded","integrateHeader","showIntegratedBorder","integrateHeaderString","integrateSubHeaderString","RelatedMeetingMaterialDocuments","committeePageGuid","contentGuid","allowCompressedDownload","SubcommitteeMeetings","handleClickOutside","selectedItems","nextSelectedItem","selectItem","openDropdown","dropdownOpen","keepOpen","dropdownRef","current","contains","inputRef","updateInputText","inputText","indexOfSelectedItem","updatedSelectedItems","updateSelectedItems","removeAllItems","renderSelectedItemsInInput","roleDisplayLimit","sortItemsByColumn","numberOfColumns","alphabetizedItems","numberOfRolesInEachColumn","sortedItems","step","offset","columnizedIndex","getFormattedItemsList","sortColumnsAlphabetically","border","borderBottomLeftRadius","borderBottomRightRadius","autoFocus","onFocus","openByDefault","createRef","Multiselect","YearList","FilterYear","getArticlesByYear","renderDateSelector","useSinglePanelStyle","getTopicChoices","topic","getNotifications","topics","take","notifications","formatBody","permanentLinkUrl","groupedNotifications","pageLink","getNotificationsForTopic","updateNotifications","currentState","temptopic","temptake","updateTopic","topicNotifications","topicData","findIndex","obj","siteURL","overviewAdditionalText","callToActionText","links","GetUserRoles","encodeURIComponent","profile","nullCheck","roles","approvedRoles","updateNewRolesList","updatedRoleNames","grantAccess","Email","Roles","revokeAccess","comments","querySelector","Comment","unlockProfile","statusMessage","confirmUser","resendConfirmationEmail","showApprovalSection","showAccessApprovals","hideApprovalSection","toggleApproveAndDeny","approveBoxes","querySelectorAll","rejectBoxes","approveRole","getAppropriateMultiselectValues","roleList","roleName","isAdmin","adminOnlyRole","gridUnityRole","isClientRelationsEditor","isITOCUser","sub","FindServiceUrl","QBankID","OverrideDescription","EffectiveDate$$date","buildPayload","getLinkUrl","LinkUrl","Status","Hash","unregisterButton","submission","tempSubmission","ChangeRegistration","renderButton","Registrations","DisplayModal","reg","GuestEmail","SYSTEMCOLUMN_SubmitUser","HideModal","renderRegistrationIcon","registerURL","hideModal","displayModal","LoggedIn","DisableRegistrations","rightNow","RelatedDocumentItem","getRelatedPageGuid","isInEditMode","renderResults","RelatedDocumentItems","noResultsText","RelatedCorrelatedDocuments","includeTerm","termName","termValue","queryTerm","includeTerms","queryTermName","termValues","queryzTerm","terms","excludeTerm","not","sortQuery","sortByname","sortDirection","querySort","sortDirectionObject","RelatedDocumentsQuery","extendRelatedDocumentsQuery","PageGuid","CurrentPageGuid","includeQueryTerms","includeMultipleQueryTerms","excludeQueryTerms","sortBy","RelatedDocumentsList","DateRefinedRelatedDocumentsList","dateFieldName","selectionLabel","subString","PublishDatePrefixText","followString","aDifferentMeetingDate","fromDateWithoutZ","newQuery","or","exists","DateCast","fromDate","clone","range","meetingDates","facets","meetingDateFacet","time","DateSelections","RelatedPageDocuments","relatedPages","subHeader","RelatedPagesItem","RelatedPagesBlock","SearchResultItem","_hashParams","parseParams","newUrl","gaParams","gaUrl","pathname","ga","updateView","setStateFromHash","ensureUpdatedHash","resetSearchState","somethingChanged","hashParams","hashToStateMap","hashToState","stateParam","hashParam","param","stateSetting","queryTextBox","paramSplit","sanitizeParamsString","returnString","insideBackets","rootUrl","withFacets","prevQuery","prevFilters","setParsedFacets","parsedFilters","parseFilterString","facetName","facet","SearchFacet","facetType","facetItems","entries","facetItem","facetItemIndex","itemValue","innerWidth","hideFacetMenu","showFacetMenu","toggleFacet","toggledFacetItem","filterString","facetIndex","concatenator","filterName","sanitizedParamsString","Facets","OnFacetItemClicked","input","onKeyUp","keyCode","Results","Sort","SortDirection","OnSortChange","some","Facet","facetList","toggleMaxItems","maxItems","moreOrLess","maxItemsToggler","count","renderResultsBody","Result","renderSorting","tag","startsWith","GenerateMarketReportNavigationItem","alignment","tableStyle","dynamicChoiceSortDirection","useDisplayTitle","useDynamicYearNavigation","useDynamicQuarterNavigation","useDynamicMonthNavigation","useDynamicDayNavigation","SearchDocumentNavigator","MarketReportNavigationConfiguration","GenerateMarketReportTopLevelNavigationItem","navTrail","navigationTrail","initialState","getPartialStateFromHash","nt","postComposeFilters","queryFilters","resultFilters","readersGuideQuery","kind","marketReportKind","SearchDocumentNavigatorQuery","MarketReportName","MarketReportSearchNavigator","trimParentheticalValues","parseReadersGuidResult","stringWithPotentialParentheticalValues","readersGuide","renderReadersGuide","openDocumentsInNewTargetElement","getElementById","openDocumentsInNewTargetValue","SearchDocumentGrid","Columns","SearchDocumentList","UseDisplayTitle","marketReportName","marketReportPublished","marketReportType","SearchNavigableDocumentItem","query_string","parseNavigationPath","doEndsOfNavigationTrailsDiffer","SetNextNavigationItemStateFromNavTrail","previousNavigationItem","navTrail1","navTrail2","lastNavTrailItem1","MenuKey","lastNavTrailItem2","MenuValue","navigatingItem","partialNavigationItemState","GetNextNavigationItemFromNavTrail","lastNavTrailItem","navigationPath","potentialMatchingChildItems","childItem","newNavigationItem","documentNavigation","sortField","composeChildFilters","navTrailItem","initialFilters","configuredFilter","fieldFilterName","order","fieldsToFilter","childNavItem","pathItem","handleLegacyHash","Number","legacyNavHash","splitNavPath","match","navPathItem","splitKeyValue","GenerateDocumentNavigatorQuery","desiredNavTrailLength","updatedNavState","generatedChild","getPropertyNameForNavigation","SearchDocumentResults","TableStyle","NoResultsText","placeholderTemplate","ResultSortField","ResultSortDirection","OnSortClick","columnName","currentNavigationValues","navigating","simpleCTAClass","setColor","getPicture","box","titleStr","snapshots","OutlookBox","getSnapshots","setInterval","getCurrentDemand","componentDidCatch","hasError","serviceUrl","service_url","isLoaded","currentDemandServiceUrl","current_demand_service_url","updatedDemand","copyOfSnapshots","snapshot","_","toLocaleString","getAsOfDate","latestDate","asOf","toUTCString","currentDemand","DueDate","Url","LOCAL_STORAGE_FILTER_PREFIX","initKendo","findPreviousFilters","getFeedback","findLocallyStoredFilterValue","filterKey","entityFilter","topicFilter","fromDateFilter","toDateFilter","activeLevelFilter","selectedYearFilter","entity","activeYear","preserveFilter","filterValue","removeAllFiltersFromLocalStorage","removeItem","pages","feedbackPages","tempEntities","tempTopics","nowDate","committeeNames","expireDate","dueDate","tempYear","feedbacks","entityList","topicList","startDateRef","getKendoDateValue","handleKendoFromDateChange","endDate","endDateRef","handleKendoToDateChange","startDatePicker","endDatePicker","storedDateValue","filterEntity","filterTopic","filterActive","clearFilters","clearDatePickers","filtersAreDefault","getFilteredFeedbackItems","feedback","float","filterItems","DocumentSortOrder","SetAdditionalQueryText","queryText","ClearAdditionalQueryText","tariffGroup","TariffDocumentsQuery","TariffDocumentItem","GenerateTariffDocumentQuery","mDate","resultItemIndex","follow","TariffDocuments","TariffDocList","tabId","activeTab","tariffTabId","updateTab","tariffDocTypeTitle","tariffDocTypeName","clearSearch","updateQuery","onKeyPress","getSafeDocTypeConfig","panelDocType","docTypeConfigs","tariffDocTypeChoices","config","renderTabs","docTypeConfig","tariffDocumentType","componentId","tariffDocTypeDescription","TariffTabs","async","hasExtranetRoles","extranetRoles","referenceUrl","friendlyName","hasGridUnityRoles","gridUnityRoles","hasAdminOnlyRoles","adminOnlyRoles","isArray","momentTimezone","tz","DisplayFromReact","itemID","displayLink","stringToReturn","following","isButton","cssClass","Secured","el","onUnfollow","Repeat","repeat","secured","apiHelper","ReactHelper","reactHelper","SessionTimeout","sessionTimeoutInstance","ItemComponent","showDownloadAllModal","downloadCompressedFile","jQuery","inputId","inputType","userEmail","serializedFileUrls","fileUrls","pageTitle","dataItem","dataItemIndex","attr","backgroundImagePosition","textAlignment","showHorizontalDivider","headerColor","integrateHeaderText","integrateHeaderLink","tableStyles","Alignment","itemOverriddenProps","ShowAll","ShowLess","SHOW_MORE_ITEMS_MAX_THRESHOLD","WrappedList","filterDay","daySelections","overridingProps","createRefinement","dataItemDate","sortByFieldName","initDay","d1","d2","isSame","initYear","dayFilter","day","GenerateInput","buttonCount","option","btn","append","SetPageGuid","unmount","unmountComponentAtNode","resizeEvents","repeatEvents","lastUpdate","onresize","WatchResize","WatchRepeat","RegisterEvent","rev","isResize","onEvent","elapsed","SecureLinks","eventArray","onclick","click","handler","hasAttribute","attributes","removeAttribute","stopImmediatePropagation","Action","SetLoginStatus","loginUrl","LoginUrl","callbacks","parameters","callbackUrl","LoginModalCallback","_loggedIn","newLoggedIn","_timeout","startSession","startTimer","updateSession","clearTimer","timerId","getCallbackUrl","loginModalCallback","homepageModalCallback","getRootSiteUrl","protocol","hostname","port","loginRoot","navigateTo","defaultOpts","closeButton","progressBar","showDuration","hideDuration","timeOut","extendedTimeOut","showMethod","hideMethod","fn","extend","slideLeft","animate","Clear","clear","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","amdD","Error","chunkIds","priority","notFulfilled","Infinity","fulfilled","every","o","nmd","children","installedChunks","179","webpackJsonpCallback","chunkId","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}