diff --git package-lock.json package-lock.json
index c09426b894..92dab62a03 100644
|
|
|
3314 | 3314 | "dependencies": { |
3315 | 3315 | "file-type": { |
3316 | 3316 | "version": "3.9.0", |
3317 | | "resolved": "http://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", |
| 3317 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", |
3318 | 3318 | "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=", |
3319 | 3319 | "dev": true, |
3320 | 3320 | "optional": true |
… |
… |
|
4314 | 4314 | "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" |
4315 | 4315 | }, |
4316 | 4316 | "backbone": { |
4317 | | "version": "1.3.3", |
4318 | | "resolved": "https://registry.npmjs.org/backbone/-/backbone-1.3.3.tgz", |
4319 | | "integrity": "sha1-TMgOp8sWMaxHSInOQPL4vGg7KZk=", |
| 4317 | "version": "1.4.0", |
| 4318 | "resolved": "https://registry.npmjs.org/backbone/-/backbone-1.4.0.tgz", |
| 4319 | "integrity": "sha512-RLmDrRXkVdouTg38jcgHhyQ/2zjg7a8E6sz2zxfz21Hh17xDJYUHBZimVIt5fUyS8vbfpeSmTL3gUjTEvUV3qQ==", |
4320 | 4320 | "requires": { |
4321 | 4321 | "underscore": ">=1.8.3" |
4322 | 4322 | } |
… |
… |
|
4468 | 4468 | }, |
4469 | 4469 | "uuid": { |
4470 | 4470 | "version": "2.0.3", |
4471 | | "resolved": "http://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", |
| 4471 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", |
4472 | 4472 | "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=", |
4473 | 4473 | "dev": true, |
4474 | 4474 | "optional": true |
… |
… |
|
4547 | 4547 | }, |
4548 | 4548 | "bl": { |
4549 | 4549 | "version": "1.2.2", |
4550 | | "resolved": "http://registry.npmjs.org/bl/-/bl-1.2.2.tgz", |
| 4550 | "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", |
4551 | 4551 | "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", |
4552 | 4552 | "dev": true, |
4553 | 4553 | "optional": true, |
… |
… |
|
4733 | 4733 | }, |
4734 | 4734 | "browserify-aes": { |
4735 | 4735 | "version": "1.2.0", |
4736 | | "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", |
| 4736 | "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", |
4737 | 4737 | "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", |
4738 | 4738 | "dev": true, |
4739 | 4739 | "requires": { |
… |
… |
|
4885 | 4885 | "dependencies": { |
4886 | 4886 | "file-type": { |
4887 | 4887 | "version": "3.9.0", |
4888 | | "resolved": "http://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", |
| 4888 | "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", |
4889 | 4889 | "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=", |
4890 | 4890 | "dev": true, |
4891 | 4891 | "optional": true |
4892 | 4892 | }, |
4893 | 4893 | "uuid": { |
4894 | 4894 | "version": "2.0.3", |
4895 | | "resolved": "http://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", |
| 4895 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", |
4896 | 4896 | "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=", |
4897 | 4897 | "dev": true, |
4898 | 4898 | "optional": true |
… |
… |
|
5765 | 5765 | "dependencies": { |
5766 | 5766 | "cacache": { |
5767 | 5767 | "version": "10.0.4", |
5768 | | "resolved": "http://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", |
| 5768 | "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", |
5769 | 5769 | "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", |
5770 | 5770 | "dev": true, |
5771 | 5771 | "requires": { |
… |
… |
|
7155 | 7155 | }, |
7156 | 7156 | "duplexer": { |
7157 | 7157 | "version": "0.1.1", |
7158 | | "resolved": "http://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", |
| 7158 | "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", |
7159 | 7159 | "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", |
7160 | 7160 | "dev": true |
7161 | 7161 | }, |
… |
… |
|
10319 | 10319 | "dependencies": { |
10320 | 10320 | "async": { |
10321 | 10321 | "version": "0.2.10", |
10322 | | "resolved": "http://registry.npmjs.org/async/-/async-0.2.10.tgz", |
| 10322 | "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", |
10323 | 10323 | "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=", |
10324 | 10324 | "dev": true |
10325 | 10325 | }, |
… |
… |
|
10479 | 10479 | }, |
10480 | 10480 | "uglify-js": { |
10481 | 10481 | "version": "2.7.5", |
10482 | | "resolved": "http://registry.npmjs.org/uglify-js/-/uglify-js-2.7.5.tgz", |
| 10482 | "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.7.5.tgz", |
10483 | 10483 | "integrity": "sha1-RhLAx7qu4rp8SH3kkErhIgefLKg=", |
10484 | 10484 | "dev": true, |
10485 | 10485 | "requires": { |
… |
… |
|
10491 | 10491 | }, |
10492 | 10492 | "yargs": { |
10493 | 10493 | "version": "3.10.0", |
10494 | | "resolved": "http://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", |
| 10494 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", |
10495 | 10495 | "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", |
10496 | 10496 | "dev": true, |
10497 | 10497 | "requires": { |
… |
… |
|
16436 | 16436 | "dependencies": { |
16437 | 16437 | "progress": { |
16438 | 16438 | "version": "1.1.8", |
16439 | | "resolved": "http://registry.npmjs.org/progress/-/progress-1.1.8.tgz", |
| 16439 | "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", |
16440 | 16440 | "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", |
16441 | 16441 | "dev": true |
16442 | 16442 | } |
diff --git package.json package.json
index 4bf1a8435c..71a8b5e185 100644
|
|
|
101 | 101 | "@wordpress/url": "2.5.0", |
102 | 102 | "@wordpress/viewport": "2.3.0", |
103 | 103 | "@wordpress/wordcount": "2.2.0", |
104 | | "backbone": "1.3.3", |
| 104 | "backbone": "1.4.0", |
105 | 105 | "clipboard": "2.0.4", |
106 | 106 | "element-closest": "^2.0.2", |
107 | 107 | "formdata-polyfill": "3.0.13", |
diff --git src/js/media/controllers/state-machine.js src/js/media/controllers/state-machine.js
index 626f6c33ce..bb7fb31b27 100644
|
|
|
14 | 14 | * @augments Backbone.Model |
15 | 15 | * @mixin |
16 | 16 | * @mixes Backbone.Events |
17 | | * |
18 | | * @param {Array} states |
19 | 17 | */ |
20 | | var StateMachine = function( states ) { |
21 | | // @todo This is dead code. The states collection gets created in media.view.Frame._createStates. |
22 | | this.states = new Backbone.Collection( states ); |
| 18 | var StateMachine = function() { |
| 19 | return { |
| 20 | // Use Backbone's self-propagating `extend` inheritance method. |
| 21 | extend: Backbone.Model.extend |
| 22 | }; |
23 | 23 | }; |
24 | 24 | |
25 | | // Use Backbone's self-propagating `extend` inheritance method. |
26 | | StateMachine.extend = Backbone.Model.extend; |
27 | | |
28 | 25 | _.extend( StateMachine.prototype, Backbone.Events,/** @lends wp.media.controller.StateMachine.prototype */{ |
29 | 26 | /** |
30 | 27 | * Fetch a state. |
diff --git src/js/media/views/attachment.js src/js/media/views/attachment.js
index 240f05c0ee..14d5e460db 100644
|
|
Attachment = View.extend(/** @lends wp.media.view.Attachment.prototype */{ |
66 | 66 | this.details( this.model, this.controller.state().get('selection') ); |
67 | 67 | } |
68 | 68 | |
69 | | this.listenTo( this.controller, 'attachment:compat:waiting attachment:compat:ready', this.updateSave ); |
| 69 | this.listenTo( this.controller.states, 'attachment:compat:waiting attachment:compat:ready', this.updateSave ); |
70 | 70 | }, |
71 | 71 | /** |
72 | 72 | * @returns {wp.media.view.Attachment} Returns itself to allow chaining |
diff --git src/js/media/views/media-details.js src/js/media/views/media-details.js
index 4b9a7c1a0d..ae643a3941 100644
|
|
MediaDetails = AttachmentDisplay.extend(/** @lends wp.media.view.MediaDetails.pr |
19 | 19 | initialize: function() { |
20 | 20 | _.bindAll(this, 'success'); |
21 | 21 | this.players = []; |
22 | | this.listenTo( this.controller, 'close', wp.media.mixin.unsetPlayers ); |
| 22 | this.listenTo( this.controller.states, 'close', wp.media.mixin.unsetPlayers ); |
23 | 23 | this.on( 'ready', this.setPlayer ); |
24 | 24 | this.on( 'media:setting:remove', wp.media.mixin.unsetPlayers, this ); |
25 | 25 | this.on( 'media:setting:remove', this.render ); |
diff --git src/wp-includes/script-loader.php src/wp-includes/script-loader.php
index 4ad643008c..9b43c1cc9f 100644
|
|
function wp_default_scripts( &$scripts ) { |
1170 | 1170 | did_action( 'init' ) && $scripts->add_data( 'json2', 'conditional', 'lt IE 8' ); |
1171 | 1171 | |
1172 | 1172 | $scripts->add( 'underscore', "/wp-includes/js/underscore$dev_suffix.js", array(), '1.8.3', 1 ); |
1173 | | $scripts->add( 'backbone', "/wp-includes/js/backbone$dev_suffix.js", array( 'underscore', 'jquery' ), '1.2.3', 1 ); |
| 1173 | $scripts->add( 'backbone', "/wp-includes/js/backbone$dev_suffix.js", array( 'underscore', 'jquery' ), '1.4.0', 1 ); |
1174 | 1174 | |
1175 | 1175 | $scripts->add( 'wp-util', "/wp-includes/js/wp-util$suffix.js", array( 'underscore', 'jquery' ), false, 1 ); |
1176 | 1176 | did_action( 'init' ) && $scripts->localize( |