Commit Graph

165 Commits

Author SHA1 Message Date
Danny Brown
d6e3b45f3c feat: nuke UI project; start new with updated tooling BREAKING_CHANGE (#1468)
BREAKING_CHANGE

* initial structure for components rewrite

* WIP Input

* WIP Label

* add button props

* add label class name

* fix dependency

* new examples buttonModules & buttonEmotion + refac

* clean up to merge initial code into base branch

* remove unused file

* extend default theme -- add new colors

* chore: prettier formatting

* chore: try to exclude feature branch PRs

* chore: suggest toml syntax highlighting extension

* chore: capture yarn.lock changes

* docs: condense readme

* chore: update deploy preview to build docz component library

* chore: Add component library to deploy preview index

* chore: fix invalid tailwindcss config

* chore: try tweaking toml to kickstart preview

* chore: revert

* chore: fix formatting of file index

* chore: don't waste precious build minutes on a broken build

* chore: chmod build-and-deploy.sh

* ci: nuke circleci until we need the workflows on master

* debug lerna commands

* remove redundant yarn commands

* try nohoist

* revert tests

* attempt to resolve import issue

* force update yarn lock

* try new workarounds for yarn version

* another workaround

* shift vtk to extension repo deps

* catch vtk addition

* update lock

* Try older yarn version

* try again

* debugging

* fix: yarn doctor warnings

* learn some life lessons from the yarn docs

* clean up netlify.toml

* clean up netlify.toml

* yarn package doctor react-dom

* yarn doctor: missing peer dep

* yarn doctor, satisfying webpack loader peer deps

* fix docz base path for deploy-preview

* yarn docter: replaced prePublishOnly usage

* More yarn doctoring

* ignore .yarn directory

* fix last yarn doctor warning

* updated yarn lock

Co-authored-by: Rodrigo Antinarelli <rodrigoantinarelli@gmail.com>
2020-05-15 12:28:18 +01:00
Danny Brown
73e440968c
feat: lesion-tracker extension (#1420)
* chore: init lesion-tracker extension

* chore: dev build for lesion-tracker extension

* fix: a more appropriate library name

* chore: fix script naming
2020-02-06 14:04:18 -05:00
Moritz Ulrich
8fdfcc0c7d
chore: Remove unused dependency on favicons-webpack-plugin. (#1351)
This dependency depends on the `favicons` library which depends on
`sharp` which depends on a native library.

This complicates the build process as the library is built from source
because there's no binary available for my macOS Catalina
installation. As this is a common developer setup I expect others to
run into this issue as well, which is why I opted to fix this issue.

Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
Co-authored-by: Erik Ziegler <erik.sweed@gmail.com>
2020-01-29 22:43:15 -05:00
Mirna Silva
80f5b23622 test: 1316 - E2E tests for /local (#1379)
* 1316 - E2E tests for /local

* fix test title

* update yarn.lock

* Increased timeout for thumbnails

* Removing PDF file test from script-tag server

Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
2020-01-28 16:29:17 -05:00
dannyrb
aa33397fe6 Remove netlify-cli; we';ll install this on CI server 2019-11-15 09:10:51 -05:00
Danny Brown
538ea2516d
ci: don't build our master branch (#1177)
* ci: don't build our master branch

* Add netlify-cli as a dev dependency

* ci: trying a sheltered merge flow for promotions
2019-11-14 15:01:55 -05:00
Danny Brown
cf5136899e
feat: service worker (#1045)
* init

* use workbox-window

* Try to accomodate SW hosted at non root url

* v5 updated namespaces

* Test w/ no prompt

* add icons to manifest

* remove scope for now

* add icon tile information to entrypoint

* See if we can skirt by without a duplicate install

* shift client claims to skip waiting message

* Remove prepended slash

* comment out cache handler for now

* Simplify service-worker to skip waiting and install when a new worker is detected

* Use generated icons

* Update rollbar config
2019-10-29 14:51:40 -04:00
Danny Brown
c680720ce5
fix: Revert "Revert "fix: MPR initialization"" (#1065)
* Revert "Revert "fix: MPR initialization (#1062)" (#1064)"

This reverts commit a6c1e6c717.

* fix: MPR Initialization

* fix e2e openStudy

* add isRequired for numRows and numColumns
2019-10-23 11:27:22 -04:00
Danny Brown
a6c1e6c717
Revert "fix: MPR initialization (#1062)" (#1064)
This reverts commit b03739428f.
2019-10-19 17:00:51 -04:00
Rodrigo Antinarelli
b03739428f fix: MPR initialization (#1062)
* fix: MPR initialization

* small refactoring
2019-10-18 14:29:00 -04:00
Danny Brown
8a7706b286
test: percy visual testing (#1053)
* test: percy visual testing init

* Try PR checks with custom command

* Only run percy visual tests for PWA on merge for now
2019-10-15 14:52:23 -04:00
Danny Brown
ceb6837153
ci: speed up script tag e2e tests (#1032)
* show package bundle progress

* Ability to run "quick builds" for faster feedback on status checks (e2e)

* ci: speed up PR checks

* specify quick build value
2019-10-11 14:26:24 -04:00
Erik Ziegler
d6862e7418 ci: Set cache key to only use yarn.lock checksum (#1031)
* ci: Set cache key to only use yarn.lock checksum

* Use increasingly general pattern for restoring the cache

* Avoid running script tag e2e tests twice

* Performance improvements for CI

* Valid YAML

* Valid YAML?

* Valid YAML!!!!

* Update Node image, update yarn version

* circle

* serve
2019-10-11 11:40:21 -04:00
Danny Brown
057f68a9b4
fix: yarn run start as alias for yarn run dev (#973) 2019-09-28 20:25:47 -04:00
Erik Ziegler
882d04c9bf
chore: add husky for automatic linting of staged files (#938) 2019-09-20 13:44:52 +02:00
Erik Ziegler
d1a24bc9d9
ci: Update terser-webpack-plugin (#936) 2019-09-19 22:49:15 +02:00
Erik Ziegler
66b84ae9c2
ci: Use development mode for e2e tests for now until we have a better alternative (#934) 2019-09-19 14:20:06 +02:00
dannyrb
76f7b00b65 ci: script tag e2e tests 2019-09-09 16:40:07 -04:00
dannyrb
5a54564bff A way to list linked packages 2019-09-06 10:05:02 -04:00
dannyrb
c791750f36 docs(data-source): new file locations, react-scripts to webpack, new env variables for proxy 2019-09-05 08:45:11 -04:00
Danny Brown
49d343941e
fix: measurementsAPI issue caused by production build (#842)
* ci: test docs-publish

* Specify to use prod

* Babel should transpile with env set by webpack

* in-progress

* in-progress

* Polyfill for ie11 and edge features

* Ditch polyfills w/ babel - we'll use a service for now

* Bump tools version; shift vtk.js up a layer

* Specify we shouldn't target older than IE 11

* ditch babel plugins that should be covered by preset-env

* Add a top level build demo command

* Let our babel config determine settings

* Same babel fixes as PWA

* Rebuild deps that don't satisfy our target

* Mini helper script for excluding all node_modules, except...

* Shift vtk.js dep up a layer

* Kill core-js

* Export in a node happy way

* Updated yarn lock

* Set NODE_ENV when launching anything w/ WebPack

* docs: updated FAQ

* docs: on browser support

* Add support for redux browser extension

* misc. small clean-up

* docs: Remove roadmap page; add browser-support to sidebar

* Formatting

* Remove roadmap links

* Formatting

* ci: Remove config syntax error

* Simplified bug report template

* update community request template

* Update question's template

* simplify build scripts

* specify new script names

* fix: for measurement api being pruned by minimizer in prod builds

* Use named exports

* Simplify config

* Let's not do so much heavy lifting for a dev-server build

* fix dev build

* Add hotkeys to demo

* fix: jest babel config and env specific configs

* Remove call to non-existant command

* Shift experimental proposal plugin up a layer

* Use `https`

* Try with reduced number of package exceptions

* Try to resolve cypress issue

* Try to fix cypress issue in CI

* Skip https
2019-09-04 13:53:13 -04:00
Danny Brown
d86f758125
ci: set NODE_ENV, fix out of memory issue, fix hot reload bundling
* ci: test docs-publish

* Specify to use prod

* Babel should transpile with env set by webpack

* chore: production defaults to true; set in --env.production by cli

* Remove lingering merge issue

* Add minimification plugins

* Need relative URLs to find root assets

* Default public url to forward slash in define plugin

* Don't wrap w/ react-hot-loader if we're building for production

* No need to log extensions

* Minimize using terser; and minimize css

* Import redux from es; this bypasses commonjs as import and fixes our "production build" warning

* Split commone webpack build for now to test hotfix

* postfix slash

* undefined safe env access

* Try to fix node_env prod issue w/ redux

* Set NODE_ENV production for all prod builds

* Syntax error

* nix tests

* Increase max amount of available memory

* Don't run bundle analyzer by default
2019-08-29 08:53:33 -04:00
Danny Brown
552df4c9a8
ci: test docs-publish (#803)
* ci: test docs-publish

* Require unit tests for dry run

* ci: Make sure our docs publish is executable

* Try to correct path issue

* Try repo prefix

* Try as yarn command

* Need a workspace to attach to from previous step

* Add before we call our bash script

* See if we can enforce commands being available -- or just install locally?

* Try again

* Try SSH

* Include username in gh https url

* Note regarding failure on PR branches

* Remove docs publish from PR workflow
2019-08-26 22:19:05 -04:00
Erik Ziegler
51472b2276 chore: Remove react-scripts from package.json 2019-08-15 12:26:43 +02:00
Erik Ziegler
20d8f0f5db chore: Add hot-reloading for the React app 2019-08-15 09:47:49 +02:00
dannyrb
a034bdd478 Updage engine config 2019-08-14 14:29:57 -04:00
Danny Brown
08ff214ea6
Chore/kill yalc with fire (#629)
* init

* more shifting

* Move @babel dependencies up to workspace root

* Begin updating dependent libraries to use sync'd webpack builds w/ watches

* Commit changes before a long weekend

* Split packages into platform and extensions

* Consolidate how/where we specify file/module type entrypoints

* Make it possible to pass in extensions as App props

* Resolve viewer's modules

* Target for UMD bundle

* Add Webpack Stylus loader

* Provide WebPack build options for microscopy, vtk, and ui

* Better entrypoint for extensions

* Push changes up to switch PCs

* Fix ESM symlink build for Viewers

* Shift docs to root

* Specify additional lerna config props

* Begin providing basic readme info

* Rename example extension folder

* Shift links to bottom of doc

* First attempt at a netlify deploy preview

* Attempt to fix deploy preview build

* push workspace enabled to initial command; remove second yarn install; use npx to call gitbook cli commands

* Try to use global gitbook-cli

* Export node_modules path

* More agressive with modifying PATH

* Follow deploy log output advice

* try again to set bin path

* Try swapping bash with a new shell

* Try bash -l instead of exec bash

* Annd let's try again

* and again

* We may have figured it out johnny, boy

* We need to pull cornerstone-wado-image-loader files from hoisted node_modules

* Attempt to fix ticks/escapes

* Change copy syntax; try running tests on viewers from root for circleci

* Lower version to match circleci image

* Try alternative jest-canvas-mock location and version file syntax

* Run version command instead of calling node directly

* Try alternative jest transform

* Set path and enable workspaces

* Add codecov flags

* Use cpx so our copying finishes?

* Get all platform unit tests to run

* Run and report individually and in parallel

* Try once relying on codecov yaml to split w/ flags

* Add projects to split by flags

* Generate separate reports

* Trigger codecov after everything has finished running; these may not support flags

* Use recommended flags from issue comments for codecov

* Fix typo

* Remove clear flag

* Shift back to calling codecov from root

* Generate example for codecov issue

* Try fixing paths

* Simplify

* Try using codecov orb

* Bump circleci version

* Upload core and viewer

* Use full string paths

* Remove individual codecov calls

* Fix dir

* Combine files before upload

* Escape anchors

* tryfix syntax

* Escape string literal

* Combine lines to reduce path

* long paths

* Use home alias

* Fix filename

* Try to see the contents of our cat'd file

* Also upload `core`

* Try running with aliased folder

* Fix path; split PR and Merge unit tests into separate jobs

* Set default threshold

* Fix typo

* Changing to scoped package names

* Adding note

* Catch more updates

* chore(release): publish %s [skip ci]

 - @ohif/extension-cornerstone@0.0.39-alpha.0
 - @ohif/extension-dicom-html@0.0.4-alpha.0
 - @ohif/extension-dicom-microscopy@0.0.9-alpha.0
 - @ohif/extension-dicom-pdf@0.0.8-alpha.0
 - @ohif/extension-vtk@0.1.4-alpha.0
 - @ohif/core@0.11.1-alpha.0
 - @ohif/i18n@0.2.3-alpha.0
 - @ohif/ui@0.2.18-alpha.0
 - @ohif/viewer@0.0.22-alpha.0

* Clean up primary readme

* Support for dev and dev:* commands

* Shift build command; satisfy default PWA build

* Remove old scripts

* Clean up UI to set webpack scripts

* Tidy up project links

* Clean duplicate code in UI project

* Update UI project's docs

* Clean up ui and i18n config

* Reduce duplicate code in `@ohif/core`

* Fix @ohif/ui versions

* bump @ohif/core versions

* Redux testkit dep

* Remove unused/duplicate config files for projects/packages

* ohif-core --> @ohif/core

* Safer publish command

* chore(release): publish %s [skip ci]

 - @ohif/extension-cornerstone@0.0.39-alpha.1
 - @ohif/extension-dicom-html@0.0.4-alpha.1
 - @ohif/extension-dicom-microscopy@0.0.9-alpha.1
 - @ohif/extension-dicom-pdf@0.0.8-alpha.1
 - @ohif/extension-vtk@0.1.4-alpha.1
 - @ohif/core@0.11.1-alpha.1
 - @ohif/i18n@0.2.3-alpha.1
 - @ohif/ui@0.2.18-alpha.1
 - @ohif/viewer@0.0.22-alpha.1

* test version bump

* Add global prettier config

* chore(release): publish %s [skip ci]

 - @ohif/viewer@0.0.22-alpha.2

* test lerna publish

* Update package.jsons

* Fix build scripts

* catch changes

* chore(release): publish %s [skip ci]

 - @ohif/extension-cornerstone@0.0.39-alpha.2
 - @ohif/extension-dicom-html@0.0.4-alpha.2
 - @ohif/extension-dicom-microscopy@0.0.9-alpha.2
 - @ohif/extension-dicom-pdf@0.0.8-alpha.2
 - @ohif/extension-vtk@0.1.4-alpha.2
 - @ohif/core@0.11.1-alpha.2
 - @ohif/i18n@0.2.3-alpha.2
 - @ohif/ui@0.2.18-alpha.2
 - @ohif/viewer@0.0.22-alpha.3

* fix eslint issues caused by eslint 6 and our react-app config

* Publish with canary tag

* chore(release): publish %s [skip ci]

 - @ohif/extension-cornerstone@0.0.39-alpha.3
 - @ohif/extension-dicom-html@0.0.4-alpha.3
 - @ohif/extension-dicom-microscopy@0.0.9-alpha.3
 - @ohif/extension-dicom-pdf@0.0.8-alpha.3
 - @ohif/extension-vtk@0.1.4-alpha.3
 - @ohif/core@0.11.1-alpha.3
 - @ohif/i18n@0.2.3-alpha.3
 - @ohif/ui@0.2.18-alpha.3
 - @ohif/viewer@0.0.22-alpha.4

* chore(release): publish %s [skip ci]

 - @ohif/extension-cornerstone@0.0.39-alpha.4
 - @ohif/extension-dicom-html@0.0.4-alpha.4
 - @ohif/extension-dicom-microscopy@0.0.9-alpha.4
 - @ohif/extension-dicom-pdf@0.0.8-alpha.4
 - @ohif/extension-vtk@0.1.4-alpha.4
 - @ohif/core@0.11.1-alpha.4
 - @ohif/i18n@0.2.3-alpha.4
 - @ohif/ui@0.2.18-alpha.4
 - @ohif/viewer@0.0.22-alpha.5

* Simplify build

* chore(release): publish %s [skip ci]

 - @ohif/extension-cornerstone@0.0.39-alpha.5
 - @ohif/extension-dicom-html@0.0.4-alpha.5
 - @ohif/extension-dicom-microscopy@0.0.9-alpha.5
 - @ohif/extension-dicom-pdf@0.0.8-alpha.5
 - @ohif/extension-vtk@0.1.4-alpha.5
 - @ohif/core@0.11.1-alpha.5
 - @ohif/i18n@0.2.3-alpha.5
 - @ohif/ui@0.2.18-alpha.5
 - @ohif/viewer@0.0.22-alpha.6

* chore(release): publish %s [skip ci]

 - @ohif/extension-cornerstone@0.0.39-alpha.6
 - @ohif/extension-dicom-html@0.0.4-alpha.6
 - @ohif/extension-dicom-microscopy@0.0.9-alpha.6
 - @ohif/extension-dicom-pdf@0.0.8-alpha.6
 - @ohif/extension-vtk@0.1.4-alpha.6
 - @ohif/core@0.11.1-alpha.6
 - @ohif/i18n@0.2.3-alpha.6
 - @ohif/ui@0.2.18-alpha.6
 - @ohif/viewer@0.0.22-alpha.7

* Split version and publish

* chore(release): publish %s [skip ci]

 - @ohif/extension-cornerstone@0.0.39-alpha.7
 - @ohif/extension-dicom-html@0.0.4-alpha.7
 - @ohif/extension-dicom-microscopy@0.0.9-alpha.7
 - @ohif/extension-dicom-pdf@0.0.8-alpha.7
 - @ohif/extension-vtk@0.1.4-alpha.7
 - @ohif/core@0.11.1-alpha.7
 - @ohif/i18n@0.2.3-alpha.7
 - @ohif/ui@0.2.18-alpha.7
 - @ohif/viewer@0.0.22-alpha.8

* Try simplify netlify build

* react-viewerbase --> @ohif/ui

* add test for stylus loader

* Try new way to specify publish path

* Use an output folder that won't be ignored

* Try move command

* fiddle with paths

* Dig for some information

* Make sure we're in root for our commands

* Remove discovery

* Setup script-tag example

* Fix typo

* Move config folder

* Update cornerstone extension to use shared/root webpack configs

* capture changes

* Update extension webpack configs

* Don't check in docz output

* Fix babel runtime resolution issue

* Simplify ui build steps

* Push in progress

* Shift directories

* Get viewer dev path to work

* Fix viewer commonjs build

* Fix build pwa config for viewers

* Make sure our package specific command can be called from root

* Update notes

* Fix imports and misc. merge notes

* Bump wado-image-loader version

* Switch up commands to remove webworkers copy

* Fix CI config

* Fix more broken package references

* Add react-dropzone

* Persist so e2e test can use

* Fix lockfile

* Use cypress orb to simplify CI

* Fix config

* Try again

* Install yarn latest for orb

* Install yarn a different way

* Wait on correct port

* Run tests in viewer project

* Fix cypress config

* Make Cypress happier - use default location

* Simplify e2e testing

* Capture UI changes since fork

* Catch core up

* Grab latest deps after merge

* Fix broken import

* Make sure cornerstone-wado-image-loader resolves to 3+

* Note regarding orbs

* Fix refresh on 404 routes

* Fix odd error for cornerstone-wado-image-loader

* Different target for UMD

* Simplify dev script

* Try to get fancy with netlify output

* Let's do it again

* Try to fix measurementTools issue

* See if we can get our lerna magic to work on merge to monorepo branch
2019-08-13 15:36:46 -04:00
Erik Ziegler
36952c401a fix(package.json) - Bump @ohif/i18n to 0.2.5 to add further Chinese translations 2019-07-31 12:45:02 +02:00
Erik Ziegler
2174f4f2fd fix(package.json) - Bump @ohif/i18n to 0.2.4 to add Vietnamese and improve Chinese translations 2019-07-31 11:17:10 +02:00
Erik Ziegler
ec1946e379
ci(e2e): Fix cypress test memory issues by splitting build step out (#738) 2019-07-30 14:51:28 +02:00
Erik Ziegler
a4112c46a5
fix(package.json): Bump WADO Image Loader dependency, remove unnecessary worker and codec paths (#727)
Note: had to disable sourcemaps for commonjs modules. This seems to be the only way to prevent memory issues on CircleCI.
2019-07-30 11:00:08 +02:00
David Wire
e73d009c21 fix(package.json): Resolve react/react-dom dependency conflict for embedded users (#734)
* fix(package.json): Resolve react/react-dom dependency conflict for embedded users

Some of the recent changes around the script-tag support for ohif/Viewers included moving react and
react-dom from peerDependencies to dependencies. This caused an error for embedded consumers of the
viewer because there could be multiple versions of react included. The error in the console points
to this link: https://reactjs.org/warnings/invalid-hook-call-warning.html. These changes are
necessary to resolve the issue for embedded users and don't seem to break the standalone version
either.

* fix(script-tag/index.html): Add `react` and `react-dom` as external scripts for cypress tests

The cyrpress tests won't pass unless we add the `react` and `react-dom` dependencies as external
scripts since they're no longer first order depdencies.
2019-07-30 08:30:23 +02:00
Erik Ziegler
f826341631 fix(package.json): Bump VTK extension to fix jitter issues in MPR view 2019-07-29 21:20:11 +02:00
Egor Lezhnin
40bf1a2efd feat(fuzzyMatching): fuzzymatching for query parameters if server config indicates support 2019-07-29 09:56:07 -04:00
Erik Ziegler
b1df019c49 fix(package.json): Update @ohif/i18n to 0.2.3 2019-07-29 10:03:48 +02:00
Erik Ziegler
5802cf18eb
fix(script-tag): Include React and ReactDOM as dependencies and add installViewer function to simplify script tag usage. (#721) 2019-07-29 08:20:07 +02:00
Danny Brown
210c2e8d2c
fix: clear annotations toolbar button 2019-07-26 16:38:37 -04:00
Erik Ziegler
da318c9c8c
feat(DicomUploader): Make DICOM Uploader work with all DICOMWeb servers (#717)
* feat(DicomUploader): Make DICOM Uploader work with all DICOMWeb servers

* Bump viewerbase version
2019-07-26 15:04:28 +02:00
Danny Brown
ba261a0d54
fix: support for next/previous image hotkeys via cornerstone extension update
* Bump @ohif/extenions-cornerstone react-cornerstone-viewport dep and cut release

* fix: bump @ohif/extension-cornerstone version to latest

* Catching the yarn lock changes

* Cut new release for cornerstone extension and update Viewers to use it

* Add new commands to netlify dmeo

* Flip directions for next/previous image
2019-07-23 15:39:56 -04:00
Danny Brown
5a13194203
fix(react-cornerstone-viewport): Viewport resizes on stack scroll (#709)
* Bump @ohif/extenions-cornerstone react-cornerstone-viewport dep and cut release

* fix: bump @ohif/extension-cornerstone version to latest

* Catching the yarn lock changes
2019-07-23 13:00:02 -04:00
Erik Ziegler
a2cc477a1a fix(package.json): Update @ohif/extension-microscopy to 0.0.12 2019-07-22 15:47:45 +02:00
Erik Ziegler
83d7d59954
fix(package.json): Update ohif-core and dicomweb-client to fix Palette Color BulkData retrieval (#703) 2019-07-22 15:09:55 +02:00
Erik Ziegler
f547fdf832
fix(OpenIDConnect): Stop storing tokens in sessionStorage. Prefix OIDC routes automatically. Add logout button (#698) 2019-07-21 16:43:42 +02:00
Erik Ziegler
54e0e32e22
fix(package.json): Bump ohif-core, extension-microscopy, and dicomweb-client (#697) 2019-07-21 10:04:07 +02:00
Erik Ziegler
71f11a4856 fix(package.json): Update microscopy, pdf, and html extensions to fix thumbnail labels 2019-07-19 18:24:43 +02:00
Erik Ziegler
a34d47c850
fix(package.json): Bump cornerstone-tools to 3.16.0 (#690) 2019-07-19 17:48:29 +02:00
Erik Ziegler
f758741950
fix(package.json): Update @ohif/extension-cornerstone to fix loading issue (#689) 2019-07-19 17:07:35 +02:00
Erik Ziegler
104343aad5
fix(package.json): Bump @ohif/vtk-extension usage to fix performance issues, add Slab MIP (#686) 2019-07-18 13:52:06 +02:00
Erik Ziegler
2f104b5e91
feat(ViewerLocalFileData): Add drag/drop to load DICOM files in the Viewer at /local (#644) 2019-07-11 13:49:29 +02:00
Erik Ziegler
f256ac5a7d
fix(package.json): Fix issues with babel-core causes undefined _objectSpread2 (#650) 2019-07-11 12:59:33 +02:00