Commit graph

2359 commits

Author SHA1 Message Date
thiemowmde eb7fec0877 Fix broken ActionFieldLayout construction
OO.ui.ActionFieldLayout requires 3 parameters: 2 widgets and optional
configuration. But this code was passing only 1 widget. The config
object was actually used as a widget and never as config. It's a
miracle this was not throwing an error. ;-)

Replace with a more trivial FieldLayout which requires only 1 widget.

Also clean up some closely related code.

Change-Id: Idca9a39e9f442f3a5412027906de9f868fc12b76
2023-05-23 18:59:24 +02:00
thiemowmde 03feb0d2a7 Fix incomplete validation & enter key when adding new parameter
This fixes a whole sequence of issues:
* It was actually possible to add a parameter with no name.
* It was also possible to add parameters where the name is nothing
  but whitespace.
* Pressing enter was not possible.
* The button was initially enabled with the input field being empty.
* Validation code was duplicated, but incomplete, which made it
  possible to add duplicate parameters with enter.

Bug: T324381
Change-Id: I598997efc63256fd59a2b4f71fb7c3d99306bd85
2023-05-23 18:48:26 +02:00
Translation updater bot 4c2cfdc45f Localisation updates from https://translatewiki.net.
Change-Id: I6ea4f79e18298ec459d26f6c1e1d2a873dfb12df
2023-05-22 08:46:48 +02:00
Umherirrender fe40e527c0 tests: Make PHPUnit data providers static
Initally used a new sniff with autofix (T333745)

Bug: T332865
Change-Id: Id3e2d5645dfd89d2b7d3586a4e1446d16a9ca60e
2023-05-20 14:10:49 +02:00
Translation updater bot 9a99ec4645 Localisation updates from https://translatewiki.net.
Change-Id: Ib93ec224f59225b46fc36a0373d1c56e867f153a
2023-05-17 08:49:58 +02:00
Translation updater bot 9d639f8568 Localisation updates from https://translatewiki.net.
Change-Id: Ife61eae2ea73866d1a525b98fc4c43145d525d78
2023-05-15 08:33:52 +02:00
Translation updater bot 5561f68b41 Localisation updates from https://translatewiki.net.
Change-Id: Ib2532aaeafbe97f88b326ea1a8c1d0de084a16a0
2023-05-10 08:42:04 +02:00
gerritbot 2d16a7c72f Update moved class EditPage
See T321882. Moved in Ibefc44eb64aed

Bug: T321681
Change-Id: I9de606e32ac58ddbf68ee00587ee9b7f0f9f157d
2023-05-06 21:20:32 +00:00
Translation updater bot cfbfa8dfa7 Localisation updates from https://translatewiki.net.
Change-Id: Ic6a76a9ac69203cb0d4f47aa0edaf86ec88e4d13
2023-05-05 10:41:05 +02:00
libraryupgrader c407256521 build: Updating eslint-config-wikimedia to 0.25.0
Change-Id: Ic5f44292b65ddfc30674ea6ca0a01fbb124798d4
2023-05-04 12:59:27 +00:00
Translation updater bot 8d4771e0ad Localisation updates from https://translatewiki.net.
Change-Id: Icb427ea82d37509fb36ec9ce095d5da110b869af
2023-05-03 08:44:29 +02:00
libraryupgrader 1ca585792d build: Updating dependencies
composer:
* mediawiki/mediawiki-phan-config: 0.12.0 → 0.12.1

npm:
* grunt-eslint: 24.0.0 → 24.0.1

Change-Id: Ie91b9f93b6b3f308dba81455908411c01ec8ff16
2023-04-29 12:13:27 +00:00
Translation updater bot a8e1f30ef4 Localisation updates from https://translatewiki.net.
Change-Id: Icc490a6d5c1014e09610aafaa57b024e3389bb75
2023-04-28 08:57:31 +02:00
Translation updater bot 12aa893937 Localisation updates from https://translatewiki.net.
Change-Id: I1cfdf786e380de14811f73d7e9cfa9f031735b07
2023-04-26 08:44:15 +02:00
Translation updater bot 51b2995a96 Localisation updates from https://translatewiki.net.
Change-Id: I3338841d37133687d6148893fa0b7733badcc14a
2023-04-25 08:48:39 +02:00
Translation updater bot 3b47550e74 Localisation updates from https://translatewiki.net.
Change-Id: I6afb70f194240a0df222600e3f25e2cfe97247c6
2023-04-24 09:17:22 +02:00
jenkins-bot 82e5ba9172 Merge "Replace IDatabase with IReadableDatabase where possible" 2023-04-22 20:47:44 +00:00
jenkins-bot 849150c814 Merge "Add missing validation for empty parameter names" 2023-04-21 13:12:29 +00:00
jenkins-bot cd58aa88bb Merge "Update TemplateDataEditor logging for IP masking" 2023-04-21 11:32:18 +00:00
Translation updater bot 1147a8f4ef Localisation updates from https://translatewiki.net.
Change-Id: I5009676ab695f845dc589a2abda6e49d2f390a10
2023-04-20 08:49:18 +02:00
Translation updater bot 2ca2525ae2 Localisation updates from https://translatewiki.net.
Change-Id: I9194d63e4de62e0a492ccbbdbc24298feaa8a3ad
2023-04-19 08:27:39 +02:00
Bartosz Dziewoński f2c89028bd Update TemplateDataEditor logging for IP masking
Bug: T332434
Change-Id: I9935e7d35b1cdb14c0958351cd84d9d6476d6363
2023-04-18 19:30:54 +00:00
Translation updater bot dd1b6a3436 Localisation updates from https://translatewiki.net.
Change-Id: I0f79e387bd472be2607346d3a9b0c6de76e6ddbf
2023-04-14 09:27:23 +02:00
thiemowmde b632162245 Add missing validation for empty parameter names
Note this will make the templatedata API temporarily fail for
templates that are affected by this, until their documentation is
fixed. I think we have two ways to proceed here:

1. Thanks to Ie572809 we can change the API module to not do the
validation again. This allows us to make the validation more strict,
but the API module will continue to deliver the same data as before
until the parser cache is invalidated.

2. We accept it and merge this patch as it is. The problem is
extremely rare and easy to fix.

Bug: T333826
Change-Id: I16c7cc2328c47dde196e2dc07edb2eace33a624f
2023-04-11 19:08:37 +00:00
jenkins-bot 0298a2d116 Merge "Split validation and normalization into separate services" 2023-04-11 04:51:02 +00:00
Translation updater bot 738482a25c Localisation updates from https://translatewiki.net.
Change-Id: If70b9f021106a824134cf4fd2b8c1d842a41836e
2023-04-10 09:46:47 +02:00
Translation updater bot d460966112 Localisation updates from https://translatewiki.net.
Change-Id: Id94f77c9de253ab189df8c43d590281115e8fdf9
2023-04-04 09:18:20 +02:00
Umherirrender 06d6054ade stylelint: Enable selector-pseudo-element-colon-notation
Via stylelint --fix

Change-Id: Iafee0799add6495119f174d3022af17206167c0e
2023-03-30 01:01:00 +02:00
Translation updater bot 8e16a73d09 Localisation updates from https://translatewiki.net.
Change-Id: I6e940ba9583ff3894b35004715b17665fc3bb0ef
2023-03-24 09:28:51 +01:00
Translation updater bot 39e6b8830e Localisation updates from https://translatewiki.net.
Change-Id: I214cfaa8f9f15284b0d7df1ad9830a9c3866c187
2023-03-23 09:26:58 +01:00
Translation updater bot 230ea67e26 Localisation updates from https://translatewiki.net.
Change-Id: I0e7a5f30df2e4ac9850c2562f8c11bdce0da92ce
2023-03-21 09:17:15 +01:00
Translation updater bot 8c23b6dd36 Localisation updates from https://translatewiki.net.
Change-Id: I4f3222f4ba68109b9584fb369142a8a7f83f91ff
2023-03-20 09:02:43 +01:00
jenkins-bot fe0da7de1d Merge "Fix placeholder size for the "edit template data" button" 2023-03-17 13:25:55 +00:00
libraryupgrader e05914c704 build: Updating npm dependencies
* eslint-config-wikimedia: 0.22.1 → 0.24.0
* grunt: 1.5.3 → 1.6.1
* stylelint-config-wikimedia: 0.13.1 → 0.14.0
  The following rules are failing and were disabled:
  * selector-pseudo-element-colon-notation

Change-Id: I505fd5e62e74f63b1a9cff9247f106323c1f27d5
2023-03-16 07:49:44 +00:00
Translation updater bot d056bf4f99 Localisation updates from https://translatewiki.net.
Change-Id: I6005a6cf37730b1f85b051bbbb804d4958e8fab3
2023-03-15 08:50:40 +01:00
jenkins-bot 161eeb8df2 Merge "Extract serialization methods into TemplateDataStatus class" 2023-03-14 19:24:34 +00:00
jenkins-bot cbf2db39d5 Merge "Add missing parser tests to cover parser hook and renderer" 2023-03-14 19:24:32 +00:00
thiemowmde 22d5363208 Fix placeholder size for the "edit template data" button
This placeholder was added in Ic8f9bf7. It makes sure the page
content below the button doesn't shift down the moment the button
appears. See T279869 for a screencast that demonstrates the issue.

Unfortunately something changed (possibly related to T323773) and
the size of the placeholder is not correct any more. At the moment
the page shifts up a few pixels.

Bug: T279869
Change-Id: Ie6e585d2061342c11aabb4414bb9b0bedecf3a12
2023-03-13 09:40:17 +01:00
Translation updater bot 38263243b9 Localisation updates from https://translatewiki.net.
Change-Id: If0e777d4299fe28df2fe51b59e736141d3904d63
2023-03-13 08:39:56 +01:00
libraryupgrader 991e9ccc86 build: Updating mediawiki/mediawiki-codesniffer to 41.0.0
Change-Id: I8baae7707b03363ade408f766f7a430723641f69
2023-03-12 11:43:19 +00:00
Translation updater bot 3acbf5eeaa Localisation updates from https://translatewiki.net.
Change-Id: I5ecadbe57067711d0c1c8a7665c998c655635102
2023-03-10 08:49:39 +01:00
thiemowmde 584fdcddf6 Extract serialization methods into TemplateDataStatus class
This makes the large Hook class quite a bit smaller.

Change-Id: I55229116eb16ccd9be21d1f34de5e52826ece2bf
2023-03-09 11:46:49 +01:00
thiemowmde da63a3fdc6 Add missing parser tests to cover parser hook and renderer
Without this the entire code in Hooks::render() is uncovered.

Change-Id: Id347b278b6b5eed5f660c317ed21410de7910a1b
2023-03-09 11:46:49 +01:00
Translation updater bot fe03b7710f Localisation updates from https://translatewiki.net.
Change-Id: I8c41a0df492990f1db09b88af916f80d429d4115
2023-03-09 09:06:19 +01:00
Translation updater bot b824ffb96c Localisation updates from https://translatewiki.net.
Change-Id: I53b07d31c5e761fabd5d7a4b685c9f8a08c6b6dd
2023-03-07 08:54:59 +01:00
Thiemo Kreuz 7a32cba3ef Split validation and normalization into separate services
This makes it possible to use these steps independent from each
other. For example, a future patch can get rid of the re-validation
that's done over and over again when the API is called.

A significant change is that this gets rid of an expensive deep
clone. It was necessary before exactly because validation and
normalization was intertwined. Normalized properties would mess with
the later inheritance.

Strictly splitting validation and normalization (and executing them
in this order) solved this. The only downside of this is that
inherited properties are validated twice. But this is much less of a
problem, compared to the deep clone, I would like to argue.

This was always covered by tests. You can still see the tests fail
when you flip the execution order of inheritance and parameter
validation.

Bug: T301337
Change-Id: Ie5728094f9ed813f53b709d8b5283c4b99dc7d63
2023-03-06 13:05:51 +00:00
thiemowmde 962e2828e0 Replace IDatabase with IReadableDatabase where possible
This is a much more narrow interface and really all this code needs
to know.

Change-Id: I2f20fadb8a9630cdb1b7baf9da70e0287db85de2
2023-03-06 12:38:42 +01:00
Translation updater bot 95332c2ef5 Localisation updates from https://translatewiki.net.
Change-Id: I0739dc40be8dbfbdd33c6858e8698ccbc6f264f4
2023-02-27 08:28:20 +01:00
Translation updater bot c389929ffc Localisation updates from https://translatewiki.net.
Change-Id: Id4f2935f145fbe1d97fbbf620c04612322c225af
2023-02-23 08:40:15 +01:00
Translation updater bot bd9af7e96d Localisation updates from https://translatewiki.net.
Change-Id: Ie4213569beaf8d8a3ed9696a4815d7d822f979e5
2023-02-22 09:01:35 +01:00