{"version":3,"file":"main.js","mappings":"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","sources":["./src/app/_services/assets.service.ts","./src/app/_services/csvexport.service.ts","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/home/home.component.ts","./src/app/nav-menu/nav-menu.component.ts","./src/app/welcome-dialog/welcome-dialog.component.ts","./src/environments/environment.ts","./src/main.ts","./src/app/app.component.html","./src/app/home/home.component.html","./src/app/nav-menu/nav-menu.component.html","./src/app/welcome-dialog/welcome-dialog.component.html","./node_modules/@stencil/core/internal/client|lazy|/^/.*/.entry/.js.*$/|include: /.entry/.js$/|exclude: /.system/.entry/.js$/|groupOptions: {}|strict namespace object"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AssetsService {\n\n\n\n constructor(public http: HttpClient) {\n }\n\n public getAssetAsJson(assetPath: string): Promise {\n var prom = new Promise((resolve, reject) => {\n\n //Request the asset from the server.\n this.http.get(assetPath).subscribe((result: any) => {\n resolve(result);\n });\n });\n\n return prom;\n }\n}\n","import { Injectable, Output } from '@angular/core';\nimport Graphic from '@arcgis/core/Graphic';\r\n\nimport FeatureLayer from '@arcgis/core/layers/FeatureLayer';\n\nimport * as filesaver from 'file-saver';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CSVExportService {\n\n constructor() { }\n\n public exportFeaturesFromFeatureLayer(features: Array, layer: FeatureLayer, filename: string) {\n var outputBuffer = \"\";\r\n\r\n //Add the heading row to our output buffer.\r\n\r\n var columnHeadings = Array();\r\n\r\n layer.fields.forEach((field) => {\r\n columnHeadings.push(field.name);\r\n });\r\n\r\n \r\n outputBuffer = columnHeadings.join(\",\") + \"\\r\\n\";\r\n\r\n\r\n //Do the data rows\r\n for (var i = 0; i < features.length; i++) {\r\n var feature = features[i];\r\n\r\n var vals = Array();\r\n\r\n layer.fields.forEach((field) => {\r\n\r\n vals.push(feature.attributes[field.name]);\r\n });\r\n\r\n var featureLineBuffer = vals.join(\",\");\r\n\r\n outputBuffer = outputBuffer + featureLineBuffer + \"\\r\\n\";\r\n }\r\n \r\n\r\n //Finally, actually do the saving.\r\n let blob = new Blob([outputBuffer], {\r\n type: \"text/csv\"\r\n })\r\n\r\n filesaver.saveAs(blob, filename);\r\n }\n}\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html'\r\n})\r\nexport class AppComponent {\r\n title = 'app';\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { RouterModule } from '@angular/router';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\n\r\nimport { AppComponent } from './app.component';\r\nimport { NavMenuComponent } from './nav-menu/nav-menu.component';\r\nimport { HomeComponent } from './home/home.component';\r\n\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatSidenavModule } from '@angular/material/sidenav';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatIconModule } from '@angular/material/icon';\r\n\r\nimport { AngularSplitModule } from 'angular-split';\nimport { WelcomeDialogComponent } from './welcome-dialog/welcome-dialog.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n NavMenuComponent,\r\n HomeComponent,\r\n WelcomeDialogComponent\r\n ],\r\n imports: [\r\n BrowserModule.withServerTransition({ appId: 'ng-cli-universal' }),\r\n HttpClientModule,\r\n FormsModule,\r\n MatToolbarModule,\r\n MatSidenavModule,\r\n MatButtonModule,\r\n MatDialogModule,\r\n MatCardModule,\r\n MatIconModule,\r\n AngularSplitModule,\r\n BrowserAnimationsModule,\r\n RouterModule.forRoot([\r\n { path: '', component: HomeComponent, pathMatch: 'full' }\r\n ])\r\n ],\r\n providers: [],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { Component, ViewChild, OnInit, AfterViewInit, ElementRef } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\n\r\nimport { AssetsService } from './../_services/assets.service';\r\nimport { WelcomeDialogComponent } from './../welcome-dialog/welcome-dialog.component';\r\nimport { CSVExportService } from '../_services/csvexport.service';\r\n\r\n//Load up ESRI classes\r\nimport WebMap from '@arcgis/core/WebMap';\r\nimport MapView from '@arcgis/core/views/MapView';\r\nimport FeatureLayer from '@arcgis/core/layers/FeatureLayer';\r\nimport LayerList from '@arcgis/core/widgets/LayerList';\r\nimport TimeSlider from '@arcgis/core/widgets/TimeSlider';\r\nimport Popup from '@arcgis/core/widgets/Popup';\r\nimport DistanceMeasurement2D from '@arcgis/core/widgets/DistanceMeasurement2D';\r\nimport TimeExtent from '@arcgis/core/TimeExtent';\r\nimport Graphic from '@arcgis/core/Graphic';\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n})\r\nexport class HomeComponent {\r\n\r\n protected _basemap: string = \"topo\";\r\n\r\n protected _center = [-97.5, 31.4];\r\n\r\n protected _zoom: number = 7;\r\n\r\n protected _fullTimeExtent: TimeExtent = new TimeExtent({\r\n start: new Date(2017, 0, 1, 0, 0, 0, 0),\r\n end: new Date(2024, 10, 31, 23, 59, 59)\r\n });\r\n\r\n\r\n protected _timeExtent: TimeExtent = new TimeExtent({\r\n start: new Date(2017, 0, 1, 0, 0, 0, 0),\r\n end: new Date(2024, 10, 31, 23, 59, 59)\r\n });\r\n\r\n _map: WebMap;\r\n _mapView: MapView;\r\n _earthquakesLayer: FeatureLayer;\r\n _layerList: LayerList = null;\r\n _timeSlider: TimeSlider;\r\n _measurementWidget: DistanceMeasurement2D;\r\n\r\n _activeMeasureWidget: any = null;\r\n\r\n _filterGraphic: Graphic = null;\r\n\r\n promptText: String = null;\r\n\r\n _earthquakeCount: number = 0;\r\n\r\n @ViewChild('mapViewNode', {}) protected mapViewEl: ElementRef;\r\n\r\n public get fullBeginTime(): Date {\r\n\r\n return this._fullTimeExtent.start;\r\n }\r\n\r\n public set fullBeginTime(newVal: Date) {\r\n this._fullTimeExtent.start = newVal;\r\n }\r\n\r\n public get fullEndTime(): Date {\r\n return this._fullTimeExtent.end;\r\n }\r\n\r\n public set fullEndTime(newVal: Date) {\r\n this._fullTimeExtent.end;\r\n }\r\n\r\n public get beginTime(): Date {\r\n return this._timeExtent.start;\r\n }\r\n\r\n public set beginTime(newVal: Date) {\r\n this._timeExtent.start = newVal;\r\n }\r\n\r\n public get endTime(): Date {\r\n return this._timeExtent.end;\r\n }\r\n\r\n public set endTime(newVal: Date) {\r\n this._timeExtent.end = newVal;\r\n }\r\n\r\n public get earthquakeCount(): number {\r\n return this._earthquakeCount;\r\n }\r\n\r\n public set earthquakeCount(newVal: number) {\r\n this._earthquakeCount = newVal;\r\n }\r\n\r\n public get earthquakesLayer(): FeatureLayer {\r\n return this._earthquakesLayer;\r\n }\r\n\r\n public set earthquakesLayer(newVal: FeatureLayer) {\r\n this._earthquakesLayer = newVal;\r\n\r\n this._earthquakesLayer.when((args) => {\r\n this.fetchEarthquakeCount();\r\n \r\n });\r\n }\r\n\r\n constructor(\r\n public assetsService: AssetsService,\r\n public csvExportService: CSVExportService,\r\n public matDialog: MatDialog\r\n //public exportService: ExportManagerService,\r\n //public browseMapImageServiceLayerService: BrowseMapImageServiceLayerService\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n // Set type for Map constructor properties\r\n const mapProperties = {\r\n basemap: this._basemap\r\n };\r\n\r\n this._map = new WebMap(mapProperties);\r\n\r\n // Set type for MapView constructor properties\r\n const mapViewProperties = {\r\n container: this.mapViewEl.nativeElement,\r\n center: this._center,\r\n zoom: this._zoom,\r\n map: this._map\r\n };\r\n\r\n this._mapView = new MapView(mapViewProperties);\r\n\r\n //Create the layer list\r\n this._layerList = new LayerList({\r\n view: this._mapView,\r\n listItemCreatedFunction: function (event) {\r\n\r\n //This section forces the layer list to behave like a legend, with the swatches and so forth...\r\n const item = event.item;\r\n\r\n if (item.layer.type != undefined && item.layer.type != \"group\" && item.layer.type != \"graphics\") {\r\n item.panel = {\r\n content: \"legend\",\r\n open: true\r\n }\r\n }\r\n },\r\n container: \"legend-container\",\r\n visibilityAppearance: \"checkbox\"\r\n });\r\n\r\n this._mapView.when((view) => {\r\n\r\n this._mapView.popup = new Popup();\r\n\r\n //Set up action button handling on the popup\r\n this._mapView.popup.on(\"trigger-action\", (event) => {\r\n var feature = this._mapView.popup.selectedFeature;\r\n\r\n if (event.action.id == \"well-details\") {\r\n //Launch the well details.\r\n var graphic = this._mapView.popup.selectedFeature;\r\n //this.launchWellDetails(graphic);\r\n }\r\n\r\n if (event.action.id == \"export-data\") {\r\n var graphic = this._mapView.popup.selectedFeature;\r\n //this.exportDataForWell(graphic);\r\n }\r\n });\r\n })\r\n\r\n //Create the AOI Sketch, for later.\r\n //this.initAOIDrawing();\r\n\r\n //Initialize the time slider\r\n this.initTimeSlider();\r\n\r\n //Initialize the measurement widget\r\n this.initMeasurement();\r\n\r\n this.initBusinessLayers();\r\n\r\n //Finally, set up our image layer, which is the data source\r\n //this.initMapImageLayer();\r\n\r\n //Launch the welcome dialog\r\n this.launchWelcomeDialog();\r\n }\r\n\r\n protected initTimeSlider() {\r\n var stopsByInterval: any = {\r\n interval: {\r\n value: 1,\r\n unit: \"days\"\r\n }\r\n };\r\n\r\n //Set up the time slider\r\n this._timeSlider = new TimeSlider({\r\n container: \"timeSlider\",\r\n view: this._mapView,\r\n fullTimeExtent: this._fullTimeExtent,\r\n timeExtent: this._timeExtent,\r\n stops: stopsByInterval\r\n });\r\n\r\n var _this = this;\r\n\r\n this._timeSlider.watch(\"timeExtent\", function () {\r\n\r\n var teSlider = _this._timeSlider.timeExtent;\r\n\r\n if (teSlider != null) {\r\n _this.beginTime = teSlider.start;\r\n _this.endTime = teSlider.end;\r\n\r\n //Reload the AOI data\r\n _this.fetchEarthquakeCount();\r\n }\r\n });\r\n\r\n this._timeSlider.when((args) => {\r\n this.fetchEarthquakeCount();\r\n });\r\n }\r\n\r\n protected initMeasurement() {\r\n \r\n\r\n this._mapView.ui.add(\"measure-widget-container\", \"top-right\");\r\n }\r\n\r\n public activateMeasureWidget(type: string) {\r\n\r\n if (this._activeMeasureWidget != null) {\r\n this.clearActiveMeasureWidget();\r\n }\r\n else {\r\n switch (type) {\r\n case \"distance\": this.activateMeasureDistanceWidget();\r\n break;\r\n }\r\n }\r\n }\r\n\r\n protected activateMeasureDistanceWidget() {\r\n this._activeMeasureWidget = new DistanceMeasurement2D({\r\n view: this._mapView\r\n });\r\n\r\n this._activeMeasureWidget.viewModel.start();\r\n\r\n this._mapView.ui.add(this._activeMeasureWidget, \"top-right\");\r\n }\r\n\r\n protected clearActiveMeasureWidget() {\r\n if (this._activeMeasureWidget != null) {\r\n this._mapView.ui.remove(this._activeMeasureWidget);\r\n this._activeMeasureWidget.destroy();\r\n this._activeMeasureWidget = null;\r\n }\r\n }\r\n\r\n protected initBusinessLayers() {\r\n this.assetsService.getAssetAsJson(\"assets/layers.json\").then((layerConfigData: any) => {\r\n if (layerConfigData.layers != null) {\r\n layerConfigData.layers.forEach(layerconfig => {\r\n\r\n if (layerconfig.layerType == \"feature\") {\r\n this.createFeatureLayer(layerconfig);\r\n }\r\n else if (layerconfig.layerType == \"mapimage\") {\r\n this.createMapImageLayer(layerconfig);\r\n }\r\n });\r\n }\r\n },\r\n (err) => {\r\n var q = 0;\r\n })\r\n }\r\n\r\n protected launchWelcomeDialog() {\r\n //Do the welcome dialog...\r\n let dialogRef = this.matDialog.open(WelcomeDialogComponent, {\r\n disableClose: true,\r\n panelClass: \"stations-dialog-container\",\r\n });\r\n }\r\n\r\n protected createFeatureLayer(layerconfig: any) {\r\n var fl = new FeatureLayer(layerconfig.layerProperties);\r\n\r\n //Do anything else we need to do to the layer?\r\n\r\n this._map.add(fl);\r\n\r\n //Do we have a popup template file path?\r\n if (layerconfig.popupTemplatePath != null) {\r\n this.setupFeatureLayerPopupTemplate(layerconfig.popupTemplatePath, fl);\r\n }\r\n\r\n if (layerconfig.title != null) {\r\n fl.title = layerconfig.title;\r\n }\r\n\r\n if (layerconfig.isEarthquakesLayer != null && layerconfig.isEarthquakesLayer == true) {\r\n this.earthquakesLayer = fl;\r\n\r\n\r\n }\r\n }\r\n\r\n protected createMapImageLayer(layerconfig: any) {\r\n\r\n }\r\n\r\n protected setupFeatureLayerPopupTemplate(popupTemplatePath: string, layer: FeatureLayer) {\r\n this.assetsService.getAssetAsJson(popupTemplatePath).then((popupTemplateData: any) => {\r\n try {\r\n layer.popupEnabled = true;\r\n layer.popupTemplate = popupTemplateData;\r\n }\r\n catch (exc) {\r\n var q = 0;\r\n }\r\n },\r\n err => {\r\n\r\n });\r\n }\r\n\r\n public exportEarthquakeData() {\r\n\r\n if (this._earthquakesLayer != null) {\r\n\r\n var layerWrapper = {\r\n layer: this._earthquakesLayer\r\n };\r\n\r\n this.fetchAllEarthquakesForLayerWithWhereClause(\"1=1\", this.beginTime, this.endTime, this._filterGraphic, layerWrapper, false).then(\r\n (result) => {\r\n\r\n var sBeginDate = this.beginTime.toJSON();\r\n var sEndDate = this.endTime.toJSON();\r\n\r\n var filename = \"texnet_hirescatalog_\" + sBeginDate + \"_\" + sEndDate + \".csv\";\r\n\r\n this.csvExportService.exportFeaturesFromFeatureLayer(result, this._earthquakesLayer, filename);\r\n },\r\n (err) => {\r\n var q = 0;\r\n }\r\n )\r\n }\r\n\r\n }\r\n\r\n public fetchAllEarthquakesForLayerWithWhereClause(whereClause, beginDate, endDate, filterGraphic, layerWrapper, countOnly: boolean): Promise {\r\n\r\n let p = new Promise((resolve, reject) => {\r\n\r\n var resultFeatures = [];\r\n var resultCount = 0;\r\n\r\n var layer = layerWrapper.layer;\r\n\r\n if (layer.visible) {\r\n var offset = 0;\r\n var strideSize = 1000;\r\n\r\n var timeExtent = {\r\n start: beginDate,\r\n end: endDate\r\n };\r\n\r\n var finalWhereClause = layer.definitionExpression;\r\n\r\n if (whereClause != null && whereClause != \"\") finalWhereClause = whereClause;\r\n\r\n function doFeatureQuery(offset) {\r\n\r\n var prom = new Promise(function (resolve1, reject1) {\r\n var fQuery = layer.createQuery();\r\n\r\n fQuery.where = finalWhereClause;\r\n fQuery.outFields = [\"*\"];\r\n fQuery.returnGeometry = true;\r\n fQuery.timeExtent = timeExtent;\r\n\r\n //Apparently, this applies even when requesting just the count, so we only add it when \r\n if (countOnly) {\r\n //Kludgey, but by the time we've had 10M earthquakes, this will be some other poor schlub's problem\r\n fQuery.num = 10000000;\r\n }\r\n else {\r\n fQuery.num = strideSize;\r\n }\r\n\r\n if (filterGraphic != null) {\r\n fQuery.geometry = filterGraphic.geometry;\r\n }\r\n\r\n fQuery.start = offset;\r\n\r\n if (countOnly) {\r\n\r\n //If what we actually have is a sublayer, create a feature layer instance so we can get access to the feature count method\r\n if (layer.queryFeatureCount == null) {\r\n layer.createFeatureLayer().then((fLayerCreateResult) => {\r\n //Now that we have a feature layer, we can try to query the feature count.\r\n fLayerCreateResult.queryFeatureCount(fQuery).then(function (result) {\r\n resolve1(result);\r\n },\r\n function (err) {\r\n reject1(err);\r\n });\r\n },\r\n (err) => {\r\n reject1(err);\r\n });\r\n }\r\n else {\r\n layer.queryFeatureCount(fQuery).then(function (result) {\r\n resolve1(result);\r\n },\r\n function (err) {\r\n reject1(err);\r\n });\r\n }\r\n\r\n\r\n }\r\n else { //Fetching the actual features\r\n layer.queryFeatures(fQuery).then(function (result) {\r\n resolve1(result);\r\n },\r\n function (err) {\r\n reject1(err);\r\n });\r\n }\r\n });\r\n\r\n return prom;\r\n }\r\n\r\n function handleQueryResult(result) {\r\n\r\n if (countOnly) {\r\n resultCount += result;\r\n\r\n resolve(resultCount);\r\n }\r\n else {\r\n\r\n result.features.forEach(function (feature) {\r\n resultFeatures.push(feature);\r\n })\r\n\r\n if (result.exceededTransferLimit) {\r\n offset += strideSize;\r\n\r\n doFeatureQuery(offset).then(handleQueryResult,\r\n function (err) {\r\n reject();\r\n })\r\n }\r\n else {\r\n resolve(resultFeatures);\r\n }\r\n }\r\n }\r\n\r\n doFeatureQuery(offset).then(handleQueryResult,\r\n function (err) {\r\n reject();\r\n });\r\n }\r\n });\r\n\r\n return p;\r\n }\r\n\r\n protected fetchEarthquakeCount() {\r\n if (this._earthquakesLayer != null) {\r\n var layerWrapper = {\r\n layer: this._earthquakesLayer\r\n };\r\n\r\n this.fetchAllEarthquakesForLayerWithWhereClause(\"1=1\", this.beginTime, this.endTime, this._filterGraphic, layerWrapper, true).then((earthquakeCount) => {\r\n this.earthquakeCount = earthquakeCount;\r\n },\r\n (err) => {\r\n\r\n });\r\n }\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-nav-menu',\r\n templateUrl: './nav-menu.component.html',\r\n styleUrls: ['./nav-menu.component.css']\r\n})\r\nexport class NavMenuComponent {\r\n isExpanded = false;\r\n\r\n collapse() {\r\n this.isExpanded = false;\r\n }\r\n\r\n toggle() {\r\n this.isExpanded = !this.isExpanded;\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'app-welcome-dialog',\n templateUrl: './welcome-dialog.component.html',\n styleUrls: ['./welcome-dialog.component.css']\n})\nexport class WelcomeDialogComponent implements OnInit {\n\n constructor(\n public dialogRef: MatDialogRef,\n ) { }\n\n ngOnInit(): void {\n }\n\n public dismissDialog() {\n\n var args = {\n\n };\n\n this.dialogRef.close(args);\n\n }\n\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * In development mode, to ignore zone related error stack frames such as\r\n * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can\r\n * import the following file, but please comment it out in production mode\r\n * because it will have performance impact when throw error\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nexport function getBaseUrl() {\r\n return document.getElementsByTagName('base')[0].href;\r\n}\r\n\r\nconst providers = [\r\n { provide: 'BASE_URL', useFactory: getBaseUrl, deps: [] }\r\n];\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic(providers).bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n","export default \"\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\";","export default \"\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n

Export Earthquake Data

\\r\\n
\\r\\n
\\r\\n Relevant Earthquakes: {{ earthquakeCount }}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n

This catalog includes events from 2017-01-01 till 2024-10-31 in the Delaware basin.

\\r\\n\\r\\n

Locations are provided using waveform cross correlations and the GrowClust software.

\\r\\n\\r\\n

The TexNet web earthquake catalog and the earth model defined in the TexNet Operations Manual for the Delaware Basin are used as input.

\\r\\n\\r\\n

This product of the Bureau of Economic Geology (Bureau) at University of Texas at Austin is intended to provide general information only and should not be used for any other purposes. It is not intended for resale or to replace site-specific investigations. These data were compiled by the Bureau, which reserves the publication rights to this material. If these data are used in the compilation of other data sets or maps for distribution or publication, this source (TexNet High Resolution Earthquake Catalog, Bureau of Economic Geology at University of Texas at Austin, https://doi.org/10.15781/76hj-ed46) must be referenced.

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\";","export default \"\\r\\n
\\r\\n \\r\\n \\\"TexNet\\r\\n \\r\\n
\\r\\n

High Resolution Catalog

\\r\\n \\r\\n
\\r\\n\";","export default \"\\r\\n \\r\\n
\\r\\n \\r\\n \\\"TexNet\\r\\n \\r\\n
\\r\\n

High Resolution Catalog

\\r\\n
\\r\\n
\\r\\n\\r\\n
This website is intended to show high resolution earthquake locations. The Bureau does not warrant these data and is not liable for data accuracy or use of these data.
\\r\\n
This product of the Bureau of Economic Geology (Bureau) at University of Texas at Austin is intended to provide general information only and should not be used for any other purposes. It is not intended for resale or to replace site-specific investigations. These data were compiled by the Bureau, which reserves the publication rights to this material. If these data are used in the compilation of other data sets or maps for distribution or publication, this source (TexNet High Resolution Earthquake Catalog, Bureau of Economic Geology at University of Texas at Austin, https://doi.org/10.15781/76hj-ed46) must be referenced.
\\r\\n\\r\\n
For questions about earthquake location data please contact:
\\r\\n
\\r\\n Dr. Alexandros Savvaidis
\\r\\n Bureau of Economic Geology
\\r\\n The University of Texas at Austin
\\r\\n University Station, Box X
\\r\\n Austin, TX 78713-8924
\\r\\n
\\r\\n Website: https://texnet.beg.utexas.edu/texnet
\\r\\n
\\r\\n Email: texnet@beg.utexas.edu
\\r\\n
\\r\\n Phone: 512-475-9549\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n By clicking the button below, I agree that I have read and understand the above.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\";","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(() => {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = () => ([]);\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = 44916;\nmodule.exports = webpackEmptyAsyncContext;"],"names":[],"sourceRoot":"webpack:///"}