Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions apps/services/auth/ids-api/src/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2360,7 +2360,7 @@ components:
expiration:
format: date-time
type: string
example: 2025-05-07T12:54:09.342Z
example: 2025-05-08T07:40:13.069Z
consumedTime:
format: date-time
type: string
Expand Down Expand Up @@ -2413,7 +2413,7 @@ components:
expiration:
format: date-time
type: string
example: 2025-05-07T12:54:09.401Z
example: 2025-05-08T07:40:13.132Z
consumedTime:
type: object
data:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -343,11 +343,11 @@ components:
validFrom:
format: date-time
type: string
example: 2025-05-05T12:54:04.011Z
example: 2025-05-06T07:40:07.938Z
validTo:
format: date-time
type: string
example: 2025-05-07T12:54:04.011Z
example: 2025-05-08T07:40:07.938Z
required:
- code
- description
Expand Down
10 changes: 5 additions & 5 deletions apps/services/auth/personal-representative/src/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1032,11 +1032,11 @@ components:
validFrom:
format: date-time
type: string
example: 2025-05-05T12:54:07.876Z
example: 2025-05-06T07:40:11.453Z
validTo:
format: date-time
type: string
example: 2025-05-07T12:54:07.876Z
example: 2025-05-08T07:40:11.453Z
required:
- code
- description
Expand Down Expand Up @@ -1135,7 +1135,7 @@ components:
validTo:
format: date-time
type: string
example: 2025-05-07T12:54:07.866Z
example: 2025-05-08T07:40:11.441Z
rights:
example: >-
[{code:"health", description:"health descr", validFrom:"xx.yy.zzzz",
Expand Down Expand Up @@ -1222,7 +1222,7 @@ components:
validTo:
format: date-time
type: string
example: 2025-05-07T12:54:07.869Z
example: 2025-05-08T07:40:11.444Z
rightCodes:
example: '["health", "finance"]'
description: >-
Expand Down Expand Up @@ -1254,7 +1254,7 @@ components:
validTo:
format: date-time
type: string
example: 2025-05-07T12:54:07.874Z
example: 2025-05-08T07:40:11.450Z
required:
- code
- name
Expand Down
4 changes: 2 additions & 2 deletions apps/services/endorsements/api/src/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1054,11 +1054,11 @@ components:
openedDate:
format: date-time
type: string
default: 2025-05-06T12:51:50.224Z
default: 2025-05-07T07:37:58.838Z
closedDate:
format: date-time
type: string
default: 2025-06-06T12:51:50.224Z
default: 2025-06-07T07:37:58.838Z
adminLock:
type: boolean
default: false
Expand Down
4 changes: 2 additions & 2 deletions apps/services/user-notification/src/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -806,11 +806,11 @@ components:
created:
format: date-time
type: string
example: '2025-05-06T12:51:43.540Z'
example: '2025-05-07T07:37:52.399Z'
updated:
format: date-time
type: string
example: '2025-05-06T12:51:43.540Z'
example: '2025-05-07T07:37:52.399Z'
read:
type: boolean
example: false
Expand Down
53 changes: 49 additions & 4 deletions apps/tax/.eslintrc.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,55 @@
{
"extends": ["plugin:@nx/react", "../../.eslintrc.json"],
"ignorePatterns": ["!**/*"],
"rules": {},
"rules": {
"@nx/enforce-module-boundaries": [
"error",
{
"enforceBuildableLibDependency": true,
"allowCircularSelfDependency": true,
"allow": ["../../../infra/src/dsl"],
"depConstraints": [
{
"sourceTag": "*",
"onlyDependOnLibsWithTags": ["*"]
}
]
}
],
"simple-import-sort/imports": [
"warn",
{
"groups": [
// React related packages come first, followed by all external imports.
["^react", "^\\w", "^@(?!island).+"],
// Then island.is packages.
["^(@island.is).*"],
// Then all other imports in this order: "../", "./", "./css"
[
"^\\.\\.(?!/?$)",
"^\\.\\./?$",
"^\\./(?=.*/)(?!/?$)",
"^\\.(?!/?$)",
"^\\./?$",
"^.+\\.?(css)$"
]
]
}
]
},
"plugins": ["simple-import-sort"],
"overrides": [
{ "files": ["*.ts", "*.tsx", "*.js", "*.jsx"], "rules": {} },
{ "files": ["*.ts", "*.tsx"], "rules": {} },
{ "files": ["*.js", "*.jsx"], "rules": {} }
{
"files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
"rules": {}
},
{
"files": ["*.ts", "*.tsx"],
"rules": {}
},
{
"files": ["*.js", "*.jsx"],
"rules": {}
}
]
}
83 changes: 83 additions & 0 deletions apps/tax/components/FixedNav/FixedNav.css.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
import { style } from '@vanilla-extract/css'

import { theme, themeUtils } from '@island.is/island-ui/theme'
import { STICKY_NAV_HEIGHT } from '@island.is/tax/constants'

export const wrapper = style({
position: 'fixed',
display: 'flex',
width: '100%',
left: 0,
right: 0,
top: 0,
margin: 0,
padding: 0,
height: STICKY_NAV_HEIGHT,
zIndex: 1000,
backgroundColor: theme.color.blue400,
transform: `translateY(-100%)`,
opacity: 0,
visibility: 'hidden',
transition:
'opacity 150ms ease, transform 150ms ease, visibility 0ms linear 150ms',
})

export const container = style({
margin: '0 auto',
padding: 0,
})

export const show = style({
transform: `translateY(0%)`,
opacity: 1,
visibility: 'visible',
transition:
'opacity 150ms ease, transform 150ms ease, visibility 0ms linear 0ms',
})

export const arrowButton = style({
display: 'flex',
height: 40,
width: 40,
alignItems: 'center',
justifyContent: 'center',
fontWeight: theme.typography.semiBold,
borderRadius: 8,
outline: 'none',
cursor: 'pointer',
transition: 'box-shadow .25s, color .25s, background-color .25s',
backgroundColor: theme.color.transparent,
boxShadow: `inset 0 0 0 1px ${theme.color.white}`,
color: theme.color.white,
':active': {
boxShadow: `inset 0 0 0 3px ${theme.color.mint400}`,
},
':focus': {
color: theme.color.dark400,
backgroundColor: theme.color.mint400,
boxShadow: `inset 0 0 0 3px ${theme.color.mint400}`,
},
':hover': {
backgroundColor: theme.color.transparent,
boxShadow: `inset 0 0 0 2px ${theme.color.dark100}`,
color: theme.color.dark100,
},
selectors: {
'&:focus:active': {
backgroundColor: theme.color.transparent,
boxShadow: `inset 0 0 0 3px ${theme.color.mint400}`,
},
},
...themeUtils.responsiveStyle({
md: {
height: 48,
width: 48,
},
}),
})

export const logo = style({
display: 'flex',
justifyContent: 'center',
alignItems: 'center',
})
107 changes: 107 additions & 0 deletions apps/tax/components/FixedNav/FixedNav.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
import React, { FC, useState } from 'react'
import cn from 'classnames'

import {
Box,
FocusableBox,
GridContainer,
Hidden,
Icon,
Logo,
} from '@island.is/island-ui/core'

import { useScrollPosition } from '../../hooks/useScrollPosition'
import * as styles from './FixedNav.css'

export const FixedNav: FC<React.PropsWithChildren<unknown>> = () => {
const [show, setShow] = useState<boolean>(false)

useScrollPosition(
({ prevPos, currPos }) => {
let px = -600

if (typeof window !== `undefined`) {
px = window.innerHeight * -1
}

const goingDown = currPos.y < prevPos.y
const canShow = px > currPos.y

setShow(canShow && !goingDown)
},
[setShow],
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore make web strict
null,
false,
150,
)

return (
<div className={cn(styles.wrapper, { [styles.show]: show })}>
<GridContainer className={styles.container}>
<Box
paddingX={[3, 3, 6]}
paddingY={1}
width="full"
display="flex"
height="full"
flexDirection="row"
alignItems="center"
justifyContent="spaceBetween"
>
<FocusableBox
href={'#'}
marginRight={[1, 1, 1, 2]}
>
<Box className={styles.logo}>
<Hidden above="sm">
<Logo
id="fixed-nav-logo-icon1"
width={24}
height={24}
solid={true}
iconOnly
/>
</Hidden>
<Hidden below="md">
<Logo
id="fixed-nav-logo-icon2"
width={32}
height={32}
solid={true}
iconOnly
/>
</Hidden>
</Box>
</FocusableBox>

<Box
display="flex"
height="full"
width="full"
flexDirection="row"
alignItems="center"
justifyContent="flexEnd"
>
<Box>
SearchInput
</Box>
<Box marginLeft={[1, 1, 1, 2]}>
<button
className={styles.arrowButton}
onClick={() => {
window.scrollTo(0, 0)
}}
>
<Icon icon="arrowUp" color="white" />
</button>
</Box>
</Box>
</Box>
</GridContainer>
</div>
)
}

export default FixedNav
Loading
Loading