From b8d75f789d8b6565605059993166cdaccae0a4fe Mon Sep 17 00:00:00 2001
From: Brandon Clayton <bclayton@usgs.gov>
Date: Fri, 7 Mar 2025 13:45:46 -0700
Subject: [PATCH] add swagger application

---
 angular.json | 131 +++++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 117 insertions(+), 14 deletions(-)

diff --git a/angular.json b/angular.json
index c9ed1e4d8..82ae5516f 100644
--- a/angular.json
+++ b/angular.json
@@ -262,7 +262,115 @@
                 }
               ]
             },
-            "designmaps": {
+            "development": {
+              "stylePreprocessorOptions": {
+                "includePaths": ["node_modules"]
+              },
+              "optimization": false,
+              "extractLicenses": false,
+              "sourceMap": true
+            }
+          },
+          "defaultConfiguration": "development"
+        },
+        "serve": {
+          "builder": "@angular-devkit/build-angular:dev-server",
+          "options": {
+            "buildTarget": "nshmp-ws:build"
+          },
+          "configurations": {
+            "production": {
+              "buildTarget": "nshmp-ws:build:production"
+            },
+            "development": {
+              "buildTarget": "nshmp-ws:build:development"
+            }
+          },
+          "defaultConfiguration": "development"
+        },
+        "extract-i18n": {
+          "builder": "@angular-devkit/build-angular:extract-i18n"
+        },
+        "test": {
+          "builder": "@angular-devkit/build-angular:karma",
+          "options": {
+            "polyfills": ["zone.js", "zone.js/testing"],
+            "tsConfig": "projects/nshmp-ws/tsconfig.spec.json",
+            "inlineStyleLanguage": "scss",
+            "assets": [
+              {
+                "glob": "**/*",
+                "input": "projects/nshmp-ws/public"
+              }
+            ],
+            "styles": ["projects/nshmp-ws/src/styles.scss"],
+            "scripts": []
+          }
+        },
+        "lint": {
+          "builder": "@angular-eslint/builder:lint",
+          "options": {
+            "lintFilePatterns": [
+              "projects/nshmp-ws/**/*.ts",
+              "projects/nshmp-ws/**/*.html"
+            ]
+          }
+        }
+      }
+    },
+    "swagger": {
+      "projectType": "application",
+      "schematics": {
+        "@schematics/angular:component": {
+          "style": "scss"
+        }
+      },
+      "root": "projects/swagger",
+      "sourceRoot": "projects/swagger/src",
+      "prefix": "app",
+      "architect": {
+        "build": {
+          "builder": "@angular-devkit/build-angular:application",
+          "options": {
+            "baseHref": "/ws/designmaps/aashto-2023/",
+            "outputPath": "dist/swagger",
+            "index": "projects/swagger/src/index.html",
+            "browser": "projects/swagger/src/main.ts",
+            "polyfills": ["zone.js"],
+            "tsConfig": "projects/swagger/tsconfig.app.json",
+            "inlineStyleLanguage": "scss",
+            "assets": [
+              {
+                "glob": "**/*",
+                "input": "projects/nshmp-apps/src/assets",
+                "output": "./assets"
+              },
+              {
+                "glob": "**/*",
+                "input": "node_modules/@ghsc/nshmp-lib-ng/assets",
+                "output": "./assets"
+              },
+              {
+                "glob": "**/*",
+                "input": "node_modules/@ghsc/nshmp-template/assets",
+                "output": "./assets"
+              },
+              {
+                "glob": "**/*",
+                "input": "node_modules/uswds/dist/img",
+                "output": "./assets/img"
+              },
+              {
+                "glob": "**/*",
+                "input": "node_modules/uswds/dist/fonts",
+                "output": "./assets/fonts"
+              }
+            ],
+            "styles": ["projects/swagger/src/styles.scss"],
+            "scripts": []
+          },
+          "configurations": {
+            "production": {
               "stylePreprocessorOptions": {
                 "includePaths": ["node_modules"]
               },
@@ -272,8 +380,6 @@
                   "with": "projects/nshmp-apps/src/environments/environment.prod.ts"
                 }
               ],
-              "outputPath": "dist/nshmp-designmaps",
-              "baseHref": "/ws/designmaps/",
               "optimization": true,
               "outputHashing": "all",
               "sourceMap": false,
@@ -300,19 +406,16 @@
               "sourceMap": true
             }
           },
-          "defaultConfiguration": "development"
+          "defaultConfiguration": "production"
         },
         "serve": {
           "builder": "@angular-devkit/build-angular:dev-server",
-          "options": {
-            "buildTarget": "nshmp-ws:build"
-          },
           "configurations": {
             "production": {
-              "buildTarget": "nshmp-ws:build:production"
+              "buildTarget": "swagger:build:production"
             },
             "development": {
-              "buildTarget": "nshmp-ws:build:development"
+              "buildTarget": "swagger:build:development"
             }
           },
           "defaultConfiguration": "development"
@@ -324,15 +427,15 @@
           "builder": "@angular-devkit/build-angular:karma",
           "options": {
             "polyfills": ["zone.js", "zone.js/testing"],
-            "tsConfig": "projects/nshmp-ws/tsconfig.spec.json",
+            "tsConfig": "projects/swagger/tsconfig.spec.json",
             "inlineStyleLanguage": "scss",
             "assets": [
               {
                 "glob": "**/*",
-                "input": "projects/nshmp-ws/public"
+                "input": "projects/swagger/public"
               }
             ],
-            "styles": ["projects/nshmp-ws/src/styles.scss"],
+            "styles": ["projects/swagger/src/styles.scss"],
             "scripts": []
           }
         },
@@ -340,8 +443,8 @@
           "builder": "@angular-eslint/builder:lint",
           "options": {
             "lintFilePatterns": [
-              "projects/nshmp-ws/**/*.ts",
-              "projects/nshmp-ws/**/*.html"
+              "projects/swagger/**/*.ts",
+              "projects/swagger/**/*.html"
             ]
           }
         }
-- 
GitLab