Commit graph

150 commits

Author SHA1 Message Date
Ruslan Kabalin
572ca40ce7 MDL-74301 eslint: Enable 'reportUnusedDisableDirectives' eslint setting
This will warn on unused /* eslint-disable */ statements.
2023-07-03 15:21:53 +01:00
Marina Glancy
04f8fdd021 MDL-77164 various: fix javascript AMD module name 2023-04-13 09:43:15 +01:00
Andrew Nicols
511401f4f6 MDL-77559 js: Rebuild all JS with Node 16 2023-03-09 09:53:19 +08:00
Andrew Nicols
1e4a2f5dc8 MDL-77559 js: Revert "MDL-75012 js: Remove orphaned source maps"
This reverts commit baef734ef7.
2023-03-09 08:19:24 +08:00
Jun Pataleta
baef734ef7 MDL-75012 js: Remove orphaned source maps 2023-03-02 13:04:55 +08:00
Jun Pataleta
916503658d Merge branch 'MDL-75012-master-5' of https://github.com/andrewnicols/moodle 2023-03-02 12:34:34 +08:00
Andrew Nicols
33b1e41f13 MDL-75012 js: Full build of all grunt things 2023-03-02 11:55:32 +08:00
Paul Holden
1e8c579812 MDL-61458 tool_lp: remove custom cohort autocomplete form selector.
The previous commit replaced the only remaining usage of it with the
equivalent core cohort form element. Prior to that, 21a0008f had done
the same.
2023-02-28 15:45:20 +00:00
Bas Brands
ea5638c354 MDL-74348 tool_lp: fix dialogue height and add scroll 2022-04-05 11:08:14 +02:00
Andrew Nicols
e1b9d5f3cd MDL-73915 js: Drop support for IE and android
Moodle announced that support for IE would be dropped back in August
2020 with Moodle 3.9 but not active steps were taken at that time. That
decision was made in MDLSITE-6109 and this particular step was meant to
be taken in Moodle 3.10.

This is the first step taken to actively drop support for IE.

This commit also bumps the browser support pattern from 0.25% to 0.3%.
The percentage here includes any browser where at least this percentage
of users worldwide may be using a browser. In this case it causes
support for Android 4.3-4.4 to be dropped, which relate to Android
KitKat (released 2013).

This combination of changes means that all of the supported browsers in
our compatibility list support modern features including async,
for...of, classes, native Promises, and more which has a huge impact on
the ease of debugging code, and drastically reduces the minified file
size because a number of native Polyfills included by Babel are no
longer included.
2022-02-23 08:55:20 +08:00
Andrew Nicols
0a4047ab31 MDL-73915 js: Switch amd minification to terser
Unfortunately the babel minify-mangle plugin seems to be abandoned and
in certain circumstances can be very buggy. The only safe options are to
disable it, or to switch to a different minification library.

Not minifying our javascript is not ideal, so this commit updates the
javascript tasks to use a rollup, combined with babel, and terser.

Babel still converts code from ES/UMD/AMD to AMD modules with the
relevant browser support, whilst terser minifies the code.

The rollup bundler handles tracking and creation of sourcemaps, and
supports better parallelisation of the tasks.

Since the upgrade to Node LTS/Gallium requires an upgrade to @babel/core
and eslint, which change the built files anyway, this seems like the
ideal time to make this change.
2022-02-23 08:55:09 +08:00
Andrew Nicols
349312143d MDL-72013 js: Fix jsdocs to meet stricter eslint 2021-10-21 13:28:00 +08:00
Andrew Nicols
4f422785c6 MDL-71113 javascript: Improve basic JS Documentation 2021-06-18 09:38:05 +08:00
Andrew Nicols
92179b7057 MDL-71113 js: Fix all jsdoc warnings 2021-06-18 09:38:05 +08:00
Andrew Nicols
63a66eb2ce MDL-69134 competencies: Behat fails randomly opening dialogues 2020-07-08 09:21:44 +08:00
Andrew Nicols
f879cc518e MDL-66109 js: Build changes for NodeJS upgrade
This change includes a build to fix all minified file changes in Moodle
as a result of upgrades to our build process.
2020-05-11 10:55:54 +08:00
Andrew Nicols
dafa2c6aa5 MDL-66378 competency: Add pending promises to competency chooser 2019-08-19 08:16:41 +08:00
Ryan Wyllie
195ea4480b MDL-62497 javascript: build AMD modules with new transpiler 2019-07-19 14:12:49 +08:00
Damyon Wiese
89da9b4900 MDL-65154 competencies: Filter course competencies
Add an activity filter to the course competencies screen.
2019-05-06 09:34:25 +08:00
Damyon Wiese
8aff6f6f14 MDL-63876 badges: Coding style
Add comments to document function params and template example context.
2019-03-29 11:31:15 +08:00
Damyon Wiese
15e6a76e6f MDL-63876 competencies: Use direct URL
Instead of showing competencies in a dialogue, give them their own full url to
display the competency in the framework it belongs to. This is useful for exported
data that won't have access to javascript.
2019-03-29 11:31:15 +08:00
Damyon Wiese
da5e19a128 MDL-63876 badges: Do not call tool_lp directly 2019-03-29 11:31:15 +08:00
Andrew Nicols
f4524f8da3 MDL-59845 tool_lp: Add js tracking around UI refresh 2018-05-02 09:15:43 +08:00
Dan Poltawski
d9dff92fef MDL-59761 eslint: Auto-fix some minor lint warnings 2017-09-06 08:53:50 +01:00
Dan Poltawski
50c277a5d8 MDL-57139 js: built 2017-06-01 14:54:40 +01:00
Dan Poltawski
08c2360e4a MDL-57139 competencies: ensure promise best practices 2017-06-01 10:27:59 +01:00
Damyon Wiese
7b02521c39 MDL-56435 boost: Better styling for competencies in boost
Changes
    - add custom-select to all select fields
    - add btn btn-primary/secondary to all buttons
    - add list-inline to all lists with inline class
    - style dropdowns like a bootstrap menu
    - add col-md-6 to span6
2016-11-14 10:31:01 +08:00
Damyon Wiese
207136f279 MDL-56684 competencies: Boost for competency templates
Add BS4 markup to all competencies templates. Also tweaked the template library to make it
easier in future when modifying templates and reloading.
2016-11-04 14:45:58 +00:00
Dan Poltawski
9b62a3eb71 MDL-55048 js: rebuilt files with new version of uglifyjs 2016-07-11 15:53:10 +01:00
Dan Poltawski
6e304922fb MDL-54944 js: built files after changes 2016-07-07 12:11:07 +01:00
Dan Poltawski
5602dc1735 MDL-54944 js: ensure functions are consistent in return val
Mostly we are being incosnistent when giving an early-exit shortcut.

Detected by http://eslint.org/docs/rules/consistent-return
2016-07-07 12:11:07 +01:00
Dan Poltawski
7b7d55e11a MDL-54944 js: split variable intialisations in multiple lines
To increase code clarity, we don't allow multiple intilisations to be
confused with each other.

Detected by http://eslint.org/docs/rules/one-var-declaration-per-line
2016-07-07 12:11:06 +01:00
Dan Poltawski
2d2b6c9d22 MDL-54944 js: remove uncessary .call() uses
Detected by http://eslint.org/docs/rules/no-useless-call
2016-07-07 12:11:06 +01:00
Dan Poltawski
b1c4d0f2d7 MDL-54944 js: Remove uncessary bind() calls
Most of these cases, we are already capturing this in a temporary
variable, so the bind becomes uncessary.

Discovered by http://eslint.org/docs/rules/no-extra-bind
2016-07-07 12:11:06 +01:00
Dan Poltawski
9f5f3dcc83 MDL-54944 js: Fix spacing of objects coding style
Fixed by http://eslint.org/docs/rules/object-curly-spacing
2016-07-07 12:11:05 +01:00
Dan Poltawski
037de71996 MDL-54944 eslint: Add rules from Policy decision
Also bump eslint to v2.13.1 and make the version explicit in
package.json
2016-07-07 12:10:49 +01:00
Dan Poltawski
7f70d548fe MDL-54939 amd: build modified files 2016-06-17 09:03:18 +01:00
Dan Poltawski
c96f55e6f9 MDL-54939 amd: fix lint issues
Mostly correcting jsdoc, some other line wrapping rules and empty
functions.
2016-06-17 09:03:18 +01:00
Dan Poltawski
35be582696 MDL-54939 amd: Fix lint issues fixable with eslint --fix 2016-06-16 19:33:00 +01:00
Dan Poltawski
3adb62b727 MDL-52127 js: check amd files with eslint grunt task
I have spent quite a lot of time working through the current list of
eslint options and configuring them for Moodle style and I think this is
a very good basis to start us at (as well as taking some of out jshint
options out with https://www.npmjs.com/package/polyjuice ). Thanks to
Andrew Nicols, Mark Johnson and Frédéric Massart for some refinements.

With this configuration the grunt build will fail if errors are present
in the js (though you can of course tell jshint to ignore some errors,
as I have done in admin/tool/lp/amd/src/competency_rule_points.js and
defining the Y global in lib/amd/src/yui.js ).

The grunt task will not report warnings by default, but a new
--show-lint-warnings flag will help achieve that. Editor
integrations/stanadalone eslint tool will surely be a better way of
getting eslint errors rather than using the grunt task.
2016-06-11 10:14:35 +01:00
Frederic Massart
6e91817178 MDL-54721 report_competency: Do not ignore the first user selection 2016-05-26 17:54:52 +08:00
Andrew Nicols
2239883b56 MDL-53293 tool_lp: Destroy dragdrop instance before re-creating 2016-05-11 08:19:39 +08:00
David Monllao
8ec64e757e Merge branch 'MDL-53989-master' of git://github.com/ryanwyllie/moodle 2016-05-09 07:37:09 +08:00
Ryan Wyllie
fd83879728 MDL-53989 cbe: CMD + click selection for competency picker 2016-05-06 04:40:02 +00:00
Andrew Nicols
1c693f7226 MDL-53730 JavaScript: Build form-autocomplete 2016-05-06 09:27:33 +08:00
Adrian Greeve
be8b9189c4 MDL-53730 JavaScript: Fix for competency autoselect issue.
When trying to select a user or competency the first select
would not work. Worked fine on the second select. This fixes
that problem and tidies up the code.
2016-05-06 09:27:32 +08:00
Dan Poltawski
f6ab2b87e6 Merge branch 'MDL-53879-master' of git://github.com/FMCorz/moodle 2016-04-29 12:18:05 +01:00
Jun Pataleta
0bb7552429 MDL-53494 tool_lp: Set correct competency and user ID attributes
Sets the correct competency and user ID data attributes for the list of
user competencies in the plan.
2016-04-29 12:18:04 +01:00
Frederic Massart
8ea0f17ae9 MDL-53879 competency: Remove limit on framework depth 2016-04-28 16:41:24 +08:00
Jun Pataleta
60a9993bce MDL-53494 tool_lp: Fix dialogue display when plan is completed 2016-04-27 09:09:52 +01:00