Update OOjs to v6.0.0
Release notes: https://gerrit.wikimedia.org/g/oojs/core/+/v6.0.0/History.md Switch to the main release as, err, 'upstream' has dropped the special jQuery optimised build. Change-Id: I3afc138388f5c07a62d37bec723771f0e29b7da2
这个提交包含在:
父节点
e42ec9deab
当前提交
9730bd7483
|
@ -40,7 +40,7 @@
|
|||
<script src="../lib/jquery/jquery.js"></script>
|
||||
|
||||
<!-- oojs -->
|
||||
<script src="../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../lib/oojs/oojs.js"></script>
|
||||
|
||||
<!-- oojs-ui -->
|
||||
<script src="../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
|
|
|
@ -38,7 +38,6 @@ fi
|
|||
|
||||
# Copy file(s)
|
||||
rsync --force ./node_modules/oojs/dist/oojs.js "$REPO_DIR/$TARGET_DIR"
|
||||
rsync --force ./node_modules/oojs/dist/oojs.jquery.js "$REPO_DIR/$TARGET_DIR"
|
||||
rsync --force ./node_modules/oojs/AUTHORS.txt "$REPO_DIR/$TARGET_DIR"
|
||||
rsync --force ./node_modules/oojs/LICENSE-MIT "$REPO_DIR/$TARGET_DIR"
|
||||
rsync --force ./node_modules/oojs/README.md "$REPO_DIR/$TARGET_DIR"
|
||||
|
|
|
@ -51,7 +51,7 @@
|
|||
},
|
||||
"oojs": {
|
||||
"scripts": [
|
||||
"lib/oojs/oojs.jquery.js"
|
||||
"lib/oojs/oojs.js"
|
||||
],
|
||||
"dependencies": [
|
||||
"jquery"
|
||||
|
|
|
@ -96,7 +96,7 @@
|
|||
</tr>
|
||||
</table>
|
||||
<script src="../../lib/jquery/jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.js"></script>
|
||||
<script src="../../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
<script src="../../lib/oojs-ui/oojs-ui-windows.js"></script>
|
||||
<script src="../../lib/unicodejs/unicodejs.js"></script>
|
||||
|
|
|
@ -64,7 +64,7 @@
|
|||
<script src="../../lib/jquery/jquery.js"></script>
|
||||
|
||||
<!-- oojs -->
|
||||
<script src="../../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.js"></script>
|
||||
|
||||
<!-- oojs-ui -->
|
||||
<script src="../../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
|
|
|
@ -64,7 +64,7 @@
|
|||
<script src="../../lib/jquery/jquery.js"></script>
|
||||
|
||||
<!-- oojs -->
|
||||
<script src="../../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.js"></script>
|
||||
|
||||
<!-- oojs-ui -->
|
||||
<script src="../../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
|
|
|
@ -126,7 +126,7 @@
|
|||
<script src="../../lib/jquery/jquery.js"></script>
|
||||
|
||||
<!-- oojs -->
|
||||
<script src="../../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.js"></script>
|
||||
|
||||
<!-- oojs-ui -->
|
||||
<script src="../../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
|
|
|
@ -126,7 +126,7 @@
|
|||
<script src="../../lib/jquery/jquery.js"></script>
|
||||
|
||||
<!-- oojs -->
|
||||
<script src="../../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.js"></script>
|
||||
|
||||
<!-- oojs-ui -->
|
||||
<script src="../../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
|
|
|
@ -59,7 +59,7 @@
|
|||
<textarea class="ve-demo-log"></textarea>
|
||||
|
||||
<script src="../../lib/jquery/jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.js"></script>
|
||||
<script src="../../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
<script src="../../lib/unicodejs/unicodejs.js"></script>
|
||||
<script src="../../src/ve.js"></script>
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
}
|
||||
</style>
|
||||
<script src="../../lib/jquery/jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.js"></script>
|
||||
<script src="../../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
<script src="../../lib/unicodejs/unicodejs.js"></script>
|
||||
<script src="../../src/ve.js"></script>
|
||||
|
|
|
@ -44,7 +44,7 @@
|
|||
<script src="../../lib/jquery/jquery.js"></script>
|
||||
|
||||
<!-- oojs -->
|
||||
<script src="../../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.js"></script>
|
||||
|
||||
<!-- oojs-ui -->
|
||||
<script src="../../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
|
|
|
@ -44,7 +44,7 @@
|
|||
<script src="../../lib/jquery/jquery.js"></script>
|
||||
|
||||
<!-- oojs -->
|
||||
<script src="../../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.js"></script>
|
||||
|
||||
<!-- oojs-ui -->
|
||||
<script src="../../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
|
|
|
@ -62,7 +62,7 @@
|
|||
<script src="../../lib/jquery/jquery.js"></script>
|
||||
|
||||
<!-- oojs -->
|
||||
<script src="../../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.js"></script>
|
||||
|
||||
<!-- oojs-ui -->
|
||||
<script src="../../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
|
|
|
@ -124,7 +124,7 @@
|
|||
<script src="../../lib/jquery/jquery.js"></script>
|
||||
|
||||
<!-- oojs -->
|
||||
<script src="../../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.js"></script>
|
||||
|
||||
<!-- oojs-ui -->
|
||||
<script src="../../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
<script src="../../lib/jquery/jquery.js"></script>
|
||||
|
||||
<!-- oojs -->
|
||||
<script src="../../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../../lib/oojs/oojs.js"></script>
|
||||
|
||||
<!-- oojs-ui -->
|
||||
<script src="../../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
|
|
|
@ -9,16 +9,14 @@ Key features include inheritance, mixins and utilities for working with objects.
|
|||
|
||||
<pre lang="javascript">
|
||||
/* Example */
|
||||
( function ( oo ) {
|
||||
function Animal() {}
|
||||
function Magic() {}
|
||||
function Unicorn() {
|
||||
Animal.call( this );
|
||||
Magic.call( this );
|
||||
}
|
||||
oo.inheritClass( Unicorn, Animal );
|
||||
oo.mixinClass( Unicorn, Magic );
|
||||
}( OO ) );
|
||||
function Animal() {}
|
||||
function Magic() {}
|
||||
function Unicorn() {
|
||||
Animal.call( this );
|
||||
Magic.call( this );
|
||||
}
|
||||
OO.inheritClass( Unicorn, Animal );
|
||||
OO.mixinClass( Unicorn, Magic );
|
||||
</pre>
|
||||
|
||||
Quick start
|
||||
|
@ -36,15 +34,6 @@ ECMAScript 5
|
|||
|
||||
OOjs requires a modern ECMAScript 5 environment. It is not necessarily compatible with ES3 engines (such as for IE 6-8). For ES3 environments, the old 1.x releases are available but not recommended.
|
||||
|
||||
jQuery
|
||||
----------
|
||||
|
||||
If your project uses jQuery, use the optimised `oojs.jquery.js` build instead.
|
||||
|
||||
This build assumes jQuery is present and omits various chunks of code in favour of references to jQuery.
|
||||
|
||||
jQuery 3.0.0 or higher is required.
|
||||
|
||||
Versioning
|
||||
----------
|
||||
|
||||
|
@ -60,39 +49,3 @@ Bug tracker
|
|||
-----------
|
||||
|
||||
Found a bug? Please report it in the [issue tracker](https://phabricator.wikimedia.org/maniphest/task/edit/form/1/?projects=OOjs)!
|
||||
|
||||
Release
|
||||
----------
|
||||
|
||||
Release process:
|
||||
<pre lang="bash">
|
||||
$ cd path/to/oojs/
|
||||
$ git remote update
|
||||
$ git checkout -B release -t origin/master
|
||||
|
||||
# Ensure tests pass
|
||||
$ npm install-test
|
||||
|
||||
# Avoid using "npm version patch" because that creates
|
||||
# both a commit and a tag, and we shouldn't tag until after
|
||||
# the commit is merged.
|
||||
|
||||
# Update release notes
|
||||
# Copy the resulting list into a new section on History.md
|
||||
$ git log --format='* %s (%aN)' --no-merges --reverse v$(node -e 'console.log(require("./package.json").version);')...HEAD
|
||||
$ edit History.md
|
||||
|
||||
# Update the version number
|
||||
$ edit package.json
|
||||
|
||||
$ git add -p
|
||||
$ git commit -m "Tag vX.X.X"
|
||||
$ git review
|
||||
|
||||
# After merging:
|
||||
$ git remote update
|
||||
$ git checkout origin/master
|
||||
$ git tag "vX.X.X"
|
||||
$ git push --tags
|
||||
$ npm publish
|
||||
</pre>
|
||||
|
|
文件差异内容过多而无法显示
加载差异
|
@ -1,12 +1,10 @@
|
|||
/*!
|
||||
* OOjs v5.0.0
|
||||
* OOjs v6.0.0
|
||||
* https://www.mediawiki.org/wiki/OOjs
|
||||
*
|
||||
* Copyright 2011-2020 OOjs Team and other contributors.
|
||||
* Copyright 2011-2021 OOjs Team and other contributors.
|
||||
* Released under the MIT license
|
||||
* https://oojs.mit-license.org
|
||||
*
|
||||
* Date: 2020-05-05T19:28:30Z
|
||||
*/
|
||||
( function ( global ) {
|
||||
|
||||
|
@ -15,6 +13,7 @@
|
|||
/* exported slice, toString */
|
||||
/**
|
||||
* Namespace for all classes, static methods and static properties.
|
||||
*
|
||||
* @namespace OO
|
||||
*/
|
||||
var
|
||||
|
@ -31,7 +30,7 @@ var
|
|||
*
|
||||
* Currently this just initializes an empty static object.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method initClass
|
||||
* @param {Function} fn
|
||||
*/
|
||||
|
@ -73,7 +72,7 @@ OO.initClass = function ( fn ) {
|
|||
* x.walk();
|
||||
* x instanceof Thing && x instanceof Person && x instanceof Jumper;
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method inheritClass
|
||||
* @param {Function} targetFn
|
||||
* @param {Function} originFn
|
||||
|
@ -138,7 +137,7 @@ OO.inheritClass = function ( targetFn, originFn ) {
|
|||
* OO.inheritClass( FooBar, Foo );
|
||||
* OO.mixinClass( FooBar, ContextLazyLoad );
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method mixinClass
|
||||
* @param {Function} targetFn
|
||||
* @param {Function} originFn
|
||||
|
@ -175,7 +174,7 @@ OO.mixinClass = function ( targetFn, originFn ) {
|
|||
*
|
||||
* Every class is considered a subclass of Object and of itself.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method isSubClass
|
||||
* @param {Function} testFn The class to be tested
|
||||
* @param {Function} baseFn The base class
|
||||
|
@ -196,7 +195,7 @@ OO.isSubclass = function ( testFn, baseFn ) {
|
|||
* is undefined. Instead of throwing an error, this function will return undefined in
|
||||
* that case.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method getProp
|
||||
* @param {Object} obj
|
||||
* @param {...any} [keys]
|
||||
|
@ -225,7 +224,7 @@ OO.getProp = function ( obj ) {
|
|||
* initialized to an empty object. If an intermediate property is not an object, or if obj itself
|
||||
* is not an object, this function will silently abort.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method setProp
|
||||
* @param {Object} obj
|
||||
* @param {...any} [keys]
|
||||
|
@ -253,7 +252,7 @@ OO.setProp = function ( obj ) {
|
|||
* Delete a deeply nested property of an object using variadic arguments, protecting against
|
||||
* undefined property errors, and deleting resulting empty objects.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method deleteProp
|
||||
* @param {Object} obj
|
||||
* @param {...any} [keys]
|
||||
|
@ -305,7 +304,7 @@ OO.deleteProp = function ( obj ) {
|
|||
* foo2.getAge(); // 21
|
||||
* foo.getAge(); // 22
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method cloneObject
|
||||
* @param {Object} origin
|
||||
* @return {Object} Clone of origin
|
||||
|
@ -327,7 +326,7 @@ OO.cloneObject = function ( origin ) {
|
|||
/**
|
||||
* Get an array of all property values in an object.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method getObjectValues
|
||||
* @param {Object} obj Object to get values from
|
||||
* @return {Array} List of object values
|
||||
|
@ -360,7 +359,7 @@ OO.getObjectValues = function ( obj ) {
|
|||
* above 0 if `a > b`, below 0 if `a < b`, and 0 if `a == b`), you can use
|
||||
* `searchFunc = cmp.bind( null, value )`.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method binarySearch
|
||||
* @param {Array} arr Array to search in
|
||||
* @param {Function} searchFunc Search function
|
||||
|
@ -396,7 +395,7 @@ OO.binarySearch = function ( arr, searchFunc, forInsertion ) {
|
|||
*
|
||||
* If either a or b is null or undefined it will be treated as an empty object.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method compare
|
||||
* @param {Object|undefined|null} a First object to compare
|
||||
* @param {Object|undefined|null} b Second object to compare
|
||||
|
@ -447,7 +446,7 @@ OO.compare = function ( a, b, asymmetrical ) {
|
|||
*
|
||||
* Copies are deep, and will either be an object or an array depending on `source`.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method copy
|
||||
* @param {Object} source Object to copy
|
||||
* @param {Function} [leafCallback] Applied to leaf values after they are cloned but before they are
|
||||
|
@ -509,7 +508,7 @@ OO.copy = function ( source, leafCallback, nodeCallback ) {
|
|||
* function, we call that function and use its return value rather than hashing the object
|
||||
* ourselves. This allows classes to define custom hashing.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method getHash
|
||||
* @param {Object} val Object to generate hash for
|
||||
* @return {string} Hash of object
|
||||
|
@ -523,7 +522,7 @@ OO.getHash = function ( val ) {
|
|||
*
|
||||
* This is a callback passed into JSON.stringify.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method getHash_keySortReplacer
|
||||
* @param {string} key Property name of value being replaced
|
||||
* @param {any} val Property value to replace
|
||||
|
@ -556,7 +555,7 @@ OO.getHash.keySortReplacer = function ( key, val ) {
|
|||
/**
|
||||
* Get the unique values of an array, removing duplicates.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method unique
|
||||
* @param {Array} arr Array
|
||||
* @return {Array} Unique values in array
|
||||
|
@ -578,7 +577,7 @@ OO.unique = function ( arr ) {
|
|||
* By building an object (with the values for keys) in parallel with
|
||||
* the array, a new item's existence in the union can be computed faster.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method simpleArrayUnion
|
||||
* @param {...Array} arrays Arrays to union
|
||||
* @return {Array} Union of the arrays
|
||||
|
@ -641,7 +640,7 @@ function simpleArrayCombine( a, b, includeB ) {
|
|||
*
|
||||
* Arrays values must be convertable to object keys (strings).
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method simpleArrayIntersection
|
||||
* @param {Array} a First array
|
||||
* @param {Array} b Second array
|
||||
|
@ -656,7 +655,7 @@ OO.simpleArrayIntersection = function ( a, b ) {
|
|||
*
|
||||
* Arrays values must be convertable to object keys (strings).
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @method simpleArrayDifference
|
||||
* @param {Array} a First array
|
||||
* @param {Array} b Second array
|
||||
|
@ -671,7 +670,7 @@ OO.simpleArrayDifference = function ( a, b ) {
|
|||
/**
|
||||
* Assert whether a value is a plain object or not.
|
||||
*
|
||||
* @memberOf OO
|
||||
* @memberof OO
|
||||
* @param {any} obj
|
||||
* @return {boolean}
|
||||
*/
|
||||
|
|
|
@ -53,7 +53,7 @@
|
|||
<script src="/lib/jquery/jquery.js"></script>
|
||||
|
||||
<!-- oojs -->
|
||||
<script src="/lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="/lib/oojs/oojs.js"></script>
|
||||
|
||||
<!-- oojs-ui -->
|
||||
<script src="/lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
<script src="/lib/jquery/jquery.js"></script>
|
||||
|
||||
<!-- oojs -->
|
||||
<script src="/lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="/lib/oojs/oojs.js"></script>
|
||||
|
||||
<!-- oojs-ui -->
|
||||
<script src="/lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
<script src="../lib/jquery/jquery.js"></script>
|
||||
|
||||
<!-- oojs -->
|
||||
<script src="../lib/oojs/oojs.jquery.js"></script>
|
||||
<script src="../lib/oojs/oojs.js"></script>
|
||||
|
||||
<!-- oojs-ui -->
|
||||
<script src="../lib/oojs-ui/oojs-ui-core.js"></script>
|
||||
|
|
正在加载...
在新工单中引用