Commit 8e26f36a authored by Grant's avatar Grant
Browse files

strip html

parent d2f126ec
Loading
Loading
Loading
Loading
Loading
+147 −1
Original line number Diff line number Diff line
@@ -10,7 +10,8 @@
      "license": "ISC",
      "dependencies": {
        "express": "^4.19.2",
        "openid-client": "^6.5.0"
        "openid-client": "^6.5.0",
        "string-strip-html": "^13.4.12"
      },
      "devDependencies": {
        "@tsconfig/recommended": "^1.0.7",
@@ -476,6 +477,19 @@
      "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==",
      "dev": true
    },
    "node_modules/@types/lodash": {
      "version": "4.17.17",
      "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.17.tgz",
      "integrity": "sha512-RRVJ+J3J+WmyOTqnz3PiBLA501eKwXl2noseKOrNo/6+XEHjTAxO4xHvxQB6QuNm+s4WRbn6rSiap8+EA+ykFQ=="
    },
    "node_modules/@types/lodash-es": {
      "version": "4.17.12",
      "resolved": "https://registry.npmjs.org/@types/lodash-es/-/lodash-es-4.17.12.tgz",
      "integrity": "sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==",
      "dependencies": {
        "@types/lodash": "*"
      }
    },
    "node_modules/@types/mime": {
      "version": "1.3.5",
      "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz",
@@ -599,6 +613,17 @@
        "url": "https://github.com/sponsors/ljharb"
      }
    },
    "node_modules/codsen-utils": {
      "version": "1.6.7",
      "resolved": "https://registry.npmjs.org/codsen-utils/-/codsen-utils-1.6.7.tgz",
      "integrity": "sha512-M+9D3IhFAk4T8iATX62herVuIx1sp5kskWgxEegKD/JwTTSSGjGQs5Q5J4vVJ4mLcn1uhfxDYv6Yzr8zleHF3w==",
      "dependencies": {
        "rfdc": "^1.4.1"
      },
      "engines": {
        "node": ">=14.18.0"
      }
    },
    "node_modules/content-disposition": {
      "version": "0.5.4",
      "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
@@ -954,6 +979,21 @@
        "node": ">= 0.4"
      }
    },
    "node_modules/html-entities": {
      "version": "2.6.0",
      "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.6.0.tgz",
      "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==",
      "funding": [
        {
          "type": "github",
          "url": "https://github.com/sponsors/mdevils"
        },
        {
          "type": "patreon",
          "url": "https://patreon.com/mdevils"
        }
      ]
    },
    "node_modules/http-errors": {
      "version": "2.0.0",
      "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz",
@@ -1001,6 +1041,11 @@
        "url": "https://github.com/sponsors/panva"
      }
    },
    "node_modules/lodash-es": {
      "version": "4.17.21",
      "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz",
      "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw=="
    },
    "node_modules/math-intrinsics": {
      "version": "1.1.0",
      "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
@@ -1180,6 +1225,52 @@
        "node": ">= 0.6"
      }
    },
    "node_modules/ranges-apply": {
      "version": "7.0.19",
      "resolved": "https://registry.npmjs.org/ranges-apply/-/ranges-apply-7.0.19.tgz",
      "integrity": "sha512-imA03KuTSuSpQtq9SDhavUz7BtiddCPj+fsYM/XpdypRN/s8vyTayKzni6m5nYs7VMds1kSNK1V3jfwVrPUWBQ==",
      "dependencies": {
        "ranges-merge": "^9.0.18",
        "tiny-invariant": "^1.3.3"
      },
      "engines": {
        "node": ">=14.18.0"
      }
    },
    "node_modules/ranges-merge": {
      "version": "9.0.18",
      "resolved": "https://registry.npmjs.org/ranges-merge/-/ranges-merge-9.0.18.tgz",
      "integrity": "sha512-2+6Eh4yxi5sudUmvCdvxVOSdXIXV+Brfutw8chhZmqkT0REqlzilpyQps1S5n8c7f0+idblqSAHGahTbf/Ar5g==",
      "dependencies": {
        "ranges-push": "^7.0.18",
        "ranges-sort": "^6.0.13"
      },
      "engines": {
        "node": ">=14.18.0"
      }
    },
    "node_modules/ranges-push": {
      "version": "7.0.18",
      "resolved": "https://registry.npmjs.org/ranges-push/-/ranges-push-7.0.18.tgz",
      "integrity": "sha512-wzGHipEklSlY0QloQ88PNt+PkTURIB42PLLcQGY+WyYBlNpnrzps6EYooD3RqNXtdqMQ9kR8IVaF9itRYtuzLA==",
      "dependencies": {
        "codsen-utils": "^1.6.7",
        "ranges-sort": "^6.0.13",
        "string-collapse-leading-whitespace": "^7.0.9",
        "string-trim-spaces-only": "^5.0.12"
      },
      "engines": {
        "node": ">=14.18.0"
      }
    },
    "node_modules/ranges-sort": {
      "version": "6.0.13",
      "resolved": "https://registry.npmjs.org/ranges-sort/-/ranges-sort-6.0.13.tgz",
      "integrity": "sha512-M3P0/dUnU3ihLPX2jq0MT2NJA1ls/q6cUAUVPD28xdFFqm3VFarPjTKKhnsBSvYCpZD8HdiElAGAyoPu6uOQjA==",
      "engines": {
        "node": ">=14.18.0"
      }
    },
    "node_modules/raw-body": {
      "version": "2.5.2",
      "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz",
@@ -1203,6 +1294,11 @@
        "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1"
      }
    },
    "node_modules/rfdc": {
      "version": "1.4.1",
      "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz",
      "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA=="
    },
    "node_modules/safe-buffer": {
      "version": "5.2.1",
      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
@@ -1358,6 +1454,56 @@
        "node": ">= 0.8"
      }
    },
    "node_modules/string-collapse-leading-whitespace": {
      "version": "7.0.9",
      "resolved": "https://registry.npmjs.org/string-collapse-leading-whitespace/-/string-collapse-leading-whitespace-7.0.9.tgz",
      "integrity": "sha512-lEuTHlogBT9PWipfk0FOyvoMKX8syiE03QoFk5MDh8oS0AJ2C07IlstR5cGkxz48nKkOIuvkC28w9Rx/cVRNDg==",
      "engines": {
        "node": ">=14.18.0"
      }
    },
    "node_modules/string-left-right": {
      "version": "6.0.20",
      "resolved": "https://registry.npmjs.org/string-left-right/-/string-left-right-6.0.20.tgz",
      "integrity": "sha512-dz2mUgmsI7m/FMe+BoxZ2+73X1TUoQvjCdnq8vbIAnHlvWfVZleNUR+lw+QgHA2dlJig+hUWC9bFYdNFGGy2bA==",
      "dependencies": {
        "codsen-utils": "^1.6.7",
        "rfdc": "^1.4.1"
      },
      "engines": {
        "node": ">=14.18.0"
      }
    },
    "node_modules/string-strip-html": {
      "version": "13.4.12",
      "resolved": "https://registry.npmjs.org/string-strip-html/-/string-strip-html-13.4.12.tgz",
      "integrity": "sha512-mr1GM1TFcwDkYwLE7TNkHY+Lf3YFEBa19W9KntZoJJSbrKF07W4xmLkPnqf8cypEGyr+dc1H9hsdTw5VSNVGxg==",
      "dependencies": {
        "@types/lodash-es": "^4.17.12",
        "codsen-utils": "^1.6.7",
        "html-entities": "^2.5.2",
        "lodash-es": "^4.17.21",
        "ranges-apply": "^7.0.19",
        "ranges-push": "^7.0.18",
        "string-left-right": "^6.0.20"
      },
      "engines": {
        "node": ">=14.18.0"
      }
    },
    "node_modules/string-trim-spaces-only": {
      "version": "5.0.12",
      "resolved": "https://registry.npmjs.org/string-trim-spaces-only/-/string-trim-spaces-only-5.0.12.tgz",
      "integrity": "sha512-Un5nIO1av+hzfnKGmY+bWe0AD4WH37TuDW+jeMPm81rUvU2r3VPRj9vEKdZkPmuhYAMuKlzarm7jDSKwJKOcpQ==",
      "engines": {
        "node": ">=14.18.0"
      }
    },
    "node_modules/tiny-invariant": {
      "version": "1.3.3",
      "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz",
      "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg=="
    },
    "node_modules/toidentifier": {
      "version": "1.0.1",
      "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
+2 −1
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@
  },
  "dependencies": {
    "express": "^4.19.2",
    "openid-client": "^6.5.0"
    "openid-client": "^6.5.0",
    "string-strip-html": "^13.4.12"
  }
}
+3 −2
Original line number Diff line number Diff line
import express from "express";
import { OpenIDController, OpenID } from "./oidc";
import { ResponseBodyError } from "openid-client";
import { stripHtml } from "string-strip-html";

OpenIDController.initialize().then(() => {
  console.log("OpenID setup");
@@ -17,7 +18,7 @@ const renderStatic = (data: { title: string; json: any }) => {
    </head>
    <body>
      <h1>${data.title}</h1>
      <code><pre>${JSON.stringify(data.json, null, 2)}</pre></code>
      <code><pre>${stripHtml(JSON.stringify(data.json, null, 2))}</pre></code>

      <a href="/">Home</a>
    </body>
@@ -35,7 +36,7 @@ app.get("/", async (req, res) => {
      <body>
        <h1>Fediverse Auth Demo</h1>
        <b>Query Parameters:</b>
        <code><pre>${JSON.stringify(req.query, null, 2)}</pre></code>
        <code><pre>${stripHtml(JSON.stringify(req.query, null, 2))}</pre></code>

        <a href="/login">Test Out Fediverse Auth Login</a>
      </body>