Commit graph

5819 commits

Author SHA1 Message Date
कारतोफ्फेलस्क्रिप्ट™ 6be999714f
feat(cli): add external hooks for when members are added or deleted (#3988) 2022-09-05 09:03:05 +02:00
Jonathan Bennetts fc6484ba4d
fix(core): Fix MySQL migration issue with table prefix (#4013)
* Fix mysql migration issue on execution entity

* Fix one down migration

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2022-09-03 20:02:39 +02:00
Jonathan Bennetts 5753110402
fix(GitHub Node): Fix binary data not being returned (#4017)
Fix binary data not being returned in Github node
2022-09-03 13:35:44 +02:00
Jonathan Bennetts 6216132ae2
fix(GraphQL Node): Fix issue with return items (#4016)
* fix graphql return items

*  Remove not used code

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2022-09-03 13:20:25 +02:00
Jonathan Bennetts 73c5210294
fix(beeminder Node): fix request id not being sent when creating a new datapoint 2022-09-02 15:51:05 +01:00
Jonathan Bennetts 071ab40c9f
fix(shopify Node): fix pagination when empty fields are sent 2022-09-02 15:47:03 +01:00
Jonathan Bennetts 82827d0a12
fix(monicaCrm Node): fix pagination when using return all 2022-09-02 15:43:14 +01:00
Aaron Delasy 49c85a1df8
fix: correct all the spelling typos (#3960)
* Improve code health
Fix TS typos in local variables
Fix CSS typos in local styles
Fix typos in comments
Fix typos in strings

* Fix order of n8n setup sections in CONTRIBUTING.md
2022-09-02 16:13:17 +02:00
Omar Ajoue a3791c22b3
feat: add possibility to configure stop time for workers (#4012)
* feat: add a timer to gracefully control how long workers wait before exiting
2022-09-02 15:40:45 +02:00
Michael Kret aec5c26564
feat (TelegramTrigger Node): added notice explaining behavior when several attachments are uploaded 2022-09-02 13:38:24 +03:00
Ricardo Espinoza 3163742fd7
fix(Raindrop Node): Fix issue refreshing OAuth2 credentials
🐛 Fix issue refreshing access token
2022-09-02 11:48:04 +02:00
Jan Oberhauser 47546bb279 🔖 Release n8n@0.193.3 2022-09-01 18:07:48 +02:00
Jan Oberhauser 3b169ef856 ⬆️ Set n8n-core@0.133.1, n8n-editor-ui@0.159.2 and n8n-nodes-base@0.191.1 on n8n 2022-09-01 18:07:11 +02:00
Jan Oberhauser 12c9ea0946 🔖 Release n8n-editor-ui@0.159.2 2022-09-01 18:05:26 +02:00
Jan Oberhauser 297a279991 🔖 Release n8n-nodes-base@0.191.1 2022-09-01 18:03:26 +02:00
Jan Oberhauser 1fb8c358fd ⬆️ Set n8n-core@0.133.1 on n8n-nodes-base 2022-09-01 18:02:16 +02:00
Jan Oberhauser 7dc2da539c 🔖 Release n8n-core@0.133.1 2022-09-01 18:00:24 +02:00
Omar Ajoue 54efe20ee4
fix: remove duplicate wrap of paired item data (#4001)
* fix: remove duplicate wrap of paired item data and adding where missing for other nodes
2022-09-01 17:48:22 +02:00
Iván Ovejero c8743ff6ca
fix(core): Fix disabled parent output in partial execution (#3946)
🐛 Skip disabled parent in partial execution
2022-09-01 15:43:48 +02:00
Ben Hesseldieck 936cb11789
fix(cli): initialize mailer just if connection can be verified (#3997) 2022-09-01 14:57:14 +02:00
agobrech d82e87979d
feature: add database and non http credentials test
Add credential testing to Postgres, MySQL, MicrosoftSQL, Redis, FTP, SFTP, IMAP, RabbitMQ and MQTT

Co-authored-by: Omar Ajoue <krynble@gmail.com>
2022-09-01 14:29:15 +02:00
Michael Kret b5511e5ac7
feature: add MongoDB credential testing and two operations: findOneAndReplace and findOneAndUpdate (#3901)
* feature: add MongoDB credential testing and two operations: findOneAndReplace and findOneAndUpdate
Co-authored-by: Anas Naim <anas.naim@hotmail.com>
2022-09-01 10:23:15 +02:00
Iván Ovejero ee519b0c08
refactor(editor-ui): Create first PH experiment (#3969) 2022-09-01 10:05:22 +02:00
Jan Oberhauser c0c10b8961 🔖 Release n8n@0.193.2 2022-09-01 09:48:59 +02:00
Omar Ajoue 2a539d7849
Fix missing slash in oauth2 urls (#3991) 2022-09-01 09:36:45 +02:00
Jan Oberhauser 69c8a6b2ab 🔖 Release n8n@0.193.1 2022-08-31 18:47:27 +02:00
Jan Oberhauser 28f6e033f2 ⬆️ Set n8n-editor-ui@0.159.1 on n8n 2022-08-31 18:46:34 +02:00
Jan Oberhauser 20dbb3da2d 🔖 Release n8n-editor-ui@0.159.1 2022-08-31 18:44:58 +02:00
Mutasem Aldmour bee3840050
fix(editor): fix bug where col headers don't show (#3985)
fix bug where col headers dont show
2022-08-31 17:58:43 +02:00
Jan Oberhauser e05fde0c16 🔖 Release n8n@0.193.0 2022-08-31 14:49:00 +00:00
Jan Oberhauser f987772a4c ⬆️ Set n8n-core@0.133.0, n8n-editor-ui@0.159.0, n8n-nodes-base@0.191.0 and n8n-workflow@0.115.0 on n8n 2022-08-31 14:48:59 +00:00
Jan Oberhauser c78350ac11 🔖 Release n8n-editor-ui@0.159.0 2022-08-31 14:47:28 +00:00
Jan Oberhauser c7db31a2db ⬆️ Set n8n-design-system@0.33.0 and n8n-workflow@0.115.0 on n8n-editor-ui 2022-08-31 14:47:28 +00:00
Jan Oberhauser 7b5b2cb8bc 🔖 Release n8n-design-system@0.33.0 2022-08-31 14:47:16 +00:00
Jan Oberhauser 57dbbd7f15 🔖 Release n8n-nodes-base@0.191.0 2022-08-31 14:46:26 +00:00
Jan Oberhauser 849af8f8df ⬆️ Set n8n-core@0.133.0 and n8n-workflow@0.115.0 on n8n-nodes-base 2022-08-31 14:46:26 +00:00
Jan Oberhauser 9ca5083750 🔖 Release n8n-node-dev@0.72.0 2022-08-31 14:46:18 +00:00
Jan Oberhauser 8d6b621db3 ⬆️ Set n8n-core@0.133.0 and n8n-workflow@0.115.0 on n8n-node-dev 2022-08-31 14:46:17 +00:00
Jan Oberhauser 3b669dddf8 🔖 Release n8n-core@0.133.0 2022-08-31 14:46:07 +00:00
Jan Oberhauser b572e7e30e ⬆️ Set n8n-workflow@0.115.0 on n8n-core 2022-08-31 14:46:07 +00:00
Jan Oberhauser 58a4efffa1 🔖 Release n8n-workflow@0.115.0 2022-08-31 14:45:53 +00:00
कारतोफ्फेलस्क्रिप्ट™ b428e9fb9f
feat(design-system,editor-ui): upgrade some of the frontend dev dependencies (#3978) 2022-08-31 15:47:33 +02:00
कारतोफ्फेलस्क्रिप्ट™ 398adb23e8
feat(docker): reduce the size of alpine docker images (#3973)
* reduce redundant code between the two alpine Dockerfiles
* reduce the docker image build times
* reduce the `n8n` image size from 1.17GB to 462MB
* reduce the `n8n-custom` image size from 671MB to 460MB
* reduce the size of npm tree by making all typing packages devDependencies

Partially resolves this ticket: N8N-3252
2022-08-31 15:25:52 +02:00
Mutasem Aldmour 8fc9f07f39
feat(editor): limit when to show mapping tooltip (#3976)
* limit when to show mapping tooltip

* refactor tooltip pos

* update tooltip pos

* update var name
2022-08-31 10:51:26 +02:00
Omar Ajoue b2c674591c
Feature/paired item support (#3869)
* Add paired item helper and implement it in some nodes
2022-08-30 17:55:33 +02:00
Marcus 087d3f99f1
fix(core): make digest auth work with query params
* fixed NodeExecutionFunction digestAuthAxiosConfig using url search params

* fixed linting error because auto format removed tabs
2022-08-30 17:27:40 +02:00
Tzachi Shirazi 349826e87f
fix: Fix credentials_entity table migration for mysql (#3979)
Fixed table not found
2022-08-30 15:12:37 +02:00
कारतोफ्फेलस्क्रिप्ट™ 15d5ac6f3c
fix(npm): improve .npmignore to reduce the size of the published packages (#3970)
| package | gzipped (before) | unpacked (before) | gzipped (after) | unpacked (after) |
| --- | --- | --- | --- | --- |
| cli | 367.7 kB | 2.3 MB | 165.5 kB | 1.0 MB |
| core | 65.4 kB | 450.6 kB | 26.5 kB | 164.9 kB |
| design-system | 180.9 kB | 660.2 kB | 117.6 kB | 449.2 kB |
| editor-ui | 3.5 MB | 12.4 MB | 3.5 MB | 12.4 MB |
| node-dev | 13.5 kB | 44.7 kB | 10.6 kB | 35.3 kB |
| nodes-base | 3.0 MB | 24.3 MB | 2.0 MB | 15.2 MB |
| workflow | 101.4 kB | 827.7 kB | 28.8 kB | 165.7 kB |
2022-08-30 13:43:47 +02:00
Ben Hesseldieck fc2ff35c41
fix(editor): sending data as query on DELETE method (#3972)
* 🐛 fix sending data as query on DELETE method

* 👕 add type to imports

* 💪 enhance test
2022-08-30 11:54:50 +02:00
Marcus c2e97a89f9
feat(HighLevel Node): Add HighLevel node
* HighLevel Node & Credentials with basic Get/GetAll contacts

* moved contact description into subfolder

* improving all  HighLevel contact crud operations

* Get All Contacts request filters and options

* Get All Contacts request operation pagination

* Get All Contacts pagination with rootProperty

* fixing contact operations lint error node-param-options-type-unsorted-items

* Get All Contact pagination using response total to terminate loop

* Get All Contacts pagination using qs startAfterId and startAfter instead of nextPageUrl

* cleanup ContactDescription.ts operations

* added OpportunityDescription.ts Get All Operation

* added PipelineDescription.ts Get All pipelines (pagination no supported)

* GenericFunctions.ts created highLevelApiPagination method

* removed returnAll from getAll pipelines because pagination not supported

* minor improvement using IPostReceiveRootProperty Interface

* added TaskDescription.ts GetAll operation

* TaskDescription get operation

* task delete operation

* ContactDescription fixing duplicate additionalFields

* OpportunityDescription.ts adding filters for get all operation

* opportunity get and delete operation

* opportunity create additional fields

* task create with additionalFields

* create opportunity added missing status

* pagination resource mapping; create opportunity for contact email/phone/id

* create task format field dueDate to suppressMilliseconds

* opportunity's pipeline options with loadOptions

* fixed task dueDate; task update operation

* added contact dnd fields

* added contact tags

* add contact source parameter

* using returnAll Tasks with undocumented limit property

* add contact customField with loadOptions

* task dueDate preSendAction throw required error

* opportunity stageId using getPipelineStages method

* improve update contacts operation; renaming identifier to contactId

* contact tasks renamed contactIdentifier to contactId and identifier to taskId

* delete unused postReceiveAction

* getTaskPostReceiceAction to inject contactId into items

* remove source field from update contact because not supported

* renaming opportunities pipelineIdentifier to pipelineId

* opportunity parameter reordering

* opportunity update operation

* opportunity renamed "Identifier" to "Opporituny ID"

* create opportunity additional field tags

* opportunity create/update additional fields

* opportunity update contactIdentifier

* deleted pipeline getAll resource; cleanup generic functions;

* opportunity getAll option stageId use getPipelineStages

* opportunity assignedTo options use loadOptionsMethod getUsers

* added loadOptions description ''Choose from the list, or specify an ID [...]'

* getAll Tasks removing output maxResults

* highLevelApiRequest  add IPollFunctions

* add HighLevelTriggerNode

* add highLevelOAuth2Api credentials

* revert from v2 oauth2 back to apiKey v1 (incompatible client-oauth2)

* delete run.sh (was commited by accidant)

* removed HighLevelTrigger.node.ts (polling) until we support API V2 webhooks

* task additionalFields in alphabetical order; task assignedTo using loadOptions getUsers

* contact additionalFields/updateFields/filters in alphabetical order

* opportunity additionalFields/fields in alphabetical order

*  linter fixes, formating

*  fixed deprecated auth

*  lock file and auth fix

*  linter fixes

*  requestWithAuthentication in highLevelApiRequest

*  timeZones autoload and naming fixes

* contact property dnd - improved display name and description

* contact property dnd - improved display name and description

* contact create/update pre send action to validate email/phone

* updated description for contact lookup email and phone parameters

* opportunity monetary value - removed getAll filter (doesn't work) - added param description

* opportunity getAll startDate and endDate to type dateTime and dateTimeToEpochPreSendAction

* loadOption getTimezones() using /timezones and not moment.tz.names()

* improved description for opportunity parameter assignedTo

* added hint to opportunity param contactIdentifier "there can only be one..."

* added contact phone description and placeholder

* contact renamed operation "create" to "create or update" and added notice

* update opportunity - prefetch fields title/status required by api

* create/update task splitting up additionalFields to prep update changes

* update task- prefetch fields title/dueDate required by api

* linter fixes

*  improvements

*  updated autoloaded parameters names to follow convention

* update opportunity added hint "You cannot update an opportunity's pipeline ID."

Co-authored-by: Michael Kret <michael.k@radency.com>
2022-08-30 11:25:06 +02:00
Milorad FIlipović 0e8cb74ab3
💄 Added instance ID to about modal and restyled credentials docs link (#3903)
feat(editor): Added instance ID to about modal and restyled credentials docs link

* 💄 Use Notice component instead of Callout in CredentialConfig, remove unused imports
* 💄 Use css var for n8n-notice component and override it for credential configs to get rid of additional margins
*  Update n8n-notice snapshots

Co-authored-by: Oleg Ivaniv <oleg@n8n.io>
2022-08-30 11:10:17 +02:00
Omar Ajoue b5c831122c
Add some tests to ActiveExecutions file (#3957)
* Add some tests to ActiveExecutions file
2022-08-30 10:49:30 +02:00
Cornelius Suermann 3939d52851
docs(license): Introduce n8n Enterprise License (#3945) 2022-08-29 22:08:42 +02:00
agobrech 9017fd463f
🐛 Fix issue where the QS would be ignored (#3967) 2022-08-29 15:28:17 +02:00
pemontto ff31b961b7
Use instance URL for OAuth callback (#3560)
Use editor URL instead of webhook url for oauth connections
2022-08-29 12:53:57 +02:00
Iván Ovejero 3ae6450f0b
Fix all type errors in design system (#3956)
* 📘 Fix type errors in design system

* 🔥 Remove unneeded `?`

* 🔧 Add design system to Vetur

* 📘 Improve typing of `$el`

* ♻️ Address feedback

* 📘 Type leftover `MouseEvent`

* 📘 Type `event.target` properly
2022-08-29 12:21:40 +02:00
freya 1e6b1b8227
Moving /executions endpoints to separate file (#3952)
* 🎨 - Moved /executions endpoints from Server.ts to api/exeutions.api.ts
2022-08-26 17:31:28 +02:00
Michael Kret 8954ae3889
Refactor workflow endpoints to a dedicated file
*  /workflow/** moved to dedicated file
2022-08-26 17:26:32 +02:00
Jan Oberhauser 47664e6580 🔖 Release n8n@0.192.2 2022-08-25 16:11:05 +02:00
Jan Oberhauser 5de50494ce ⬆️ Set n8n-editor-ui@0.158.2 on n8n 2022-08-25 16:10:22 +02:00
Jan Oberhauser 56783dac21 🔖 Release n8n-editor-ui@0.158.2 2022-08-25 16:09:29 +02:00
Iván Ovejero 93c26dac28
fix(editor): Fix feature flag check when PH is unavailable (#3944)
🐛 Fix feature flag check when PH is unavailable
2022-08-25 15:11:37 +02:00
Mutasem Aldmour a21dbdc45b
fix(editor): fix mapping bug when val is null (#3942) 2022-08-25 12:54:46 +02:00
Jan Oberhauser 128f7b92af 🔖 Release n8n@0.192.1 2022-08-25 11:59:15 +02:00
Jan Oberhauser b23b0158e1 ⬆️ Set n8n-editor-ui@0.158.1 on n8n 2022-08-25 11:58:38 +02:00
Jan Oberhauser 0b3bb6f7ee 🔖 Release n8n-editor-ui@0.158.1 2022-08-25 11:57:34 +02:00
Mutasem Aldmour c51d25ce52
refactor: Update expression colors (#3941) 2022-08-25 11:30:18 +02:00
Iván Ovejero f0521873e1
fix(cli): Account for non-array in pindata migration (#3938)
🗃️ Account for non-array in pindata migration
2022-08-25 11:19:59 +02:00
Jan Oberhauser 4fba6a883a :refactor: Fix lint issues 2022-08-24 16:50:36 +02:00
Jan Oberhauser 5a546e426d :refactor: Fix lint issues 2022-08-24 16:38:50 +02:00
Jan Oberhauser 5a1dd3fd1a 🔖 Release n8n@0.192.0 2022-08-24 14:22:31 +00:00
Jan Oberhauser 2e4339eda6 ⬆️ Set n8n-core@0.132.0, n8n-editor-ui@0.158.0, n8n-nodes-base@0.190.0 and n8n-workflow@0.114.0 on n8n 2022-08-24 14:22:31 +00:00
Jan Oberhauser 7025e279d3 🔖 Release n8n-editor-ui@0.158.0 2022-08-24 14:20:45 +00:00
Jan Oberhauser b4214657c3 ⬆️ Set n8n-design-system@0.32.0 and n8n-workflow@0.114.0 on n8n-editor-ui 2022-08-24 14:20:44 +00:00
Jan Oberhauser a616d60573 🔖 Release n8n-design-system@0.32.0 2022-08-24 14:20:37 +00:00
Jan Oberhauser 45f543b97a 🔖 Release n8n-nodes-base@0.190.0 2022-08-24 14:19:56 +00:00
Jan Oberhauser d6f1468a7e ⬆️ Set n8n-core@0.132.0 and n8n-workflow@0.114.0 on n8n-nodes-base 2022-08-24 14:19:56 +00:00
Jan Oberhauser b7ae226d44 🔖 Release n8n-node-dev@0.71.0 2022-08-24 14:19:48 +00:00
Jan Oberhauser afa37f97a3 ⬆️ Set n8n-core@0.132.0 and n8n-workflow@0.114.0 on n8n-node-dev 2022-08-24 14:19:47 +00:00
Jan Oberhauser a87b7cc2ee 🔖 Release n8n-core@0.132.0 2022-08-24 14:19:40 +00:00
Jan Oberhauser ed6571b775 ⬆️ Set n8n-workflow@0.114.0 on n8n-core 2022-08-24 14:19:39 +00:00
Jan Oberhauser 3f6e8e5e9e 🔖 Release n8n-workflow@0.114.0 2022-08-24 14:19:30 +00:00
कारतोफ्फेलस्क्रिप्ट™ 544b880dfa
fix(cli): Fix the tests, that broke after #3919 (#3935) 2022-08-24 16:07:53 +02:00
maxtkacz cc5d9a296c
refactor(editor): Add G2 review link to Value Survey (#3920)
Replaced survey link in success toast ("submitted") of Value Survey with a link to fill out a G2 review.
2022-08-24 16:00:20 +02:00
Mutasem Aldmour ce076dca48
feat(editor): mapping expressions from input table (#3864)
* implement tree render

* update styles

* implement slots

* fix recursive tree rendering

* make not recursive

* Revert "make not recursive"

f064fc14f4

* enable dragging

* fix dragging name

* fix col bug

* update values and styles

* update style

* update colors

* update design

* add hover state

* add dragging behavior

* format file

* update pill text

* add depth field

* typo

* add avg height

* update event name

* update expr at distance

* add right margin always

* add space

* handle long values

* update types

* update messages

* update keys styling

* update spacing size

* fix hover bug

* update switch spacing

* fix wrap issue

* update spacing issues

* remove br

* update hoverable

* reduce event

* replace tree

* update prop name

* update tree story

* update tree

* refactor run data

* add unit tests

* add test for nodeclass

* remove number check

* bring back hook

* address review comments

* update margin

* update tests

* address max's feedback

* update tslint issues

* if empty, remove min width

* update spacing back
2022-08-24 14:47:42 +02:00
कारतोफ्फेलस्क्रिप्ट™ 7d74ddab29
feat(cli): notify external hooks about user profile and password changes (#3919) 2022-08-24 13:47:26 +02:00
Omar Ajoue 2d6eea82d3
fix(cli): Init nodes dir to ensure npm install succeeds (#3934)
Init nodes folder when created so npm doesnt fail
2022-08-24 11:58:47 +02:00
Iván Ovejero db02a379d9
fix(editor): Check for PostHog before feature flag call (#3928)
* 🐛 Check for PH before feature flag call

* 🔥 Remove logging
2022-08-24 10:48:13 +02:00
agobrech 76f9ad8bae
N8N-4126 credentials injection and testing on specific nodes (#3816)
* Add credential injection and testing to Lemlist, Uproc, Supabase, Segment, Phantombuster, Mailgun and Dropcontact
2022-08-24 10:26:48 +02:00
agobrech 5285fc1de6
N8N-4134 Add AWS cred testing and http custom calls with credentials (#3924)
*  Add Aws testing and http custom api
2022-08-23 19:02:32 +02:00
Iván Ovejero a85d565ffc
refactor(editor): Fix capitalization on credential reconnect button (#3926)
✏️ Fix capitalization
2022-08-23 17:37:24 +02:00
Iván Ovejero 55c7dbad72
fix(editor): Fix excess json key from pindata in expressions (#3925)
* 🐛 Return pindata without excess `json` key

*  Restore `json` keys in `RunData` pane
2022-08-23 17:29:09 +02:00
Iván Ovejero ab45898a69
fix(cli): Account for unparseable string in JSON key migration (#3927)
 Account for unparseable string in JSON key migration
2022-08-23 17:13:48 +02:00
कारतोफ्फेलस्क्रिप्ट™ f22bd2805d
fix(cli): tsc build errors should fail turborepo builds as well (#3923) 2022-08-23 17:06:20 +02:00
Iván Ovejero 1d4f92a657
fix(cli): Fix excessive instantiation type error for flattened execution (#3921)
* 📘 Fix excessive instantiation error

* ♻️ Simplify interface for TypeORM
2022-08-23 15:27:04 +02:00
Iván Ovejero 30326d7098
refactor(design-system): Remove leftover hook from design system (#3922)
* 🔥 Remove leftover hook from design system

* 🔥 Remove ref
2022-08-23 14:18:44 +02:00
Michael Kret 63e3ecfa19
n8n-4331-aws-ses-sending-emails-including-special-characters-fails (#3896)
 Fix issue with SES emails failing when subject contains special characters
2022-08-23 09:48:44 +02:00
Iván Ovejero b1e715299d
feat(core, editor): Support pairedItem for pinned data (#3843)
* 📘 Adjust interface

*  Adjust pindata in state store

*  Add utils

*  Replace utils calls

*  Adjust pindata intake and display

* 🔥 Remove excess BE fixes

* 📝 Update comment

* 🧪 Adjust tests

* 🔥 Remove unneeded helper

* 🚚 Improve naming

* 🧹 Clean up `ormconfig.ts`

* 📘 Add types and type guards

*  Improve serializer for sqlite

*  Create migration utils

*  Set up sqlite serializer

* 🗃️ Write sqlite migration

* 🗃️ Write MySQL migration

* 🗃️ Write Postgres migration

*  Add imports and exports to barrels

* 🚚 Rename `runChunked` to `runInBatches`

*  Improve migration loggers

* ♻️ Address feedback

* 🚚 Improve naming
2022-08-22 17:46:22 +02:00
Iván Ovejero 6bd7a09a45
fix(core): Account for enabled state in first pinned trigger (#3912)
🐛 Account for enabled state in first pinned trigger
2022-08-22 17:45:06 +02:00
Iván Ovejero 4f3043c65f
Fix community package update (#3914)
* 🐛 Fix community package update by using `npm i pkg@latest` always
2022-08-22 13:11:51 +02:00