aboutsummaryrefslogtreecommitdiffstats
path: root/resources
Commit message (Collapse)AuthorAgeFilesLines
* Vue: Add propsData parameter to Vue.createMwApp()Roan Kattouw2021-11-051-2/+10
| | | | | | | For compatibility with the createApp() API in Vue 3. Bug: T294476 Change-Id: I1fcdcf7bf87f5af2deb9763a231f2c360ea45b23
* Update OOUI to v0.42.1Volker E2021-11-0445-208/+276
| | | | | | | | | | | | | | | | | | | Release notes: https://gerrit.wikimedia.org/g/oojs/ui/+/v0.42.1/History.md Bug: T283812 Bug: T287329 Bug: T288928 Bug: T289043 Bug: T289043 Bug: T290792 Bug: T290975 Bug: T291142 Bug: T291284 Bug: T293274 Bug: T293635 Depends-On: I0918c0c866147e6a103ce8815b7a36d0463457b7 Change-Id: I717ff53e18e95c72ace1c46b6236cfecb5cd8217
* Add Vue composition API pluginRoan Kattouw2021-11-037-0/+2802
| | | | | | | | | | Feature code that needs the composition API will need this as long as we're still on Vue 2. This will also help migrate to Vue 3 more seamlessly, as working around some breaking changes in Vue 3 requires using the composition API. Bug: T251974 Change-Id: I8e334ae5f447a8f9b64a7c910b2c1776cef118db
* Merge "Add Vue.createMwApp(), to help with Vue 2->3 migration"jenkins-bot2021-11-031-0/+65
|\
| * Add Vue.createMwApp(), to help with Vue 2->3 migrationRoan Kattouw2021-11-021-0/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will allow code that mounts components to be written in a way that will keep working across the Vue 2->3 migration: var RootComponent = require( './RootComponent.vue' ), store = require( './store.js' ); // if using Vuex Vue.createMwApp( RootComponent ) .use( store ) // if using Vuex .mount( '#foo' ); While we're still using Vue 2, createMwApp() will return something that pretends to be an app object, with support for .use() and .mount(). Once we move to Vue 3, createMwApp() will remain, as a wrapper around Vue.createApp() that adds in the i18n plugin and the error logger. Migrating to this API won't be required immediately, since the change upgrading Vue from v2 to v3-compat will include a compatibility wrapper for the old calling style. Bug: T251974 Change-Id: Ib3ef9b88547b43c566abb007cde08a27baf2b7a4
* | Merge "EditPage: Only update title part of firstHeading on live preview"jenkins-bot2021-11-022-32/+2
|\ \
| * | EditPage: Only update title part of firstHeading on live previewFomafix2021-10-242-32/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The message wgEditMessage can contain code for the extension ParserFunctions which is not supported by mediawiki.jqueryMsg. This change updates only the title in the firstHeading instead of creating the whole message including the title again. The title gets identified by a new HTML element with id="firstHeadingTitle". The title in the HTML title gets not updated anymore. For a preview of the display title the title in the firstHeading should be enough. The 6 messages 'creating', 'editconflict', 'editing', 'editingcomment', 'editingsection', 'pagetitle' are not needed anymore in JavaScript and removed from the module. The global JavaScript variable 'wgEditMessage' is not needed anymore in the live preview module. Other user scripts uses this variable and therefor this variable is kept for compatibility. Bug: T105214 Change-Id: I8d8dc79c6bf1a94a55f1d0f6b5611ca478fd9e18
* | | Merge "Make use of OOUI methods .getItemCount() and .isEmpty()"jenkins-bot2021-11-022-4/+4
|\ \ \
| * | | Make use of OOUI methods .getItemCount() and .isEmpty()Thiemo Kreuz2021-11-022-4/+4
| | | | | | | | | | | | | | | | Change-Id: I24ae10d4bc4cee62f3a373a4caed65d99faae74f
* | | | Update WVUI to v0.3.2Volker E2021-11-016-76/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Release notes: https://gerrit.wikimedia.org/r/plugins/gitiles/wvui/+/refs/tags/v0.3.2/CHANGELOG.md#v0_3_2-2021_11_01 Bug: T290392 Change-Id: I8fb7761e60be330e58cd017872318fe3675c0be1
* | | | Merge "Follow-up I86568863: mw-ui-button: Reduce specificity of margin rule"jenkins-bot2021-10-291-1/+1
|\ \ \ \ | |/ / / |/| | |
| * | | Follow-up I86568863: mw-ui-button: Reduce specificity of margin ruleEd Sanders2021-10-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This rule can continue to apply to all buttons. Increasing the specificity caused regressions. Bug: T294286 Change-Id: I8bf02e81df56cafa221daeeb0f36e0305c6d9816
* | | | Change checkboxHack `bindToggleOnSpaceEnter` functionNicholas Ray2021-10-271-5/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This refactors the bindToggleOnSpaceEnter function to use keydown and keyup listeners to provide the space/enter key functionality. This provides the following benefits: * A click event is triggered when pressing the space or enter key on the passed in "button" element. This simulates native button behavior which triggers a click event when these keys are pressed. * Checkboxhack menus will no longer toggle rapidly when holding down the space/enter keys. Bug: T291096 Change-Id: I1ea65112fa6b527f1bd9118212838298399996aa
* | | | [BREAKING] Change cleanup API of checkboxHackNicholas Ray2021-10-271-69/+41
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this commit, each bind function would return an object containing a reference to the function used in the event listener creation with the intention that this could later be used to cleanup the event listeners. This is problematic for the following reasons: * In order to cleanup the event listener, it forces the client to know which element the event listener was added to (button, checkbox, document, window, etc.),. the event type that was used ('click', 'focusin', etc), and whether or not the "useCapture" param was also used. The `removeEventListener` API won't remove the correct event listener unless these three pieces of info are known by the client [1]. * Because the above point is tricky to get right, numerous potential memory leaks were possible with the `unbind` function as the `useCapture` param wasn't being passed in some cases. This commit aims to simplify the cleanup API by returning an anonymous function in each bind function that the client can call to cleanup the relevant event listeners without knowing any of the implementation details. This also makes the `unbind` function unnecessary. ** This is a breaking change to the checkboxHack API ** but because there aren't any known clients of the return values [2], a formal deprecation process was assumed to be unnecessary. Note gadgets should not be using the internal function mw.loader.require so these were not considered. [1] https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/removeEventListener#matching_event_listeners_for_removal [2] https://codesearch.wmcloud.org/search/?q=checkboxHack&i=nope&files=&excludeFiles=&repos= Bug: T291096 Change-Id: Ia2d79f27dd81fdc74a44829da3ca472f4c01d4b5
* | | Merge "mediawiki.action.edit, mediawiki.page.watch.ajax: Move var ↵jenkins-bot2021-10-254-45/+34
|\ \ \ | |/ / |/| | | | | declarations inline"
| * | mediawiki.action.edit, mediawiki.page.watch.ajax: Move var declarations inlineEd Sanders2021-10-254-45/+34
| | | | | | | | | | | | Change-Id: I2b0a4ce806d0f3354c785d60d0cb596f50e93936
* | | Merge "Make live preview work when section=new&nosummary=1"jenkins-bot2021-10-211-3/+7
|\ \ \ | |/ / |/| |
| * | Make live preview work when section=new&nosummary=1Nardog2021-10-201-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | #wpSummaryWidget does not exist if index.php has section=new&nosummary=1. Bug: T293892 Change-Id: Icfff6c70b4967edd4b70affa13b7584ab356bc8b
* | | Hard-deprecate remaining MWNamespace methodsAlexander Vorwerk2021-10-201-1/+1
|/ / | | | | | | | | | | | | | | | | | | MWNamespace has been deprecated in favor of the NamespaceInfo service in 1.34 and should no longer be used. All methods are unused in wikimedia-deployed extensions. Bug: T291389 Change-Id: Ibe2069dea1af983d8fda53e734396c5a7a8b7321
* | Merge "mediawiki.action.edit.preview: Use same UX as in normal diff"jenkins-bot2021-10-202-3/+37
|\ \
| * | mediawiki.action.edit.preview: Use same UX as in normal diffFomafix2021-10-202-3/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change fixes the following differences and bugs compared to the normal diff: * On an empty change the API response contains no `main` in `response[ 0 ].compare.bodies`. Remove the previous diff and show a 'diff-empty' message in this case. * The header with 'currentrev' and 'yourtext' is missing. Show this message similar to the normal diff. The HTML in the diff of the live preview is not exactly the same as in the normal diff: * The live preview has now <thead> and <tbody> elements. * The live preview has always 4 columns. Bug: T293307 Bug: T293597 Change-Id: Ibb4fccb74634094ffeabf6fe201257d747bb8a01
* | | Merge "mediawiki.util: Improve docs with updated examples from wiki page"jenkins-bot2021-10-201-40/+75
|\ \ \
| * | | mediawiki.util: Improve docs with updated examples from wiki pageTimo Tijhof2021-10-191-40/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add some of the hardcoded examples on the [[mw:RL/DM]] wiki page here and improve the docs a bit overall, in prep for removing those sections in favour of the API docs link, as we do for most other modules already. This is quite possibly the most used module, and for some reason we never integrated it into the rest of the docs :) Change-Id: I7f255e87e65f11cde25ce4476bb9f25e289cf16c
* | | | Merge "mediawiki.page.ready: Fire hook 'wikipage.indicators' with children"jenkins-bot2021-10-202-18/+20
|\ \ \ \
| * | | | mediawiki.page.ready: Fire hook 'wikipage.indicators' with childrenFomafix2021-10-202-18/+20
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The parameter of the hook 'wikipage.indicators' in mediawiki.page.ready and in mediawiki.action.edit.preview was inconsistent: * mediawiki.page.ready fired the hook with the root element. * mediawiki.action.edit.preview fired the hook with the children elements. This should be consistent. mediawiki.action.edit.preview fires the hook before adding the elements to the DOM. Therefor it can't fired with the root element before adding to DOM. To be consistent the behavior in mediawiki.page.ready must changed to the behavior in mediawiki.action.edit.preview. Also remove the text nodes with the newline from the value in mediawiki.action.edit.preview to be consistent with the value in mediawiki.page.ready. This change is a follow-up to bea70565d96a88948b99fa657657b69f3c6df97a. Bug: T293564 Change-Id: Ie8890e6396db071975794655c4e4ec3616891f96
* | | | Merge "mediawiki.Title: Regenerate phpCharMappings against plain PHP 7.2"jenkins-bot2021-10-191-572/+1
|\ \ \ \ | |_|/ / |/| | |
| * | | mediawiki.Title: Regenerate phpCharMappings against plain PHP 7.2Petr Pchelko2021-10-191-572/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After the unicode migration from HHVM-like to PHP 7.2 (T219279), MediaWiki is running in production with default PHP 7.2 unicode, so some of the char mappings overrides for mw.Title are no longer nesessary, since PHP is now closer to JS. Bug: T219279 Change-Id: Ic487c55b09ff81c1b7878651342d793982814a3e
* | | | Fix invisible DateTimeInputWidget clear buttonNardog2021-10-181-0/+1
| |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | mw.widgets.datetime.DateTimeInputWidget() uses the "clear" OOUI icon but the "interactions" OOUI icon module wasn't declared as a dependency, leading to an invisible clear button unless the module was loaded elsewhere. Bug: T283129 Change-Id: I5aef30a7b5f4f3286e3f5b459b675204b1233fea
* | | Improve TitleWidget search resultsSam Wilson2021-10-151-11/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add the query value as a redlink in the result list, as is already done if the query value is *not* a prefix of some other (existing) title. Bug: T291056 Change-Id: I1569ad5a57cd98fe7deb034512b46e948a3561e1
* | | mediawiki.rcfilters.filters.ui: Simplify ItemMenuOptionWidgetFomafix2021-10-141-15/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove unnecessary check for an empty array. * Use .map() instead of .forEach() and .push(). * Combine .addClass() calls. * Avoid eslint-disable-next-line mediawiki/class-doc. Change-Id: Ia3c27ff08a5e7148af42d8e67f2ccc586227b6c6
* | | Merge "Final sync of DeleteAction and FileDeleteAction forms"jenkins-bot2021-10-141-1/+0
|\ \ \
| * | | Final sync of DeleteAction and FileDeleteAction formsDaimona Eaytoy2021-10-131-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the last drifts between the two. Custom CSS IDs/names/classes in FileDeleteForm were replaced with the base one, as I think it's better to be consistent, and it wouldn't be trivial to allow changing those values in a clean way. Question for reviewers: should this part be announced on tech news in case somebody is using those values in a script? Move the file delete intro above the form, like we do for normal deletion. For normal deletion, use the content of the wpReason field as default value for that field, not the result of merging the dropdown and the "other" field, which doesn't seem correct (the file version was already doing this). Make the file deletion form use the title as token salt like the base form -- it shouldn't make any difference AFAICS. After this patch, it should be possible to make DeleteAction extend FormAction with low effort. Bug: T288282 Change-Id: I8b115ecb1c94af63d686a575b18362ac32105ae2
* | | | Merge "Move mediawiki.ForeignUpload configuration settings to package files"jenkins-bot2021-10-132-3/+14
|\ \ \ \
| * | | | Move mediawiki.ForeignUpload configuration settings to package filesDannyS7122021-10-062-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Inject `wgForeignUploadTargets` and `wgEnableUploads` via a virtual file instead of always adding them to mw.config. Added a comment about them in the release notes since wgEnableUploads was used by an (undeployed) extension, but we can make the breaking change because their inclusion was marked as @internal. Bug: T292017 Change-Id: Ib1635b1864963c6c03c4a80e15048a898b8eaf90
* | | | | Live preview: use the correct content modelDaimona Eaytoy2021-10-131-2/+2
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I was under the impression that live preview could only be used on wikitext pages, but this isn't the case. So pass the proper content model to the API. Bug: T293022 Change-Id: Icff5b8b25a4b0df3feda2093d5b9c92e6dd9be3a
* | | | RCFilters: Merge mw.rcfilters.init.js into mw.rcfilters.jsDannyS7122021-10-133-177/+156
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After the mediawiki.rcfilters.filters.(dm|ui) modules were merged, mw.rcfilters.js was just `require`ing the old init script to run some extra setup, no need for separate files. Bug: T256836 Change-Id: I6462151152d075af0ef8bce3a5edf0a0ba48761a
* | | | Merge "RCFilters: Merge mediawiki.rcfilters.filters.dm into ui module"jenkins-bot2021-10-094-33/+39
|\ \ \ \
| * | | | RCFilters: Merge mediawiki.rcfilters.filters.dm into ui moduleDannyS7122021-10-094-33/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new module retains the name .ui name so that existing skin style overrides continue to work. We can consider renaming it to just "mediawiki.rcfilters.filters" in a future patch. This does not handle file reorganization, since both of the modules used package files - instead, in the main script we also require() the old main script for the .dm module so that its setup code runs. But, we did need to rename the virtual config file from the .dm module to not clash with the virtual config file from the .ui module, since the latter uses a callback instead of retrieving configuration variables directly. These can be merged later as well. Bug: T256836 Change-Id: I5ec0af8b8e6bcdba6b7881f946f777b854a33739
* | | | | Merge "ResourceLoaderContext: Set message 'interface' flag and unique 'title'"jenkins-bot2021-10-081-2/+1
|\ \ \ \ \
| * | | | | ResourceLoaderContext: Set message 'interface' flag and unique 'title'Bartosz Dziewoński2021-10-081-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug: T291601 Change-Id: I6375aa97faa794caad74546ebc5e7040ead38129
* | | | | | Fix bad calculation in TitleWidgetDaimona Eaytoy2021-10-081-1/+1
| |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Follow-up: Ieab0606068a78e5b5e5b9b3337f3a75a0b64adbc This is concatenating an object and a number, so the index is always "[object Object]0.5" Ops :) Bug: T292600 Change-Id: Icf9df9a3e1fbbb08f1868131cf3fb740ee3a3e08
* | | | | Merge "Use child combinator to only apply style to gallery for new media dom"jenkins-bot2021-10-071-1/+1
|\ \ \ \ \
| * | | | | Use child combinator to only apply style to gallery for new media domArlo Breault2021-10-051-1/+1
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, .thumb wouldn't be a direct descendant of .gallerybox because of the explicit div for padding. We don't want this rule to apply to the legacy media dom so use that knowledge as a differentiator. Follow up to Iff2bdc3aa02f84f0bf4ca55d177706823934cc08 Change-Id: I5ad9bf1913ece4a167fd642b536143695e34d00f
* | | | | Merge "mediawiki.String: Add new functions lcFirst and ucFirst"jenkins-bot2021-10-072-7/+28
|\ \ \ \ \
| * | | | | mediawiki.String: Add new functions lcFirst and ucFirstFomafix2021-09-282-7/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new functions `lcFirst` and `ucFirst` lowercases/uppercases the first character of a JavaScript string with support of UTF-16 surrogates for characters out of the Unicode BMP. Use these new functions at jqueryMsg. Change-Id: I007b63bfbcc9e4bc7e89f48df9687111bc4db715
* | | | | | Remove unnecessary spaces in parameters of jQuery callsFomafix2021-10-072-3/+3
| |_|/ / / |/| | | | | | | | | | | | | | Change-Id: Ic5ce3bc2af3499a89df683c4405a52ea464238c7
* | | | | Merge "Improve side-locking logic for diffs"jenkins-bot2021-10-071-14/+41
|\ \ \ \ \
| * | | | | Improve side-locking logic for diffsDaimona Eaytoy2021-10-051-14/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case of left clicks, update the locked side correctly if the click is inside the diff table. Only unset the side if the diff is not inside the table. Also, when changing side, clear any selection. This avoids some weird behaviour when switching side (due to the existing selection on the other side). Doing this conditionally is necessary to avoid T288421. Also create helpers for getting/setting the current locked side, and getting the side a Node belongs to. Bug: T292207 Change-Id: I0e953d5336253a8b1c216d3cfbd0298d53d97842
* | | | | | Merge "upload.js: Remove parameters for message 'largefileserver'"jenkins-bot2021-10-071-2/+4
|\ \ \ \ \ \
| * | | | | | upload.js: Remove parameters for message 'largefileserver'Fomafix2021-10-071-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The message texts for 'largefileserver' don't have any parameters. Also apply https://www.mediawiki.org/wiki/Manual:Coding_conventions/JavaScript#Creating_elements Change-Id: Ic86a35067694c5624353918024275e11f9734fa1