diff --git a/package.json b/package.json index a787dde4..c24b9f50 100644 --- a/package.json +++ b/package.json @@ -43,6 +43,7 @@ "mobx-react": "^7.3.0", "mobx-state-tree": "^5.1.3", "next": "^12.1.0", + "nextjs-current-url": "^1.0.3", "react": "^17.0.2", "react-dom": "^17.0.2", "react-linkify": "^1.0.0-alpha", diff --git a/src/shared/django-helpers.tsx b/src/shared/django-helpers.tsx index 1a538684..cf32a768 100644 --- a/src/shared/django-helpers.tsx +++ b/src/shared/django-helpers.tsx @@ -10,9 +10,12 @@ import { useRouter } from "next/router"; import Script from "next/script"; import * as React from "react"; +import { getUrl } from 'nextjs-current-url'; + import { Link } from "../components/link"; -export const djangoBaseUrl = process.env.NEXT_PUBLIC_DJANGO_BASE_URL ?? ""; +// export const djangoBaseUrl = process.env.NEXT_PUBLIC_DJANGO_BASE_URL ?? ""; +export const djangoBaseUrl = getUrl({ req: context.req.host }) ?? ''; export const djangoContentFallback = process.env.NEXT_PUBLIC_DJANGO_CONTENT_FALLBACK === "true"; diff --git a/yarn.lock b/yarn.lock index 86421de6..f7b1be93 100644 --- a/yarn.lock +++ b/yarn.lock @@ -428,6 +428,13 @@ __metadata: languageName: node linkType: hard +"@next/env@npm:13.5.11": + version: 13.5.11 + resolution: "@next/env@npm:13.5.11" + checksum: 1d19fb97ecdda14d2ea91b251e01b5e38046e42b161572c17abe55c1b77b329067fd3a5d120c35e22d84661f09d80bd2479ca355150cefc17c9a8120998f784a + languageName: node + linkType: hard + "@next/eslint-plugin-next@npm:^12.1.0": version: 12.1.0 resolution: "@next/eslint-plugin-next@npm:12.1.0" @@ -451,6 +458,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-darwin-arm64@npm:13.5.9": + version: 13.5.9 + resolution: "@next/swc-darwin-arm64@npm:13.5.9" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@next/swc-darwin-x64@npm:12.1.0": version: 12.1.0 resolution: "@next/swc-darwin-x64@npm:12.1.0" @@ -458,6 +472,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-darwin-x64@npm:13.5.9": + version: 13.5.9 + resolution: "@next/swc-darwin-x64@npm:13.5.9" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@next/swc-linux-arm-gnueabihf@npm:12.1.0": version: 12.1.0 resolution: "@next/swc-linux-arm-gnueabihf@npm:12.1.0" @@ -472,6 +493,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-linux-arm64-gnu@npm:13.5.9": + version: 13.5.9 + resolution: "@next/swc-linux-arm64-gnu@npm:13.5.9" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + "@next/swc-linux-arm64-musl@npm:12.1.0": version: 12.1.0 resolution: "@next/swc-linux-arm64-musl@npm:12.1.0" @@ -479,6 +507,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-linux-arm64-musl@npm:13.5.9": + version: 13.5.9 + resolution: "@next/swc-linux-arm64-musl@npm:13.5.9" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + "@next/swc-linux-x64-gnu@npm:12.1.0": version: 12.1.0 resolution: "@next/swc-linux-x64-gnu@npm:12.1.0" @@ -486,6 +521,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-linux-x64-gnu@npm:13.5.9": + version: 13.5.9 + resolution: "@next/swc-linux-x64-gnu@npm:13.5.9" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + "@next/swc-linux-x64-musl@npm:12.1.0": version: 12.1.0 resolution: "@next/swc-linux-x64-musl@npm:12.1.0" @@ -493,6 +535,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-linux-x64-musl@npm:13.5.9": + version: 13.5.9 + resolution: "@next/swc-linux-x64-musl@npm:13.5.9" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + "@next/swc-win32-arm64-msvc@npm:12.1.0": version: 12.1.0 resolution: "@next/swc-win32-arm64-msvc@npm:12.1.0" @@ -500,6 +549,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-win32-arm64-msvc@npm:13.5.9": + version: 13.5.9 + resolution: "@next/swc-win32-arm64-msvc@npm:13.5.9" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + "@next/swc-win32-ia32-msvc@npm:12.1.0": version: 12.1.0 resolution: "@next/swc-win32-ia32-msvc@npm:12.1.0" @@ -507,6 +563,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-win32-ia32-msvc@npm:13.5.9": + version: 13.5.9 + resolution: "@next/swc-win32-ia32-msvc@npm:13.5.9" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + "@next/swc-win32-x64-msvc@npm:12.1.0": version: 12.1.0 resolution: "@next/swc-win32-x64-msvc@npm:12.1.0" @@ -514,6 +577,13 @@ __metadata: languageName: node linkType: hard +"@next/swc-win32-x64-msvc@npm:13.5.9": + version: 13.5.9 + resolution: "@next/swc-win32-x64-msvc@npm:13.5.9" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@nodelib/fs.scandir@npm:2.1.5": version: 2.1.5 resolution: "@nodelib/fs.scandir@npm:2.1.5" @@ -803,6 +873,15 @@ __metadata: languageName: node linkType: hard +"@swc/helpers@npm:0.5.2": + version: 0.5.2 + resolution: "@swc/helpers@npm:0.5.2" + dependencies: + tslib: ^2.4.0 + checksum: 51d7e3d8bd56818c49d6bfbd715f0dbeedc13cf723af41166e45c03e37f109336bbcb57a1f2020f4015957721aeb21e1a7fff281233d797ff7d3dd1f447fa258 + languageName: node + linkType: hard + "@szmarczak/http-timer@npm:^4.0.5": version: 4.0.6 resolution: "@szmarczak/http-timer@npm:4.0.6" @@ -1459,6 +1538,15 @@ __metadata: languageName: node linkType: hard +"busboy@npm:1.6.0": + version: 1.6.0 + resolution: "busboy@npm:1.6.0" + dependencies: + streamsearch: ^1.1.0 + checksum: 32801e2c0164e12106bf236291a00795c3c4e4b709ae02132883fe8478ba2ae23743b11c5735a0aae8afe65ac4b6ca4568b91f0d9fed1fdbc32ede824a73746e + languageName: node + linkType: hard + "cacache@npm:^15.2.0": version: 15.3.0 resolution: "cacache@npm:15.3.0" @@ -1538,6 +1626,13 @@ __metadata: languageName: node linkType: hard +"caniuse-lite@npm:^1.0.30001406": + version: 1.0.30001727 + resolution: "caniuse-lite@npm:1.0.30001727" + checksum: 2bc6112f242701198a99c17713d4409be9b404d09005f34f351ec29a4ea46c054e7aa4982bc16f06b81b7a375cbc61c937e89650170cbce84db772a376ed3963 + languageName: node + linkType: hard + "chalk@npm:^2.0.0, chalk@npm:^2.4.1": version: 2.4.2 resolution: "chalk@npm:2.4.2" @@ -1644,6 +1739,13 @@ __metadata: languageName: node linkType: hard +"client-only@npm:0.0.1": + version: 0.0.1 + resolution: "client-only@npm:0.0.1" + checksum: 0c16bf660dadb90610553c1d8946a7fdfb81d624adea073b8440b7d795d5b5b08beb3c950c6a2cf16279365a3265158a236876d92bce16423c485c322d7dfaf8 + languageName: node + linkType: hard + "clipboardy@npm:^3.0.0": version: 3.0.0 resolution: "clipboardy@npm:3.0.0" @@ -2861,6 +2963,13 @@ __metadata: languageName: node linkType: hard +"glob-to-regexp@npm:^0.4.1": + version: 0.4.1 + resolution: "glob-to-regexp@npm:0.4.1" + checksum: e795f4e8f06d2a15e86f76e4d92751cf8bbfcf0157cea5c2f0f35678a8195a750b34096b1256e436f0cebc1883b5ff0888c47348443e69546a5a87f9e1eb1167 + languageName: node + linkType: hard + "glob@npm:7.1.7": version: 7.1.7 resolution: "glob@npm:7.1.7" @@ -4397,6 +4506,15 @@ __metadata: languageName: node linkType: hard +"nanoid@npm:^3.3.6": + version: 3.3.11 + resolution: "nanoid@npm:3.3.11" + bin: + nanoid: bin/nanoid.cjs + checksum: 3be20d8866a57a6b6d218e82549711c8352ed969f9ab3c45379da28f405363ad4c9aeb0b39e9abc101a529ca65a72ff9502b00bf74a912c4b64a9d62dfd26c29 + languageName: node + linkType: hard + "napi-build-utils@npm:^1.0.1": version: 1.0.2 resolution: "napi-build-utils@npm:1.0.2" @@ -4480,6 +4598,71 @@ __metadata: languageName: node linkType: hard +"next@npm:^13.4.7": + version: 13.5.11 + resolution: "next@npm:13.5.11" + dependencies: + "@next/env": 13.5.11 + "@next/swc-darwin-arm64": 13.5.9 + "@next/swc-darwin-x64": 13.5.9 + "@next/swc-linux-arm64-gnu": 13.5.9 + "@next/swc-linux-arm64-musl": 13.5.9 + "@next/swc-linux-x64-gnu": 13.5.9 + "@next/swc-linux-x64-musl": 13.5.9 + "@next/swc-win32-arm64-msvc": 13.5.9 + "@next/swc-win32-ia32-msvc": 13.5.9 + "@next/swc-win32-x64-msvc": 13.5.9 + "@swc/helpers": 0.5.2 + busboy: 1.6.0 + caniuse-lite: ^1.0.30001406 + postcss: 8.4.31 + styled-jsx: 5.1.1 + watchpack: 2.4.0 + peerDependencies: + "@opentelemetry/api": ^1.1.0 + react: ^18.2.0 + react-dom: ^18.2.0 + sass: ^1.3.0 + dependenciesMeta: + "@next/swc-darwin-arm64": + optional: true + "@next/swc-darwin-x64": + optional: true + "@next/swc-linux-arm64-gnu": + optional: true + "@next/swc-linux-arm64-musl": + optional: true + "@next/swc-linux-x64-gnu": + optional: true + "@next/swc-linux-x64-musl": + optional: true + "@next/swc-win32-arm64-msvc": + optional: true + "@next/swc-win32-ia32-msvc": + optional: true + "@next/swc-win32-x64-msvc": + optional: true + peerDependenciesMeta: + "@opentelemetry/api": + optional: true + sass: + optional: true + bin: + next: dist/bin/next + checksum: 117e091c48446da63c639f6d80bb5ba2cf25cfcfc54ca90293602af988e386852e8c004251ff978a085a36285474e92d0ddd9668aa800733754670a4b03bdd2a + languageName: node + linkType: hard + +"nextjs-current-url@npm:^1.0.3": + version: 1.0.3 + resolution: "nextjs-current-url@npm:1.0.3" + dependencies: + next: ^13.4.7 + react: ^18.2.0 + checksum: 4069e2eb06f3ca7e5f8008b2831c83e651d689894aba5a5e8df7be58eb25b26c55b417725dc9ea2101cf42b587e519d77ebd850b726f6704883fbf88c6a7dad4 + languageName: node + linkType: hard + "nice-try@npm:^1.0.4": version: 1.0.5 resolution: "nice-try@npm:1.0.5" @@ -5115,6 +5298,17 @@ __metadata: languageName: node linkType: hard +"postcss@npm:8.4.31": + version: 8.4.31 + resolution: "postcss@npm:8.4.31" + dependencies: + nanoid: ^3.3.6 + picocolors: ^1.0.0 + source-map-js: ^1.0.2 + checksum: 1d8611341b073143ad90486fcdfeab49edd243377b1f51834dc4f6d028e82ce5190e4f11bb2633276864503654fb7cab28e67abdc0fbf9d1f88cad4a0ff0beea + languageName: node + linkType: hard + "postcss@npm:8.4.5": version: 8.4.5 resolution: "postcss@npm:8.4.5" @@ -5401,6 +5595,15 @@ __metadata: languageName: node linkType: hard +"react@npm:^18.2.0": + version: 18.3.1 + resolution: "react@npm:18.3.1" + dependencies: + loose-envify: ^1.1.0 + checksum: a27bcfa8ff7c15a1e50244ad0d0c1cb2ad4375eeffefd266a64889beea6f6b64c4966c9b37d14ee32d6c9fcd5aa6ba183b6988167ab4d127d13e7cb5b386a376 + languageName: node + linkType: hard + "read-pkg-up@npm:^7.0.1": version: 7.0.1 resolution: "read-pkg-up@npm:7.0.1" @@ -5696,6 +5899,7 @@ __metadata: mobx-react: ^7.3.0 mobx-state-tree: ^5.1.3 next: ^12.1.0 + nextjs-current-url: ^1.0.3 npm-run-all: ^4.1.5 prettier: ^2.5.1 prettier-plugin-packagejson: ^2.2.15 @@ -6087,6 +6291,13 @@ __metadata: languageName: node linkType: hard +"source-map-js@npm:^1.0.2": + version: 1.2.1 + resolution: "source-map-js@npm:1.2.1" + checksum: 4eb0cd997cdf228bc253bcaff9340afeb706176e64868ecd20efbe6efea931465f43955612346d6b7318789e5265bdc419bc7669c1cebe3db0eb255f57efa76b + languageName: node + linkType: hard + "source-map@npm:^0.5.0": version: 0.5.7 resolution: "source-map@npm:0.5.7" @@ -6151,6 +6362,13 @@ __metadata: languageName: node linkType: hard +"streamsearch@npm:^1.1.0": + version: 1.1.0 + resolution: "streamsearch@npm:1.1.0" + checksum: 1cce16cea8405d7a233d32ca5e00a00169cc0e19fbc02aa839959985f267335d435c07f96e5e0edd0eadc6d39c98d5435fb5bbbdefc62c41834eadc5622ad942 + languageName: node + linkType: hard + "string-argv@npm:^0.3.1": version: 0.3.1 resolution: "string-argv@npm:0.3.1" @@ -6363,6 +6581,22 @@ __metadata: languageName: node linkType: hard +"styled-jsx@npm:5.1.1": + version: 5.1.1 + resolution: "styled-jsx@npm:5.1.1" + dependencies: + client-only: 0.0.1 + peerDependencies: + react: ">= 16.8.0 || 17.x.x || ^18.0.0-0" + peerDependenciesMeta: + "@babel/core": + optional: true + babel-plugin-macros: + optional: true + checksum: 523a33b38603492547e861b98e29c873939b04e15fbe5ef16132c6f1e15958126647983c7d4675325038b428a5e91183d996e90141b18bdd1bbadf6e2c45b2fa + languageName: node + linkType: hard + "supports-color@npm:^5.3.0, supports-color@npm:^5.5.0": version: 5.5.0 resolution: "supports-color@npm:5.5.0" @@ -6534,6 +6768,13 @@ __metadata: languageName: node linkType: hard +"tslib@npm:^2.4.0": + version: 2.8.1 + resolution: "tslib@npm:2.8.1" + checksum: e4aba30e632b8c8902b47587fd13345e2827fa639e7c3121074d5ee0880723282411a8838f830b55100cbe4517672f84a2472667d355b81e8af165a55dc6203a + languageName: node + linkType: hard + "tsutils@npm:^3.21.0": version: 3.21.0 resolution: "tsutils@npm:3.21.0" @@ -6802,6 +7043,16 @@ __metadata: languageName: node linkType: hard +"watchpack@npm:2.4.0": + version: 2.4.0 + resolution: "watchpack@npm:2.4.0" + dependencies: + glob-to-regexp: ^0.4.1 + graceful-fs: ^4.1.2 + checksum: 23d4bc58634dbe13b86093e01c6a68d8096028b664ab7139d58f0c37d962d549a940e98f2f201cecdabd6f9c340338dc73ef8bf094a2249ef582f35183d1a131 + languageName: node + linkType: hard + "web-streams-polyfill@npm:^3.0.3": version: 3.2.0 resolution: "web-streams-polyfill@npm:3.2.0"