diff --git a/.github/workflows/main-v3.yaml b/.github/workflows/main-v3.yaml index 8ea96496..c5b6d539 100644 --- a/.github/workflows/main-v3.yaml +++ b/.github/workflows/main-v3.yaml @@ -45,7 +45,7 @@ jobs: - name: Upload build uses: actions/upload-artifact@v4 - if: github.ref == 'refs/heads/master' || github.event_name == 'workflow_dispatch' + if: github.ref == 'refs/heads/master' || github.event_name == 'workflow_dispatch' || github.ref == 'refs/heads/react19' with: name: app-dist path: dist @@ -97,3 +97,29 @@ jobs: cache_invalidation: true headers: |- cache-control: public, max-age=600 + + deploy-react-19: + name: Deploy to dev(react 19) + runs-on: ubuntu-latest + needs: build + if: github.ref == 'refs/heads/react19' + environment: dev-cdn-react19 + permissions: + contents: 'read' + id-token: 'write' + steps: + - uses: actions/download-artifact@v4 + with: + name: app-dist + path: dist + - name: Upload to CDN prod path + uses: nais/deploy/actions/cdn-upload/v2@master + with: + team: personoversikt + source: dist + destination: /internarbeidsflate-decorator-v3/dev/react19 + cache_invalidation: true + identity_provider: ${{ secrets.NAIS_WORKLOAD_IDENTITY_PROVIDER }} + project_id: ${{ vars.NAIS_MANAGEMENT_PROJECT_ID }} + headers: |- + cache-control: public, max-age=600 diff --git a/bun.lock b/bun.lock index 8944e4c9..5bdb5e2e 100644 --- a/bun.lock +++ b/bun.lock @@ -9,7 +9,7 @@ "@navikt/ds-react": "^7.17.0", "@navikt/ds-tailwind": "^7.17.0", "@navikt/ds-tokens": "^7.17.0", - "@navikt/navspa": "^6.2.0", + "@navikt/navspa": "^7.0.0", "@tanstack/query-core": "^5.67.1", "classnames": "^2.5.1", "use-sync-external-store": "^1.4.0", @@ -21,8 +21,8 @@ "@tailwindcss/postcss": "^4.0.5", "@tailwindcss/vite": "^4.0.10", "@types/bun": "^1.2.1", - "@types/react": "^18.3.12", - "@types/react-dom": "^18.3.1", + "@types/react": "^19.0.8", + "@types/react-dom": "^19.0.3", "@vitejs/plugin-react": "^4.3.4", "concurrently": "^9.1.2", "eslint": "^9.19.0", @@ -33,8 +33,8 @@ "msw": "^2.7.0", "postcss-cli": "^11.0.0", "prettier": "^3.5.3", - "react": "^18.3.1", - "react-dom": "^18.3.1", + "react": "^19.0.0", + "react-dom": "^19.0.0", "tailwindcss": "^4.0.10", "typescript": "^5.8.2", "typescript-eslint": "^8.26.0", @@ -43,8 +43,8 @@ "vitest-websocket-mock": "^0.4.0", }, "peerDependencies": { - "react": "^18.2.0", - "react-dom": "^18.2.0", + "react": "^19.0.0", + "react-dom": "^19.0.0", }, }, }, @@ -219,7 +219,7 @@ "@navikt/ds-tokens": ["@navikt/ds-tokens@7.17.0", "https://npm.pkg.github.com/download/@navikt/ds-tokens/7.17.0/073f049fb3b538c9b21650cdffafe89a3dcca389", {}, "sha512-q7I750qmIKauiX/ZMJFRZLFJ0RA1bntmKkvpBOh0lrJOL6gZMrLarl8codzGODj8a7MeS6TbJHkeMHYwHOzO6A=="], - "@navikt/navspa": ["@navikt/navspa@6.2.0", "https://npm.pkg.github.com/download/@navikt/navspa/6.2.0/fedd207df70dff922a729cef18a28112274202c6", { "dependencies": { "loadjs": "^4.3.0" }, "peerDependencies": { "react": ">=16.6.0 || 17 || 18", "react-dom": ">=16.6.0 || 17 || 18" } }, "sha512-ix3lqWZWIhIAlmFL883hbmD9kjWk9qeijEGXiQOxPzanpWZ4EeeZhEsXng+MftDurJk04y3Q9i/1x0V7l34O9w=="], + "@navikt/navspa": ["@navikt/navspa@7.0.0", "https://npm.pkg.github.com/download/@navikt/navspa/7.0.0/1dd787b54c65709657f96d0f9a62f2f864d0f29d", { "dependencies": { "loadjs": "^4.3.0" }, "peerDependencies": { "react": ">=19.0.0", "react-dom": ">=19.0.0" } }, "sha512-ZyXEr0hweUOY92LA1QJjiSHZQSAMjb3rGpYn6WV44uj8e0lunD4sJ60hbZDny8tX6YjVVcLA7IvgXeAQ6w+gxA=="], "@nodelib/fs.scandir": ["@nodelib/fs.scandir@2.1.5", "", { "dependencies": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" } }, "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g=="], @@ -323,11 +323,9 @@ "@types/node": ["@types/node@22.7.4", "", { "dependencies": { "undici-types": "~6.19.2" } }, "sha512-y+NPi1rFzDs1NdQHHToqeiX2TIS79SWEAw9GYhkkx8bD0ChpfqC+n2j5OXOCpzfojBEBt6DnEnnG9MY0zk1XLg=="], - "@types/prop-types": ["@types/prop-types@15.7.13", "", {}, "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA=="], + "@types/react": ["@types/react@19.0.10", "", { "dependencies": { "csstype": "^3.0.2" } }, "sha512-JuRQ9KXLEjaUNjTWpzuR231Z2WpIwczOkBEIvbHNCzQefFIT0L8IqE6NV6ULLyC1SI/i234JnDoMkfg+RjQj2g=="], - "@types/react": ["@types/react@18.3.12", "", { "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" } }, "sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw=="], - - "@types/react-dom": ["@types/react-dom@18.3.1", "", { "dependencies": { "@types/react": "*" } }, "sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ=="], + "@types/react-dom": ["@types/react-dom@19.0.4", "", { "peerDependencies": { "@types/react": "^19.0.0" } }, "sha512-4fSQ8vWFkg+TGhePfUzVmat3eC14TXYSsiiDSLI0dVLsrm9gZFABjPy/Qu6TKgl1tq1Bu1yDsuQgY3A3DOjCcg=="], "@types/statuses": ["@types/statuses@2.0.5", "", {}, "sha512-jmIUGWrAiwu3dZpxntxieC+1n/5c3mjrImkmOSQ2NC5uP6cYO4aAZDdSmRcI5C1oiTmqlZGHC+/NmJrKogbP5A=="], @@ -615,8 +613,6 @@ "lodash.merge": ["lodash.merge@4.6.2", "", {}, "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="], - "loose-envify": ["loose-envify@1.4.0", "", { "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" }, "bin": { "loose-envify": "cli.js" } }, "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q=="], - "loupe": ["loupe@3.1.3", "", {}, "sha512-kkIp7XSkP78ZxJEsSxW3712C6teJVoeHHwgo9zJ380de7IYyJ2ISlxojcH2pC5OFLewESmnRi/+XCDIEEVyoug=="], "lru-cache": ["lru-cache@5.1.1", "", { "dependencies": { "yallist": "^3.0.2" } }, "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w=="], @@ -697,11 +693,11 @@ "queue-microtask": ["queue-microtask@1.2.3", "", {}, "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A=="], - "react": ["react@18.3.1", "", { "dependencies": { "loose-envify": "^1.1.0" } }, "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ=="], + "react": ["react@19.0.0", "", {}, "sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ=="], "react-day-picker": ["react-day-picker@9.5.0", "", { "dependencies": { "@date-fns/tz": "^1.2.0", "date-fns": "^4.1.0", "date-fns-jalali": "^4.1.0-0" }, "peerDependencies": { "react": ">=16.8.0" } }, "sha512-WmJnPFVLnKh5Qscm7wavMNg86rqPverSWjx+zgK8/ZmGRSQ8c8OoqW10RI+AzAfT2atIxImpCUU2R9Z7Xb2SUA=="], - "react-dom": ["react-dom@18.3.1", "", { "dependencies": { "loose-envify": "^1.1.0", "scheduler": "^0.23.2" }, "peerDependencies": { "react": "^18.3.1" } }, "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw=="], + "react-dom": ["react-dom@19.0.0", "", { "dependencies": { "scheduler": "^0.25.0" }, "peerDependencies": { "react": "^19.0.0" } }, "sha512-4GV5sHFG0e/0AD4X+ySy6UJd3jVl1iNsNHdpad0qhABJ11twS3TTBnseqsKurKcsNqCEFeGL3uLpVChpIO3QfQ=="], "react-refresh": ["react-refresh@0.14.2", "", {}, "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA=="], @@ -723,7 +719,7 @@ "rxjs": ["rxjs@7.8.1", "", { "dependencies": { "tslib": "^2.1.0" } }, "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg=="], - "scheduler": ["scheduler@0.23.2", "", { "dependencies": { "loose-envify": "^1.1.0" } }, "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ=="], + "scheduler": ["scheduler@0.25.0", "", {}, "sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA=="], "semver": ["semver@6.3.1", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="], @@ -871,8 +867,6 @@ "@types/babel__traverse/@babel/types": ["@babel/types@7.25.6", "", { "dependencies": { "@babel/helper-string-parser": "^7.24.8", "@babel/helper-validator-identifier": "^7.24.7", "to-fast-properties": "^2.0.0" } }, "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw=="], - "@types/react-dom/@types/react": ["@types/react@18.3.11", "", { "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" } }, "sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ=="], - "@typescript-eslint/typescript-estree/fast-glob": ["fast-glob@3.3.2", "", { "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", "micromatch": "^4.0.4" } }, "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow=="], "@typescript-eslint/typescript-estree/minimatch": ["minimatch@9.0.5", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="], diff --git a/package.json b/package.json index e078e0a2..ee232085 100644 --- a/package.json +++ b/package.json @@ -36,8 +36,8 @@ "@tailwindcss/vite": "^4.0.10", "@tailwindcss/postcss": "^4.0.5", "@types/bun": "^1.2.1", - "@types/react": "^18.3.12", - "@types/react-dom": "^18.3.1", + "@types/react": "^19.0.8", + "@types/react-dom": "^19.0.3", "@vitejs/plugin-react": "^4.3.4", "concurrently": "^9.1.2", "eslint": "^9.19.0", @@ -48,8 +48,8 @@ "msw": "^2.7.0", "postcss-cli": "^11.0.0", "prettier": "^3.5.3", - "react": "^18.3.1", - "react-dom": "^18.3.1", + "react": "^19.0.0", + "react-dom": "^19.0.0", "tailwindcss": "^4.0.10", "typescript": "^5.8.2", "typescript-eslint": "^8.26.0", @@ -58,8 +58,8 @@ "vitest-websocket-mock": "^0.4.0" }, "peerDependencies": { - "react": "^18.2.0", - "react-dom": "^18.2.0" + "react": "^19.0.0", + "react-dom": "^19.0.0" }, "dependencies": { "@navikt/aksel-icons": "^7.17.0", @@ -67,7 +67,7 @@ "@navikt/ds-react": "^7.17.0", "@navikt/ds-tailwind": "^7.17.0", "@navikt/ds-tokens": "^7.17.0", - "@navikt/navspa": "^6.2.0", + "@navikt/navspa": "^7.0.0", "@tanstack/query-core": "^5.67.1", "classnames": "^2.5.1", "use-sync-external-store": "^1.4.0", diff --git a/tsconfig.json b/tsconfig.json index 8a77ca96..976589e0 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -12,7 +12,7 @@ "resolveJsonModule": true, "isolatedModules": true, "emitDeclarationOnly": true, - "jsx": "react", + "jsx": "react-jsx", "strict": true, "noUnusedLocals": true, "noUnusedParameters": true, diff --git a/vite.config.ts b/vite.config.ts index 47656ff3..81556416 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -9,7 +9,7 @@ export default defineConfig({ rollupOptions: { input: 'src/index.ts', preserveEntrySignatures: 'exports-only', - // external: ["react", "react-dom"], + //external: ['react', 'react-dom'], output: { entryFileNames: 'bundle.js', // format: "iife",