Commit graph

34 commits

Author SHA1 Message Date
Simon Legner f00dbbb939 Remove IIFE
Remove Immediately-invoked function expression throughout production code base.

Bug: T77349
Change-Id: Ia31b556975209bbea27df8444b69d924654b181e
2024-05-21 22:31:15 +02:00
Simon Legner cfb250a57e Make functions in Utils class static
Bug: T337102
Change-Id: Ia186ba355d7da6034309453788f2f84d6b8de899
2024-05-16 21:52:14 +02:00
Simon Legner 628979d317 Use jQuery.data in favour of jQuery.attr
Ref: https://api.jquery.com/data/

Change-Id: I4ce901a8b030c4864814b8bed14dc0049fd788d7
2024-05-15 20:28:58 +02:00
Simon Legner b52231da6d Remove obsolete SVG icons
Those icons have been replaced with Codex equivalents in I6f7b6d0f9b96168ab6d835811141ab4cede214d1.

Bug: T340258
Change-Id: I3ec630f414e2b71743d3440339c13be54db62a79
2024-05-05 12:07:31 +03:00
Simon Legner 3d1fdfa4e1 Remove obsolete stylesheets
Obsolete since I539d1b5f0d7e3c02f767807da57324ea6a36ad5b.

Bug: T340258
Change-Id: I234882d70e4c29d50153ef66aa12462f91a550c7
2024-05-05 11:54:19 +03:00
Simon Legner e0aa14529c Change attribution and download interface
- Use Codex styles for mmv.ui.reuse
- Replace unofficial component dropdown with Codex Select and Button
components.
- Drop OOUI dependencies

Bug: T340258
Change-Id: I539d1b5f0d7e3c02f767807da57324ea6a36ad5b
2024-05-05 05:16:19 +00:00
Simon Legner ea78739fd0 Use Codex styles for mmv.ui.download.pane
Bug: T340258
Change-Id: I3dc1b5ffdf8c6a810e9e16a2b7f293757cce5306
2024-05-04 20:53:09 +03:00
libraryupgrader 147b576b57 build: Updating dependencies
composer:
* mediawiki/mediawiki-phan-config: 0.12.1 → 0.14.0

npm:
* eslint-config-wikimedia: 0.25.1 → 0.26.0
  The following rules are failing and were disabled:
  * resources:
    * es-x/no-resizable-and-growable-arraybuffers
  * tests/qunit:
    * es-x/no-resizable-and-growable-arraybuffers

* grunt-banana-checker: 0.11.0 → 0.11.1

Change-Id: Ief610bdadaccd2325cd1b8a2cae70b7e465d8b76
2024-02-13 02:13:29 +00:00
Volker E cfcb8d4755 build: Update 'svgo' to latest v3.2.0 and re-crush SVGs
The latest update of 'svgo' dependency includes three optimizations on
converting path commands, which
- improves closing paths and how we determine if to use absolute or
  relative commands.
- round arc or convert to lines based on the geometric sagitta
- convert cubic Bézier curves to quadratic Bézier curves where possible
Also
- removing obsolete 'grayscale.svg' which was introduced in
  I0f2c2b24aece3b but seems to have not been in use. It itself is not
  reasonable, as an SVG filter needs an element to be applied to, which
  this SVG didn't feature.
- unifying npm command to qua standard notation `minify:svg` and add
  “parent” command `minify` as well.

Bug: T354875
Change-Id: Ie4d8ef85b9b9d28943a7216f0b5ed6392592a43e
2024-01-18 12:04:02 +01:00
Fomafix c37c64875b Improve variable declarations in JavaScript
Change-Id: Ibb3f99a98e019204b4def19af957511ef32e9dd4
2023-10-23 19:52:02 +00:00
Ed Sanders 67188f8c31 eslint: Enforce max-statements-per-line
Change-Id: I416d0c951d18f2fb3b477695ab0913f75fb60a68
2023-06-28 19:12:48 +01:00
Simon Legner 30fad6b8b8 Use ES6 features
* classes
* arrow functions
* const/let
* string templates
* Object.assign

Bug: T337102
Change-Id: I757b9993a2feeed707fb4ad213944001498f3f6a
2023-06-12 16:45:08 +00:00
Simon Legner 0683f3ecc8 Remove global mw.mmv
Bug: T337030
Change-Id: I90e8507cb1b7c30f6ba29dbdec8966e84b46aff2
2023-05-21 08:02:54 +00:00
Simon Legner d82910fbb3 Use packageFiles in mmv
Bug: T337030
Change-Id: I833c7e91230272b82a2512fd55f1c7c0f61233b4
2023-05-20 10:04:41 +03:00
Simon Legner 35cd0f18c0 Use packageFiles in mmv
Bug: T337030
Change-Id: I90cdfb626c176b27b59db6b92b9edd6b2fe49b68
2023-05-20 09:34:56 +03:00
Simon Legner 26f4c60495 Use packageFiles in mmv.ui.reuse.shareembed
Bug: T337030
Change-Id: Ic54d1a1a40ee5318f65ee1245e261db7059583ba
2023-05-19 18:05:56 +03:00
Fomafix 90a1949444 Use .text( '\u00A0' ) instead of .html( ' ' )
On reading the HTML by .html() in the tests the content is still
' '.

Bug: T154300
Change-Id: I2f43909c5539a5882af354fc8f64b03e43697647
2023-05-01 18:41:48 +00:00
Sam Smith 34e4968b2c Remove instrumentation
The MediaViewer and MultimediaViewer* instruments were disabled circa
October 2021 in Ie7dd8739efc.

This patch removes those instruments and any supporting code and data.
Notably, this patch does not remove the mw.mmv.logging.ViewLogger
instrument, which is responsible for logging image views.

Bug: T310890
Change-Id: I97d41be93849b2ae9d1adba6660546ea716657fd
2022-07-05 17:41:24 +00:00
Volker E 3205e72ad8 build: Replace 'grunt-svgmin' with npm based 'svgo' & re-crush SVGs
Replacing 'grunt-svgmin' with 'svgo' v2.3.0.
Also
- replacing all Grunt based tasks with npm equivalents. 'build' has
before just been for SVG minification and that's the same now in npm.
- changing to JS based '.svgo.config.js'
- re-crushing all SVGs. Note that 'link-hover.svg' and 'link.svg' have
been optimized with reduced precision. All other changes are resulting
from updated SVGO.

Bug: T278656
Change-Id: Ie895edb4e88336ffc56f570b8f80bf7d1e331894
2021-04-12 13:01:59 -07:00
Ed Sanders bfdcd8dbf1 eslint: Update eslint-config-wikimedia to 0.16.2
Change-Id: I0c35ed9b5ab00952124cb0e5c6c48fbc0d734f60
2020-06-26 12:14:27 +01:00
Ed Sanders d554d7f426 Docs: Fix whitespace
Change-Id: I98dc12787f68bd8db60e5a5bcb9366daf9f2f6b8
2020-06-26 11:21:04 +01:00
Volker E 9d2f7de650 Amend Base10 color from #222 to #202122
Amending Base10 to slightly darker `#202122` to fulfill WCAG
requirements in connection to Accent50.
Also adding it as WikimediaUI Base equivalent variable for
future replacement.
Also removing variables not in use any more.

Bug: T248393
Change-Id: I6fb5c288cfeb2bd3c786c2f5ab771074203b8fc0
2020-04-20 13:50:10 -07:00
libraryupgrader 5410aa9150 build: Updating eslint-utils to 1.4.2
* https://npmjs.com/advisories/1118

Additional changes:
* Added .eslintcache to .gitignore.

Change-Id: I9b6420e70ec7f4568b707371c731a8db56f6e34a
2019-08-24 12:16:21 +00:00
jenkins-bot a4e63f623c Merge "Adopt mediawiki.router" 2019-05-28 15:14:50 +00:00
Simon Legner b1ade19388 Adopt mediawiki.router
Bug: T77258
Change-Id: Id4df92b0ebed3fb4f4b9269862c952f3968bf957
2019-05-26 19:46:38 +02:00
Ed Sanders 394b893c7d Use upstream CopyTextLayout in share/embed/download panels
Results in small UI changes, but allows us to delete a lot
of code duplication.

Depends-On: I9049f5a1c0d88680fc4a174e390dd08e27c0eee2
Change-Id: Iebe7bdc8a026b929a35e823d8107d90e7bb62b82
2019-05-23 20:01:36 +01:00
Thiemo Kreuz 646d871eee Make multiline text fields auto-size depending on the value
This avoids a series of issues on the "Embed" tab, for both the
"Wikitext" and the "HTML" snippet. Without this patch, the textareas
might show a resize handle that does have weird effects when used.
Sometimes the textarea contains very few text and empty space,
sometimes a long text that is barely visible. Auto-fitting it to the
content feels like the right thing to do here.

Change-Id: Ieeaf4d33fef8eb3660fb177f57dfb753b8c208f8
2019-05-19 14:59:43 +02:00
Simon Legner 5be5afe0a7 Fix copy share URL to clipboard
Typo in method.

Bug: T223729
Change-Id: I45ffeea5d9837fcdf63df7ee72d8b9a6298415df
2019-05-18 17:16:21 +00:00
Thiemo Mättig f8bf849430 Allow partial selection in text fields
Really, why should this be forbidden? These onclick handlers do waaaaay
to much. They do not only block what they should block, they block way
more stuff, like resizing the textarea and interacting with it in any
way that involves the mouse. This is not the intention of this code.
I'm sorry to say that, but this code is the equivalent of "disable
right click to prevent stealing images" on 1990s web pages. Please,
please let's not do this. Let the user do what he expectes and is used
to do.

Bug: T110579
Change-Id: Ia89faea678606d5c382539f726e2edaa745c904e
2019-05-10 14:33:08 +02:00
James D. Forrester 9b826f022e build: Lint the rest of our JS, and make pass
Change-Id: I660bba75d2637ac67a1f7920d40e051ed67d1d45
2019-05-08 14:28:06 -07:00
Eric Gardner bbaf7a38b4 Get Rid of EmbedFileInfo
* Deletes the mmv.model.EmbedFileInfo class file and its test file
* Updates the extension.json and MultimediaViewerHooks.php files to reflect
  these deletions (by removing entries from dependency lists)
* Refactors all instances of `new mmv.model.EmbedFileInfo()` to instead use a
  POJO with appropriate properties. Conditional assignment is used for the
  caption and alt properties if there is any chance they won't be available, to
  keep from adding props with falsy values.
* Refactors JSDoc method annotations so that `@param` tags expecting an
  EmbedFileInfo instance now expect an object; relevant properties of this
  object and their types have been added to the method annotations as well.

Bug: T77320
Change-Id: Ie9f5f24136f4b73000259685474ce4d765a3ccd3
2019-02-05 15:31:49 -08:00
Volker E a23084a360 build: Follow 'svgmin' step option best-practices
Changing indentation to tabs and use `multipass` option correctly.
Follow-up to I09660b9d49cfdc4.

Change-Id: Ic69532ad165c34aab97888328c7bef6e6c578491
2018-11-28 18:32:16 -08:00
Ed Sanders 1ded292f83 Remove obsolete aliases from closures
Bug: T208951
Change-Id: Ice695dfb489974faa23ba19d74cf17b06e3f6075
2018-11-12 16:33:24 +00:00
Timo Tijhof 5c9faa580e Move files to their own directory per module
Bug: T193826
Change-Id: I925b1c7be2dbbb50994ed9f1ef12b5978ba175ff
2018-07-30 15:15:25 +02:00