Commit graph

5088 commits

Author SHA1 Message Date
WMDE-Fisch b483c829ab Extract some methods around the reference insert/update workflow
Includes renaming the method so it's more clear what it's doing.

As preparation for adding the extends warning to the edit pane and
to allow easier identification of parts belonging to the edit
workflow.

Change-Id: If84c5dbdee19c0ebc0a28b50dda93fef3f558c6e
2024-07-02 12:30:11 +02:00
Adam Wight 2748f659a8 Render subrefs indented under parent
With this patch, we show reflists in a hierarchical view with subrefs
listed under their parent.

TODO in follow-up patch: numbering of subrefs is still incorrect.

Change-Id: Ia82658af72caebd29241b9bd329d236ddc3f1e6d
2024-07-02 09:20:53 +00:00
Adam Wight d03d2d8d20 [refactor] switch reflist rendering source of truth
Pure refactor which shouldn't change output in production.  Switches
to interfacing with MWDocumentReferences to get refs in index order.
Temporarily suppresses any subrefs, we only show top-level refs.

Bug: T247921
Change-Id: I9c8347b064173027f436722c87e15e0381c958bd
2024-07-02 11:20:16 +02:00
WMDE-Fisch ccf3809413 Re-enable disabled ReferencePreviews Qunit test
I could just remove the getElementById replacement that was
failing the tests. In the Popups extension there really is a
renderer test that mocks this function call but that test is not
part of this file.

Also it seems that tracking is never triggered here. I think that
the beacon overwrite was only added to avoid tracking.

See I2638611ba67b785338f7e98a1c4b08a5e829812d

Change-Id: Ic3540f6f73783e79c81e2b693d2bf96cfc7fc66b
2024-07-01 18:32:13 +02:00
jenkins-bot 2957948239 Merge "Display reference preview with sub reference" 2024-07-01 08:52:52 +00:00
Translation updater bot a5f6e58494
Localisation updates from https://translatewiki.net.
Change-Id: I097589649a71f4038b9a94c2beb9df41c80e4f42
2024-07-01 09:24:46 +02:00
mareikeheuer 7380a861f0 Display reference preview with sub reference
Identify both parent and child reference (reference and extended
reference) and display them in the reference preview popup.

This is a very simple basic implementation so at least avoid that
the sub referenc content is shown without context.

Bug: T239228
Change-Id: I857e1be32db9fd72073015cbba1b1bd37e32085f
2024-06-28 14:23:27 +02:00
jenkins-bot d5a4ecd647 Merge "[Cypress] Always provide ref templates to fix Citoid" 2024-06-28 08:11:40 +00:00
jenkins-bot 73acd732e2 Merge "[Cypress] Fix VE save" 2024-06-28 08:11:38 +00:00
Translation updater bot 94ebc6a8f8
Localisation updates from https://translatewiki.net.
Change-Id: I3e0ad8d57b6cd23accc955beb2284b64c57fe3f0
2024-06-28 09:40:54 +02:00
WMDE-Fisch af3f14d430 [Cypress] Always provide ref templates to fix Citoid
The Citoid dialog won't be available when the .json configuration
is missing. That's why test always failed here when triggered
from the Citoid CI.

Bug: T366383
Change-Id: I88ad478250328896c504ccbc95a973d4a0100dd7
2024-06-27 17:05:35 +00:00
WMDE-Fisch 5fcc9dab86 [Cypress] Fix VE save
In some cases the click on the save button did not trigger the
save dialog. After playing around with this, it seems that the
only thing helping here is a little pause.

Even if we wait for the button to change the state to `enabled`
the click sometimes does not trigger the dialog.

Bug: T366383
Change-Id: I2754fd5a0e9b439e9e0378f3597f67e743a6d0c1
2024-06-27 19:01:44 +02:00
WMDE-Fisch bcc109f943 [Cypress] Re-enable skipped backlinks test
I could identify and fix the issue in

I3224c6131a6e959821bc36e4525889e5088777a2

stress test run fine see

I8e38e8cc533065998f91794a9e490d38d77ad21a

Bug: T368267
Change-Id: Ib7db6c39988ef45404817b8c7a68132572f16e36
2024-06-26 11:59:56 +02:00
jenkins-bot a2506818ae Merge "[Cypress] Fix module wait" 2024-06-26 08:27:01 +00:00
Translation updater bot da045950b0
Localisation updates from https://translatewiki.net.
Change-Id: I4cfed8bf3be5afe4bc6ce04c487b21710edb6449
2024-06-26 09:21:04 +02:00
WMDE-Fisch 4f7b5b2d60 [Cypress] Fix module wait
This was never working it seems. The result of the check needs to
be wrapped in an expect() call.

Bug: T368267
Change-Id: I3224c6131a6e959821bc36e4525889e5088777a2
2024-06-26 09:01:31 +02:00
WMDE-Fisch 20c3798055 Fix re-use search activity tracking name
C&P mistake in the original implementation. Otherwise we end up
with an undefined in the name.

Bug: T362347
Change-Id: I5c6957ca9fc81e6a5211aab050025eea5d0addbe
2024-06-25 17:02:04 +02:00
jenkins-bot c5ecb4b9db Merge "cypress: Disable flaky backlinks.cy.js test" 2024-06-25 08:46:58 +00:00
Translation updater bot cedf792f5d
Localisation updates from https://translatewiki.net.
Change-Id: I69657adf08575b9f9d0a0b0a5ed209909df9a90c
2024-06-25 09:29:49 +02:00
Kosta Harlan c51dc6e280
cypress: Disable flaky backlinks.cy.js test
Bug: T368267
Change-Id: I469c5d63d2db09c691b49a83200fcf39e0f2ac4a
2024-06-24 15:23:11 +02:00
thiemowmde ec9c8bda00 Use slightly narrower interfaces in a few places
The idea is to make the code less ambiguous and easier to predict.
We passed the same information around two times in a few places.

Change-Id: I39c7a2962bb70bbe40074986e63b1051d0766ea2
2024-06-24 08:07:19 +00:00
Ed Sanders 66fb3e661a Fix some documentation warnings
Change-Id: I7a97c99a919796f987a05ba17e25357fb5ef14c5
2024-06-21 18:00:45 +01:00
Ed Sanders 61879d1369 build: Update linters
Change-Id: Iacd5cd029101ae514d1ed4c3167bf013ff635108
2024-06-21 18:00:43 +01:00
Ed Sanders 43333cd6b8 Re-enable pointer events in reference preview
This partially reverts I7e82e03ecfe.

Bug: T368119
Change-Id: Ibfd917b2413e306073e1ef4b3e50f06066a7c967
2024-06-21 12:49:53 +01:00
Translation updater bot 31bad90080
Localisation updates from https://translatewiki.net.
Change-Id: Ic417404292dbcdffbbce3e14ed5d22b2a3884511
2024-06-21 09:41:28 +02:00
Adam Wight a2eec914cd [refactor] Split out reflist item rendering
Should be a no-op.

This change is made to prepare for recursively rendering subrefs.

Bug: T247921
Change-Id: Iebf546743c29a4a591ec1f085cc2e1b3496a38fa
2024-06-19 12:29:50 +02:00
thiemowmde bc7f1a7005 Replace "shield" hack in MWReferenceResultWidget with CSS
Same as in I7e82e03. The extra "shield" element was added in
2013 (!), see Ib244ff6. Back then we couldn't use the CSS property.
But nowadays we can.

Bug: T360034
Bug: T367030
Change-Id: Ib41e062491e65eabc8a52facefe283ba04ce16ff
2024-06-18 12:06:37 +00:00
Translation updater bot eeb4852be3
Localisation updates from https://translatewiki.net.
Change-Id: I3c2ca5242030964eec5b61b6bd72103ae39f76e7
2024-06-17 09:30:17 +02:00
jenkins-bot c197e9e519 Merge "Fix preview of parent reference in context item" 2024-06-15 07:02:12 +00:00
WMDE-Fisch 15bcfdcc70 Implement support to convert extended notes with auto names
To make sure also the parent gets a name even if it is not re-used
we need to iterate the list of reference to see if there's at least
one child that matches the parent.

The rest will be taken care of by getUniqueListKey that makes sure
that the matching temporary names will result in matching literal
names.

TODO:
- Write a ve.dm.Convertor test which shows the auto-name being
added.

Bug: T367031
Change-Id: I6ef42c8ffc8a4ff9224bfb2a910682d2c44f0dd2
2024-06-14 13:05:52 +00:00
thiemowmde 44afa99d49 Fix preview of parent reference in context item
I believe this was a mistake in the previous patch Idd57997. Using
only the .text() of the parent reference is not sufficient. Think of
a reference that contains a <math> formula or – even worse – is
nothing but a <math> formula. The preview will be empty in this case.

Click handlers in the preview need to be disabled. It's only a
preview.

Bug: T367030
Change-Id: I7e82e03ecfeb4e9cf132985684cff5e191506307
2024-06-14 14:32:21 +02:00
WMDE-Fisch aa5368ad32 Use full listKey for extends in the model
This makes it much easier to deal with the internal auto names
used on new elements created during one edit session.

We're ignoring the correct generation of the auto name literals
for now.

Bug: T367031
Bug: T367030
Change-Id: Idd579970cb64500dac27053213e9b116f23b6d76
2024-06-14 14:03:07 +02:00
WMDE-Fisch f3d0c8643d [Cypress] Use more helper methods for common code
Also removing the weird hook code that was only there to make sure
JS finished loading afaik and then was copied over to other parts
of the codebase.

Change-Id: I90185b14de69bf3f4b6230b9a87c7eff261e72b4
2024-06-14 10:15:11 +02:00
Translation updater bot 01b0409e8f
Localisation updates from https://translatewiki.net.
Change-Id: If870a591118d521bafa1e4ac20e3d04228fa87a1
2024-06-12 09:21:41 +02:00
Translation updater bot 04b0547c25 Localisation updates from https://translatewiki.net.
Change-Id: I53193a27f67f715e04fb5b5cd98a7c9b9592ab1d
2024-06-11 09:53:43 +02:00
Ed Sanders ed1501c577 JSDoc: Update jsdoc-wmf-theme to 1.0.1
Change-Id: I8237dd3aa9ad73dce59e9a9bf001d6af5de8e185
2024-06-10 16:15:48 +01:00
Translation updater bot 3776360e4e Localisation updates from https://translatewiki.net.
Change-Id: I324731d6fd467c98bde45466d1b6d3a0df87e817
2024-06-10 09:54:54 +02:00
Umherirrender 3de8f65114 Use namespaced classes
Changes to the use statements done automatically via script

Change-Id: I4b49c4ab87f1fcd5cdf29d5f882dec3c3902e146
2024-06-08 23:31:42 +02:00
Translation updater bot eece46ab35 Localisation updates from https://translatewiki.net.
Change-Id: Idaede775ca1e75a07871035bcdd04defe7e8bf3b
2024-06-07 09:44:18 +02:00
jenkins-bot 0dedffacd3 Merge "A few tiny code cleanups in the ReferenceStack class" 2024-06-07 03:06:56 +00:00
jenkins-bot f415239d11 Merge "build: Update eslint-config-wikimedia to 0.28.0" 2024-06-06 19:00:16 +00:00
jenkins-bot 20c6967f76 Merge "Preserve reflist CSS in dynamic mode" 2024-06-06 18:00:29 +00:00
Ed Sanders 77b7f347c8 build: Update eslint-config-wikimedia to 0.28.0
Change-Id: I9f69e865d47e7cf4a8273bb0fdffbb9dac28b5cb
2024-06-06 16:28:53 +01:00
jenkins-bot 5082101671 Merge "Do not parse the outer <ol> as wikitext" 2024-06-06 07:57:04 +00:00
thiemowmde 16b0c3c00e Do not parse the outer <ol> as wikitext
With this change the <ol> is added after the inner list of <li> was
parsed as wikitext. In other words, the outer <ol> is now raw HTML
and not sanitized any more. This is fine because it's generated via
code. It doesn't contain any user input.

You might ask how it is possible to parse "invalid" HTML that
contains a sequence of <li> without the outer <ol>. This is fine
because the wikitext parser doesn't care about the nesting structure
of HTML elements. This is done later by Remex (Tidy). But Remex is
never called here. What we care about here is that the wikitext
parser sanitizes the individual HTML elements and their attributes.

The <ol> doesn't need sanitization.

This will make it possible to use reserved data attributes for
T196828. A bazillion unit and parser tests prove that this change
doesn't have any unwanted side-effects.

Bug: T196828
Bug: T239572
Change-Id: I0a9d419f48cad5ddb7251c8fdd2cf9506649436b
2024-06-05 10:15:29 +00:00
jenkins-bot e3dbe7dd3a Merge "MWCitationDialog: Use const instead of let" 2024-06-05 10:10:16 +00:00
jenkins-bot 70dd8cf815 Merge "Use array spread syntax instead of Array#concat" 2024-06-05 10:10:16 +00:00
jenkins-bot 27dc7e46b5 Merge "Remove unnecessary local variable for this" 2024-06-05 10:07:47 +00:00
jenkins-bot 863dd201ad Merge "ESLint: Enforce prefer-arrow-callback" 2024-06-05 10:07:46 +00:00
Translation updater bot 943326590e Localisation updates from https://translatewiki.net.
Change-Id: I7e122c6273d34aabba5f3e797e915c5eb27ed0cf
2024-06-05 09:22:31 +02:00