UNPKG

modified-dicom-pacs

Version:

A modified version of DICOM PACS implementation

2 lines 7.79 kB
(window.webpackJsonp=window.webpackJsonp||[]).push([[4],{1031:function(e,t,r){"use strict";r.r(t);var n=r(0),a=r.n(n),i=r(1),s=r.n(i),u=r(82),c=r(1059),o=r(16).a.utils.urlUtil;function f(e){var t=e.location,r=o.parse(t.search),n=r.requestType,i=r.studyUID;switch(n){case"STUDY":return a.a.createElement(c.a,{studyInstanceUIDs:i.split(";")});case"STUDYBASE64":return a.a.createElement(c.a,{studyInstanceUIDs:o.paramString.parseParam(i)});case"PATIENT":default:return""}}f.propTypes={location:s.a.shape({search:s.a.string}).isRequired},t.default=Object(u.g)(f)},1055:function(e,t,r){"use strict";r.d(t,"a",(function(){return a}));var n=r(0);function a(e){var t=Object(n.useRef)();return Object(n.useEffect)((function(){t.current=e}),[e]),t.current}},1057:function(e,t,r){var n=r(665);e.exports=function(e,t){return n(t,(function(t){return e[t]}))}},1059:function(e,t,r){"use strict";var n=r(63),a=r(0),i=r.n(a),s=r(95),u=r(179),c=r(147),o=r(9),f=r(1055),l=r(1058),d=r(1),p=r.n(d),v=r(272),y=r(14),S=r(83),I=r(274);function D(e,t,r,n,a,i,s){try{var u=e[i](s),c=u.value}catch(e){return void r(e)}u.done?t(c):Promise.resolve(c).then(n,a)}function m(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var i=e.apply(t,r);function s(e){D(i,n,a,s,u,"next",e)}function u(e){D(i,n,a,s,u,"throw",e)}s(void 0)}))}}function g(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(!(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)))return;var r=[],n=!0,a=!1,i=void 0;try{for(var s,u=e[Symbol.iterator]();!(n=(s=u.next()).done)&&(r.push(s.value),!t||r.length!==t);n=!0);}catch(e){a=!0,i=e}finally{try{n||null==u.return||u.return()}finally{if(a)throw i}}return r}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function h(e){return function(e){if(Array.isArray(e)){for(var t=0,r=new Array(e.length);t<e.length;t++)r[t]=e[t];return r}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}var b=s.a.OHIFStudyMetadata,w=s.a.OHIFSeriesMetadata,U=u.a.retrieveStudiesMetadata,O=u.a.deleteStudyMetadataPromise,j=c.a.studyMetadataManager,x=c.a.makeCancelable,A=function(e,t,r,n){var a=!1;return n||(a=C(e,t,r)),a},C=function(e,t,r){var n,a,i,s,u,c,o,f=!1;if(Object.keys(r).length>0){var l=r.seriesInstanceUID,d=(n=t.getDisplaySets(),a=l,i=function(e,t){return t.SeriesInstanceUID===e},s=h(n),u=[],c=0,(o=a.split(",")).forEach((function(e){var t=s.findIndex(i.bind(void 0,e));if(t>=0){var r=g(s.splice(t,1),1)[0];u[c]=r,c++}})),{promoted:c===o.length,data:[].concat(u,h(s))});e.displaySets=d.data,f=d.promoted}return f},E=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0,n=t.seriesInstanceUID,a=!0;if(!n)return a;var i=n.split(","),s=function(){if(d.length===i.length)return d.every((function(e){return i.some((function(t){return t===e.SeriesInstanceUID}))}))},u=function(){for(var e=!0,t=0;t<i.length;t++){var r=i[t],n=d[t];if(!n||n.SeriesInstanceUID!==r){e=!1;break}}return e},c=e.series,o=void 0===c?[]:c,f=e.displaySets,l=void 0===f?[]:f,d=r?o:l,p=r?s:u;return a=!!d&&p()},R=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!e){var n=r.show,a=void 0===n?function(){}:n;a({message:t})}},k=function(e,t){var r=v.c.modules.sopClassHandlerModule,n=e.getData(),a=new w(t,n);e.getSeriesByUID(t.SeriesInstanceUID)?e.updateSeries(t.SeriesInstanceUID,a):e.addSeries(a),e.createAndAddDisplaySetsForSeries(r,a),n.displaySets=e.getDisplaySets(),n.derivedDisplaySets=e.getDerivedDatasets({Modality:t.Modality}),M(n,e)},M=function(e,t){var r=e.StudyInstanceUID;j.get(r)||j.add(t)},T=function(e,t){var r=v.c.modules.sopClassHandlerModule;e.displaySets||(e.displaySets=t.createDisplaySets(r)),e.derivedDisplaySets&&t._addDerivedDisplaySets(e.derivedDisplaySets)},P=function(e){return{StudyInstanceUID:e.StudyInstanceUID,series:e.series.map((function(e){return{SeriesInstanceUID:e.SeriesInstanceUID}}))}};function q(e){var t,r,n=e.server,s=e.studyInstanceUIDs,u=e.seriesInstanceUIDs,c=e.clearViewportSpecificData,d=e.setStudyData,p=g(Object(a.useState)(!1),2),v=p[0],D=p[1],w=g(Object(a.useState)([]),2),C=w[0],q=w[1],F=g(Object(a.useState)(!1),2),N=F[0],H=F[1],V=Object(y.R)(),J=Object(a.useContext)(S.c).appConfig,Q=void 0===J?{}:J,B=Q.filterQueryParam,L=void 0!==B&&B,Y=Q.maxConcurrentMetadataRequests,_=function(e,r){if(Array.isArray(e)&&e.length>0){var n=e.map((function(e){d(e.StudyInstanceUID,P(e));var n=new b(e,e.StudyInstanceUID);return T(e,n),M(e,n),t[e.StudyInstanceUID]=x(G(n)).then((function(t){t&&!t.isCanceled&&function(e,t,r){A(e,t,r,L)&&c(0);var n=E(e,r,L);R(n,"Query parameters were not totally applied. It might be using original series list for given study.",V),q([].concat(h(C),[e]))}(e,n,r)})).catch((function(e){e&&!e.isCanceled&&(D(e),o.a.error(e))})).finally((function(){H(!0)})),e}));q(n)}},G=function(){var e=m(regeneratorRuntime.mark((function e(t){var r,n,a,i,s,u;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=t.getData(),n=r.seriesLoader){e.next=3;break}return e.abrupt("return");case 3:return a=function(){var e=m(regeneratorRuntime.mark((function e(){var r;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n.hasNext()){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,n.next();case 4:return r=e.sent,k(t,r),q((function(e){return h(e)})),e.abrupt("return",a());case 8:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),i=Y||t.getSeriesCount(),s=Array(i).fill(null).map(a),e.next=8,Promise.all(s);case 8:return u=e.sent,H(!0),e.abrupt("return",u);case 11:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),z=function(){var e=m(regeneratorRuntime.mark((function e(){var t,a,i;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:try{t={},a=u&&u[0],i=[n,s],a&&(t.seriesInstanceUID=a,L&&i.push(t)),(Q.splitQueryParameterCalls||Q.enableGoogleCloudAdapter)&&i.push(!0),r[s]=x(U.apply(void 0,i)).then((function(e){e&&!e.isCanceled&&_(e,t)})).catch((function(e){e&&!e.isCanceled&&(D(e),o.a.error(e))}))}catch(e){e&&(D(e),o.a.error(e))}case 1:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),K=Object(a.useCallback)((function(){for(var e in r)"cancel"in r[e]&&r[e].cancel();for(var n in t)"cancel"in t[n]&&(t[n].cancel(),O(n),j.remove(n))})),W=Object(f.a)(s);if(Object(a.useEffect)((function(){!(W&&W.every((function(e){return s.includes(e)})))&&(j.purge(),K())}),[W,K,s]),Object(a.useEffect)((function(){return t={},r={},z(),function(){K()}}),[]),v){var X=JSON.stringify(v);return X.includes("404")||X.includes("NOT_FOUND")?i.a.createElement(I.a,null):i.a.createElement(I.a,{message:"Failed to retrieve study data"})}return i.a.createElement(l.a,{studies:C,isStudyLoaded:N,studyInstanceUIDs:s})}q.propTypes={studyInstanceUIDs:p.a.array.isRequired,seriesInstanceUIDs:p.a.array,server:p.a.object,clearViewportSpecificData:p.a.func.isRequired,setStudyData:p.a.func.isRequired};var F=q,N=r(16).a.redux.actions,H=N.clearViewportSpecificData,V=N.setStudyData,J=function(e){return!0===e.active},Q=Object(n.b)((function(e,t){var r=e.servers.servers.find(J);return{server:t.server||r}}),(function(e){return{setStudyData:function(t,r){e(V(t,r))},clearViewportSpecificData:function(){e(H())}}}))(F);t.a=Q},1060:function(e,t,r){var n=r(1057),a=r(273);e.exports=function(e){return null==e?[]:n(e,a(e))}}}]); //# sourceMappingURL=IHEInvokeImageDisplay.bundle.180081da454e92794d85.js.map