jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/361451 )

Change subject: Migrate EntityInitializer to use 
"wikibase.entityPage.entityLoaded" hook
......................................................................


Migrate EntityInitializer to use "wikibase.entityPage.entityLoaded" hook

Change-Id: I4e780816004cca54859d43d74ccf85bd3889b273
---
M repo/resources/wikibase.EntityInitializer.js
M repo/resources/wikibase.ui.entityViewInit.js
2 files changed, 12 insertions(+), 5 deletions(-)

Approvals:
  WMDE-leszek: Looks good to me, approved
  Lucas Werkmeister (WMDE): Looks good to me, but someone else must approve
  jenkins-bot: Verified
  Thiemo Mättig (WMDE): Looks good to me, but someone else must approve



diff --git a/repo/resources/wikibase.EntityInitializer.js 
b/repo/resources/wikibase.EntityInitializer.js
index 21fa386..5b8a35c 100644
--- a/repo/resources/wikibase.EntityInitializer.js
+++ b/repo/resources/wikibase.EntityInitializer.js
@@ -9,11 +9,12 @@
 
        /**
         * Entity initializer.
-        * Deserializes the entity passed to JavaScript via mw.config variable.
+        * Deserializes the entity passed to JavaScript via mw.config variable 
or
+        * as entity object promise.
         *
         * @constructor
         *
-        * @param {string} arg
+        * @param {string|Thenable} arg Config variable name or entity object 
promise
         *
         * @throws {Error} if required parameter is not specified properly.
         */
@@ -22,10 +23,10 @@
                if ( typeof arg === 'string' ) {
                        entityPromise = getFromConfig( arg );
                } else if ( isThenable( arg ) ) {
-                       throw new Error( 'Not implemented' );
+                       entityPromise = arg;
                } else {
                        throw new Error(
-                               'Config variable name needs to be specified'
+                               'Config variable name or entity promise needs 
to be specified'
                        );
                }
 
diff --git a/repo/resources/wikibase.ui.entityViewInit.js 
b/repo/resources/wikibase.ui.entityViewInit.js
index 85391d9..cc9041b 100644
--- a/repo/resources/wikibase.ui.entityViewInit.js
+++ b/repo/resources/wikibase.ui.entityViewInit.js
@@ -352,7 +352,13 @@
                mwPerformance.mark( 'wbInitStart' );
 
                var $entityview = $( '.wikibase-entityview' );
-               var entityInitializer = new wb.EntityInitializer( 'wbEntity' );
+               var entityPromise = $.Deferred( function ( deferred ) {
+                       mw.hook( 'wikibase.entityPage.entityLoaded' ).add( 
function ( entity ) {
+                               deferred.resolve( entity );
+                       } );
+               } ).promise();
+
+               var entityInitializer = new wb.EntityInitializer( entityPromise 
);
                var canEdit = isEditable();
 
                entityInitializer.getEntity().done( function ( entity ) {

-- 
To view, visit https://gerrit.wikimedia.org/r/361451
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I4e780816004cca54859d43d74ccf85bd3889b273
Gerrit-PatchSet: 4
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Aleksey Bekh-Ivanov (WMDE) <[email protected]>
Gerrit-Reviewer: Aleksey Bekh-Ivanov (WMDE) <[email protected]>
Gerrit-Reviewer: Jonas Kress (WMDE) <[email protected]>
Gerrit-Reviewer: Lucas Werkmeister (WMDE) <[email protected]>
Gerrit-Reviewer: Thiemo Mättig (WMDE) <[email protected]>
Gerrit-Reviewer: WMDE-leszek <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to