Ivar Conradi Østhus
e339e5c01f
fix: add logout as an explicit call ( #311 )
...
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
2021-07-20 22:56:57 +02:00
Fredrik Strand Oseberg
1a63d91f95
Feat/new navigation ( #314 )
...
* feat: change color scheme
* feat: add navigation menu
* fix: add bg image
* fix: add archive and strategies to navigation
* fix: round corners
* feat: mobile view project details
* feat: mobile view navigation
* fix: only show menu if user is admin
* fix: rename navigation
* fix: only render relevant routes for oss context
* feat: add project actions
* feat: add icons
* feat: add breadcrumbs
* fix: place breadcrumbs absolutely
* fix: adjust breadcrumbs
* fix: toast
* fix: cleanup
* fix login
* fix: breadcrumbs
* fix: add billing link
* fix: links
* fix: feature view
* fix: path to go back
* fix: remove default value
* fix: remove unused imports
* refactor: delete outdated test
* fix: add item to filter in breadcrumb
* fix: remove console log
2021-07-16 15:41:54 +02:00
Fredrik Strand Oseberg
1c2381d9a0
fix: run use effect when value changes, not object ( #315 )
...
* fix: run use effect when value changes, not object
* fix: add user to archived toggle view
* fix: remove console log
2021-07-16 11:21:53 +02:00
Fredrik Oseberg
f1a714e7e1
fix: add flex wrap
2021-07-07 17:05:56 +02:00
Fredrik Strand Oseberg
b8469b5a98
Fix/pagination ( #313 )
...
* fix: add pagination page rules
* fix: set amount of features to paginate to 9
2021-07-07 16:26:16 +02:00
Fredrik Strand Oseberg
85a7c55fdf
Feat/group by projects ( #308 )
...
This PR adds support for projects as a first class citizen, and toggling features on in different environments.
2021-07-07 11:04:36 +02:00
Fredrik Oseberg
151fccc262
fix: add missing icons
2021-06-29 10:35:09 +02:00
Fredrik Strand Oseberg
10eabb366f
Offline mode ( #312 )
...
* move all icons to offline mode
* Reorder imports
* revert yarn.lock to original
* resolve errors
* use ConditionalRender, revert material icon css
* add all other font weights
* fix: add library icon
Co-authored-by: Aneesh Relan <aneesh.r@lucideustech.com>
2021-06-29 10:21:54 +02:00
Ivar Conradi Østhus
1d72f17284
fix: update feedback url
2021-06-08 13:32:43 +02:00
Ivar Conradi Østhus
39de00f2fe
fix: add null check for dueDate
2021-06-07 16:07:24 +02:00
Fredrik Strand Oseberg
7fddf04398
Feat/pnps ( #306 )
...
* feat: animation
* feat: setup api calls
* feat: try catch
* feat: refetch user
* fix: remove unused variables
* fix: call hideFeedback
* fix: return expression
2021-06-07 10:29:08 +02:00
Fredrik Strand Oseberg
a17e2f29b2
Fix/customer journey patches ( #304 )
...
* fix: logo
* fix: move proclamation show logic to useEffect
* fix: add spacing on strategy headers
* fix: add role sorting
2021-06-07 10:15:30 +02:00
Fredrik Strand Oseberg
0e32583fa0
fix: add check for obscure error ( #305 )
2021-06-07 10:09:49 +02:00
Fredrik Oseberg
281e027c8a
fix: passwordchecker
2021-05-31 13:55:20 +02:00
Ivar Conradi Østhus
cf1cae9b84
fix: Project actions need to checkAccess based on projectId
2021-05-25 19:08:57 +02:00
Fredrik Oseberg
413818f6b4
fix: reset border radius on mobile
2021-05-21 14:17:32 +02:00
Fredrik Strand Oseberg
70c5cd7045
feat: update color scheme and logo ( #301 )
...
* feat: update color scheme
* fix: update favicon
* fix: remove drawer title container padding and font size
2021-05-21 14:06:40 +02:00
Fredrik Strand Oseberg
bd93c5d131
Fix/standalone pages ( #300 )
...
* feat: change layout
* fix: standalone banner styling
* fix: change styling for banner
* fix: login page
* fix: standalone pages
* fix: page tweaks
* fix: center text
* refactor: new user page
* refactor: remove uneccesary markup
* refactor: remove secondary actions from hosted
* fix: remove authdetails blob
* refactor: remove unused import
* fix: move overflow
* fix: add breakpoint to forgotten password
2021-05-21 14:01:28 +02:00
Ivar Conradi Østhus
998cdf98ab
feat: Add admin-invoice section ( #299 )
...
* feat: Add admin-invoice section
* fix: do not show invoice table if list is empty
2021-05-21 08:56:22 +02:00
Fredrik Oseberg
c0764a721a
fix: remove unused components
2021-05-18 13:03:28 +02:00
Fredrik Strand Oseberg
cbd4773cf6
Fix/customer journey ( #297 )
...
* fix: add onClose to archive toggle dialoge
* fix: add link to ConfirmUserLink component
* fix: remove icons from admin menu
* fix: move button on user list to top right
* refactor: move add new api key to header
* refactor: button order
* fix: lowercase dropdown buttons on feature toggle list
* refactor: reorganize reporting dashboard
* refactor: consistent buttons
* feat: enhance gradual rollout strategy creation
* feat: ui tweaks on project access
* fix: adjust divider
* fix: remove unused imports
* fix: update snapshots
* fix: add auth options to new user page
* fix: add divider
* fix: uncontrolled input
* fix: add data-loading to sorted by
* fix: update snapshots
* fix: navigate to project view on create and edit
* fix: rename project
* fix: add placeholder for feature toggle list component
* fix: conditonally render link
2021-05-18 12:59:48 +02:00
Ivar Conradi Østhus
e1034a458b
feat: simple project view ( #295 )
...
Co-authored-by: Fredrik Oseberg <fredrik.no@gmail.com>
2021-05-18 12:13:52 +02:00
Fredrik Strand Oseberg
960801b8aa
fix: use router match util ( #298 )
2021-05-18 12:10:57 +02:00
Ivar Conradi Østhus
a9d9a54bee
fix: typo
2021-05-14 22:46:11 +02:00
Fredrik Strand Oseberg
f585dcb2d7
fix: import correct component container ( #296 )
2021-05-12 12:30:54 +02:00
Ivar Conradi Østhus
a3199e2654
fix: footer
2021-05-11 15:02:07 +02:00
Fredrik Strand Oseberg
0454046e4d
fix: include invite link in email ( #294 )
2021-05-11 12:14:26 +02:00
Ivar Conradi Østhus
76f9cd0577
fix: add link to manage access to edit project
2021-05-11 12:04:57 +02:00
Ivar Conradi Østhus
e9d40ade85
fix: hosted auth should not need to load inital data
2021-05-10 21:30:52 +02:00
Fredrik Strand Oseberg
2f1848f6fd
Fix/feedback on create ( #292 )
...
* fix: copy feature toggle instead of setting newVariants on the reference
* fix: remove console log
* fix: update messages
* fix: give feedback on strategy actions
* fix: do not allow feature toggle to be created with empty name
* fix: disable delete if only one strategy is applied
* fix: archive view
* fix: set name field on add variant required
* fix: set required on feature toggle name
2021-05-10 13:22:22 +02:00
Ivar Conradi Østhus
06d7f9b609
fix: proper error handling for auth-settings being stored ( #293 )
...
Co-authored-by: Fredrik Strand Oseberg <fredrik.no@gmail.com>
2021-05-10 13:15:44 +02:00
Ivar Conradi Østhus
91860744f8
fix: api path for auth-config
2021-05-08 18:50:54 +02:00
Ivar Conradi Østhus
f744e67fce
fix: improve password auth extra options
2021-05-08 18:46:05 +02:00
Ivar Conradi Østhus
15ef4606b7
fix: support custom stickiness for flexible strategies
2021-05-07 09:36:15 +02:00
Ivar Conradi Østhus
37bd960133
fix: add members to project use correct uri
2021-05-07 09:14:32 +02:00
Fredrik Strand Oseberg
cc54fad3a4
Fix/console warn ( #290 )
...
* fix: resolve uncontrolled autocomplete
* fix: return if no strategy is present
* fix: change logic for retrieving context index
* fix: remove prop types from UserList
* fix: add default to api key name input
* fix: remove raised property from button
2021-05-07 08:42:51 +02:00
Fredrik Strand Oseberg
ad09c4039a
Fix/strategy constraints ( #289 )
...
* fix: only update editable strategies if index is less than 0
* fix: add wdyr
* fix: set tracking to false as default
* chore: update readme
2021-05-07 08:31:25 +02:00
Ivar Conradi Østhus
76cd54fd91
feat: upgrade to node.js v14
2021-05-05 22:18:35 +02:00
Ivar Conradi Østhus
6db15076e3
fix: tiny margin for feature toggle list item
2021-05-05 22:11:39 +02:00
Ivar Conradi Østhus
b7cea5e314
fix: should be allowed to create toggles without errors
2021-05-05 22:06:55 +02:00
Fredrik Strand Oseberg
8d525ac477
Fix: jumping screen ( #288 )
...
* fix: add overflow-y scroll to html
* fix: add tab exceptions to scroll to top
* fix: remove unused imports
2021-05-05 21:51:04 +02:00
Fredrik Strand Oseberg
7b27f68b8e
Fix/minor changes ( #285 )
...
* fix: use query params on password auth
* fix: refactor redirect and isUnauthorized
* feat: add 404 page
* fix: setup 404 as redirect and standalone page
2021-05-05 14:58:22 +02:00
Fredrik Strand Oseberg
9b1a07c5ab
Fix/v4 corrections ( #287 )
...
* fix: remove project display check
* fix: refetch bootstrap on user change
* fix: remove console log
* fix: update test
* fix: do not allow submit if errors exists
* fix: do not allow strategies to redirect home when name is taken
2021-05-05 14:17:25 +02:00
Ivar Conradi Østhus
3e2ed0b42c
fix: use correct baseUriPath with localStorage
2021-05-05 10:57:07 +02:00
Ivar Conradi Østhus
5585645999
fix: link to docs for empty apps
2021-05-05 10:33:40 +02:00
Ivar Conradi Østhus
c0c69854e8
fix: all global event log requires admin
2021-05-04 22:06:47 +02:00
Ivar Conradi Østhus
3f5992902d
fix: constraints array can be undefined
2021-05-04 21:50:06 +02:00
Ivar Conradi Østhus
48e15262a1
fix: tests
2021-05-04 21:40:38 +02:00
Fredrik Strand Oseberg
c4f44f7558
fix: allow permissions to be checked without project being defined ( #282 )
...
* fix: allow permissions to be checked without project being defined
* fix: change order
Co-authored-by: Ivar Conradi Østhus <ivarconr@gmail.com>
2021-05-04 21:25:35 +02:00
Fredrik Strand Oseberg
e8de5bd816
Fix/strategy constraints ( #283 )
...
* feat: redesign strategy cards
* fix: add version check to constraints
* fix: use flags
* fix: update icon and add tooltips
* fix: remove console logs
Co-authored-by: Ivar Conradi Østhus <ivarconr@gmail.com>
2021-05-04 21:25:06 +02:00
Ivar Conradi Østhus
367b5c8d85
fix: logout should only be called once
2021-05-04 21:24:25 +02:00
Ivar Conradi Østhus
217170c2e2
fix: handle generic errors better
2021-05-04 20:41:19 +02:00
Fredrik Strand Oseberg
f0d6e45361
Feat/bootstrap ( #281 )
...
* feat: add bootstrap endpoint redux integration
* fix: remove useEffect from app
* feat: add path provider
* feat: browser router
* fix: delete path formatter
* fix: return absolute path if no basepath
* fix: format seenURI
* feat: get bootstrap uri from html
* fix: remove unused imports
* fix: remove initial loading call
* fix: wrap logout in formatApiPath
* feat: import logo
* feat: remove accessor from receiveConfig
* fix: update tests
* fix: update asset paths
* fix: remove data from app
* fix: revert moving access provider
* fix: remove build watch
* fix: remove console logs
* fix: update asset paths
* fix: remove path logic from base64
* fix: remove unused import
* set uiconfig
* change notification text
* fix: match uiConfig with expected format
* feat: add proclamation
* fix: move proclamation
* fix: remove unused imports
* fix: add target _blank
* fix: allow optional toast
* fix: return empty string if default value is present
* fix: set basepath to empty string if it matches default
2021-05-04 09:59:42 +02:00
Ivar Conradi Østhus
90b6fce2c2
fix: build..
2021-04-30 09:05:46 +02:00
Ivar Conradi Østhus
a8bb01f9f2
fix: add datadog logo for addons
2021-04-30 08:51:34 +02:00
Ivar Conradi Østhus
4b826715a7
Feat/auth hosted section ( #280 )
2021-04-29 21:55:48 +02:00
Fredrik Oseberg
d7e6219070
fix: only get legalValues if definition exists
2021-04-28 18:09:37 +02:00
Fredrik Strand Oseberg
8d003da400
Fix/variants ( #278 )
...
* fix: use autocomplete for legal values
* fix: use flag to toggle overrides
* fix: use legalvalues directly
* fix: tests
* Update src/component/feature/variant/__tests__/update-variant-component-test.jsx
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
* Update src/component/feature/variant/AddVariant/AddVariant.jsx
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
* fix: tests
* fix: remove flag for overrides
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
2021-04-28 14:58:53 +02:00
Fredrik Strand Oseberg
f8e34d53ff
Fix/bugfixes ( #279 )
...
* fix: add try catch to copy
* fix: show constraints on default strategy
* fix: require name to submit context field
* fix: require name and project id to be set in order to create a project
* fix: change documentation icon
* fix: only validate unique names on create
* Update src/component/context/form-context-component.jsx
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
2021-04-28 14:27:25 +02:00
Fredrik Strand Oseberg
0340573199
fix/locale ( #277 )
...
* fix/locale
* fix: check on lowercase values
* fix: remove console logs
2021-04-28 11:57:45 +02:00
Ivar Conradi Østhus
f66cca468e
fix: added teams logo
2021-04-27 21:39:34 +02:00
Fredrik Strand Oseberg
1f46d3b21b
Fix/cleanup ( #276 )
...
* chore: update changelog
* 4.0.0-alpha.10
* fix: add dnd provider as top level wrapper
* fix: add forgotten password link to password auth
* fix: remove unecceesary dnd component
* fix: check for usedTokenError
2021-04-27 09:48:00 +02:00
Fredrik Oseberg
e81918ee48
fix: password
2021-04-23 15:31:42 +02:00
Fredrik Strand Oseberg
b9f5585c62
Fix/optimizations ( #275 )
...
* chore: update changelog
* feat: login mobile view
* fix: lists
* fix: colors
* fix: resolve merge conflict
* fix: tests
* fix: set defualt location object
* fix: don't check password before length exceeds 2
* fix: check length
2021-04-23 15:21:24 +02:00
Fredrik Strand Oseberg
05334337c2
Feat/user profile ( #274 )
...
* chore: update changelog
* feat: user profile
* feat: onOutsideClick hook
* feat: tune user profile
* fix: refactor to button
* feat: mobile view
* fix: update tests
* feat: add link to docs
2021-04-23 13:49:42 +02:00
Ivar Conradi Østhus
423646e4eb
fix: lint
2021-04-23 12:21:15 +02:00
Ivar Conradi Østhus
cb7555d048
fix: minor tuning on auth
2021-04-23 11:40:23 +02:00
Fredrik Strand Oseberg
0ca753e7e5
Feat/add new user ( #273 )
...
* chore: update changelog
* chore: update changelog
* fix: refactor AddUser
* feat: add screens for email and copy
* fix: remove interface
* fix: admin constant in userlist
* chore: fix changelog
* feat: user data fetching with useSWR
* feat: flesh out dialogues
* fix: remove useRequest
* refactor: remove redux for user admin
* refactor: remove from store
* refactor: userListItem
* fix: change type
* feat: add initial loading
* fix: useLayoutEffeect in useLoading
* fix: remove useEffect
* fix: update snapshots
* fix: remove status code
* fix: remove roles from store
2021-04-23 10:59:11 +02:00
Ivar Conradi Østhus
c31e9b9392
feat: add support for demo-signin
2021-04-22 08:44:16 +02:00
Ivar Conradi Østhus
5bedf0c344
fix: require ADMIN role to manage users
2021-04-21 09:35:13 +02:00
Ivar Conradi Østhus
3ad447b7d9
fix: add permissions for tag-types and project
2021-04-21 09:27:50 +02:00
Ivar Conradi Østhus
f669f96d49
wip: frontend should understand rbac permissions ( #269 )
...
* chore: update changelog
* 4.0.0-alpha.4
* wip: frontend should understand rbac permissions
* move all feature components to hasAccess
* fix: remove all change permissions
* fix all the tests
* fix all the tests x2
* fix snapshot for node 12
* fine tune perms a bit
* refactor: rewrite to ts
* refactor: use admin constant
* fix: import
Co-authored-by: Fredrik Oseberg <fredrik.no@gmail.com>
2021-04-20 19:13:31 +02:00
Fredrik Strand Oseberg
3bf9bd73ae
Fix/overall bugs ( #271 )
...
* fix: reporting
* fix: center icon
* fix: paths in featureview
* fix: revert path in passwordauth
* fix: remove console log
2021-04-20 16:22:23 +02:00
Fredrik Strand Oseberg
524936912d
Feat/user flow ( #267 )
...
* feat: add new user page
* feat: passwordchecker
* fix: remove loading
* feat: reset password
* fix: move swr to devDeps
* feat: generate reset link
* feat: add reset password form
* fix: remove console log
* fix: rename to forgotten password
* feat: add simple menu
* fix: change password checker title
* fix: change text in new-user view
* fix: lint errors
* fix: add status code to constants
* fix: comment
* fix: add classes for new user component
* fix: tests
* fix: remove console log
* fix: remove retry method
* fix: invalid token constant
* fix: remove console log
* fix: dependency array on useCallback
* fix: featureview
* fix: redirect on authenticated
* refactor: progresswheel
* fix: lint deps
2021-04-19 10:55:15 +02:00
Ivar Conradi Østhus
3cca2513fb
fix: small description for toggles
2021-04-16 12:59:36 +02:00
Ivar Conradi Østhus
b3436b5ae6
fix: make admin pages work for OSS and enterprise ( #268 )
...
* fix: make admin pages work for OSS and enterprise
* fix: more admin tuning
* fix: project mgm access
2021-04-16 11:31:47 +02:00
Fredrik Oseberg
2a0acd3fb2
fix: remove console log
2021-04-13 09:10:01 +02:00
Fredrik Oseberg
fa9a1c3145
fix: logout redirect logic
2021-04-12 16:25:38 +02:00
Fredrik Oseberg
8d295fd176
fix: redirect from login page if authorized
2021-04-12 15:34:37 +02:00
Fredrik Strand Oseberg
86631b53c9
Fix/material UI cleanup ( #264 )
...
* fix: strategy dialogue
* fix: fontweight dropdown
* fix: eventlog padding
* refactor: history
* refactor: use material ui styling conventions for history
* refactor: add empty state for features
* refactor: variant dialog
* refactor: delete unused variant config
* fix: variant typography
* fix: remove unused styles file
* fix: footer
* feat: protected routes
* fix: rename app
* fix: remove console log
* fix: convert app to typescript
* fix: add standalone login screen
* fix: cleanup
* fix: add theme colors for login
* fix: update tests
* fix: swap route with ProtectedRoute
* fix: remove unused redirect
* fix: use redirect to correctly setup breadcrumbs
* refactor: isUnauthorized
* fix: reset loading count on logout
* fix: create a more comprehensive auth check
* feat: add unleash logo
2021-04-12 15:04:03 +02:00
Ivar Conradi Østhus
5166198f07
Feat: admin users ( #266 )
...
* fix: make it work
* fix: cleanup add/update users a bit
* fix: fix
* fix: fine tune
2021-04-09 13:25:39 +02:00
Fredrik Oseberg
45bce4576d
fix: remove editableStrategies from useEffect deps
2021-04-07 09:26:34 +02:00
Christopher Kolstad
22795e251f
Migrate to create-react-app and react-scripts ( #263 )
...
* Setup create-react-app and typescript
Co-authored-by: Fredrik Oseberg <fredrik.no@gmail.com>
2021-04-07 09:04:48 +02:00
Fredrik Strand Oseberg
b5917515d2
fix: delete strategy ( #262 )
2021-03-30 15:49:03 +02:00
Fredrik Strand Oseberg
dbed06f300
Feat/material UI ( #250 )
...
Co-authored-by: Ivar Conradi Østhus <ivarconr@gmail.com>
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
Co-authored-by: Christopher Kolstad <git@chriswk.no>
2021-03-30 15:14:02 +02:00
Ivar Conradi Østhus
b8b48b5726
feat: Adapt API keys to new endpoint ( #259 )
...
* 3.14.1
* more changs!
* fix: cleanup UI to match API
* fix
2021-03-29 19:32:15 +02:00
Fredrik Strand Oseberg
30ba213f07
fix: add ascending sorting ( #260 )
2021-03-29 19:24:16 +02:00
Christopher Kolstad
1dc81af7c3
fix: encode URI value when deleting tag
2021-03-17 09:57:46 +01:00
Fredrik Oseberg
dbba23d7a6
fix: encode tag value
2021-03-17 09:50:51 +01:00
Ivar Conradi Østhus
9ed4e08cd4
fix: lint error
2021-03-11 16:11:49 +01:00
Ivar Conradi Østhus
24d9bb03b1
fix: should fetch projects once to make sure we know about projects
2021-03-11 16:07:26 +01:00
Ivar Conradi Østhus
b9e6586c30
feat/rbac: edit access for projects. ( #251 )
2021-03-11 13:59:20 +01:00
Fredrik Strand Oseberg
be8b0e7358
fix: check that strategies exists before calling includes ( #252 )
2021-03-08 15:31:02 +01:00
Fredrik Strand Oseberg
10d95c36e0
fix: metrics invalid date ( #248 )
...
* fix: lint
* refactor: return fetch from create
* fix: lint
* fix: change name from featureToggle to createdToggle
2021-03-05 11:33:58 +01:00
Fredrik Strand Oseberg
e1078ef822
fix: content-min-height
...
* fix: add min height calculation based on footer and header height
* fix: set flex-shrink to 0
* fix: lint
* feat: add support for navigating to feature from reporting dash
* fix: tests
2021-02-26 10:42:34 +01:00
Fredrik Strand Oseberg
d11bee0b95
Feature/stale dashboard ( #243 )
...
* feat: initial structure
* feat: add reportCard
* feat: add report-toggle-list
* feat: add report-card
* feat: connect data
* feat: add material icons
* feat: add table styles
* fix: rename reportcard
* feat: add checkbox functionality
* fix: correct invalid json format
* feat: add support for changing project
* fix: linting
* fix: remove trailing slash
* fix: change rewrites to routes
* fix: update glob
* feat: add name sorting
* refactor: swap routes for rewrites in vercel.json
* feat: add rewrite rules
* feat: add all rewrite rules
* feat: initial useSort implementation
* feat: finalized useSort for consistent name sorting
* feat: date parsing
* feat: implement sorting functionality for headers
* fix: ensure consistent naming in useSort
* feat: finish reportcard
* fix: remove loader class
* feat: hide bulk actions behind feature flag
* feat: add tests
* fix: lint and proptypes
* fix: lint
* fix: update select styles
* fix: create snapshots from node 12
* fix: safari flex inconsistencies
* feat: expand conditionallyRender functionality to encompass passing functions as elseShow param
* fix: conditional project selector
* fix: add missing new-line
* fix: move dependencies
Co-authored-by: Ivar Conradi Østhus <ivarconr@gmail.com>
2021-02-25 10:54:53 +01:00
Ivar Conradi Østhus
5cab5754a3
fix: fix update-variant-test
2021-02-24 11:22:03 +01:00
Ivar Conradi Østhus
73c0c8beb0
fix: unsecure => insecure
2021-02-24 11:17:46 +01:00
Ivar Conradi Østhus
5342c86b60
fix: one and only one front ( #244 )
...
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
Co-authored-by: Fredrik Strand Oseberg <fredrik.no@gmail.com>
2021-02-24 11:03:18 +01:00
Ivar Conradi Østhus
b9585b352d
fix: tests
2021-02-23 14:06:41 +01:00