File tree Expand file tree Collapse file tree 3 files changed +45
-15
lines changed
services/static-webserver/client/source/class/osparc Expand file tree Collapse file tree 3 files changed +45
-15
lines changed Original file line number Diff line number Diff line change @@ -37,6 +37,10 @@ qx.Class.define("osparc.dashboard.ResourceDetails", {
3737 latestPromise = osparc . data . Resources . fetch ( "studies" , "getOne" , params ) ;
3838 break ;
3939 }
40+ case "function" : {
41+ latestPromise = osparc . store . Templates . fetchTemplate ( resourceData [ "uuid" ] ) ;
42+ break ;
43+ }
4044 case "service" : {
4145 latestPromise = osparc . store . Services . getService ( resourceData [ "key" ] , resourceData [ "version" ] ) ;
4246 break ;
@@ -57,6 +61,7 @@ qx.Class.define("osparc.dashboard.ResourceDetails", {
5761 case "template" :
5862 case "tutorial" :
5963 case "hypertool" :
64+ case "function" :
6065 // when getting the latest study data, the debt information was lost
6166 if ( osparc . study . Utils . isInDebt ( this . __resourceData ) ) {
6267 const mainStore = osparc . store . Store . getInstance ( ) ;
@@ -372,6 +377,16 @@ qx.Class.define("osparc.dashboard.ResourceDetails", {
372377 // removeAll
373378 osparc . utils . Utils . removeAllChildren ( tabsView ) ;
374379
380+ if ( this . __resourceData [ "resourceType" ] === "function" ) {
381+ // for now, we only want the preview page
382+ const page = this . __getPreviewPage ( ) ;
383+ if ( page ) {
384+ tabsView . add ( page ) ;
385+ }
386+ this . fireEvent ( "pagesAdded" ) ;
387+ return ;
388+ }
389+
375390 // add Open service button
376391 [
377392 this . __getInfoPage ,
Original file line number Diff line number Diff line change @@ -36,13 +36,28 @@ qx.Class.define("osparc.study.StudyPreview", {
3636
3737 __buildPreview : function ( ) {
3838 const study = this . __study ;
39+
40+ const workbenchReady = ( ) => {
41+ if ( ! study . isPipelineEmpty ( ) ) {
42+ const workbenchUIPreview = new osparc . workbench . WorkbenchUIPreview ( ) ;
43+ workbenchUIPreview . setStudy ( study ) ;
44+ workbenchUIPreview . loadModel ( study . getWorkbench ( ) ) ;
45+ workbenchUIPreview . setMaxHeight ( 550 ) ;
46+ this . _add ( workbenchUIPreview ) ;
47+ }
48+ } ;
49+
3950 const uiMode = study . getUi ( ) . getMode ( ) ;
40- if ( [ "workbench" , "pipeline" ] . includes ( uiMode ) && ! study . isPipelineEmpty ( ) ) {
41- const workbenchUIPreview = new osparc . workbench . WorkbenchUIPreview ( ) ;
42- workbenchUIPreview . setStudy ( study ) ;
43- workbenchUIPreview . loadModel ( study . getWorkbench ( ) ) ;
44- workbenchUIPreview . setMaxHeight ( 550 ) ;
45- this . _add ( workbenchUIPreview ) ;
51+ if ( [ "workbench" , "pipeline" ] . includes ( uiMode ) ) {
52+ if ( study . getWorkbench ( ) . isDeserialized ( ) ) {
53+ workbenchReady ( ) ;
54+ } else {
55+ study . getWorkbench ( ) . addListenerOnce ( "changeDeserialized" , e => {
56+ if ( e . getData ( ) ) {
57+ workbenchReady ( ) ;
58+ }
59+ } , this ) ;
60+ }
4661 }
4762 }
4863 }
Original file line number Diff line number Diff line change @@ -334,15 +334,15 @@ qx.Class.define("osparc.widget.PersistentIframe", {
334334 // this is the MetaModeling service trying to show function/template information
335335 if ( data [ "message" ] && data [ "message" ] [ "functionId" ] ) {
336336 const templateId = data [ "message" ] [ "functionId" ] ;
337- osparc . store . Templates . fetchTemplate ( templateId )
338- . then ( templateData => {
339- templateData [ "resourceType" ] = "template" ;
340- const resourceDetails = new osparc . dashboard . ResourceDetails ( templateData ) . set ( {
341- showOpenButton : false ,
342- } ) ;
343- osparc . dashboard . ResourceDetails . popUpInWindow ( resourceDetails ) ;
344- } )
345- . catch ( ( ) => osparc . FlashMessenger . logError ( this . tr ( "Function not found" ) ) ) ;
337+ const functionData = {
338+ "uuid" : templateId ,
339+ "resourceType" : "function" ,
340+ } ;
341+ const resourceDetails = new osparc . dashboard . ResourceDetails ( functionData ) . set ( {
342+ showOpenButton : false ,
343+ } ) ;
344+ const win = osparc . dashboard . ResourceDetails . popUpInWindow ( resourceDetails ) ;
345+ win . setCaption ( "Function Details" ) ;
346346 }
347347 break ;
348348 }
You can’t perform that action at this time.
0 commit comments