Skip to content

Commit a128398

Browse files
authored
Merge pull request #416 from navikt/dev
[PROD] Småfikser for feil lenker
2 parents bfbce03 + d264b4e commit a128398

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+533
-403
lines changed

.eslintrc.cjs

-18
This file was deleted.

.github/dependabot.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
version: 2
22
updates:
3-
- package-ecosystem: "npm"
4-
directory: "/"
3+
- package-ecosystem: 'npm'
4+
directory: '/'
55
schedule:
6-
interval: "daily"
6+
interval: 'daily'
77
open-pull-requests-limit: 20
88
groups:
99
navikt-aksel:

.github/workflows/main-v3.yaml

+18-12
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,12 @@ jobs:
1818
- name: Install bun
1919
uses: oven-sh/setup-bun@v1
2020

21+
- name: Install lint dependencies
22+
run: bun install
23+
24+
- name: Run lint
25+
run: bun run lint
26+
2127
- name: Install dependencies (bun)
2228
working-directory: './packages/internarbeidsflate-decorator-v3'
2329
run: bun install
@@ -34,20 +40,20 @@ jobs:
3440
if: github.ref == 'refs/heads/dev'
3541
uses: nais/deploy/actions/cdn-upload/v2@master
3642
with:
37-
team: personoversikt
38-
source: ./packages/internarbeidsflate-decorator-v3/dist/
39-
destination: /internarbeidsflate-decorator-v3/dev/latest
40-
no_cache_paths: "internarbeidsflate-decorator-v3/dev/latest/dist/asset-manifest.json,internarbeidsflate-decorator-v3/dev/latest/dist/bundle.js,internarbeidsflate-decorator-v3/dev/latest/dist/index.css"
41-
identity_provider: ${{ secrets.NAIS_WORKLOAD_IDENTITY_PROVIDER }}
42-
project_id: ${{ vars.NAIS_MANAGEMENT_PROJECT_ID }}
43+
team: personoversikt
44+
source: ./packages/internarbeidsflate-decorator-v3/dist/
45+
destination: /internarbeidsflate-decorator-v3/dev/latest
46+
no_cache_paths: 'internarbeidsflate-decorator-v3/dev/latest/dist/asset-manifest.json,internarbeidsflate-decorator-v3/dev/latest/dist/bundle.js,internarbeidsflate-decorator-v3/dev/latest/dist/index.css'
47+
identity_provider: ${{ secrets.NAIS_WORKLOAD_IDENTITY_PROVIDER }}
48+
project_id: ${{ vars.NAIS_MANAGEMENT_PROJECT_ID }}
4349

4450
- name: Upload to CDN prod path
4551
if: github.ref == 'refs/heads/master'
4652
uses: nais/deploy/actions/cdn-upload/v2@master
4753
with:
48-
team: personoversikt
49-
source: ./packages/internarbeidsflate-decorator-v3/dist/
50-
destination: /internarbeidsflate-decorator-v3/prod/latest
51-
no_cache_paths: "internarbeidsflate-decorator-v3/prod/latest/dist/asset-manifest.json,internarbeidsflate-decorator-v3/prod/latest/dist/bundle.js,internarbeidsflate-decorator-v3/prod/latest/dist/index.css"
52-
identity_provider: ${{ secrets.NAIS_WORKLOAD_IDENTITY_PROVIDER }}
53-
project_id: ${{ vars.NAIS_MANAGEMENT_PROJECT_ID }}
54+
team: personoversikt
55+
source: ./packages/internarbeidsflate-decorator-v3/dist/
56+
destination: /internarbeidsflate-decorator-v3/prod/latest
57+
no_cache_paths: 'internarbeidsflate-decorator-v3/prod/latest/dist/asset-manifest.json,internarbeidsflate-decorator-v3/prod/latest/dist/bundle.js,internarbeidsflate-decorator-v3/prod/latest/dist/index.css'
58+
identity_provider: ${{ secrets.NAIS_WORKLOAD_IDENTITY_PROVIDER }}
59+
project_id: ${{ vars.NAIS_MANAGEMENT_PROJECT_ID }}

.prettierrc.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
{
22
"tabWidth": 2,
33
"singleQuote": true
4-
}
4+
}

bun.lockb

7.71 KB
Binary file not shown.

eslint.config.js

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
import eslint from '@eslint/js';
2+
import tseslint from 'typescript-eslint';
3+
import prettier from 'eslint-plugin-prettier/recommended';
4+
5+
export default tseslint.config(
6+
eslint.configs.recommended,
7+
...tseslint.configs.recommendedTypeChecked,
8+
{
9+
ignores: ['**/dist/**/*'],
10+
languageOptions: {
11+
parserOptions: {
12+
project: ['./tsconfig.json', './packages/*/tsconfig.json'],
13+
tsconfigRootDir: import.meta.dirname,
14+
},
15+
},
16+
rules: {
17+
'@typescript-eslint/no-floating-promises': 'warn',
18+
'@typescript-eslint/no-misused-promises': [
19+
'error',
20+
{
21+
checksVoidReturn: false,
22+
},
23+
],
24+
},
25+
},
26+
{
27+
files: ['**/*.js', 'vitest.workspace.ts'],
28+
extends: [tseslint.configs.disableTypeChecked],
29+
},
30+
{
31+
ignores: ['**/postcss.config.cjs'],
32+
},
33+
prettier,
34+
);

package.json

+11-2
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,19 @@
77
"packages/internarbeidsflate-decorator-v3"
88
],
99
"scripts": {
10-
"clean": "rm -rf node_modules packages/dev-server/node_modules packages/internarbeidsflate-decorator-v3/node_modules bun.lockb packages/dev-server/bun.lockb packages/internarbeidsflate-decorator-v3/bun.lockb"
10+
"clean": "rm -rf node_modules packages/dev-server/node_modules packages/internarbeidsflate-decorator-v3/node_modules bun.lockb packages/dev-server/bun.lockb packages/internarbeidsflate-decorator-v3/bun.lockb",
11+
"lint": "eslint",
12+
"format": "prettier . --write"
1113
},
1214
"devDependencies": {
13-
"vite-plugin-dts": "^3.6.4"
15+
"@eslint/js": "^9.2.0",
16+
"eslint": "^9.2.0",
17+
"eslint-config-prettier": "^9.1.0",
18+
"eslint-plugin-prettier": "^5.1.3",
19+
"eslint-plugin-react-hooks": "^4.6.2",
20+
"eslint-plugin-react-refresh": "^0.4.6",
21+
"prettier": "^3.2.5",
22+
"typescript-eslint": "^7.8.0"
1423
},
1524
"dependencies": {
1625
"@navikt/navspa": "^6.0.1"

packages/dev-server/CustomServer.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
/* eslint-disable @typescript-eslint/no-explicit-any */
21
import { Serve, Server } from 'bun';
32
import {
43
Route,
@@ -248,9 +247,9 @@ export class CustomServer {
248247
};
249248
}
250249

251-
const hasParam = <T extends Record<string, any>>(
250+
const hasParam = <T extends Record<string, string>>(
252251
key: string,
253252
params: T,
254-
): params is T & { [K in typeof key]: any } => {
253+
): params is T & { [K in typeof key]: string } => {
255254
return key in params && params[key] !== '';
256255
};

packages/dev-server/index.ts

+14-13
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
/* eslint-disable @typescript-eslint/no-explicit-any */
21
import { CustomServer } from './CustomServer';
32
import { BadRequestResponse } from './responses/BadRequestResponse';
43
import { InternalServerErrorResponse } from './responses/InternalServerErrorResponse';
@@ -8,6 +7,10 @@ import { NotFoundResponse } from './responses/NotFoundResponse';
87
import { BunServerWebsocket } from './types';
98

109
type Metadata = { ident: string };
10+
type Veileder = {
11+
enheter: { enhetId: string }[];
12+
};
13+
type Event = { eventType: 'NY_AKTIV_ENHET' | 'NY_AKTIV_BRUKER'; verdi: string };
1114

1215
const serve = () => {
1316
type Context = {
@@ -52,7 +55,7 @@ const serve = () => {
5255
return new BadRequestResponse('Missing enhetId');
5356
}
5457

55-
const response = mockMe.enheter.find(
58+
const response = (mockMe as Veileder).enheter.find(
5659
(enhet) => enhet.enhetId === request.params.enhetId,
5760
);
5861

@@ -68,11 +71,9 @@ const serve = () => {
6871
return new BadRequestResponse('No body provided');
6972
}
7073

71-
const {
72-
eventType,
73-
verdi,
74-
}: { eventType: 'NY_AKTIV_ENHET' | 'NY_AKTIV_BRUKER'; verdi: string } =
75-
await Bun.readableStreamToJSON(request.body);
74+
const { eventType, verdi } = (await Bun.readableStreamToJSON(
75+
request.body,
76+
)) as Event;
7677

7778
if (eventType === 'NY_AKTIV_BRUKER') {
7879
context.aktivBruker = verdi;
@@ -94,9 +95,9 @@ const serve = () => {
9495
return new BadRequestResponse('No body provided');
9596
}
9697

97-
const { code }: { code: string } = await Bun.readableStreamToJSON(
98-
request.body,
99-
);
98+
const { code } = (await Bun.readableStreamToJSON(request.body)) as {
99+
code: string;
100+
};
100101

101102
const fnr = codeToFnr[code];
102103

@@ -112,9 +113,9 @@ const serve = () => {
112113
return new BadRequestResponse('No body provided');
113114
}
114115

115-
const { fnr }: { fnr: string } = await Bun.readableStreamToJSON(
116-
request.body,
117-
);
116+
const { fnr } = (await Bun.readableStreamToJSON(request.body)) as {
117+
fnr: string;
118+
};
118119

119120
const code = crypto.randomUUID();
120121

packages/dev-server/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,4 @@
1414
"peerDependencies": {
1515
"typescript": "^5.0.0"
1616
}
17-
}
17+
}

packages/dev-server/tsconfig.json

+2-4
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,7 @@
1717
"allowJs": true,
1818
"types": [
1919
"bun-types" // add Bun global
20-
],
20+
]
2121
},
22-
"references": [
23-
{ "path": "../../tsconfig.json" }
24-
]
22+
"references": [{ "path": "../../tsconfig.json" }]
2523
}

packages/dev-server/types.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ export interface WebSocketRoute<T = any> extends BaseRoute {
3737
};
3838
}
3939

40-
export type Params = Record<string, any>;
40+
export type Params = Record<string, string>;
4141
export type BunServerMetadata = BaseRoute & {
4242
metadata?: Record<string, any> | undefined;
4343
};

packages/internarbeidsflate-decorator-v3/package.json

-7
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
"dev:fullscreen": "VITE_DECORATOR_MODE=fullscreen bunx --bun vite",
2121
"build": "bunx --bun vite build",
2222
"build:watch": "bunx --bun vite build --watch",
23-
"lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
2423
"build-and-preview": "bunx --bun vite build && bunx --bun vite preview",
2524
"preview": "bunx --bun vite preview",
2625
"build:preview": "bunx --bun vite build --config preview.vite.config.ts",
@@ -29,17 +28,11 @@
2928
"devDependencies": {
3029
"@types/react": "^18.2.75",
3130
"@types/react-dom": "^18.2.24",
32-
"@typescript-eslint/eslint-plugin": "^7.6.0",
33-
"@typescript-eslint/parser": "^7.6.0",
3431
"@vitejs/plugin-react": "^4.2.1",
3532
"autoprefixer": "^10.4.19",
3633
"concurrently": "^8.2.2",
37-
"eslint": "^8.57.0",
38-
"eslint-plugin-react-hooks": "^4.6.0",
39-
"eslint-plugin-react-refresh": "^0.4.6",
4034
"msw": "^2.2.13",
4135
"postcss": "^8.4.38",
42-
"prettier": "^3.2.5",
4336
"react": "^18.2.0",
4437
"react-dom": "^18.2.0",
4538
"tailwindcss": "^3.4.3",
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
11
module.exports = () => ({
2-
plugins: [
3-
require('tailwindcss')(),
4-
require('autoprefixer')()
5-
]
6-
})
2+
plugins: [require('tailwindcss')(), require('autoprefixer')()],
3+
});

packages/internarbeidsflate-decorator-v3/src/App.tsx

-70
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
import React, { PropsWithChildren } from 'react';
2+
import './index.css';
3+
import { AppProps } from './types/AppProps';
4+
import useAppLogic from './hooks/useAppLogic';
5+
import Banner from './components/Banner';
6+
import Menu from './components/Menu';
7+
import NewUserModal from './components/modals/NewUserModal';
8+
import NewEnhetModal from './components/modals/NewEnhetModal';
9+
import ErrorMessage from './components/ErrorMessageDisplay';
10+
import { useOnOutsideClick } from './hooks/useOnOutsideClick';
11+
import { useAppState } from './states/AppState';
12+
13+
const Decorator: React.FC<PropsWithChildren<AppProps>> = (props) => {
14+
useAppLogic(props);
15+
const ref = useOnOutsideClick<HTMLElement>(() =>
16+
useAppState.setState({ open: false }),
17+
);
18+
19+
return (
20+
<>
21+
<div className="dekorator" data-theme="internarbeidsflatedecorator-theme">
22+
<header ref={ref} className="dr-font-arial dr-text-white">
23+
<Banner />
24+
<Menu />
25+
<ErrorMessage />
26+
</header>
27+
</div>
28+
<NewUserModal />
29+
<NewEnhetModal />
30+
</>
31+
);
32+
};
33+
34+
export default Decorator;

0 commit comments

Comments
 (0)