{"version":3,"sources":["webpack://lib.[name]/webpack/universalModuleDefinition","webpack://lib.[name]/./src/shared/components/carousel/carousel.scss?1e2a","webpack://lib.[name]/./src/shared/styles/shared.scss?0ef9","webpack://lib.[name]/./src/shared/styles/elements/footer.scss?861c","webpack://lib.[name]/./src/shared/styles/elements/nav-bar.scss?9e82","webpack://lib.[name]/./src/shared/components/document-tree/document-tree-loader.ts","webpack://lib.[name]/./src/auth/components/user-header/user-header.scss?322e","webpack://lib.[name]/./src/shared/styles/_base.scss","webpack://lib.[name]/./src/shared/components/document-tree/document-tree.scss?2bee","webpack://lib.[name]/./src/shared/shared.module.ts","webpack://lib.[name]/./src/shared/styles/elements/filter-section.scss?756b","webpack://lib.[name]/./src/shared/styles/elements/document-tree.scss?b5f5","webpack://lib.[name]/./src/shared/components/scroll-to-top/scroll-to-top.ts","webpack://lib.[name]/./src/shared/scripts/number-functions.ts","webpack://lib.[name]/./src/shared/styles/elements/data-table.scss?e894","webpack://lib.[name]/./src/shared/components/scroll-to-top/scroll-to-top.scss?783b","webpack://lib.[name]/./src/shared/components/document-library/document-library-expand.scss?396a","webpack://lib.[name]/./src/shared/components/document-library/document-library-loader.ts","webpack://lib.[name]/./src/shared/components/carousel/carousel.ts","webpack://lib.[name]/./src/shared/styles/elements/headings.scss?a591","webpack://lib.[name]/./src/auth/pages/login/login.scss?fcac","webpack://lib.[name]/./src/shared/styles/variables.scss","webpack://lib.[name]/./src/shared/scripts/font-awesome.ts","webpack://lib.[name]/./src/shared/components/document-tree/document-tree.objects.ts","webpack://lib.[name]/./src/shared/scripts/date-functions.ts","webpack://lib.[name]/./src/shared/styles/elements/button.scss?469a","webpack://lib.[name]/./src/auth/pages/profile/profile.scss?daba"],"names":[],"mappings":"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","file":"shared.92ed7c981cda9dc7d4d6.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"shared\"] = factory();\n\telse\n\t\troot[\"lib\"] = root[\"lib\"] || {}, root[\"lib\"][\"shared\"] = factory();\n})(window, function() {\nreturn ","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","import { DocumentTree, DocumentTreeV2 } from \"./document-tree.objects\";\r\nimport { plainToClass } from \"class-transformer\";\r\n\r\n\r\nexport class DocumentTreeLoader {\r\n\r\n documentTree: DocumentTree;\r\n\r\n constructor(nodes: any) {\r\n $(() => {\r\n\r\n this.documentTree = new DocumentTree(nodes);\r\n });\r\n }\r\n}\r\n\r\nexport class DocumentTreeLoaderV2 {\r\n\r\n documentTree: DocumentTree;\r\n allNodes: DocumentNode[];\r\n treeId: string;\r\n searchBoxId: string;\r\n clearSearchId: string;\r\n\r\n dateFilterId: string;\r\n fileDisplayContainerId: string;\r\n\r\n constructor(nodes: any, treeId: string = \"jstree\", searchBoxId: string = \"docSearch\", searchClearId: string = \"searchClear\", targetFile: string = \"\", targetSearchBox: string = \"\") {\r\n $(() => {\r\n\r\n this.treeId = treeId;\r\n this.searchBoxId = searchBoxId;\r\n this.clearSearchId = searchClearId;\r\n\r\n this.dateFilterId = `date-filter-${treeId}`;\r\n this.fileDisplayContainerId = `file-display-container-${treeId}`;\r\n\r\n this.allNodes = plainToClass(DocumentNode, nodes);\r\n this.allNodes.forEach(node => node.initialize());\r\n\r\n if (targetFile != \"\" && targetFile != undefined && targetFile != null) {\r\n\r\n if (this.searchBoxId == targetSearchBox) {\r\n let callbackFn = () => {\r\n $(`#${this.searchBoxId}`).val(targetFile).trigger(\"keyup\");\r\n };\r\n\r\n this.documentTree = new DocumentTreeV2(this.allNodes, this.treeId, this.searchBoxId, this.clearSearchId, callbackFn);\r\n }\r\n else {\r\n this.documentTree = new DocumentTreeV2(this.allNodes, this.treeId, this.searchBoxId, this.clearSearchId);\r\n }\r\n }\r\n else {\r\n this.documentTree = new DocumentTreeV2(this.allNodes, this.treeId, this.searchBoxId, this.clearSearchId);\r\n }\r\n\r\n this.initializeDateFilter();\r\n this.initializeCopyUrl();\r\n\r\n });\r\n }\r\n\r\n initializeCopyUrl(): void {\r\n // ensure no duplicate event listeners\r\n $(\"#copy-file-link-btn\").off('click');\r\n\r\n $(\"#copy-file-link-btn\").on('click', function () {\r\n let copyContent = $(\"#file-copy-id\").val().toString();\r\n navigator.clipboard.writeText(copyContent);\r\n });\r\n\r\n $('#copy-file-link-btn').popover({\r\n trigger: 'focus'\r\n });\r\n }\r\n\r\n initializeDateFilter(): void {\r\n\r\n $(`#${this.dateFilterId}`).selectpicker({\r\n dropupAuto: false,\r\n selectedTextFormat: \"count\"\r\n });\r\n\r\n $(`#${this.dateFilterId}`).on(\"changed.bs.select\", () => {\r\n let selectedVal = $(`#${this.dateFilterId}`).val().toString();\r\n let parsedVal = parseInt(selectedVal);\r\n this.updateDocumentTreeByDate(parsedVal);\r\n })\r\n }\r\n\r\n updateDocumentTreeByDate(addDays: number = 0): void {\r\n // get nodes you want\r\n let currentNodes = this.allNodes;\r\n\r\n if (addDays != 0) {\r\n // Set the compare Date\r\n let currentDate = new Date();\r\n let compareDate = currentDate;\r\n compareDate.setTime(compareDate.getTime() - addDays * (24 * 60 * 60 * 1000)); // Converts days to milliseconds\r\n currentNodes = this.allNodes.filter(node => node.lastModifiedDate.getTime() >= compareDate.getTime() && node.type != 0);\r\n\r\n // Used to determine which folders to add, don't want folders without content\r\n let currentFolders = this.allNodes.filter(node => node.type == 0);\r\n let currentFolderNames = [];\r\n currentNodes.forEach(node => {\r\n let folderInRoot = false;\r\n if (node.parent != \"#\" && !currentFolderNames.includes(node.parent)) {\r\n let parentSearch = node.parent;\r\n while (folderInRoot == false) {\r\n let foundFolder = currentFolders.find(folder => folder.id == parentSearch);\r\n if (foundFolder != undefined) {\r\n if (!currentFolderNames.includes(foundFolder.id)) {\r\n currentFolderNames.push(foundFolder.id);\r\n currentNodes.push(foundFolder);\r\n }\r\n\r\n if (foundFolder.parent == \"#\") {\r\n folderInRoot = true; break;\r\n }\r\n else {\r\n parentSearch = foundFolder.parent;\r\n }\r\n }\r\n else {\r\n break;\r\n }\r\n }\r\n\r\n }\r\n })\r\n // sort by id\r\n currentNodes.sort((x1, x2) => {\r\n // folders come first\r\n if (x1.type == 0 && x2.type != 0) {\r\n return -1;\r\n }\r\n else if (x1.type != 0 && x2.type == 0) {\r\n return 1;\r\n }\r\n return x1.id.localeCompare(x2.id)\r\n });\r\n }\r\n\r\n\r\n // clear current documents\r\n $(`#${this.fileDisplayContainerId}`).html(\r\n `
`\r\n );\r\n\r\n // create new document tree\r\n if (currentNodes.length > 0) {\r\n this.documentTree = new DocumentTreeV2(currentNodes, this.treeId, this.searchBoxId, this.clearSearchId);\r\n }\r\n else {\r\n $(`#${this.treeId}`).append(\r\n `
No Documents Found
`\r\n )\r\n }\r\n\r\n }\r\n}\r\n\r\nexport class DocumentTreeLoaderWithSharepoint {\r\n\r\n documentTree: DocumentTree;\r\n allNodes: DocumentNode[] = [];\r\n sharepointDocumentMap: DocumentNodeSharepointMapping = null;\r\n\r\n treeId: string;\r\n searchBoxId: string;\r\n clearSearchId: string;\r\n\r\n dateFilterId: string;\r\n fileDisplayContainerId: string;\r\n\r\n constructor(nodes: any, sharepointMapping: any, s3FolderPrefix: string, isCollab: boolean, treeId: string = \"jstree\", searchBoxId: string = \"docSearch\", searchClearId: string = \"searchClear\", targetFile: string = \"\", targetSearchBox: string = \"\") {\r\n $(() => {\r\n this.treeId = treeId;\r\n this.searchBoxId = searchBoxId;\r\n this.clearSearchId = searchClearId;\r\n\r\n this.dateFilterId = `date-filter-${treeId}`;\r\n this.fileDisplayContainerId = `file-display-container-${treeId}`;\r\n \r\n if (sharepointMapping != \"\" && sharepointMapping != undefined && sharepointMapping != null) {\r\n this.sharepointDocumentMap = plainToClass(DocumentNodeSharepointMapping, sharepointMapping)\r\n }\r\n\r\n this.allNodes = plainToClass(DocumentNode, nodes);\r\n\r\n // only show sharepoint links if the file tree is for collaborative editing\r\n this.allNodes.forEach(node => node.initialize(this.sharepointDocumentMap.files, isCollab));\r\n\r\n // Show Empty Folders from SP\r\n this.sharepointDocumentMap.folders.forEach(folder => folder.relativeFilePath = `${s3FolderPrefix}/${folder.relativeFilePath}`)\r\n let folderNodes = this.allNodes.filter(node => node.type == 0);\r\n let emptyFolders: DocumentNode[] = []\r\n this.sharepointDocumentMap.folders.forEach(folder => {\r\n // if the folder found in sharepoint is not found in the s3 bucket\r\n if (folderNodes.find(node => node.id == folder.relativeFilePath) == undefined) {\r\n let nodeDate = new Date(0, 0, 0); // Jan 1, 1900\r\n let nodeState = new DocumentNodeState();\r\n nodeState.disabled = false;\r\n nodeState.opened = false;\r\n nodeState.selected = false;\r\n\r\n let newFolderNode = new DocumentNode();\r\n newFolderNode.id = folder.relativeFilePath;\r\n newFolderNode.icon = \"fas fa-folder empty-folder\";\r\n newFolderNode.link = \"\";\r\n newFolderNode.type = 0;\r\n newFolderNode.lastModified = nodeDate.toUTCString();\r\n newFolderNode.lastModifiedDate = nodeDate;\r\n newFolderNode.state = nodeState;\r\n\r\n let filePathArray = folder.relativeFilePath.split(\"/\");\r\n let nodeText = filePathArray.pop();\r\n\r\n let parentSearchString = filePathArray.join(\"/\");\r\n let nodeParent: string;\r\n if (parentSearchString == s3FolderPrefix) {\r\n nodeParent = \"#\"\r\n }\r\n else {\r\n nodeParent = parentSearchString;\r\n }\r\n newFolderNode.parent = nodeParent;\r\n newFolderNode.text = `${nodeText} - No Files`;\r\n\r\n emptyFolders.push(newFolderNode);\r\n }\r\n })\r\n this.allNodes.push(...emptyFolders);\r\n\r\n // sort by id\r\n this.allNodes.sort((x1, x2) => {\r\n // folders come first\r\n if (x1.type == 0 && x2.type != 0) {\r\n return -1;\r\n }\r\n else if (x1.type != 0 && x2.type == 0) {\r\n return 1;\r\n }\r\n return x1.id.localeCompare(x2.id)\r\n });\r\n\r\n // Handle target file is passed in\r\n if (targetFile != \"\" && targetFile != undefined && targetFile != null) {\r\n\r\n // Check that the search box passed in matches this search box\r\n if (targetSearchBox == this.searchBoxId) {\r\n let callbackFn = () => {\r\n $(`#${this.searchBoxId}`).val(targetFile).trigger(\"keyup\");\r\n };\r\n\r\n this.documentTree = new DocumentTreeV2(this.allNodes, this.treeId, this.searchBoxId, this.clearSearchId, callbackFn);\r\n }\r\n else {\r\n this.documentTree = new DocumentTreeV2(this.allNodes, this.treeId, this.searchBoxId, this.clearSearchId);\r\n }\r\n\r\n \r\n }\r\n else {\r\n this.documentTree = new DocumentTreeV2(this.allNodes, this.treeId, this.searchBoxId, this.clearSearchId);\r\n }\r\n\r\n this.initializeDateFilter();\r\n this.initializeCopyUrl();\r\n\r\n });\r\n }\r\n\r\n initializeCopyUrl(): void {\r\n // ensure no duplicate event listeners\r\n $(\"#copy-file-link-btn\").off('click');\r\n\r\n $(\"#copy-file-link-btn\").on('click', function () {\r\n let copyContent = $(\"#file-copy-id\").val().toString();\r\n navigator.clipboard.writeText(copyContent);\r\n });\r\n\r\n $('#copy-file-link-btn').popover({\r\n trigger: 'focus'\r\n });\r\n }\r\n\r\n initializeDateFilter(): void {\r\n\r\n $(`#${this.dateFilterId}`).selectpicker({\r\n dropupAuto: false,\r\n selectedTextFormat: \"count\"\r\n });\r\n\r\n $(`#${this.dateFilterId}`).on(\"changed.bs.select\", () => {\r\n let selectedVal = $(`#${this.dateFilterId}`).val().toString();\r\n let parsedVal = parseInt(selectedVal);\r\n this.updateDocumentTreeByDate(parsedVal);\r\n })\r\n }\r\n\r\n updateDocumentTreeByDate(addDays: number = 0): void {\r\n // get nodes you want\r\n let currentNodes = this.allNodes;\r\n\r\n if (addDays != 0) {\r\n // Set the compare Date\r\n let currentDate = new Date();\r\n let compareDate = currentDate;\r\n compareDate.setTime(compareDate.getTime() - addDays * (24 * 60 * 60 * 1000)); // Converts days to milliseconds\r\n currentNodes = this.allNodes.filter(node => node.lastModifiedDate.getTime() >= compareDate.getTime() && node.type != 0);\r\n\r\n // Used to determine which folders to add, don't want folders without content\r\n let currentFolders = this.allNodes.filter(node => node.type == 0);\r\n let currentFolderNames = [];\r\n currentNodes.forEach(node => {\r\n let folderInRoot = false;\r\n if (node.parent != \"#\" && !currentFolderNames.includes(node.parent)) {\r\n let parentSearch = node.parent;\r\n while (folderInRoot == false) {\r\n let foundFolder = currentFolders.find(folder => folder.id == parentSearch);\r\n if (foundFolder != undefined) {\r\n if (!currentFolderNames.includes(foundFolder.id)) {\r\n currentFolderNames.push(foundFolder.id);\r\n currentNodes.push(foundFolder);\r\n }\r\n\r\n if (foundFolder.parent == \"#\") {\r\n folderInRoot = true; break;\r\n }\r\n else {\r\n parentSearch = foundFolder.parent;\r\n }\r\n }\r\n else {\r\n break;\r\n }\r\n }\r\n\r\n }\r\n })\r\n // sort by id\r\n currentNodes.sort((x1, x2) => {\r\n // folders come first\r\n if (x1.type == 0 && x2.type != 0) {\r\n return -1;\r\n }\r\n else if (x1.type != 0 && x2.type == 0) {\r\n return 1;\r\n }\r\n return x1.id.localeCompare(x2.id)\r\n });\r\n }\r\n\r\n\r\n // clear current documents\r\n $(`#${this.fileDisplayContainerId}`).html(\r\n `
`\r\n );\r\n\r\n // create new document tree\r\n if (currentNodes.length > 0) {\r\n this.documentTree = new DocumentTreeV2(currentNodes, this.treeId, this.searchBoxId, this.clearSearchId);\r\n }\r\n else {\r\n $(`#${this.treeId}`).append(\r\n `
No Documents Found
`\r\n )\r\n }\r\n\r\n }\r\n}\r\n\r\nclass DocumentNode {\r\n icon: string;\r\n id: string;\r\n lastModified: string;\r\n link: string;\r\n parent: string;\r\n state: DocumentNodeState;\r\n text: string;\r\n type: number;\r\n\r\n lastModifiedDate: Date;\r\n spLink: string = \"\";\r\n displaySpLink: boolean = false;\r\n\r\n initialize(sharepointMapping: SharepointMappingFile[] = [], isCollab: boolean = false): void {\r\n this.lastModifiedDate = new Date(this.lastModified);\r\n\r\n // only pdfs and office documents can be opened in sharepoint\r\n if ([1, 2, 3, 4].includes(this.type)) {\r\n let searchId = this.id\r\n let foundSPItem = sharepointMapping.find(item => searchId.endsWith(item.relativeFilePath));\r\n if (foundSPItem != undefined) {\r\n if (isCollab) {\r\n this.spLink = foundSPItem.spLink;\r\n this.displaySpLink = true;\r\n }\r\n if (foundSPItem.lastModified != null && foundSPItem.lastModified != \"\" && foundSPItem != undefined) {\r\n this.lastModifiedDate = new Date(foundSPItem.lastModified);\r\n }\r\n }\r\n }\r\n\r\n }\r\n}\r\n\r\nclass DocumentNodeState {\r\n disabled: boolean;\r\n opened: boolean;\r\n selected: boolean;\r\n}\r\n\r\nclass DocumentNodeSharepointMapping {\r\n files: SharepointMappingFile[];\r\n folders: SharepointMappingFolder[];\r\n}\r\n\r\nclass SharepointMappingFile {\r\n relativeFilePath: string;\r\n spLink: string;\r\n lastModified: string;\r\n}\r\n\r\nclass SharepointMappingFolder {\r\n relativeFilePath: string;\r\n}","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","import 'bootstrap';\r\nimport 'bootstrap-select';\r\nimport 'bootstrap-datepicker';\r\n\r\nimport 'datatables.net';\r\nimport 'datatables.net-bs4';\r\nimport 'datatables.net-rowgroup';\r\nimport 'datatables.net-rowgroup-bs4';\r\nimport 'datatables.net-fixedcolumns';\r\nimport 'datatables.net-fixedcolumns-bs4';\r\n//import 'datatables.net-buttons/js/buttons.colVis.js';\r\nimport 'datatables.net-scroller';\r\nimport 'datatables.net-fixedheader';\r\nimport 'datatables.net-fixedheader-bs4';\r\nimport 'datatables.net-buttons';\r\nimport 'datatables.net-buttons/js/buttons.html5';\r\nimport 'datatables.net-buttons-bs4';\r\n\r\nimport 'jstree';\r\n\r\nimport 'jquery-validation';\r\nimport 'jquery-validation-unobtrusive';\r\n//import 'jquery.easing';\r\n\r\nimport 'reflect-metadata'; //used by class-transformer to facilitate json-to-object serialization\r\n\r\n//import { Swiper, Navigation, Pagination, Autoplay } from 'swiper';\r\n//Swiper.use([Navigation, Pagination, Autoplay]);\r\n\r\n//import 'select2';\r\n//import 'bootstrap-select';\r\n\r\nimport 'leaflet';\r\nimport 'leaflet-svg-shape-markers/dist/leaflet-svg-shape-markers.min.js';\r\nimport 'leaflet.vectorgrid/dist/Leaflet.VectorGrid.bundled.js';\r\nimport 'leaflet-extra-markers';\r\nimport 'leaflet.markercluster/dist/leaflet.markercluster.js';\r\n\r\n//import 'intro.js/minified/intro.min.js';\r\n\r\n//import 'tiny-slider/dist/tiny-slider';\r\nimport { WOW } from 'wowjs/dist/wow';\r\n\r\n//import { cloneDeep } from 'lodash';\r\n\r\n// EXPORTS\r\n\r\nimport { DocumentTreeLoader } from './components/document-tree/document-tree-loader'; export { DocumentTreeLoader };\r\nimport { DocumentLibraryLoader, DocumentLibraryLoaderV2, DocumentLibraryLoaderWithSharepoint } from './components/document-library/document-library-loader'; export { DocumentLibraryLoader, DocumentLibraryLoaderV2, DocumentLibraryLoaderWithSharepoint };\r\nimport { Carousel } from './components/carousel/carousel'; export { Carousel };\r\n\r\n\r\n//import { StudyDetailPage } from './network-structure/studies/components/study-detail/study-detail.page'; export { StudyDetailPage };\r\n//import { NewsPage } from './pages/news/news.page'; export { NewsPage };\r\n\r\n// SCRIPTS\r\nimport './scripts/font-awesome';\r\nimport './scripts/date-functions';\r\nimport './scripts/number-functions';\r\n//import './scripts/table-functions';\r\nimport './components/scroll-to-top/scroll-to-top';\r\n\r\n\r\n\r\n// STYLES\r\nimport 'bootstrap/dist/css/bootstrap.min.css';\r\nimport 'bootstrap-select/dist/css/bootstrap-select.min.css';\r\nimport 'bootstrap-datepicker/dist/css/bootstrap-datepicker.standalone.min.css';\r\nimport 'et-line/style.css';\r\nimport 'datatables.net-bs4/css/dataTables.bootstrap4.min.css';\r\nimport 'datatables.net-rowgroup-bs4/css/rowGroup.bootstrap4.min.css';\r\nimport 'datatables.net-buttons-bs4/css/buttons.bootstrap4.min.css';\r\nimport 'datatables.net-scroller-bs4/css/scroller.bootstrap4.min.css';\r\nimport 'datatables.net-fixedcolumns-bs4/css/fixedColumns.bootstrap4.min.css';\r\nimport 'datatables.net-fixedheader-bs4/css/fixedHeader.bootstrap4.min.css';\r\nimport 'highcharts/css/highcharts.scss';\r\nimport 'jstree/dist/themes/default/style.min.css';\r\n//import 'select2/dist/css/select2.min.css';\r\n//import '@ttskch/select2-bootstrap4-theme/dist/select2-bootstrap4.min.css';\r\n//import 'bootstrap-select/dist/css/bootstrap-select.min.css';\r\nimport 'leaflet/dist/leaflet.css';\r\nimport 'leaflet-extra-markers/dist/css/leaflet.extra-markers.min.css';\r\nimport 'leaflet.markercluster/dist/MarkerCluster.css';\r\nimport 'leaflet.markercluster/dist/MarkerCluster.Default.css';\r\n//import 'intro.js/minified/introjs.min.css';\r\n//import 'tiny-slider/dist/tiny-slider.css';\r\nimport 'animate.css/source/animate.css';\r\n\r\nimport 'swiper/swiper-bundle.min.css';\r\n\r\n\r\nimport './styles/_base.scss';\r\nimport './styles/variables.scss';\r\nimport './styles/shared.scss';\r\n\r\nimport './styles/elements/nav-bar.scss';\r\n//import './styles/elements/footer.scss';\r\n//import './styles/elements/banner-wrapper.scss';\r\nimport './styles/elements/button.scss';\r\nimport './styles/elements/headings.scss';\r\nimport './styles/elements/footer.scss';\r\nimport './styles/elements/data-table.scss';\r\nimport './styles/elements/filter-section.scss';\r\nimport './styles/elements/document-tree.scss';\r\n\r\n\r\nimport './components/scroll-to-top/scroll-to-top.scss';\r\nimport './components/document-tree/document-tree.scss';\r\nimport './components/carousel/carousel.scss';\r\n\r\nimport './components/document-library/document-library-expand.scss'\r\n\r\n//import './pages/news/news.scss';\r\n\r\n//import './network-structure/studies/components/study-detail/study-detail.scss';\r\n\r\n\r\n// AUTH MODULE -- imported here to avoid having a separate auth.* bundle\r\nimport '../auth/pages/login/login.scss';\r\nimport '../auth/components/user-header/user-header.scss';\r\n//import '../auth/pages/auth.scss';\r\nimport '../auth/pages/profile/profile.scss';\r\n//import '../auth/pages/management/management.scss';\r\n\r\n","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","\r\n\r\n$(window).on('scroll', function () {\r\n if ($(this).scrollTop() > 200) {\r\n //$(\".scroll-to-top\").fadeIn(400);\r\n $(\".scroll-to-top\").addClass(\"show\");\r\n\r\n } else {\r\n //$(\".scroll-to-top\").fadeOut(400);\r\n $(\".scroll-to-top\").removeClass(\"show\");\r\n }\r\n});\r\n\r\n$(\".scroll-to-top\").on('click', function (event) {\r\n event.preventDefault();\r\n $(\"html, body\").animate({\r\n scrollTop: 0\r\n }, 600);\r\n});","\r\n\r\n//source: https://blog.abelotech.com/posts/number-currency-formatting-javascript/\r\nexport function FormatNumberWithCommas(value: string): string {\r\n return value.replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,');\r\n}\r\n\r\nexport function Round_Number(data: number, digits: number): any {\r\n return (data).toFixed(digits);\r\n}\r\n\r\nexport function Round_1Digit(data: number): any {\r\n return (data).toFixed(1);\r\n}\r\n\r\nexport function Round_2Digits(data: number): any {\r\n return (data).toFixed(2);\r\n}\r\n\r\nexport function ComputePercent(count: number, total: number): number {\r\n if (total == undefined || total == 0) return -1;\r\n else {\r\n let percent: number = (count / total) * 100.0;\r\n return percent;\r\n }\r\n}\r\n\r\nexport function PadNumber(value: string, targetLength: number): string {\r\n if (value.length == 0) return \"\";\r\n else return value.length < targetLength ? PadNumber(\"0\" + value, targetLength) : value;\r\n}\r\n","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","import { plainToClass } from \"class-transformer\";\r\nimport { DocumentTree, DocumentTreeV2 } from \"../document-tree/document-tree.objects\";\r\nimport { DocumentTreeLoaderV2, DocumentTreeLoaderWithSharepoint } from \"../document-tree/document-tree-loader\";\r\n\r\n\r\nexport class DocumentLibraryLoader {\r\n\r\n constructor(modelJson: any, requiredDialogId: string = \"\") {\r\n $(() => {\r\n\r\n let model: DocumentLibraryModel = plainToClass(DocumentLibraryModel, modelJson);\r\n model.DocumentSections = plainToClass(DocumentSection, model.DocumentSections);\r\n\r\n //console.log(model);\r\n\r\n model.DocumentSections.forEach((section: DocumentSection) => {\r\n new DocumentTree(JSON.parse(section.DocumentsJson), section.TreeId, section.SearchBoxId, section.SearchClearId); \r\n });\r\n\r\n if (requiredDialogId != \"\") {\r\n $(\"#\" + requiredDialogId).modal({\r\n backdrop: 'static',\r\n keyboard: false\r\n });\r\n $(\"#\" + requiredDialogId).modal('show');\r\n }\r\n\r\n // Open + Close Document Repos\r\n $(\".card-header\").on('click', function () {\r\n\r\n if ($(this).hasClass(\"active-files\")) {\r\n $(this).removeClass(\"active-files\");\r\n\r\n $(this).find(\".arrow-down\").addClass(\"d-none\");\r\n $(this).find(\".arrow-right\").removeClass(\"d-none\");\r\n }\r\n\r\n else {\r\n // Deactivate section dropdowns\r\n let parentEl = $(this).closest(\".accordion-section\");\r\n parentEl.find(\".card-header\").removeClass(\"active-files\");\r\n parentEl.find(\".arrow-down\").addClass(\"d-none\");\r\n parentEl.find(\".arrow-right\").removeClass(\"d-none\");\r\n\r\n // Activate this dropdown\r\n $(this).addClass(\"active-files\");\r\n\r\n $(this).find(\".arrow-right\").addClass(\"d-none\");\r\n $(this).find(\".arrow-down\").removeClass(\"d-none\");\r\n }\r\n\r\n });\r\n });\r\n }\r\n}\r\n\r\nexport class DocumentLibraryLoaderV2 {\r\n\r\n constructor(modelJson: any, requiredDialogId: string = \"\", targetFile: string = \"\", targetSearchBox: string = \"\") {\r\n $(() => {\r\n targetFile = HtmlDecoder.DecodeHtml(targetFile);\r\n targetSearchBox = HtmlDecoder.DecodeHtml(targetSearchBox);\r\n\r\n let model: DocumentLibraryModel = plainToClass(DocumentLibraryModel, modelJson);\r\n model.DocumentSections = plainToClass(DocumentSection, model.DocumentSections);\r\n\r\n //console.log(model);\r\n\r\n model.DocumentSections.forEach((section: DocumentSection) => {\r\n new DocumentTreeLoaderV2(JSON.parse(section.DocumentsJson), section.TreeId, section.SearchBoxId, section.SearchClearId, targetFile, targetSearchBox);\r\n });\r\n\r\n if (requiredDialogId != \"\") {\r\n $(\"#\" + requiredDialogId).modal({\r\n backdrop: 'static',\r\n keyboard: false\r\n });\r\n $(\"#\" + requiredDialogId).modal('show');\r\n }\r\n\r\n // Open + Close Document Repos\r\n $(\".card-header\").on('click', function () {\r\n\r\n if ($(this).hasClass(\"active-files\")) {\r\n $(this).removeClass(\"active-files\");\r\n\r\n $(this).find(\".arrow-down\").addClass(\"d-none\");\r\n $(this).find(\".arrow-right\").removeClass(\"d-none\");\r\n }\r\n\r\n else {\r\n // Deactivate section dropdowns\r\n let parentEl = $(this).closest(\".accordion-section\");\r\n parentEl.find(\".card-header\").removeClass(\"active-files\");\r\n parentEl.find(\".arrow-down\").addClass(\"d-none\");\r\n parentEl.find(\".arrow-right\").removeClass(\"d-none\");\r\n\r\n // Activate this dropdown\r\n $(this).addClass(\"active-files\");\r\n\r\n $(this).find(\".arrow-right\").addClass(\"d-none\");\r\n $(this).find(\".arrow-down\").removeClass(\"d-none\");\r\n }\r\n\r\n });\r\n\r\n // Remove the iframe information when the modal is closed\r\n $(\"#view-document-modal\").on(\"hidden.bs.modal\", () => {\r\n $(\"#view-document-modal\").find(\"#document-iframe\").attr(\"src\", \"\");\r\n })\r\n });\r\n }\r\n}\r\n\r\nexport class DocumentLibraryLoaderWithSharepoint {\r\n\r\n constructor(modelJson: any, isCollab: boolean, requiredDialogId: string = \"\", targetFile: string = \"\", targetSearchBox: string = \"\") {\r\n $(() => {\r\n\r\n targetFile = HtmlDecoder.DecodeHtml(targetFile);\r\n targetSearchBox = HtmlDecoder.DecodeHtml(targetSearchBox);\r\n \r\n let model: DocumentLibrarySharepointModel = plainToClass(DocumentLibrarySharepointModel, modelJson);\r\n model.DocumentSections = plainToClass(DocumentSectionSharepoint, model.DocumentSections);\r\n\r\n //console.log(model);\r\n\r\n model.DocumentSections.forEach((section: DocumentSectionSharepoint) => {\r\n new DocumentTreeLoaderWithSharepoint(JSON.parse(section.DocumentsJson), JSON.parse(section.SharepointFileMapping), section.S3FolderPrefix, isCollab, section.TreeId, section.SearchBoxId, section.SearchClearId, targetFile, targetSearchBox);\r\n });\r\n\r\n if (requiredDialogId != \"\") {\r\n $(\"#\" + requiredDialogId).modal({\r\n backdrop: 'static',\r\n keyboard: false\r\n });\r\n $(\"#\" + requiredDialogId).modal('show');\r\n }\r\n\r\n // Open + Close Document Repos\r\n $(\".card-header\").on('click', function () {\r\n\r\n if ($(this).hasClass(\"active-files\")) {\r\n $(this).removeClass(\"active-files\");\r\n\r\n $(this).find(\".arrow-down\").addClass(\"d-none\");\r\n $(this).find(\".arrow-right\").removeClass(\"d-none\");\r\n }\r\n\r\n else {\r\n // Deactivate section dropdowns\r\n let parentEl = $(this).closest(\".accordion-section\");\r\n parentEl.find(\".card-header\").removeClass(\"active-files\");\r\n parentEl.find(\".arrow-down\").addClass(\"d-none\");\r\n parentEl.find(\".arrow-right\").removeClass(\"d-none\");\r\n\r\n // Activate this dropdown\r\n $(this).addClass(\"active-files\");\r\n\r\n $(this).find(\".arrow-right\").addClass(\"d-none\");\r\n $(this).find(\".arrow-down\").removeClass(\"d-none\");\r\n }\r\n\r\n });\r\n\r\n // Remove the iframe information when the modal is closed\r\n $(\"#view-document-modal\").on(\"hidden.bs.modal\", () => {\r\n $(\"#view-document-modal\").find(\"#document-iframe\").attr(\"src\", \"\");\r\n })\r\n });\r\n }\r\n}\r\n\r\nexport class HtmlDecoder {\r\n static DecodeHtml(encodedString: string): string {\r\n let regexArray: any[] = [\r\n [/(")/g, \"\"],\r\n [/(&)/g, \"&\"],\r\n [/(>)/g, \">\"],\r\n [/(<)/g, \"<\"]\r\n ]\r\n\r\n regexArray.forEach(char => {\r\n encodedString = encodedString.replace(char[0], char[1])\r\n })\r\n\r\n return encodedString;\r\n }\r\n}\r\n\r\nexport class DocumentLibraryModel {\r\n Title: string;\r\n Description: string;\r\n //Images: string[];\r\n DocumentSections: DocumentSection[];\r\n}\r\n\r\nexport class DocumentSection {\r\n Label: string;\r\n DocumentsJson: string;\r\n TreeId: string;\r\n SearchBoxId: string;\r\n SearchClearId: string;\r\n}\r\n\r\nexport class DocumentLibrarySharepointModel {\r\n Title: string;\r\n Description: string;\r\n DocumentSections: DocumentSectionSharepoint[]\r\n}\r\n\r\nexport class DocumentSectionSharepoint {\r\n Label: string;\r\n DocumentsJson: string;\r\n TreeId: string;\r\n SearchBoxId: string;\r\n SearchClearId: string;\r\n SharepointFileMapping: string; \r\n S3FolderPrefix: string;\r\n}\r\n","import { Swiper, Navigation, Pagination, Autoplay } from 'swiper';\r\nSwiper.use([Navigation, Pagination, Autoplay]);\r\n\r\n\r\nexport class Carousel {\r\n\r\n constructor() {\r\n\r\n //document.ready\r\n $(() => {\r\n\r\n const swiper = new Swiper('.swiper', {\r\n // Optional parameters\r\n loop: true,\r\n spaceBetween: 10,\r\n\r\n // If we need pagination\r\n pagination: {\r\n el: '.swiper-pagination',\r\n },\r\n\r\n // Navigation arrows\r\n //navigation: {\r\n // nextEl: '.swiper-button-next',\r\n // prevEl: '.swiper-button-prev',\r\n //},\r\n\r\n autoplay: {\r\n delay: 4000,\r\n },\r\n });\r\n\r\n });\r\n\r\n }\r\n}","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","\r\n//only import what we use.\r\nimport { library, dom, IconDefinition } from \"@fortawesome/fontawesome-svg-core\";\r\nimport { faSpeakap } from \"@fortawesome/free-brands-svg-icons\";\r\nimport {\r\n faAngleUp, faAngleDown, faBars, faUser, faCaretRight, faExternalLinkAlt, faUserPlus, faBan, faCheck, faUserEdit,\r\n faEye, faEyeSlash, faKey, faUsers, faFolder, faFileExcel, faFileWord, faFilePowerpoint, faFilePdf, faFile, faFileAlt, faFileAudio, faFileVideo,\r\n faTimes, faSquare, faCog, faFileDownload, faQuestionCircle, faBook, faBullhorn, faChevronCircleUp, faInfo, faLock, faHome, faArrowDown,\r\n faChartLine, faMicroscope, faVialVirus, faGlobe, faEnvelope, faMapLocationDot, faBookmark, faBullseye, faScrewdriverWrench, faQuestion,\r\n faClipboardList, faMagnifyingGlassChart, faMagnifyingGlass, faFileCode, faCalendarDays, faAngleRight, faChartPie, faChartSimple, faUndo,\r\n faSpinner, faBarsProgress, faCopy\r\n} from \"@fortawesome/free-solid-svg-icons\";\r\n\r\nlibrary.add(faAngleUp as IconDefinition); library.add(faAngleDown); library.add(faBars); library.add(faUser); library.add(faCaretRight); library.add(faExternalLinkAlt);\r\nlibrary.add(faUserPlus); library.add(faBan); library.add(faCheck); library.add(faUserEdit); library.add(faEye); library.add(faEyeSlash);\r\nlibrary.add(faKey); library.add(faUsers); library.add(faFolder); library.add(faFileExcel); library.add(faFileWord); library.add(faFilePowerpoint); library.add(faFilePdf); library.add(faFile);\r\nlibrary.add(faTimes); library.add(faSquare); library.add(faCog); library.add(faFileAlt); library.add(faFileAudio); library.add(faFileVideo);\r\nlibrary.add(faFileDownload); library.add(faQuestionCircle); library.add(faBook); library.add(faBullhorn); library.add(faChevronCircleUp); library.add(faInfo); library.add(faLock); library.add(faHome); library.add(faArrowDown);\r\nlibrary.add(faChartLine); library.add(faMicroscope); library.add(faVialVirus); library.add(faGlobe); library.add(faEnvelope); library.add(faMapLocationDot); library.add(faBookmark); library.add(faBullseye); library.add(faScrewdriverWrench); library.add(faQuestion);\r\nlibrary.add(faClipboardList); library.add(faMagnifyingGlassChart); library.add(faMagnifyingGlass); library.add(faFileCode); library.add(faCalendarDays); library.add(faAngleRight); library.add(faChartPie); library.add(faChartSimple); library.add(faUndo);\r\nlibrary.add(faSpinner); library.add(faBarsProgress); library.add(faCopy);\r\n\r\ndom.watch();","import { FormatDate } from '../../scripts/date-functions';\r\nexport class DocumentTree {\r\n\r\n constructor(nodes: any, treeId: string = \"jstree\", searchBoxId: string = \"docSearch\", searchClearId: string = \"searchClear\") {\r\n\r\n //console.log(nodes, treeId, searchBoxId, searchClearId);\r\n treeId = '#' + treeId;\r\n searchBoxId = '#' + searchBoxId;\r\n searchClearId = '#' + searchClearId;\r\n\r\n $(searchBoxId).val('');\r\n $(treeId).jstree({\r\n \"plugins\": [\"search\", \"wholerow\"],\r\n \"search\": {\r\n \"show_only_matches\": true,\r\n \"fuzzy\": false\r\n },\r\n \"types\": {\r\n \"folder\": {\r\n \"icon\": \"fas fa-folder\"\r\n },\r\n \"file\": {\r\n \"icon\": \"fas fa-file-alt\"\r\n }\r\n },\r\n 'core': {\r\n 'data': nodes\r\n }\r\n });//end jstree\r\n\r\n //open the folder when clicking it (instead of having to target the small arrow)\r\n $(treeId).on('select_node.jstree', function (e, data) {\r\n data.instance.toggle_node(data.node);\r\n });\r\n\r\n $(treeId).on('changed.jstree', function (e, data) {\r\n //if selected node is not a directory\r\n if (data.node.original.type > 0) {\r\n\r\n if (data.node.original.type == 1 && !data.node.original.link.startsWith(\"https://researchtriangleinstitute.sharepoint.com\")) { //PDF and not hosted on SharePoint\r\n var modal = $('#view-document-modal');\r\n modal.find('#filename').html(data.node.original.text);\r\n\r\n modal.find('#document-iframe').attr('src', data.node.original.link);\r\n\r\n //console.log(data.node.original.link);\r\n\r\n modal.modal('show');\r\n }\r\n else { //just download it\r\n var hiddenLink = $('#non-pdf-link');\r\n hiddenLink.attr('href', data.node.original.link);\r\n hiddenLink.attr('target', '_blank');\r\n hiddenLink[0].click();\r\n\r\n }\r\n\r\n\r\n }\r\n });\r\n\r\n\r\n //do search on keyup\r\n $(searchBoxId).keyup(function () {\r\n var search = $(this).val();\r\n $(treeId).jstree('search', search);\r\n });\r\n\r\n //handle search clear button\r\n $(searchClearId).click(function () {\r\n $(searchBoxId).val('');\r\n $(treeId).jstree('search', '');\r\n });\r\n\r\n }\r\n}\r\n\r\nexport class DocumentTreeV2 {\r\n jsTreeId: string;\r\n searchBoxId: string;\r\n searchClearId: string;\r\n\r\n constructor(nodes: any, treeId: string = \"jstree\", searchBoxId: string = \"docSearch\", searchClearId: string = \"searchClear\", callbackFn = () => { }) {\r\n\r\n //console.log(nodes);\r\n treeId = '#' + treeId;\r\n searchBoxId = '#' + searchBoxId;\r\n searchClearId = '#' + searchClearId;\r\n this.jsTreeId = treeId;\r\n this.searchBoxId = searchBoxId;\r\n this.searchClearId = searchClearId;\r\n\r\n $(searchBoxId).val('');\r\n\r\n // Run the callback function when the document tree is loaded\r\n $(treeId).on(\"loaded.jstree\", () => {\r\n callbackFn();\r\n })\r\n\r\n $(treeId).jstree({\r\n \"plugins\": [\"search\", \"wholerow\"],\r\n \"search\": {\r\n \"show_only_matches\": true,\r\n \"fuzzy\": false,\r\n \"search_callback\": function (str, node) {\r\n let compareTo: string = node.text.toLowerCase();\r\n let checkStr: string = str.toLowerCase();\r\n\r\n if (checkStr.includes(\"/\")) {\r\n compareTo = node.id.toLowerCase();\r\n }\r\n\r\n if (compareTo.includes(checkStr)) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n },\r\n \"types\": {\r\n \"folder\": {\r\n \"icon\": \"fas fa-folder\"\r\n },\r\n \"file\": {\r\n \"icon\": \"fas fa-file-alt\"\r\n }\r\n },\r\n 'core': {\r\n 'data': nodes\r\n }\r\n });//end jstree\r\n\r\n\r\n // When user clicks on a node in the tree \r\n let fileTree = this;\r\n $(treeId).on('activate_node.jstree', function (e, data) {\r\n //if selected node is not a directory, open the file dialog box\r\n if (data.node.original.type > 0) {\r\n //fileTree.openModal(data);\r\n }\r\n // if selected node is a directory, toggle the open/close\r\n else {\r\n data.instance.toggle_node(data.node);\r\n }\r\n })\r\n\r\n $(treeId).on('select_node.jstree', (e, data) => {\r\n if (data.node.original.type > 0) {\r\n this.selectFile(data);\r\n }\r\n else {\r\n $(this.jsTreeId).find(\".file-button-background\").remove();\r\n $(this.jsTreeId).find(\".file-button-content\").remove();\r\n }\r\n });\r\n\r\n \r\n\r\n //do search on keyup\r\n $(searchBoxId).on(\"keyup\", function () {\r\n var search = $(this).val();\r\n $(treeId).jstree('search', search);\r\n });\r\n\r\n //handle search clear button\r\n $(searchClearId).on(\"click\", function () {\r\n $(searchBoxId).val('');\r\n $(treeId).jstree('search', '');\r\n });\r\n\r\n }\r\n\r\n openPdfModal(data: any): void {\r\n // Set Information for dialog box\r\n var modal = $('#view-document-modal');\r\n modal.find('#filename').html(data.node.original.text);\r\n\r\n // Add PDF View\r\n modal.find('#document-iframe').attr('src', data.node.original.link);\r\n modal.modal('show');\r\n\r\n }\r\n\r\n openCopyLinkModal(data: any): void {\r\n let modal = $(\"#share-document-modal\");\r\n modal.find('#filename').html(data.node.original.text);\r\n\r\n let fileId = data.node.original.id;\r\n let urlBase = `${window.location.origin}${window.location.pathname}`;\r\n let copyUrl = `${urlBase}?filename=\"${encodeURIComponent(fileId)}\"&searchid=\"${encodeURIComponent(this.searchBoxId.replace(\"#\", \"\"))}\"`;\r\n modal.find(\"#file-copy-id\").val(copyUrl);\r\n\r\n modal.modal('show');\r\n }\r\n\r\n selectFile(data: any) {\r\n //console.log(data);\r\n let buttonContent = \"\"\r\n // if PDF or video, add the view button\r\n if (data.node.original.type == 1 || data.node.original.type == 6 || data.node.original.type == 5) {\r\n buttonContent += `\r\n
\r\n View \r\n
\r\n `;\r\n }\r\n // URL (open in new tab)\r\n else if (data.node.original.type == 9) {\r\n buttonContent += `\r\n
\r\n View \r\n
\r\n `;\r\n }\r\n // if not a PDF, add the download button\r\n else {\r\n buttonContent += `\r\n
\r\n Download \r\n
\r\n `\r\n }\r\n\r\n // Always add copy button\r\n buttonContent += `\r\n
\r\n Share \r\n
\r\n `\r\n\r\n // if it is a collaborative document, display link to SP\r\n if (data.node.original.displaySpLink) {\r\n buttonContent += `\r\n \r\n `\r\n }\r\n\r\n let selectFileContent = `\r\n
\r\n
\r\n
\r\n ${buttonContent}\r\n
\r\n
\r\n
Last Modified
\r\n
${FormatDate(data.node.original.lastModifiedDate)}
\r\n
\r\n
\r\n \r\n `\r\n\r\n // remove any existing buttons\r\n $(this.jsTreeId).find(\".file-button-background\").remove();\r\n $(this.jsTreeId).find(\".file-button-content\").remove();\r\n\r\n // show the buttons for this file\r\n $(data.event.currentTarget).after(selectFileContent);\r\n\r\n $(this.jsTreeId).find(\".file-button-view\").on('click', () => {\r\n this.openPdfModal(data);\r\n });\r\n\r\n $(this.jsTreeId).find(\".file-button-copy\").on('click', () => {\r\n this.openCopyLinkModal(data);\r\n })\r\n }\r\n}","\r\nfunction GetMonthAbbr(date: Date): string {\r\n return [\r\n \"Jan\",\r\n \"Feb\",\r\n \"Mar\",\r\n \"Apr\",\r\n \"May\",\r\n \"Jun\",\r\n \"Jul\",\r\n \"Aug\",\r\n \"Sep\",\r\n \"Oct\",\r\n \"Nov\",\r\n \"Dec\",\r\n ][date.getMonth()];\r\n}\r\n\r\n/*\r\nexport function FormatDate(date): string {\r\n\r\n if (date !== undefined && date !== \"\") {\r\n var myDate = new Date(date);\r\n var month = GetMonthAbbr(myDate);\r\n var str = myDate.getDate() + \" \" + month + \" \" + myDate.getFullYear();\r\n return str;\r\n }\r\n return \"\";\r\n}\r\n\r\nexport function FormatDateMonthAbbrDayYear(date): string {\r\n if (date !== undefined && date !== \"\") {\r\n var myDate = new Date(date);\r\n var month = GetMonthAbbr(myDate);\r\n return `${month} ${myDate.getDate()} ${myDate.getFullYear()}`;\r\n }\r\n return \"\";\r\n}\r\n*/\r\n\r\nexport function FormatDate(date: Date, format: string = \"day-mo-year\"): string {\r\n if (date == undefined) return \"\";\r\n let month: string = GetMonthAbbr(date);\r\n\r\n if (format == \"mo-day-year\") { //Jan 15 2024\r\n return month + \" \" + String(date.getDate()).padStart(2, '0') + \" \" + date.getFullYear();\r\n }\r\n else if (format == \"day-mo-year\") { //15 Jan 2024\r\n return String(date.getDate()).padStart(2, '0') + \" \" + month + \" \" + date.getFullYear();\r\n }\r\n}\r\n\r\nexport function GetDateFromString(dateString: string, format: string): Date {\r\n\r\n if (dateString == undefined || dateString.length == 0) return undefined;\r\n\r\n if (format == \"hyphens-year-month-day\") {\r\n let parts: string[] = dateString.split(\"-\");\r\n return new Date(Number.parseInt(parts[0]), Number.parseInt(parts[1]) - 1, Number.parseInt(parts[2]), 12, 0, 0);\r\n }\r\n else if (format == \"hyphens-year-month-day-time\") {\r\n let dateTime: string[] = dateString.split(\" \");\r\n let parts: string[] = dateTime[0].split(\"-\");\r\n return new Date(Number.parseInt(parts[0]), Number.parseInt(parts[1]) - 1, Number.parseInt(parts[2]), 12, 0, 0);\r\n }\r\n else if (format == \"hyphens-year-month-day-timezone\") {\r\n let trimmed = dateString.substr(0, dateString.indexOf(\"T\"));\r\n return this.GetDateFromString(trimmed, \"hyphens-year-month-day\");\r\n }\r\n else if (format == \"slash-month-day-year\") {\r\n let parts: string[] = dateString.split(\"/\");\r\n return new Date(Number.parseInt(parts[2]), Number.parseInt(parts[0]) - 1, Number.parseInt(parts[1]), 12, 0, 0);\r\n }\r\n else return null;\r\n}\r\n\r\nexport function SortDates(d1: Date, d2: Date): number {\r\n if (d1 == undefined) { d1 = new Date(new Date(8640000000000000)); }\r\n if (d2 == undefined) { d2 = new Date(new Date(8640000000000000)); }\r\n return d1.getTime() - d2.getTime();\r\n}\r\n\r\nexport function GetMonthFromNumber(monthNum: number, useShortName: boolean = false): string {\r\n // if number is outside month range\r\n if (monthNum > 12 || monthNum < 1) {\r\n return \"\";\r\n }\r\n\r\n const monthNames = [\"\", \"January\", \"February\", \"March\", \"April\", \"May\", \"June\",\r\n \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"\r\n ];\r\n\r\n const shortMonthNames = [\"\", \"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"June\",\r\n \"July\", \"Aug\", \"Sept\", \"Oct\", \"Nov\", \"Dec\"\r\n ];\r\n\r\n if (useShortName) {\r\n return shortMonthNames[monthNum];\r\n }\r\n\r\n return monthNames[monthNum];\r\n}","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin"],"sourceRoot":""}