@reltio/profile 1.4.1194 → 1.4.1198

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/431.bundle.js CHANGED
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_reltio_profile=self.webpackChunk_reltio_profile||[]).push([[431],{83431:(e,t,n)=>{n.r(t),n.d(t,{RelationshipsTableView:()=>dt});var a=n(8598),o=n(95099),r=n.n(o),l=n(8156),i=n.n(l),c=n(88267),s=n(73288),p=n(34756),u=n(42308),d=n.n(u),m=n(65549),y=n(47450),g=n.n(y),f=n(65751),h=n.n(f),b=n(40797);const v=(0,b.makeStyles)({addButton:{marginLeft:"12px",padding:"9px 16px 9px 12px",backgroundColor:"rgba(98, 2, 238, 0)"},label:{fontSize:"14px",fontWeight:500,lineHeight:"16px"},icon:{fontSize:"18px",marginRight:"8px"}}),C=e=>{let{onClick:t}=e;const n=v();return i().createElement(g(),{color:"primary",className:n.addButton,onClick:t},i().createElement(m.Z,{classes:{root:n.icon}}),i().createElement("div",{className:n.label},h().text("Add")))};C.propTypes={onClick:r().func};const w=C;var E=n(78310),R=n.n(E),T=n(2396);const O={textDecoration:"line-through",color:"rgba(0,0,0,.54)"},x={color:"rgba(0,0,0,.54)"},S=(0,b.makeStyles)((e=>({headCell:{display:"flex",alignItems:"center",height:"100%",fontSize:"12px"},entityCell:{display:"flex",alignItems:"center",height:"100%"},entityLabel:{fontSize:"15px",color:e.palette.secondary.main,cursor:"pointer",textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap","$row-cell--removed &":O,"$row-cell--inactive &":x},entityAvatar:{transform:"scale(0.7)",margin:"0 10px"},rowCell:{fontSize:"13px",overflow:"hidden"},"row-cell--sorted":{color:"rgba(0,0,0,0.87)"},"row-cell--removed":{pointerEvents:"none","& > :not($entityCell)":O},"row-cell--inactive":x})));function k(){return k=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},k.apply(this,arguments)}const P=e=>{let{cell:t,CellValueRenderer:n,rowValue:{connection:a},isSorted:o}=e,r=function(e,t){if(null==e)return{};var n,a,o=function(e,t){if(null==e)return{};var n,a,o={},r=Object.keys(e);for(a=0;a<r.length;a++)n=r[a],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a<r.length;a++)n=r[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(e,["cell","CellValueRenderer","rowValue","isSorted"]);const l=S(),c=(0,T.checkRemoved)(a),s=(0,T.isActiveObject)(a.relation)&&(0,T.isActiveObject)(a.entity);return i().createElement("div",{className:R()({[l["row-cell--sorted"]]:o,[l["row-cell--removed"]]:c,[l["row-cell--inactive"]]:!s},l.rowCell)},t.values.map(((e,t)=>i().createElement(n,k({key:t,value:e},r)))))};P.propTypes={rowValue:r().object,cell:r().object,CellValueRenderer:r().elementType,isSorted:r().bool};const j=P;var D=n(87251),I=n(53862),N=n(12212),A=n(42662),F=n(74187);const M=e=>{let{value:{entityType:t,entity:n}}=e;const a=(0,p.useDispatch)(),o=(0,l.useContext)(N.m),r=S(),c=(0,T.getLabel)(n.entityLabel),d=(0,T.getEntityUriForLink)({uri:n.entityUri,dataTenant:n.dataTenant});return i().createElement("div",{className:r.entityCell},i().createElement(A.Z,{className:r.entityAvatar,entityType:t}),i().createElement(F.C,{value:c},i().createElement("span",{className:r.entityLabel,onClick:(0,s.pipe)((0,s.always)({uri:d,viewId:o}),u.ui.actions.openEntity,a)},c)))};M.propTypes={value:r().shape({entity:r().shape({entityUri:r().string,entityLabel:r().string}),entityType:T.EntityTypeType})};const Z=M;var U=n(92332);const z=(0,n(25843).Z)((e=>{const t=S();return i().createElement("div",{className:t.headCell},i().createElement(U.default,e))}));var L=n(46728);const _=(0,s.pipe)((0,s.map)((e=>e.uri||e)),s.uniq);function V(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const W=(0,s.pipe)((0,s.split)("."),(0,s.slice)(2,1/0)),B=e=>{if(e.startsWith("relation.attributes")){const t=W(e);return t.length>1?t.slice(0,-1):null}return null},Q=(0,s.map)((e=>{return function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},a=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),a.forEach((function(t){V(e,t,n[t])}))}return e}({},e,{sortable:!0,resizable:!0,nestedPath:B(e.id),headCellRenderer:z,rowCellValueRenderer:(t=e.id,"entity.label"===t?Z:L.Z)});var t})),H=(0,b.makeStyles)({tableContainer:{height:"477px",display:"flex",fontFamily:"Roboto",color:"rgba(0,0,0,0.54)"},"@global div[role=tooltip]":{fontFamily:"Roboto, Helvetica, Arial, sans-serif"},"@global div[role=presentation]":{fontFamily:"Roboto, Helvetica, Arial, sans-serif"},"row-cell__buttons-container":{position:"absolute"},"row-cell__buttons-wrapper":{display:"flex",paddingLeft:"10px","& > button":{marginLeft:"-10px",transform:"scale(0.9)"}}});var G=n(86929),$=n.n(G),q=n(70683),Y=n.n(q),J=n(27604),K=n(22983);const X=e=>{let{canUpdate:t,canRemove:n,handleEditRelation:a,handleRemoveRelation:o}=e;return i().createElement(i().Fragment,null,t&&i().createElement($(),{title:h().text("Edit")},i().createElement(Y(),{onClick:a},i().createElement(J.Z,null))),n&&i().createElement($(),{title:h().text("Remove")},i().createElement(Y(),{onClick:o},i().createElement(K.Z,null))))};X.propTypes={canUpdate:r().bool,canRemove:r().bool,handleEditRelation:r().func,handleRemoveRelation:r().func};const ee=X;function te(){return te=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},te.apply(this,arguments)}const ne=e=>{let{mode:t,columnsData:n,connections:a,metadata:o,sorting:r,onSort:c,filters:p,onFilter:d,onEditRelation:m,onRemoveRelation:y,basicTableRef:g,allowOnlyCreateNew:f}=e;const h=(0,l.useMemo)((()=>((e,t,n)=>e.map((e=>(0,s.pipe)((0,s.reduce)(((t,a)=>{let{id:o}=a;return(0,s.assoc)(o,((e,t,n)=>{let{entity:a,relation:o}=t;switch(e){case"entity.label":return{entity:a,entityType:(0,T.getEntityType)(n,a.entityType)};case"relation.label":return o.relationLabel||(0,T.getRelationTypeLabelFromMetadata)(n,o.relationType);case"relation.activeness.startDate":return o.startDate;case"relation.activeness.endDate":return o.endDate;default:return((e,t)=>(0,s.pipe)((0,s.path)(["object","attributes"]),(0,T.getOvAttributeValuesByPath)(e))(t))(W(e),o)}})(o,e,n),t)}),{}),(0,s.assoc)("connection",e))(t))))(a,n,o)),[a,n,o]),b=(0,l.useMemo)((()=>Q(n)),[n]),v=H(),C=(0,l.useCallback)((e=>i().createElement(j,te({},e,{isSorted:!!r&&r.field===e.columnData.id}))),[r]),[w,E]=(0,l.useState)(null),{canRemove:R,canUpdate:O}=(e=>{let{metadata:t,mode:n,connection:a,onRemoveRelation:o,onEditRelation:r,allowOnlyCreateNew:l}=e;const i=(0,T.checkNew)(a);if(u.profile.mode.selectors.getIsEditableMode(n)&&a&&(!l||i)){const{relation:{relationType:e}}=a,l=(0,T.checkRemoved)(a),i=(0,T.getRelationType)(t,e);return{canRemove:o&&!l&&(0,T.checkMetadataForDelete)(n,i),canUpdate:r&&!l&&(0,T.checkMetadataForUpdate)(n,i)}}return{canRemove:!1,canUpdate:!1}})({mode:t,onRemoveRelation:y,onEditRelation:m,metadata:o,allowOnlyCreateNew:f,connection:(0,s.path)([w,"connection"],h)}),x=(0,l.useCallback)((e=>E(e)),[]),S=(0,l.useCallback)((()=>m((0,s.path)([w,"connection"],h))),[w,m,h]),k=(0,l.useCallback)((()=>y((0,s.path)([w,"connection","relation","relationUri"],h))),[w,y,h]),P=R||O?i().createElement(ee,{handleEditRelation:S,handleRemoveRelation:k,canRemove:R,canUpdate:O}):void 0;return i().createElement("div",{className:v.tableContainer},i().createElement(D.Z,{columnsData:b,rowsData:h,sorting:r,onSort:c,filters:p,onFilter:d,hoverStateEnabled:!0,defaultColumnWidth:250,defaultColumnMinWidth:200,headRowHeight:56,renderRowCell:C,onRowHover:x,hoverRowIndex:w,hoveredRowRightContent:P,classes:{hoveredRowRightContentWrapper:v["row-cell__buttons-wrapper"],hoveredRowRightContentContainer:v["row-cell__buttons-container"]},ref:g}))};ne.propTypes={mode:r().string,columnsData:I.uz,connections:r().arrayOf(T.ConnectionType),metadata:T.MetadataType,filters:r().objectOf(I.Dq),onFilter:r().func,sorting:I.nI,onSort:r().func,onEditRelation:r().func,onRemoveRelation:r().func,basicTableRef:r().shape({current:r().object}),allowOnlyCreateNew:r().bool};const ae=ne;var oe=n(76593),re=n.n(oe),le=n(52722),ie=n(10742),ce=n(55310),se=n(46804),pe=n(33903),ue=n(45124),de=n(26446),me=n.n(de),ye=n(46907),ge=n.n(ye),fe=n(95351),he=n.n(fe),be=n(43054),ve=n(39475);const Ce=(0,b.makeStyles)((()=>({popupContent:{padding:"19px 23px"},checkboxControlLabel:{fontSize:"0.85rem"},checkboxControlCheckbox:{marginRight:"5px"}}))),we=e=>{let{className:t,showInactive:n,onShowInactiveChange:a}=e;const o=Ce(),r=(0,l.useRef)(),[c,s]=(0,l.useState)(!1),p=()=>s((e=>!e));return i().createElement(i().Fragment,null,i().createElement(ve.k,{className:t,ref:r,tooltipTitle:h().text("More"),icon:be.Z,onClick:p,size:"L"}),i().createElement(me(),{open:c,classes:{paper:o.popupContent},anchorEl:r.current,onClose:p,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"}},i().createElement(ge(),{classes:{label:o.checkboxControlLabel},control:i().createElement(he(),{className:o.checkboxControlCheckbox,checked:n||!1,onChange:e=>a(e.target.checked)}),label:h().text("Show inactive Relationships")})))},Ee=(0,b.makeStyles)({header:{padding:"0 4px 0 16px"},totalCaption:{lineHeight:"19px",fontSize:"14px",letterSpacing:"0.24px",color:"rgba(0,0,0,0.6)",flexShrink:0,marginRight:"5px",justifyContent:"flex-start",paddingTop:"16px",paddingBottom:"13px"},moreButton:{marginLeft:"-6px"}}),Re=e=>{let{title:t,total:n,searchQuery:a,onChangeSearchQuery:o,filtersEnabled:r,onToggleFilters:l,columnsData:c,selectedColumns:s,onChangeColumns:p,showInactive:u,onChangeShowInactive:d}=e;const m=Ee();return i().createElement(le.Z,{title:t,className:m.header},i().createElement(ie.Z,{widthToHide:500},i().createElement(ce.Z,{height:24,margin:16}),i().createElement(re(),{className:m.totalCaption,variant:"caption"},n>1?h().text("${count} entities",{count:n}):h().text("${count} entity",{count:n}))),i().createElement(se.i,{query:a,onChange:o}),i().createElement(pe.Z,{enabled:r,onClick:l}),i().createElement(ce.Z,{height:24,margin:4}),i().createElement(ue.Z,{columnsData:c,selectedColumns:s,onChangeColumns:p}),i().createElement(we,{className:m.moreButton,showInactive:u,onShowInactiveChange:d}))};Re.propTypes={title:r().string,total:r().number,columnsData:I.uz,selectedColumns:r().arrayOf(r().string),onChangeColumns:r().func,searchQuery:r().string,onChangeSearchQuery:r().func,filtersEnabled:r().bool,onToggleFilters:r().func,showInactive:r().bool,onChangeShowInactive:r().func};const Te=Re;var Oe=n(75975),xe=n(79573);function Se(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},a=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),a.forEach((function(t){ke(e,t,n[t])}))}return e}function ke(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Pe="CHANGE_SEARCH_QUERY",je="CHANGE_SHOW_INACTIVE",De=Se({},Oe.ZP.actions,{changeSearchQuery:(0,xe.zD)(Pe),changeShowInactive:(0,xe.zD)(je)}),Ie=(e,t)=>{switch(t.type){case Pe:return Se({},e,{searchQuery:t.payload,page:0});case je:return Se({},e,{showInactive:t.payload});default:return Oe.ZP.reducer(e,t)}};var Ne=n(80231),Ae=n(80225),Fe=n(47081),Me=n(1730),Ze=n(2225),Ue=n(33379),ze=n(92944);const Le=[10,25,50,100],_e=[{id:"entity.label",get label(){return h().text("Entity label")},dataTypeDefinition:{type:T.DataTypes.TYPE_STRING},hideable:!1},{id:"relation.label",get label(){return h().text("Directional label")},dataTypeDefinition:{type:T.DataTypes.TYPE_STRING}},{id:"relation.activeness.startDate",get label(){return h().text("Start date")},dataTypeDefinition:T.ActivenessAttrTypes.startDate},{id:"relation.activeness.endDate",get label(){return h().text("End date")},dataTypeDefinition:T.ActivenessAttrTypes.endDate}],Ve=(0,s.pipe)(T.attributeUriToSearchUri,(0,s.concat)("relation.")),We=(0,s.pipe)((0,s.map)((e=>({id:Ve(e.uri),label:e.label,dataTypeDefinition:(0,T.getAttrDataTypeDefinition)(e)}))),(0,s.uniqBy)((0,s.prop)("id"))),Be=(0,s.pipe)(((e,t)=>{let{content:{inRelations:n=[],outRelations:a=[]}}=e,{relationTypes:o}=t;return(0,s.pipe)(_,(0,s.chain)((e=>(0,s.pipe)((0,s.find)((0,s.propEq)("uri",e)),T.getReadableAttributesList)(o))))([...n,...a])}),We,(0,s.concat)(_e));var Qe=n(9377);function He(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},a=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),a.forEach((function(t){Ge(e,t,n[t])}))}return e}function Ge(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const $e=e=>e.uri||e,qe=e=>t=>$e(t)===e,Ye=(0,s.curry)(((e,t)=>{const n=(t,a)=>{let o=$e(a),r=!1;o.startsWith("!")&&(o=o.slice(1),r=!0);const l=e[o]&&(0,T.checkMetadataPermission)(T.MetadataPermissions.READ,e[o]),i=t.find(qe(o))||!l?t:t.concat(a.uri?He({},a,{uri:o}):o);return r?i:(0,s.keys)(e).reduce(((t,a)=>e[a].extendsTypeURI!==o||t.find(qe(a))?t:n(t,a)),i)};return t.reduce(n,[])})),Je=(0,s.curry)(((e,t)=>{const n=function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return n.reduce(((n,a)=>{const o=$e(a),r=(0,s.path)([o,t,"objectTypeUri"],e);return!r||n.find(qe(r))?n:n.concat(r)}),[])};return He({},t,{entityTypes:[...n("startObject",t.inRelations),...n("endObject",t.outRelations)]})})),Ke=(0,s.indexBy)((0,s.prop)("uri")),Xe=(0,s.curry)(((e,t)=>{const n=Ke(e.relationTypes),a=Ke(e.entityTypes),o=e=>(0,s.evolve)({inRelations:Ye(n),outRelations:Ye(n),entityTypes:Ye(a),nextEntry:o},e);return(0,s.pipe)((0,s.unless)((0,s.either)((0,s.prop)("nextEntry"),(0,s.prop)("entityTypes")),Je(n)),o)(t)})),et=(0,b.makeStyles)({addArea:{display:"flex",alignItems:"center",height:"48px",borderBottom:"1px solid rgba(0, 0, 0, 0.12)"}}),tt=(0,s.pluck)("id",_e),[nt]=tt,at=e=>{let{className:t,config:n,entity:a,metadata:o,connections:r=[],total:c=0,mode:p,relationToAdd:d,relationsToEdit:m=[],checkIfCanAddRelations:y,dispatch:g}=e;const f={searchQuery:"",filters:null,visibleColumns:tt,sorting:{order:n.sortOrder||"asc",field:n.sortColumn||nt},page:0,rowsPerPage:n.max||15,showInactive:!1},h=et(),b=(0,l.useContext)(Ne.j)?p:T.ModeTypes.VIEWING,[v,C]=(0,l.useReducer)(Ie,f),E=(0,s.pipe)(De.changeSearchQuery,C),R=(0,s.pipe)(De.changeShowInactive,C);(0,l.useEffect)((()=>{E("")}),[null==a?void 0:a.uri]);const{visibleColumns:O,searchQuery:x,filters:S,sorting:k,page:P,rowsPerPage:j,showInactive:D}=v,I=(0,l.useMemo)((()=>Be(n,o)),[n,o]),N=(0,l.useMemo)((()=>O.map((e=>I.find((0,s.propEq)("id",e))))),[O,I]),A=(0,l.useMemo)((()=>((e,t,n)=>{const a=T.Maybe.fromFalsy(e).map(T.filterValueToQueryStringWithQuotes).map((e=>`containsWordStartingWith(entity.label,${e}) or containsWordStartingWith(relation.label,${e})`)).orSome(""),o=(0,Qe.Tz)(n,t);return(new T.FilterBuilder).addClause(a).addClause(o).build()})(x,S,N)),[S,x]),{isLoading:F}=(0,Ae.a)({sorting:k,filter:A,page:P,rowsPerPage:j,config:n,entity:a,relationActivityFilter:D?T.ActivityFilters.ALL:T.ActivityFilters.ACTIVE_ONLY,mode:p}),M=(0,l.useMemo)((()=>{return e=f.rowsPerPage,Le.filter((t=>t!==e)).concat(e).sort(s.subtract);var e}),[]),{handleRowsPerPageChange:Z,handlePageChange:U}=(0,l.useMemo)((()=>({handleRowsPerPageChange:(0,s.pipe)(De.changeRowsPerPage,C),handlePageChange:(0,s.pipe)(De.changePage,C)})),[]),z=(0,l.useCallback)((()=>{const e=(0,T.createNewConnectionWithDefaultRelationType)({config:n,mode:b,metadata:o});(0,s.pipe)(u.profile.relations.actions.openRelationEditor(n.id),g)(e)}),[n,b,o,g]),L=(0,l.useCallback)((e=>{g(u.profile.relations.actions.closeRelationEditor(n.id,e)),g(u.profile.relations.actions.removeRelation(n.id,e));const t=r.find((t=>u.profile.relations.selectors.getRelationUriFromConnection(t)===e)),a=u.profile.relations.selectors.getEntityUriFromConnection(t);(0,T.isTempUri)(a)&&g(u.profile.modifiedEntities.actions.entityDeleted(a))}),[n,r,g]),_=a&&y,V=d?[d,...m]:m,{canUpdate:W,canDelete:B}=(0,Fe.l)(),Q=W(n),H=B(n),G=(0,l.useRef)(null);return i().createElement(Me.Z,{className:t},i().createElement(Te,{title:n.caption,total:c,columnsData:I,selectedColumns:O,onChangeColumns:(0,s.pipe)(De.changeColumns,C),searchQuery:x,onChangeSearchQuery:E,filtersEnabled:!!S,onToggleFilters:(0,s.pipe)(De.toggleFilters,C),showInactive:D,onChangeShowInactive:R}),_&&i().createElement("div",{className:h.addArea},i().createElement(w,{onClick:z})),V.map((e=>i().createElement(Ze.Z,{key:u.profile.relations.selectors.getRelationUriFromConnection(e),connection:e,config:n,mode:b,metadata:o}))),i().createElement("div",{style:{position:"relative"}},i().createElement(ae,{mode:b,columnsData:N,connections:r,metadata:o,filters:S,onFilter:(0,s.pipe)(De.changeFilter,C),sorting:k,onSort:(0,s.pipe)(De.toggleSort,C),onEditRelation:Q?(0,s.pipe)(u.profile.relations.actions.openRelationEditor(n.id),g):null,onRemoveRelation:H?L:null,basicTableRef:G,allowOnlyCreateNew:n.allowOnlyCreateNew}),i().createElement(Ue.Z,{count:c,rowsPerPageOptions:M,rowsPerPage:j,onChangeRowsPerPage:Z,page:P,onChangePage:U,basicTableRef:G}),F&&i().createElement(ze.Z,null)))};at.propTypes={className:r().string,config:T.RelationsConfigType,entity:T.EntityType,metadata:T.MetadataType,connections:r().arrayOf(T.ConnectionType),total:r().number,mode:r().string,relationToAdd:r().object,relationsToEdit:r().array,dispatch:r().func,checkIfCanAddRelations:r().bool};const ot=at;function rt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const lt=(0,s.memoizeWith)(((e,t)=>t.id),((e,t)=>(0,s.evolve)({content:Xe(e)},t))),it=(0,p.connect)(((e,t)=>{const{config:n}=t;return{connections:d().selectors.getConnectionsWithDraftsByViewId(e,n.id),total:d().selectors.getTotalByViewId(e,n.id),entity:d().selectors.getEntity(e),metadata:d().selectors.getMetadata(e),mode:d().selectors.getMode(e),relationToAdd:d().selectors.getRelationToAddByViewId(e,n.id),relationsToEdit:d().selectors.getRelationsToEditByViewId(e,n.id),checkIfCanAddRelations:d().selectors.getCheckIfCanAddRelations(e,n.content)}}),void 0,((e,t,n)=>function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},a=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),a.forEach((function(t){rt(e,t,n[t])}))}return e}({},e,t,n,{config:lt(e.metadata,n.config)})))(ot);var ct=n(21406),st=n(97333);const pt=(0,b.createGenerateClassName)({productionPrefix:"relTable",disableGlobal:!0}),ut=e=>{let{config:t,store:n,onResize:o=s.identity,className:r}=e;return i().createElement(p.Provider,{store:n},i().createElement(N.m.Provider,{value:t.id},i().createElement(b.StylesProvider,{generateClassName:pt},i().createElement(ct.is,{utils:a.Z},i().createElement(c.Z,{handleHeight:!0,onResize:(e,t)=>o(Math.floor(e),Math.floor(t))}),t&&i().createElement(it,{config:t,className:r}),i().createElement(st.Z,null)))))};ut.propTypes={config:T.RelationsConfigType,store:r().object,onResize:r().func,className:r().string};const dt=ut}}]);
1
+ "use strict";(self.webpackChunk_reltio_profile=self.webpackChunk_reltio_profile||[]).push([[431],{83431:(e,t,n)=>{n.r(t),n.d(t,{RelationshipsTableView:()=>dt});var a=n(8598),o=n(95099),r=n.n(o),l=n(8156),i=n.n(l),c=n(88267),s=n(73288),p=n(34756),u=n(42308),d=n.n(u),m=n(65549),y=n(47450),g=n.n(y),f=n(65751),h=n.n(f),b=n(40797);const v=(0,b.makeStyles)({addButton:{marginLeft:"12px",padding:"9px 16px 9px 12px",backgroundColor:"rgba(98, 2, 238, 0)"},label:{fontSize:"14px",fontWeight:500,lineHeight:"16px"},icon:{fontSize:"18px",marginRight:"8px"}}),C=e=>{let{onClick:t}=e;const n=v();return i().createElement(g(),{color:"primary",className:n.addButton,onClick:t},i().createElement(m.Z,{classes:{root:n.icon}}),i().createElement("div",{className:n.label},h().text("Add")))};C.propTypes={onClick:r().func};const w=C;var E=n(78310),R=n.n(E),T=n(2396);const O={textDecoration:"line-through",color:"rgba(0,0,0,.54)"},x={color:"rgba(0,0,0,.54)"},S=(0,b.makeStyles)((e=>({headCell:{display:"flex",alignItems:"center",height:"100%",fontSize:"12px"},entityCell:{display:"flex",alignItems:"center",height:"100%"},entityLabel:{fontSize:"15px",color:e.palette.secondary.main,cursor:"pointer",textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap","$row-cell--removed &":O,"$row-cell--inactive &":x},entityAvatar:{transform:"scale(0.7)",margin:"0 10px"},rowCell:{fontSize:"13px",overflow:"hidden"},"row-cell--sorted":{color:"rgba(0,0,0,0.87)"},"row-cell--removed":{pointerEvents:"none","& > :not($entityCell)":O},"row-cell--inactive":x})));function k(){return k=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},k.apply(this,arguments)}const P=e=>{let{cell:t,CellValueRenderer:n,rowValue:{connection:a},isSorted:o}=e,r=function(e,t){if(null==e)return{};var n,a,o=function(e,t){if(null==e)return{};var n,a,o={},r=Object.keys(e);for(a=0;a<r.length;a++)n=r[a],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a<r.length;a++)n=r[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(e,["cell","CellValueRenderer","rowValue","isSorted"]);const l=S(),c=(0,T.checkRemoved)(a),s=(0,T.isActiveObject)(a.relation)&&(0,T.isActiveObject)(a.entity);return i().createElement("div",{className:R()({[l["row-cell--sorted"]]:o,[l["row-cell--removed"]]:c,[l["row-cell--inactive"]]:!s},l.rowCell)},t.values.map(((e,t)=>i().createElement(n,k({key:t,value:e},r)))))};P.propTypes={rowValue:r().object,cell:r().object,CellValueRenderer:r().elementType,isSorted:r().bool};const j=P;var D=n(87251),I=n(53862),N=n(12212),A=n(42662),F=n(74187);const M=e=>{let{value:{entityType:t,entity:n}}=e;const a=(0,p.useDispatch)(),o=(0,l.useContext)(N.m),r=S(),c=(0,T.getLabel)(n.entityLabel),d=(0,T.getEntityUriForLink)({uri:n.entityUri,dataTenant:n.dataTenant});return i().createElement("div",{className:r.entityCell},i().createElement(A.Z,{className:r.entityAvatar,entityType:t}),i().createElement(F.C,{value:c},i().createElement("span",{className:r.entityLabel,onClick:(0,s.pipe)((0,s.always)({uri:d,viewId:o}),u.ui.actions.openEntity,a)},c)))};M.propTypes={value:r().shape({entity:r().shape({entityUri:r().string,entityLabel:r().string}),entityType:T.EntityTypeType})};const Z=M;var U=n(92332);const z=(0,n(25843).Z)((e=>{const t=S();return i().createElement("div",{className:t.headCell},i().createElement(U.default,e))}));var L=n(46728);const _=(0,s.pipe)((0,s.map)((e=>e.uri||e)),s.uniq);function V(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const W=(0,s.pipe)((0,s.split)("."),(0,s.slice)(2,1/0)),B=e=>{if(e.startsWith("relation.attributes")){const t=W(e);return t.length>1?t.slice(0,-1):null}return null},Q=(0,s.map)((e=>{return function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},a=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),a.forEach((function(t){V(e,t,n[t])}))}return e}({},e,{sortable:!0,resizable:!0,nestedPath:B(e.id),headCellRenderer:z,rowCellValueRenderer:(t=e.id,"entity.label"===t?Z:L.Z)});var t})),H=(0,b.makeStyles)({tableContainer:{height:"477px",display:"flex",fontFamily:"Roboto",color:"rgba(0,0,0,0.54)"},"@global div[role=tooltip]":{fontFamily:"Roboto, Helvetica, Arial, sans-serif"},"@global div[role=presentation]":{fontFamily:"Roboto, Helvetica, Arial, sans-serif"},"row-cell__buttons-container":{position:"absolute"},"row-cell__buttons-wrapper":{display:"flex",paddingLeft:"10px","& > button":{marginLeft:"-10px",transform:"scale(0.9)"}}});var G=n(86929),$=n.n(G),q=n(70683),Y=n.n(q),J=n(27604),K=n(22983);const X=e=>{let{canUpdate:t,canRemove:n,handleEditRelation:a,handleRemoveRelation:o}=e;return i().createElement(i().Fragment,null,t&&i().createElement($(),{title:h().text("Edit")},i().createElement(Y(),{onClick:a},i().createElement(J.Z,null))),n&&i().createElement($(),{title:h().text("Remove")},i().createElement(Y(),{onClick:o},i().createElement(K.Z,null))))};X.propTypes={canUpdate:r().bool,canRemove:r().bool,handleEditRelation:r().func,handleRemoveRelation:r().func};const ee=X;function te(){return te=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},te.apply(this,arguments)}const ne=e=>{let{mode:t,columnsData:n,connections:a,metadata:o,sorting:r,onSort:c,filters:p,onFilter:d,onEditRelation:m,onRemoveRelation:y,basicTableRef:g,allowOnlyCreateNew:f}=e;const h=(0,l.useMemo)((()=>((e,t,n)=>e.map((e=>(0,s.pipe)((0,s.reduce)(((t,a)=>{let{id:o}=a;return(0,s.assoc)(o,((e,t,n)=>{let{entity:a,relation:o}=t;switch(e){case"entity.label":return{entity:a,entityType:(0,T.getEntityType)(n,a.entityType)};case"relation.label":return o.relationLabel||(0,T.getRelationTypeLabelFromMetadata)(n,o.relationType);case"relation.activeness.startDate":return o.startDate;case"relation.activeness.endDate":return o.endDate;default:return((e,t)=>(0,s.pipe)((0,s.path)(["object","attributes"]),(0,T.getOvAttributeValuesByPath)(e))(t))(W(e),o)}})(o,e,n),t)}),{}),(0,s.assoc)("connection",e))(t))))(a,n,o)),[a,n,o]),b=(0,l.useMemo)((()=>Q(n)),[n]),v=H(),C=(0,l.useCallback)((e=>i().createElement(j,te({},e,{isSorted:!!r&&r.field===e.columnData.id}))),[r]),[w,E]=(0,l.useState)(null),{canRemove:R,canUpdate:O}=(e=>{let{metadata:t,mode:n,connection:a,onRemoveRelation:o,onEditRelation:r,allowOnlyCreateNew:l}=e;const i=(0,T.checkNew)(a);if(u.profile.mode.selectors.getIsEditableMode(n)&&a&&(!l||i)){const{relation:{relationType:e}}=a,l=(0,T.checkRemoved)(a),i=(0,T.getRelationType)(t,e);return{canRemove:o&&!l&&(0,T.checkMetadataForDelete)(n,i),canUpdate:r&&!l&&(0,T.checkMetadataForUpdate)(n,i)}}return{canRemove:!1,canUpdate:!1}})({mode:t,onRemoveRelation:y,onEditRelation:m,metadata:o,allowOnlyCreateNew:f,connection:(0,s.path)([w,"connection"],h)}),x=(0,l.useCallback)((e=>E(e)),[]),S=(0,l.useCallback)((()=>m((0,s.path)([w,"connection"],h))),[w,m,h]),k=(0,l.useCallback)((()=>y((0,s.path)([w,"connection","relation","relationUri"],h))),[w,y,h]),P=R||O?i().createElement(ee,{handleEditRelation:S,handleRemoveRelation:k,canRemove:R,canUpdate:O}):void 0;return i().createElement("div",{className:v.tableContainer},i().createElement(D.Z,{columnsData:b,rowsData:h,sorting:r,onSort:c,filters:p,onFilter:d,hoverStateEnabled:!0,defaultColumnWidth:250,defaultColumnMinWidth:200,headRowHeight:56,renderRowCell:C,onRowHover:x,hoverRowIndex:w,hoveredRowRightContent:P,classes:{hoveredRowRightContentWrapper:v["row-cell__buttons-wrapper"],hoveredRowRightContentContainer:v["row-cell__buttons-container"]},ref:g}))};ne.propTypes={mode:r().string,columnsData:I.uz,connections:r().arrayOf(T.ConnectionType),metadata:T.MetadataType,filters:r().objectOf(I.Dq),onFilter:r().func,sorting:I.nI,onSort:r().func,onEditRelation:r().func,onRemoveRelation:r().func,basicTableRef:r().shape({current:r().object}),allowOnlyCreateNew:r().bool};const ae=ne;var oe=n(76593),re=n.n(oe),le=n(52722),ie=n(10742),ce=n(55310),se=n(46804),pe=n(33903),ue=n(45124),de=n(26446),me=n.n(de),ye=n(46907),ge=n.n(ye),fe=n(95351),he=n.n(fe),be=n(43054),ve=n(39475);const Ce=(0,b.makeStyles)((()=>({popupContent:{padding:"19px 23px"},checkboxControlLabel:{fontSize:"0.85rem"},checkboxControlCheckbox:{marginRight:"5px"}}))),we=e=>{let{className:t,showInactive:n,onShowInactiveChange:a}=e;const o=Ce(),r=(0,l.useRef)(),[c,s]=(0,l.useState)(!1),p=()=>s((e=>!e));return i().createElement(i().Fragment,null,i().createElement(ve.k,{className:t,ref:r,tooltipTitle:h().text("More"),icon:be.Z,onClick:p,size:"L"}),i().createElement(me(),{open:c,classes:{paper:o.popupContent},anchorEl:r.current,onClose:p,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"}},i().createElement(ge(),{classes:{label:o.checkboxControlLabel},control:i().createElement(he(),{className:o.checkboxControlCheckbox,checked:n||!1,onChange:e=>a(e.target.checked)}),label:h().text("Show inactive Relationships")})))},Ee=(0,b.makeStyles)({header:{padding:"0 4px 0 16px"},totalCaption:{lineHeight:"19px",fontSize:"14px",letterSpacing:"0.24px",color:"rgba(0,0,0,0.6)",flexShrink:0,marginRight:"5px",justifyContent:"flex-start",paddingTop:"16px",paddingBottom:"13px"},moreButton:{marginLeft:"-6px"}}),Re=e=>{let{title:t,total:n,searchQuery:a,onChangeSearchQuery:o,filtersEnabled:r,onToggleFilters:l,columnsData:c,selectedColumns:s,onChangeColumns:p,showInactive:u,onChangeShowInactive:d}=e;const m=Ee();return i().createElement(le.Z,{title:t,className:m.header},i().createElement(ie.Z,{widthToHide:500},i().createElement(ce.Z,{height:24,margin:16}),i().createElement(re(),{className:m.totalCaption,variant:"caption"},n>1?h().text("${count} entities",{count:n}):h().text("${count} entity",{count:n}))),i().createElement(se.i,{query:a,onChange:o}),i().createElement(pe.Z,{enabled:r,onClick:l}),i().createElement(ce.Z,{height:24,margin:4}),i().createElement(ue.Z,{columnsData:c,selectedColumns:s,onChangeColumns:p}),i().createElement(we,{className:m.moreButton,showInactive:u,onShowInactiveChange:d}))};Re.propTypes={title:r().string,total:r().number,columnsData:I.uz,selectedColumns:r().arrayOf(r().string),onChangeColumns:r().func,searchQuery:r().string,onChangeSearchQuery:r().func,filtersEnabled:r().bool,onToggleFilters:r().func,showInactive:r().bool,onChangeShowInactive:r().func};const Te=Re;var Oe=n(75975),xe=n(79573);function Se(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},a=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),a.forEach((function(t){ke(e,t,n[t])}))}return e}function ke(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Pe="CHANGE_SEARCH_QUERY",je="CHANGE_SHOW_INACTIVE",De=Se({},Oe.ZP.actions,{changeSearchQuery:(0,xe.zD)(Pe),changeShowInactive:(0,xe.zD)(je)}),Ie=(e,t)=>{switch(t.type){case Pe:return Se({},e,{searchQuery:t.payload,page:0});case je:return Se({},e,{showInactive:t.payload});default:return Oe.ZP.reducer(e,t)}};var Ne=n(80231),Ae=n(80225),Fe=n(47081),Me=n(1730),Ze=n(2225),Ue=n(33379),ze=n(92944);const Le=[10,25,50,100],_e=[{id:"entity.label",get label(){return h().text("Entity label")},dataTypeDefinition:{type:T.DataTypes.TYPE_STRING},hideable:!1},{id:"relation.label",get label(){return h().text("Directional label")},dataTypeDefinition:{type:T.DataTypes.TYPE_STRING}},{id:"relation.activeness.startDate",get label(){return h().text("Start date")},dataTypeDefinition:T.ActivenessAttrTypes.startDate},{id:"relation.activeness.endDate",get label(){return h().text("End date")},dataTypeDefinition:T.ActivenessAttrTypes.endDate}],Ve=(0,s.pipe)(T.attributeUriToSearchUri,(0,s.concat)("relation.")),We=(0,s.pipe)((0,s.map)((e=>({id:Ve(e.uri),label:e.label,dataTypeDefinition:(0,T.getAttrDataTypeDefinition)(e)}))),(0,s.uniqBy)((0,s.prop)("id"))),Be=(0,s.pipe)(((e,t)=>{let{content:{inRelations:n=[],outRelations:a=[]}}=e,{relationTypes:o}=t;return(0,s.pipe)(_,(0,s.chain)((e=>(0,s.pipe)((0,s.find)((0,s.propEq)("uri",e)),T.getReadableAttributesList)(o))))([...n,...a])}),We,(0,s.concat)(_e));var Qe=n(9377);function He(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},a=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),a.forEach((function(t){Ge(e,t,n[t])}))}return e}function Ge(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const $e=e=>e.uri||e,qe=e=>t=>$e(t)===e,Ye=(0,s.curry)(((e,t)=>{const n=(t,a)=>{let o=$e(a),r=!1;o.startsWith("!")&&(o=o.slice(1),r=!0);const l=e[o]&&(0,T.checkMetadataPermission)(T.MetadataPermissions.READ,e[o]),i=t.find(qe(o))||!l?t:t.concat(a.uri?He({},a,{uri:o}):o);return r?i:(0,s.keys)(e).reduce(((t,a)=>e[a].extendsTypeURI!==o||t.find(qe(a))?t:n(t,a)),i)};return t.reduce(n,[])})),Je=(0,s.curry)(((e,t)=>{const n=function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return n.reduce(((n,a)=>{const o=$e(a),r=(0,s.path)([o,t,"objectTypeUri"],e);return!r||n.find(qe(r))?n:n.concat(r)}),[])};return He({},t,{entityTypes:[...n("startObject",t.inRelations),...n("endObject",t.outRelations)]})})),Ke=(0,s.indexBy)((0,s.prop)("uri")),Xe=(0,s.curry)(((e,t)=>{const n=Ke(e.relationTypes),a=Ke(e.entityTypes),o=e=>(0,s.evolve)({inRelations:Ye(n),outRelations:Ye(n),entityTypes:Ye(a),nextEntry:o},e);return(0,s.pipe)((0,s.unless)((0,s.either)((0,s.prop)("nextEntry"),(0,s.prop)("entityTypes")),Je(n)),o)(t)})),et=(0,b.makeStyles)({addArea:{display:"flex",alignItems:"center",height:"48px",borderBottom:"1px solid rgba(0, 0, 0, 0.12)"}}),tt=(0,s.pluck)("id",_e),[nt]=tt,at=e=>{let{className:t,config:n,entity:a,metadata:o,connections:r=[],total:c=0,mode:p,relationToAdd:d,relationsToEdit:m=[],checkIfCanAddRelations:y,dispatch:g}=e;const f={searchQuery:"",filters:null,visibleColumns:tt,sorting:{order:n.sortOrder||"asc",field:n.sortColumn||nt},page:0,rowsPerPage:n.max||15,showInactive:!1},h=et(),b=(0,l.useContext)(Ne.j)?p:T.ModeTypes.VIEWING,[v,C]=(0,l.useReducer)(Ie,f),E=(0,s.pipe)(De.changeSearchQuery,C),R=(0,s.pipe)(De.changeShowInactive,C);(0,l.useEffect)((()=>{E("")}),[null==a?void 0:a.uri]);const{visibleColumns:O,searchQuery:x,filters:S,sorting:k,page:P,rowsPerPage:j,showInactive:D}=v,I=(0,l.useMemo)((()=>Be(n,o)),[n,o]),N=(0,l.useMemo)((()=>O.map((e=>I.find((0,s.propEq)("id",e))))),[O,I]),A=(0,l.useMemo)((()=>((e,t,n)=>{const a=T.Maybe.fromFalsy(e).map(T.filterValueToQueryStringWithQuotes).map((e=>`containsWordStartingWith(entity.label,${e}) or containsWordStartingWith(relation.label,${e})`)).orSome(""),o=(0,Qe.Tz)(n,t);return(new T.FilterBuilder).addClause(a).addClause(o).build()})(x,S,N)),[S,x]),{isLoading:F}=(0,Ae.a)({sorting:k,filter:A,page:P,rowsPerPage:j,config:n,entity:a,relationActivityFilter:D?T.ActivityFilters.ALL:T.ActivityFilters.ACTIVE_ONLY,mode:p}),M=(0,l.useMemo)((()=>{return e=f.rowsPerPage,Le.filter((t=>t!==e)).concat(e).sort(s.subtract);var e}),[]),{handleRowsPerPageChange:Z,handlePageChange:U}=(0,l.useMemo)((()=>({handleRowsPerPageChange:(0,s.pipe)(De.changeRowsPerPage,C),handlePageChange:(0,s.pipe)(De.changePage,C)})),[]),z=(0,l.useCallback)((()=>{const e=(0,T.createNewConnectionWithDefaultRelationType)({config:n,mode:b,metadata:o});(0,s.pipe)(u.profile.relations.actions.openRelationEditor(n.id),g)(e)}),[n,b,o,g]),L=(0,l.useCallback)((e=>{g(u.profile.relations.actions.closeRelationEditor(n.id,e)),g(u.profile.relations.actions.removeRelation(n.id,e));const t=r.find((t=>u.profile.relations.selectors.getRelationUriFromConnection(t)===e)),a=u.profile.relations.selectors.getEntityUriFromConnection(t);(0,T.isTempUri)(a)&&g(u.profile.modifiedEntities.actions.entityDeleted(a))}),[n,r,g]),_=a&&y,V=d?[d,...m]:m,{canUpdate:W,canDelete:B}=(0,Fe.l)(),Q=W(n),H=B(n),G=(0,l.useRef)(null);return i().createElement(Me.Z,{className:t},i().createElement(Te,{title:n.caption,total:c,columnsData:I,selectedColumns:O,onChangeColumns:(0,s.pipe)(De.changeColumns,C),searchQuery:x,onChangeSearchQuery:E,filtersEnabled:!!S,onToggleFilters:(0,s.pipe)(De.toggleFilters,C),showInactive:D,onChangeShowInactive:R}),_&&i().createElement("div",{className:h.addArea},i().createElement(w,{onClick:z})),V.map((e=>i().createElement(Ze.Z,{key:u.profile.relations.selectors.getRelationUriFromConnection(e),connection:e,config:n,mode:b,metadata:o}))),i().createElement("div",{style:{position:"relative"}},i().createElement(ae,{mode:b,columnsData:N,connections:r,metadata:o,filters:S,onFilter:(0,s.pipe)(De.changeFilter,C),sorting:k,onSort:(0,s.pipe)(De.toggleSort,C),onEditRelation:Q?(0,s.pipe)(u.profile.relations.actions.openRelationEditor(n.id),g):null,onRemoveRelation:H?L:null,basicTableRef:G,allowOnlyCreateNew:n.allowOnlyCreateNew}),i().createElement(Ue.Z,{count:c,rowsPerPageOptions:M,rowsPerPage:j,onChangeRowsPerPage:Z,page:P,onChangePage:U,basicTableRef:G}),F&&i().createElement(ze.Z,null)))};at.propTypes={className:r().string,config:T.RelationsConfigType,entity:T.EntityType,metadata:T.MetadataType,connections:r().arrayOf(T.ConnectionType),total:r().number,mode:r().string,relationToAdd:r().object,relationsToEdit:r().array,dispatch:r().func,checkIfCanAddRelations:r().bool};const ot=at;function rt(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const lt=(0,s.memoizeWith)(((e,t)=>t.id),((e,t)=>(0,s.evolve)({content:Xe(e)},t))),it=(0,p.connect)(((e,t)=>{const{config:n}=t;return{connections:d().selectors.getConnectionsWithDraftsByViewId(e,n.id),total:d().selectors.getTotalByViewId(e,n.id),entity:d().selectors.getEntity(e),metadata:d().selectors.getMetadata(e),mode:d().selectors.getMode(e),relationToAdd:d().selectors.getRelationToAddByViewId(e,n.id),relationsToEdit:d().selectors.getRelationsToEditByViewId(e,n.id),checkIfCanAddRelations:d().selectors.getCheckIfCanAddRelations(e,n.content)}}),void 0,((e,t,n)=>function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},a=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),a.forEach((function(t){rt(e,t,n[t])}))}return e}({},e,t,n,{config:lt(e.metadata,n.config)})))(ot);var ct=n(35985),st=n(97333);const pt=(0,b.createGenerateClassName)({productionPrefix:"relTable",disableGlobal:!0}),ut=e=>{let{config:t,store:n,onResize:o=s.identity,className:r}=e;return i().createElement(p.Provider,{store:n},i().createElement(N.m.Provider,{value:t.id},i().createElement(b.StylesProvider,{generateClassName:pt},i().createElement(ct.is,{utils:a.Z},i().createElement(c.Z,{handleHeight:!0,onResize:(e,t)=>o(Math.floor(e),Math.floor(t))}),t&&i().createElement(it,{config:t,className:r}),i().createElement(st.Z,null)))))};ut.propTypes={config:T.RelationsConfigType,store:r().object,onResize:r().func,className:r().string};const dt=ut}}]);
package/666.bundle.js CHANGED
@@ -1 +1 @@
1
- "use strict";(self.webpackChunk_reltio_profile=self.webpackChunk_reltio_profile||[]).push([[666],{74443:(e,t,r)=>{var n=r(71600);t.Z=void 0;var o=n(r(8156)),a=(0,n(r(50175)).default)(o.default.createElement("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11h-4v4h-2v-4H7v-2h4V7h2v4h4v2z"}),"AddCircle");t.Z=a},86666:(e,t,r)=>{r.r(t),r.d(t,{HierarchyTreeView:()=>Rn});var n={};r.r(n),r.d(n,{MIN_NODE_CONTENT_WIDTH:()=>Y,nodeContentRenderer:()=>V,rowHeight:()=>te,scaffoldBlockPxWidth:()=>ee,slideRegionSize:()=>re,treeNodeRenderer:()=>X});var o=r(8598),a=r(95099),i=r.n(a),l=r(8156),s=r.n(l),c=r(88267),d=r(78310),p=r.n(d),u=r(73288),g=r(65751),h=r.n(g),m=r(76593),f=r.n(m),b=r(70683),y=r.n(b),v=r(78223),O=r(52722);function E(){return E=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},E.apply(this,arguments)}const w=e=>{let{styles:t={}}=e,r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["styles"]);return s().createElement("svg",E({width:"24",height:"24",viewBox:"0 0 24 24",version:"1.1",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink"},r),s().createElement("defs",null,s().createElement("path",{d:"M12 7c2.762 0 5 2.238 5 5s-2.238 5-5 5-5-2.238-5-5 2.238-5 5-5zm0 2a3 3 0 100 6 3 3 0 100-6zm8.94 2A8.994 8.994 0 0013 3.06V1h-2v2.06A8.994 8.994 0 003.06 11H1v2h2.06A8.994 8.994 0 0011 20.94V23h2v-2.06A8.994 8.994 0 0020.94 13H23v-2h-2.06zM12 19c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z",id:"svg2250934887a"})),s().createElement("g",{stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd"},s().createElement("mask",{id:"svg2250934887b",fill:"#fff"},s().createElement("use",{xlinkHref:"#svg2250934887a"})),s().createElement("path",{fillOpacity:".54",fill:"#000",mask:"url(#svg2250934887b)",d:"M0 0h24v24H0z"})))};function x(){return x=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},x.apply(this,arguments)}const C=e=>{let{styles:t={}}=e,r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["styles"]);return s().createElement("svg",x({width:"20",height:"20",viewBox:"0 0 20 20",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},r),s().createElement("g",{stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd",fillOpacity:".54"},s().createElement("path",{d:"M14.5 5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm4 5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm-17 1a1.5 1.5 0 110-3 1.5 1.5 0 010 3zM4 4a2 2 0 110-4 2 2 0 010 4zm1 16a2 2 0 110-4 2 2 0 010 4zm4.5-6a4.5 4.5 0 110-9 4.5 4.5 0 010 9zm0-2a2.5 2.5 0 100-5 2.5 2.5 0 000 5zm6 5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z",fill:"#000"})))};var S=r(40797);const N=(0,S.makeStyles)((()=>({header:{padding:"0 4px 0 16px"},buttonsContainer:{flexShrink:0,marginLeft:"auto","& > * + *":{marginLeft:"-4px"}},button:{padding:"8px"},icon:{width:"24px",height:"24px"},disabledIcon:{opacity:.54}}))),T=(0,v.Z)(y()),k=e=>{let{title:t,entityLabel:r="",onScrollToCurrentEntity:n,onGraphOpen:o,disabled:a=!1}=e;const i=N(),l=p()(i.icon,{[i.disabledIcon]:a});return s().createElement(O.Z,{title:t,className:i.header},s().createElement("div",{className:i.buttonsContainer},s().createElement(T,{tooltipTitle:h().text("Show Graph"),onClick:o,classes:{root:i.button,label:l},disabled:a,showForDisabled:!0},s().createElement(C,null)),s().createElement(T,{tooltipTitle:h().text("Scroll to ${node}",{node:r}),tooltipPlacement:"bottom-end",onClick:n,classes:{root:i.button,label:l},disabled:a,showForDisabled:!0},s().createElement(w,null))))};k.propTypes={title:i().string,entityLabel:i().string,total:i().number,onScrollToCurrentEntity:i().func,onGraphOpen:i().func,disabled:i().bool};const P=k;var R=r(34756),D=r(2396);const I=(0,S.makeStyles)((e=>({textField:{marginLeft:e.spacing(),marginRight:e.spacing(),width:200},panel:{display:"flex",flexGrow:1,flexDirection:"column",minHeight:"372px",maxHeight:"507px"},treeWrapper:{flexGrow:1,height:0,marginTop:7},checkedNode:{backgroundColor:"rgba(0,114,206, 0.12)"},editorNode:{"&:hover":{backgroundColor:"transparent !important"},"&:hover div.rst__moveHandle":{visibility:"hidden"},"& div.rst__rowLabel":{paddingRight:0}}})));var A=r(12335);const j=(0,S.makeStyles)((()=>({container:{display:"flex",flexDirection:"column",height:"100%"},root:{minHeight:"28px",display:"flex",padding:"0 18px","&:hover":{backgroundColor:"rgba(0,0,0,0.06)"},wordBreak:"break-all"},tree:{flexGrow:1,height:0}})));var _=r(98858),M=r(90690),L=r(73006),F=r(14940),B=r(86929),U=r.n(B);function H(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return t.filter(Boolean).join(" ")}function z(){return z=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},z.apply(this,arguments)}function q(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){W(e,t,r[t])}))}return e}function W(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class G extends l.Component{render(){const e=this.props,{scaffoldBlockPxWidth:t,toggleChildrenVisibility:r,connectDragPreview:n,connectDragSource:o,isDragging:a,canDrop:i,canDrag:l,node:c,title:d,subtitle:p,draggedNode:u,path:g,treeIndex:m,isSearchMatch:f,isSearchFocus:b,buttons:y,className:v,style:O,didDrop:E,treeId:w,isOver:x,parentNode:C,rowDirection:S}=e,N=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["scaffoldBlockPxWidth","toggleChildrenVisibility","connectDragPreview","connectDragSource","isDragging","canDrop","canDrag","node","title","subtitle","draggedNode","path","treeIndex","isSearchMatch","isSearchFocus","buttons","className","style","didDrop","treeId","isOver","parentNode","rowDirection"]),T=d||c.title,k=p||c.subtitle,P="rtl"===S?"rst__rtl":null;let R;l&&(R="function"==typeof c.children&&c.expanded?s().createElement("div",{className:"rst__loadingHandle"},s().createElement("div",{className:"rst__loadingCircle"},[...new Array(12)].map(((e,t)=>s().createElement("div",{key:t,className:H("rst__loadingCirclePoint",P)}))))):o(s().createElement("div",{className:"rst__moveHandle"},s().createElement(U(),{title:h().text("Drag node")},s().createElement(F.Z,null))),{dropEffect:"copy"}));const D=u&&_.ZP.isDescendant(u,c),I=!E&&a,A=r&&!c.root&&!c.cycled&&(c.children&&c.children.length>0||c.pending);return s().createElement("div",z({style:{height:"100%"}},N,{key:c.nodeId}),A&&c.expanded&&!a&&s().createElement("div",{style:{width:t-2},className:H("rst__lineChildren",P)}),s().createElement("div",{className:H("rst__rowWrapper",P)},n(s().createElement("div",{className:H("rst__row",I&&"rst__rowLandingPad",I&&!i&&"rst__rowCancelPad",f&&"rst__rowSearchMatch",b&&"rst__rowSearchFocus",P,v),style:q({opacity:D?.5:1},O)},R,s().createElement("div",{className:H("rst__rowContents",!l&&"rst__rowContentsDragDisabled",P)},A?s().createElement("div",{className:"rst__buttonWrapper",onClick:()=>{r({node:c,path:g,treeIndex:m})}},s().createElement("div",{"aria-label":c.expanded?"Collapse":"Expand",className:H(c.expanded?"rst__collapseButton":"rst__expandButton",P)})):s().createElement("div",{className:H("rst__buttonWrapper","rst__noButton")}),s().createElement("div",{className:H("rst__rowLabel",P)},s().createElement("div",{className:H("rst__rowTitle",c.subtitle&&"rst__rowTitleWithSubtitle")},"function"==typeof T?T({node:c,path:g,treeIndex:m}):T),k&&s().createElement("span",{className:"rst__rowSubtitle"},"function"==typeof k?k({node:c,path:g,treeIndex:m}):k)),s().createElement("div",{className:"rst__rowToolbar"},y.map(((e,t)=>s().createElement("div",{key:t,className:"rst__toolbarButton"},e)))))),{offsetX:0,offsetY:0})))}}G.defaultProps={isSearchMatch:!1,isSearchFocus:!1,canDrag:!1,toggleChildrenVisibility:null,buttons:[],className:"",style:{},parentNode:null,draggedNode:null,canDrop:!1,title:null,subtitle:null,rowDirection:"ltr"},G.propTypes={node:i().shape({}).isRequired,title:i().oneOfType([i().func,i().node]),subtitle:i().oneOfType([i().func,i().node]),path:i().arrayOf(i().oneOfType([i().string,i().number])).isRequired,treeIndex:i().number.isRequired,treeId:i().string.isRequired,isSearchMatch:i().bool,isSearchFocus:i().bool,canDrag:i().bool,scaffoldBlockPxWidth:i().number.isRequired,toggleChildrenVisibility:i().func,buttons:i().arrayOf(i().node),className:i().string,style:i().shape({}),connectDragPreview:i().func.isRequired,connectDragSource:i().func.isRequired,parentNode:i().shape({}),isDragging:i().bool.isRequired,didDrop:i().bool.isRequired,draggedNode:i().shape({}),isOver:i().bool.isRequired,canDrop:i().bool,rowDirection:i().string};const V=G,Z=(0,l.createContext)({generateTreeNodeProps:void 0});function Q(){return Q=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Q.apply(this,arguments)}function J(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){K(e,t,r[t])}))}return e}function K(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Z.displayName="TreeThemeContext";class $ extends l.Component{render(){const e=this.props,{children:t,listIndex:r,swapFrom:n,swapLength:o,swapDepth:a,scaffoldBlockPxWidth:i,lowerSiblingCounts:c,connectDropTarget:d,isOver:p,draggedNode:u,canDrop:g,treeIndex:h,treeId:m,getPrevRow:f,node:b,path:y,rowDirection:v}=e,O=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["children","listIndex","swapFrom","swapLength","swapDepth","scaffoldBlockPxWidth","lowerSiblingCounts","connectDropTarget","isOver","draggedNode","canDrop","treeIndex","treeId","getPrevRow","node","path","rowDirection"]),E="rtl"===v?"rst__rtl":null,w=c.length,x=[];let C;c.forEach(((e,t)=>{let l="";if(e>0?l=t===w-1?"rst__lineHalfHorizontalRight rst__lineFullVertical":"rst__lineFullVertical":t===w-1&&(l="rst__lineHalfVerticalTop rst__lineHalfHorizontalRight"),x.push(s().createElement("div",{key:`pre_${1+t}`,style:{width:i},className:H("rst__lineBlock",l,E)})),h!==r&&t===a){let e,a="";a=r===n+o-1?"rst__highlightBottomLeftCorner":h===n?"rst__highlightTopLeftCorner":"rst__highlightLineVertical",e="rtl"===v?{width:i,right:i*t}:{width:i,left:i*t},x.push(s().createElement("div",{key:t,style:e,className:H("rst__absoluteLineBlock",a,E)}))}}));const S=i*w;C="rtl"===v?{right:S}:{left:S},C=J({},C,{width:`calc(100% - ${S}px`});const N=`${S+Y}px`,T=J({},O.style,{width:N}),k=this.context&&this.context.generateTreeNodeProps&&this.context.generateTreeNodeProps(this.props);return d(s().createElement("div",Q({},O,{className:H("rst__node",b.root&&"rst__root",E,k&&k.treeNodeClassName,!!u&&u.nodeId!==b.nodeId&&"rst_node_hover_disabled"),style:T}),x,s().createElement("div",{className:"rst__nodeContent",style:C},l.Children.map(t,(e=>(0,l.cloneElement)(e,{isOver:p,canDrop:g,draggedNode:u}))))))}}$.contextType=Z,$.defaultProps={swapFrom:null,swapDepth:null,swapLength:null,canDrop:!1,draggedNode:null,rowDirection:"ltr"},$.propTypes={treeIndex:i().number.isRequired,treeId:i().string.isRequired,swapFrom:i().number,swapDepth:i().number,swapLength:i().number,scaffoldBlockPxWidth:i().number.isRequired,lowerSiblingCounts:i().arrayOf(i().number).isRequired,listIndex:i().number.isRequired,children:i().node.isRequired,connectDropTarget:i().func.isRequired,isOver:i().bool.isRequired,canDrop:i().bool,draggedNode:i().shape({}),getPrevRow:i().func.isRequired,node:i().shape({}).isRequired,path:i().arrayOf(i().oneOfType([i().string,i().number])).isRequired,rowDirection:i().string};const X=$,Y=250,ee=16,te=28,re=50,ne=i().shape({nodeId:i().oneOfType([i().number,i().string]),children:i().arrayOf((()=>ne)),showParents:i().bool,expanded:i().bool,pending:i().bool,cycled:i().bool}),oe=i().shape({nodeId:i().oneOfType([i().number,i().string]),entity:D.EntityType,relation:D.RelationType,relations:i().arrayOf(D.RelationType),total:i().number,parent:i().arrayOf(i().string),directParentUri:i().string,children:i().arrayOf((()=>oe)),loading:i().bool,expanded:i().bool,showParents:i().bool,cycled:i().bool,pending:i().bool}),ae=i().number,ie=i().shape({root:oe,graphTypes:i().string,entitiesMap:i().object,title:i().string,activenessDate:ae,scrollTo:oe,loading:i().bool}),le=e=>{let{measure:t,registerChild:r,NodeRenderer:n,node:o,treeIndex:a}=e;return(0,l.useEffect)(t,[a]),s().createElement(n,{measure:t,registerChild:r,node:o})};le.propTypes={measure:i().func,registerChild:i().func,NodeRenderer:i().func,node:ne,treeIndex:i().number};const se=e=>{const t=(e=>document.querySelector(`[data-node-id="${e}"]`))(e);t?t.scrollIntoView({block:"nearest",inline:"start"}):setTimeout((()=>se(e)),0)},ce=e=>{let{node:t}=e;return t.nodeId},de=e=>{let{node:t}=e;return t.title||null};function pe(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){ue(e,t,r[t])}))}return e}function ue(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const ge=(0,u.pick)(["nodeContentRenderer","treeNodeRenderer","scaffoldBlockPxWidth","rowHeight","slideRegionSize"],n),he=e=>{let{NodeRenderer:t=de,root:r,scrollToNode:n,onChange:o,onRequestChildren:a,canDrag:i=!1,canDrop:c,onScroll:d=u.identity,onNodeMoved:p=u.identity,inlineRoot:g}=e;const h=j(),m=(0,l.useMemo)((()=>{const e=r&&r.children||[];return g?[(0,u.pipe)((0,u.omit)(["children"]),(0,u.assoc)("root",!0))(r),...e]:e}),[r,g]),f=(0,l.useRef)(null),b=(0,l.useRef)(null);b.current=m;const y=((e,t)=>{const r=(0,l.useCallback)((r=>{const n=_.ZP.getVisibleNodeInfoAtIndex({treeData:e.current,index:r,getNodeKey:t});return t({node:(0,u.propOr)({nodeId:-1},"node",n)})}),[t,e]),[n]=(0,l.useState)(new A.t1({fixedWidth:!0,defaultHeight:te,minHeight:te,keyMapper:r})),o=(0,l.useCallback)((()=>{n.clearAll()}),[]);return(0,l.useEffect)((()=>(window.addEventListener("resize",o),()=>{window.removeEventListener("resize",o)})),[o]),n})(b,ce);((e,t)=>{const r=(0,l.useRef)(!1);(0,l.useEffect)((()=>{t&&!r.current&&(r.current=!0,e())}),[e,t])})((()=>{setTimeout((()=>{const e=v();e&&e.forceUpdateGrid()}),0)}),r),(0,l.useEffect)((()=>{if(r&&n){const e=_.ZP.find({treeData:m,getNodeKey:ce,searchFocusOffset:0,searchQuery:"",searchMethod:e=>{let{node:t}=e;return t===n}}),t=(0,u.path)(["matches",0,"treeIndex"],e),r=v();r&&null!=t&&(r.scrollToRow(t),setTimeout((()=>{se(n.nodeId)}),500))}}),[r,m,n]);const v=()=>(0,u.path)(["current","wrappedInstance","current"],f),O=(0,l.useCallback)((e=>{o&&o(pe({},r,{children:g?e.slice(1):e}))}),[o,r,g]),E=(0,l.useCallback)((e=>{let{node:r,treeIndex:n}=e;return s().createElement(A.Z8,{cache:y,columnIndex:0,key:ce({node:r}),rowIndex:n,parent:v()},(e=>{let{NodeRenderer:t,node:r,treeIndex:n}=e;return e=>{let{measure:o,registerChild:a}=e;return s().createElement(le,{NodeRenderer:t,node:r,treeIndex:n,measure:o,registerChild:a})}})({NodeRenderer:t,node:r,treeIndex:n}))}),[t,y]),w=(0,l.useCallback)((e=>({title:E(e)})),[E]),x=(0,M.D)(m),C=(0,l.useCallback)((e=>{const{prevPath:t,nextParentNode:n}=e;let o;if(t.length>1){const e=t.slice(0,-1),r=_.ZP.getNodeAtPath({treeData:x,getNodeKey:ce,path:e});r&&(o=r.node)}else o=r;p(pe({prevParentNode:o},e,{nextParentNode:n||r}))}),[p,r,x]),S=(0,l.useCallback)((e=>{let{node:t}=e;a(t)}),[a]);return r?s().createElement("div",{className:h.container},!g&&s().createElement("div",{className:h.root},s().createElement(t,{node:r})),s().createElement("div",{className:h.tree},s().createElement(L.ZP,{isVirtualized:!0,canDrag:i,canDrop:c,treeData:m,theme:ge,generateNodeProps:w,rowHeight:y.rowHeight,reactVirtualizedListProps:{ref:f,scrollToAlignment:"end",onScroll:d},onMoveNode:C,onChange:O,onLazyLoadChildren:S,getNodeKey:ce}))):null};he.propTypes={NodeRenderer:i().elementType,root:ne,canDrag:i().oneOfType([i().bool,i().func]),canDrop:i().func,scrollToNode:i().object,onChange:i().func,onRequestChildren:i().func,onNodeMoved:i().func,onScroll:i().func,inlineRoot:i().bool,getNodeKey:i().func};const me=he,fe=(0,S.makeStyles)((()=>({container:{fontSize:"13px",display:"flex",paddingTop:"6px",position:"relative"},title:{flexGrow:1,width:0,minHeight:"15px"}}))),be=(0,S.makeStyles)((()=>({loadingSpinner:{alignSelf:"center",maxHeight:"16px",marginRight:"16px"}}))),ye=e=>{let{className:t}=e;return s().createElement("img",{className:t,alt:"loading",src:(0,D.gif2Url)("R0lGODlhFQALAKIAAP///8Hf75vL5Van0wB4v////wAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQJCgAFACwAAAIAFQAHAAADLFi6zPSQFEGpGhgXkrEUQShc1bB1wxcGYzGUZ6eKJGVy8lS1aJxJjaAiAkkAACH5BAkKAAUALAAAAwAUAAUAAAMiWLFbJRC6QakCODjBxIzDlW3dB4UBBmhPWQygwrCR9FZDAgAh+QQJCgAFACwIAAMADAAFAAADFBiqVfIvgBmaWHeC6rCklrdw0JMAACH5BAkKAAUALAAAAgAUAAcAAAMkSLpU/vCRQWmLLmg967hYAIxBV4GRSJoWlo1A6X1usXGMUkcJACH5BAkKAAUALAAAAgAOAAcAAAMdWLpF/qSMORudcYg97M2b0BHXAHIelV0pxizQkwAAOw==")})},ve=e=>{let{className:t,registerChild:r}=e;const n=fe(),o=be();return s().createElement("div",{className:p()(n.container,t),ref:r},s().createElement(ye,{className:o.loadingSpinner}),s().createElement("div",{className:n.title},h().text("Loading...")))};ve.propTypes={className:i().string,registerChild:i().func};const Oe=ve;var Ee=r(41531),we=r.n(Ee),xe=r(95351),Ce=r.n(xe),Se=r(42308),Ne=r.n(Se);const Te=(0,S.makeStyles)((()=>({wrapper:{width:"100%"},avatar:{height:"16px",width:"16px",marginRight:"8px"},avatarWithMultiParent:{cursor:"pointer"},number:{color:"rgba(0,0,0,0.54)",marginLeft:"13px"},multiParentIcon:{position:"absolute",top:"15px",left:"-3px",cursor:"pointer"},actionsBlock:{position:"absolute",right:"0",top:"2px",backgroundColor:"rgb(240,240,240)","&::after":{content:'""',position:"absolute",left:"-40px",top:0,width:"40px",height:"100%",background:"linear-gradient(to right, rgba(240,240,240, 0.2), rgba(240,240,240, 1) 100%)",pointerEvents:"none"}},actionsBlockWithOpenMenu:{backgroundColor:"white","&::after":{background:"linear-gradient(to right, rgba(255,255,255, 0.2), rgba(255,255,255, 1) 100%)"}},actionsBlockForCheckedNode:{backgroundColor:"rgb(224,238,249)","&::after":{background:"linear-gradient(to right, rgba(224,238,249, 0.2), rgba(224,238,249, 1) 100%)"}},regularNodeCheckbox:{padding:0,marginRight:"16px",marginTop:"-4px",marginLeft:"-4px"},subtitle:{fontSize:"11px",letterSpacing:0,lineHeight:"13px",paddingLeft:"24px",paddingTop:"2px",paddingBottom:"4px",wordBreak:"break-word"}})));var ke=r(96330);function Pe(){return Pe=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Pe.apply(this,arguments)}const Re=e=>{let{styles:t={}}=e,r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["styles"]);return s().createElement("svg",Pe({width:"11",height:"11",viewBox:"0 0 12 12",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},r),s().createElement("g",{stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd"},s().createElement("circle",{strokeOpacity:".54",stroke:"#000",fill:"#FFF",cx:"6",cy:"6",r:"5.5"}),s().createElement("path",{d:"M5.536 4.641L4.505 3.61H8v3.495L6.874 5.98 5.509 7.344a1.995 1.995 0 00-.581 1.548l-.407-.408a2 2 0 010-2.828l1.015-1.015z",fillOpacity:".87",fill:"#000"})))};var De=r(48685);const Ie=(0,S.makeStyles)((e=>({link:{cursor:"pointer",color:e.palette.secondary.main,lineHeight:"15px"},selected:{fontWeight:"bold"}}))),Ae=e=>{let{title:t,isSelected:r,link:n,onClick:o}=e;const a=Ie();return s().createElement("span",{className:p()(a.link,{[a.selected]:r})},s().createElement(De.Z,{to:n,onClick:o},t))},je=(0,S.makeStyles)((()=>({avatar:{height:"16px",width:"16px",marginRight:"6px",flexShrink:"0"},multiParent:{position:"relative",background:"#ffffff",border:"1px solid rgba(0,0,0,0.12)",marginLeft:"-5px",marginTop:"10px",padding:"10px 11px 9px 6px","&:after,&:before":{bottom:"100%",left:"12px",border:"solid transparent",content:"' '",height:0,width:0,position:"absolute","pointer-events":"none"},"&:after":{borderColor:"rgba(255, 255, 255, 0)",borderBottomColor:"#ffffff",borderWidth:"6px",marginLeft:"-6px"},"&:before":{borderColor:"rgba(220, 216, 245, 0)",borderBottomColor:"rgba(0,0,0,0.12)",borderWidth:"7px",marginLeft:"-7px"}},parentContainer:{fontSize:"13px",lineHeight:"16px",display:"flex",marginBottom:"12px",alignItems:"center","&:last-child":{marginBottom:0}},loadingNode:{paddingTop:0}})));function _e(){return _e=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},_e.apply(this,arguments)}const Me=e=>{let{styles:t={}}=e,r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["styles"]);return s().createElement("svg",_e({width:"10",height:"10",viewBox:"0 0 10 10",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},r),s().createElement("g",{stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd",fillOpacity:".38"},s().createElement("path",{d:"M4.536 3.641L3.505 2.61H7v3.495L5.874 4.98 4.509 6.344a1.995 1.995 0 00-.581 1.548l-.407-.408a2 2 0 010-2.828l1.015-1.015z",fill:"#000"})))},Le=e=>{let{showParents:t,additionalParents:r}=e;const n=je(),o=(0,R.useDispatch)();return t&&r.length>0?s().createElement("div",{className:n.multiParent},r.map(((e,t)=>s().createElement("div",{key:t,className:n.parentContainer},e.pending?s().createElement(Oe,{className:n.loadingNode}):s().createElement(s().Fragment,null,s().createElement(Me,{className:n.avatar}),s().createElement(Ae,{title:e.title,link:e.entityLink,onClick:()=>o(Se.ui.actions.openEntity({uri:e.entityUri,viewId:e.viewId}))})))))):null},Fe=(0,S.makeStyles)((()=>({details:{margin:"1px 0 8px 24px"},loadingNode:{paddingTop:0},detailLine:{display:"flex"},detail:{flexGrow:1,width:0,wordWrap:"break-word",lineHeight:"16px",paddingLeft:"8px",textIndent:"-8px"},detailLabel:{color:"rgba(0, 0, 0, 0.6)",whiteSpace:"nowrap",lineHeight:"16px",letterSpacing:0,marginRight:"5px"},detailValue:{fontSize:"0.75rem",letterSpacing:0}})));var Be=r(67586);function Ue(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function He(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){ze(e,t,r[t])}))}return e}function ze(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const qe=(e,t)=>{const{sortField:r,sortOrder:n,graphTypes:o}=e,a=(0,D.mapTree)(e.root,{childrenProcessing:(0,D.sortTreeChildren)({sortField:r,sortOrder:n,typesLabelsMap:(0,D.createRelationTypesLabelsMap)(t)}),nodeProcessing:(0,u.pipe)(Ke,Xe,Ye)});return He({},e,{root:a,entitiesMap:tt(a),title:((0,D.getGraphType)(t,o)||{}).label})};let We=0;const Ge=()=>We++,Ve=e=>e?[].concat(e):[],Ze=e=>(0,u.path)(["entity","uri"],e),Qe=e=>e?(0,D.wrapInArrayIfNeeded)(e):[],Je=(e,t)=>{const r=(0,u.prop)("relation",e);if(Array.isArray(r)){const n=Ve(e.parent),o=(0,u.findIndex)((0,u.equals)(t),n);return(0,u.path)([o],r)}return r},Ke=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.formatted?e:He({},e,{nodeId:Ge(),parent:Ve(e.parent),directParentUri:Ze(t),pending:!e.children&&e.total>0,formatted:!0,relations:Qe(e.relation),relation:Je(e,Ze(t))})},$e=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{children:r,parent:n,traversedRelations:o,untraversedRelations:a,cycled:i,formatted:l,relation:s}=e,c=Ue(e,["children","parent","traversedRelations","untraversedRelations","cycled","formatted","relation"]);if(l)return e;const d=o+a-1,p=Ze(t),u={nodeId:Ge(),cycled:i,entity:c,parent:Ve(n),directParentUri:p,total:d,pending:!i&&!r&&d>0,formatted:!0,relations:Qe(s),relation:Je(e,p)};return r&&(u.children=r,u.pending=!i&&d>r.length),u},Xe=e=>{const t=e.children||[];return t.some((t=>(0,u.path)(["entity","uri"],t)===e.entity.uri||t.uri===e.entity.uri))||e.cycled||!e.parent.includes(e.entity.uri)?e:He({},e,{children:t.concat(He({},e,{nodeId:Ge(),directParentUri:e.entity.uri,total:0,children:[],cycled:!0}))})},Ye=(0,u.when)((0,u.both)((0,u.has)("children"),(0,u.complement)((0,u.prop)("pending"))),(0,u.assoc)("expanded",!0)),et=e=>{let{nodeId:t,relation:r,formatted:n,directParentUri:o,pending:a,children:i,total:l}=e;return Ue(e,["nodeId","relation","formatted","directParentUri","pending","children","total"])},tt=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=Ze(e);return r&&(t[r]=et(e)),e.children&&e.children.forEach((e=>tt(e,t))),t},rt=e=>Object.keys(e).reduce(((t,r)=>{const n=$e(e[r]);return t[r]=et(n),t}),{}),nt=(e,t)=>{let{entities:r,relations:n}=e;if(Array.isArray(r)){const e=r.reduce(((e,t)=>(e[t.uri]=t,e)),{});return(n||[]).forEach((r=>{const n=t?"startObject":"endObject",o=e[r[t?"endObject":"startObject"].objectURI],a=e[r[n].objectURI];o.children=o.children||[],o.children.includes(a)||o.children.push(a),a.parent=a.parent||[],a.relation||(a.relation=r),a.parent.includes(o.uri)||a.parent.push(o.uri)})),e}},ot=(0,u.curry)(((e,t)=>(0,u.pipe)(nt,rt)(t,e))),at=()=>({nodeId:Ge(),relation:{uri:(0,D.generateNewRelationUri)(),attributes:{}}}),it=Se.profile.trees.actions,lt=e=>{let{parentUri:t,parentId:r,graphTypes:n,activenessDate:o,id:a,isReversed:i}=e;return(e,l)=>{const{sortField:s,sortOrder:c}=Ne().selectors.getTree(l(),a),d=Ne().selectors.getMetadata(l());return e(it.childrenLoading({id:a,parentId:r,nodeId:Ge()})),(0,D.getHops)({uri:t,graphTypes:n,activenessDate:o}).then((n=>{const{children:o}=(e=>{let{json:t,parentUri:r,sortField:n,sortOrder:o,metadata:a,isReversed:i}=e;const l=nt(t,i),s=l&&(e=>{const t=[{node:e,parent:null}],r=[];for(const e of t){const{node:n,parent:o}=e;r.includes(n)?o.children=o.children.map((e=>e===n?He({},n,{cycled:!0,children:[]}):e)):(r.push(n),n.children&&t.push(...n.children.map((e=>({node:e,parent:n})))))}return e})(l[r]);return(0,D.mapTree)(s,{nodeProcessing:(0,u.pipe)($e,Xe),childrenProcessing:(0,D.sortTreeChildren)({sortField:n,sortOrder:o,typesLabelsMap:(0,D.createRelationTypesLabelsMap)(a)})})})({json:n,parentUri:t,sortField:s,sortOrder:c,metadata:d,isReversed:i}),l=ot(i,n);e(it.childrenLoaded({id:a,children:o,parentId:r})),e(it.entitiesMappingLoaded({id:a,entitiesSubMap:l}))}))}},st=e=>{let{id:t,uri:r}=e;return e=>{e(it.currentEntityShownInTree({id:t,uri:r})),setTimeout((()=>{e(it.resetScrollToNode(t))}),0)}},ct=(0,u.pipe)(D.getAllEntityTypesForGraphType,(0,u.any)((0,u.prop)("secondaryLabelPattern")));function dt(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const pt=Se.profile.trees.actions,ut=(0,u.has)("attributes"),gt=e=>{let{node:t,checkedNodes:r}=e;return(0,u.has)(t.nodeId,r)},ht=(0,u.has)("editingMode"),mt=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return ht(e)||(0,u.has)("children",e)&&e.children.some(mt)},ft=e=>{let{id:t,node:r}=e;return e=>{const{nodeId:n,relation:o}=r,a=Array.isArray(o)?o[0]:o;return ut(a)?Promise.resolve(o):(0,D.getRelation)(a.uri).then((r=>{const o=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){dt(e,t,r[t])}))}return e}({},a,r);return e(pt.treeNodeChanged({id:t,node:{nodeId:n,relation:o}})),Promise.resolve(o)}))}},bt=e=>e.loading||(0,u.has)("children",e)&&e.children.some(bt),yt=function(){let e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=arguments.length>1?arguments[1]:void 0;return t&&e},vt=(0,u.pick)(["startDate","endDate"]),Ot=[{uri:"typeName",type:D.DataTypes.TYPE_STRING,label:h().text("Relationship")},...D.ACTIVENESS_ATTR_TYPES],Et=e=>{let{showDetails:t,metadata:r,relation:n={}}=e;const o=Fe(),a=vt(n);return a.typeName=(0,u.prop)("label",(0,D.getRelationType)(r,n.type)),t&&n?s().createElement("div",{className:o.details},ut(n)?Ot.map((e=>a[e.uri]&&s().createElement("div",{key:e.uri,className:o.detailLine},s().createElement("div",{className:o.detail},s().createElement(f(),{variant:"caption",gutterBottom:!0,className:o.detailLabel},e.label+": "),s().createElement("span",{className:o.detailValue},s().createElement(Be.Z,{value:a[e.uri],dataTypeDefinition:e})))))):s().createElement(Oe,{key:"loading-details",className:o.loadingNode})):null};Et.propTypes={showDetails:i().bool,relation:D.RelationType,metadata:D.MetadataType};const wt=Et;var xt=r(27604),Ct=r(82726),St=r(86680),Nt=r(74443),Tt=r(22983),kt=r(39475),Pt=r(98538);const Rt=(0,S.makeStyles)((()=>({addButton:{marginRight:"11px"},editButton:{marginRight:"13px"}}))),Dt=e=>{let{className:t,show:r,showDetails:n,onToggleRelationDetails:o,onMenuOpen:a,onMenuClose:i,onStartEditing:l,onAddParent:c,onAddChild:d,onDelete:p}=e;const g=Rt(),m=[c&&{text:h().text("Add Parent"),onClick:c},d&&{text:h().text("Add Child"),onClick:d}].filter(u.identity);return r&&(o||l||c||d||p)?s().createElement("div",{className:t},o&&s().createElement(kt.k,{tooltipTitle:n?h().text("Hide details"):h().text("View details"),tooltipPlacement:"bottom-end",size:"S",icon:n?St.Z:Ct.Z,onClick:o}),m.length>0&&s().createElement(Pt.Z,{buttonComponent:kt.k,buttonProps:{icon:Nt.Z,size:"S",tooltipTitle:h().text("Add node"),className:g.addButton},menuId:"tree-node-actions",menuItems:m,onMenuOpen:a,onMenuClose:i}),l&&s().createElement(kt.k,{tooltipTitle:h().text("Edit node"),size:"S",icon:xt.Z,onClick:l,className:g.editButton}),p&&s().createElement(kt.k,{tooltipTitle:h().text("Delete node"),size:"S",icon:Tt.Z,onClick:p})):null};Dt.propTypes={show:i().bool,showDetails:i().bool,className:i().string,onMenuOpen:i().func,onMenuClose:i().func,onStartEditing:i().func,onAddParent:i().func,onAddChild:i().func,onDelete:i().func,onToggleRelationDetails:i().func};const It=Dt,At=(0,u.prop)("graph"),jt=(0,u.pipe)(At,(0,u.path)(["options","reverseRelations"])),_t=(0,u.pipe)(At,(0,u.prop)("type")),Mt=(0,u.pipe)((0,u.prop)("sortOrder"),D.getValidatedSortOrder),Lt=(0,u.pipe)((0,u.prop)("sortBy"),D.getValidatedSortField),Ft=(0,u.pipe)((0,u.prop)("attributes"),(0,u.defaultTo)([]),(0,u.includes)("secondaryLabel"));function Bt(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){Ut(e,t,r[t])}))}return e}function Ut(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const Ht=Se.profile.trees.actions,zt=(e,t,r)=>{const n=(0,D.getEntityType)(t,r)||{},o=(0,D.getPropWithInheritance)(t,n,"typeGraphIcon");return o&&(0,D.getAbsoluteImageUrl)(e,o)},qt=(e,t,r)=>{let{relation:n}=e;return!!n&&(0,D.checkMetadataForUpdate)(r,(0,D.getRelationType)(t,n.type))},Wt=(0,u.curry)(((e,t,r,n)=>{const{entity:o={}}=n,a=jt(t)?"parent"===e:"child"===e,i=o.type,l=_t(t);if(l){const e=(0,D.getGraphType)(r,l),t=(0,D.getRelationshipTypeUrisFromGraphType)(e)||[],n=(0,D.isInHierarchy)(r,u.__,i);return t.map((0,D.getRelationType)(r)).filter(u.identity).map(a?D.getStartObjectTypeUri:D.getEndObjectTypeUri).some(n)}return!0})),Gt=Wt("parent"),Vt=Wt("child"),Zt=(e,t,r)=>{let{relation:n}=e;return!!n&&(0,D.checkMetadataForDelete)(r,(0,D.getRelationType)(t,n.type))},Qt=e=>{let{node:t,metadata:r,absoluteImagePath:n,currentEntityUri:o,mode:a,config:i={},uiPath:l,showSecondaryLabel:s,onParentsRequested:c,dispatch:d}=e;const{entity:p,children:g,total:h,pending:m,showParents:f,nodeId:b}=t,{id:y}=i,v=((e,t)=>Ze(e)===t)(t,o),O=(0,D.isEditableMode)(a),E={onToggleShowParents:e=>{d(Ht.treeNodeChanged({id:y,node:{nodeId:b,showParents:!f}})),e&&c(t)}},w=Bt(O?{onStartEditing:qt(t,r,a)?()=>d((e=>{let{id:t,node:r}=e;return e=>{const{nodeId:n}=r;e(pt.treeNodeChanged({id:t,node:{nodeId:n,loading:!0}})),e(ft({id:t,node:r})).then((()=>{e(pt.treeNodeEditingStarted({id:t,node:r}))}))}})({id:y,node:t})):null,onAddParent:Gt(i,r,t)?()=>d(Ht.treeNodeNewParentEditingStarted({id:y,node:t,newNode:at()})):null,onAddChild:Vt(i,r,t)?()=>d((e=>{let{id:t,node:r,newNode:n,isReversed:o}=e;return(e,a)=>{if(e(pt.treeNodeNewChildEditingStarted({id:t,node:r,newNode:n})),r.pending){const n=a(),{activenessDate:i,graphTypes:l}=Ne().selectors.getTree(n,t);e(lt({parentUri:r.entity.uri,parentId:r.nodeId,graphTypes:l,activenessDate:i,id:t,isReversed:o}))}}})({id:y,isReversed:jt(i),node:t,newNode:at()})):null,onDelete:Zt(t,r,a)?()=>{const e=(0,u.path)(["relation","uri"],t);e&&d(Ht.treeRelationRemoved({relationUri:e})),d(Ht.treeNodeRemoved({id:y,nodeId:b}))}:null}:{onToggleRelationDetails:()=>d((e=>{let{id:t,node:r}=e;return e=>{const{nodeId:n,showDetails:o,relation:a}=r,i={nodeId:n,showDetails:!o};e(pt.treeNodeChanged({id:t,node:i})),!o&&!ut(a)&&a&&e(ft({id:t,node:r}))}})({id:y,node:t}))},E);return Bt({title:(0,D.getLabel)(p.label),subtitle:s?p.secondaryLabel:void 0,number:g&&!m?g.length:h,icon:zt(n,r,p.type),isSelectedNode:v,entityLink:(0,D.getEntityLink)({uiPath:l,uri:p.uri}),entityUri:p.uri,viewId:y,showDetails:t.showDetails&&!O},(0,u.reject)(u.isNil,w))},Jt=e=>{let{node:t,entitiesMap:r,metadata:n,config:o,absoluteImagePath:a,uiPath:i}=e;const{entity:l,directParentUri:s}=t;return(0,u.pathOr)([],[l.uri,"parent"],r).filter((e=>e!==s)).map((e=>{const t=(0,u.prop)(e,r);return t?Qt({node:t,config:o,metadata:n,absoluteImagePath:a,uiPath:i}):{pending:!0}}))},Kt=(0,l.createContext)({config:{},entitiesMap:{},onToggleNodeCheckbox:()=>{},onParentsRequested:()=>{},checkedNodes:{},canSelect:!1});Kt.displayName="NodeContext";const $t=e=>{e.target.src=ke},Xt=e=>{let{node:t={},registerChild:r,measure:n=u.identity}=e;const o=Te(),a=fe(),i=(0,R.useDispatch)(),{config:c,entitiesMap:d,onToggleNodeCheckbox:g,checkedNodes:h,canSelect:m,onParentsRequested:f,showSecondaryLabel:b}=(0,l.useContext)(Kt),y=(0,R.useSelector)(Ne().selectors.getAbsoluteImagePath),v=(0,R.useSelector)(Ne().selectors.getMetadata),{uri:O}=(0,R.useSelector)(Ne().selectors.getEntity),E=(0,R.useSelector)(Ne().selectors.getMode),w=(0,R.useSelector)(Ne().selectors.getUIPath),{title:x,subtitle:C,number:S,icon:N,relation:T,showDetails:k,additionalParents:P=[],showParents:D,isSelectedNode:I,nodeId:A,entityLink:j,viewId:_,entityUri:M,onStartEditing:L,onAddParent:F,onAddChild:B,onToggleRelationDetails:U,onDelete:H,onToggleShowParents:z}=(e=>{let{node:t,entitiesMap:r,metadata:n,absoluteImagePath:o,currentEntityUri:a,mode:i,config:l,uiPath:s,showSecondaryLabel:c,onParentsRequested:d,dispatch:p}=e;return Bt({},t,{relation:Array.isArray(t.relation)?t.relation[0]:t.relation},Qt({node:t,metadata:n,absoluteImagePath:o,currentEntityUri:a,mode:i,config:l,uiPath:s,showSecondaryLabel:c,onParentsRequested:d,dispatch:p}),{additionalParents:Jt({node:t,config:l,entitiesMap:r,metadata:n,absoluteImagePath:o,uiPath:s})})})({node:t,entitiesMap:d,metadata:v,absoluteImagePath:y,currentEntityUri:O,mode:E,config:c,uiPath:w,showSecondaryLabel:b,onParentsRequested:f,dispatch:i}),q=P.some((e=>e.pending)),[W,G]=(0,l.useState)(!1),V=(0,l.useCallback)((()=>G(!0)),[]),Z=(0,l.useCallback)((()=>G(!1)),[]),[Q,J]=(0,l.useState)(!1),K=(0,l.useCallback)((()=>J(!0)),[]),$=(0,l.useCallback)((()=>{J(!1),G(!1)}),[]),X=P.length>0,Y=X&&z?z.bind(null,q):void 0,ee=((0,l.useCallback)((e=>g({checked:e.target.checked,node:t})),[t,g]),gt({node:t,checkedNodes:h})),te=(0,l.useCallback)((()=>{i(Se.ui.actions.openEntity({uri:M,viewId:_}))}),[_,M,i]);return(0,l.useEffect)(n,[!1,X,C,!!U,k,S,D,k&&ut(T),D&&q,n]),s().createElement("div",{className:o.wrapper,"data-node-id":A,onMouseEnter:V,onMouseLeave:Z,ref:r},s().createElement("div",{className:a.container},s().createElement(we(),{className:p()(o.avatar,{[o.avatarWithMultiParent]:X}),src:N||ke,onError:$t,onClick:Y}),X&&s().createElement(Re,{className:o.multiParentIcon,onClick:Y}),s().createElement("div",{className:a.title},s().createElement(Ae,{title:x,isSelected:I,link:j,onClick:te}),!!S&&s().createElement("span",{className:o.number},S),s().createElement(It,{show:W||Q,className:p()(o.actionsBlock,{[o.actionsBlockWithOpenMenu]:Q&&!ee,[o.actionsBlockForCheckedNode]:Q&&ee}),showDetails:k,onToggleRelationDetails:T&&U,onMenuOpen:K,onMenuClose:$,onStartEditing:L,onAddChild:B,onAddParent:F,onDelete:H}))),s().createElement(Le,{showParents:D,additionalParents:P}),C&&s().createElement("div",{className:o.subtitle},C),U&&s().createElement(wt,{showDetails:k,metadata:v,relation:T}))};Xt.propTypes={node:oe,registerChild:i().func,measure:i().func};const Yt=(0,l.memo)(Xt);var er=r(47450),tr=r.n(er);const rr=(0,S.makeStyles)((()=>({editorContainer:{width:"calc(100% - 34px)",minWidth:"185px",backgroundColor:"rgba(0,0,0,0.03)",padding:"16px 16px 8px 16px"},dense:{marginBottom:0},item:{marginBottom:"20px"},actionButtons:{display:"flex",justifyContent:"flex-end"}})));var nr=r(55962),or=r(53591),ar=r(61981),ir=r(76141),lr=r(65629);function sr(){return sr=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},sr.apply(this,arguments)}function cr(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){dr(e,t,r[t])}))}return e}function dr(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const pr=e=>e.value,ur=(e,t)=>t.find((0,u.propEq)("value",e)),gr=e=>{let{value:t,relationTypes:r=[],isChild:n,onChange:o=u.identity,metadata:a}=e,i=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["value","relationTypes","isChild","onChange","metadata"]);const c=(0,l.useMemo)((()=>((e,t,r)=>{const n={},o=(0,u.pipe)(D.getDirectionalLabelFromObject,(0,u.tap)((e=>n[e]=(0,u.propOr)(0,e,n)+1))),a=(0,u.ascend)((0,u.prop)("label")),i=(e,t)=>{const r=(0,D.getEntityType)(e,t);return cr({},r,{typeIcon:(0,D.getPropWithInheritance)(e,r,"typeIcon")})};return e.map((e=>{let{uri:n,label:a,startObject:l,endObject:s}=e;return{label:{directionalLabel:o(t?s:l),typeLabel:a},value:n,startObject:cr({},l,{objectType:i(r,l.objectTypeURI)}),endObject:cr({},s,{objectType:i(r,s.objectTypeURI)})}})).map((0,u.evolve)({label:e=>{let{directionalLabel:t,typeLabel:r}=e;return t?n[t]>1?`${t} (${r})`:t:r}})).sort(a)})(r,n,a)),[r,n,a]);return s().createElement(lr.Z,sr({value:ur(t,c),options:c,onChange:(0,u.pipe)(pr,o)},i))};gr.propTypes={className:i().string,value:i().string,relationTypes:i().arrayOf(D.RelationTypeType),isChild:i().bool,metadata:D.MetadataType,onChange:i().func};const hr=gr,mr=(0,u.curry)(((e,t,r,n)=>{const o=(0,D.isInHierarchy)(r,u.__,t.type),a=e?D.getStartObjectTypeUri:D.getEndObjectTypeUri;return(0,u.pipe)(a,o)(n)}));function fr(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){br(e,t,r[t])}))}return e}function br(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const yr=Se.profile.trees.actions,vr=e=>{let{node:t={},measure:r,registerChild:n}=e;const o=rr(),a=(0,R.useDispatch)(),{relatedEntity:i,relation:{uri:d}={},editingMode:g,initialConnection:m}=t,f=g===D.NODE_EDITING_MODES.addingParent,{config:b}=(0,l.useContext)(Kt),y=b.id,v=jt(b)||!1,O=v?f:!f,E=(0,R.useSelector)((e=>Ne().selectors.getTreeEditingConnection(e,y,d))),w=(0,R.useSelector)((e=>(0,D.getHierarchyNodeEditorActiveError)(E,Ne().selectors.getProfileErrors(e)))),x=(0,R.useSelector)(Ne().selectors.getProfileErrors),{relation:C,entity:S}=E,{attributes:N,type:T,crosswalks:k=[]}=C,P=(0,l.useMemo)((()=>fr({attributes:N},(0,D.getActivenessAttributes)(C))),[N,C]),I=(0,R.useSelector)((e=>Ne().selectors.getGlobalSearchRequestOptions(e,["ovOnly"]))),A=(0,R.useSelector)(Ne().selectors.getMetadata),j=(0,R.useSelector)(Ne().selectors.getMode),_=_t(b),M=(0,D.getGraphType)(A,_)||{},L=(0,l.useMemo)((()=>((e,t,r,n)=>(0,u.pipe)(D.getRelationshipTypeUrisFromGraphType,(0,u.defaultTo)([]),(0,u.map)((0,D.getRelationType)(r)),(0,u.reject)(u.isNil),(0,u.filter)(mr(e,t,r)))(n))(O,i,A,M)),[O,i,A,M]),F=(0,l.useMemo)((()=>S&&S.uri?L.filter((0,D.isAvailableRelationBetweenEntities)(O,S,i,A)):L),[S,L,O,i,A]),B=(0,l.useMemo)((()=>(0,D.getSuitableEntityTypeUrisForRelationTypes)(O,A,T?[(0,D.getRelationType)(A,T)]:L)),[O,A,T,L]),U=(0,l.useCallback)((e=>{a(yr.treeNodeRelationTypeChanged({id:y,node:t,relationTypeUri:e}))}),[t,y,a]),H=(0,l.useCallback)((e=>{a(yr.treeNodeEntityChanged({id:y,node:t,entity:e}))}),[t,y,a]);(0,l.useEffect)((()=>{T||1!==L.length||U(L[0].uri)}),[T,L,U]),(0,nr.D)((()=>{!T&&F.length>=1&&U(F[0].uri)}),[T,S,F,U]),(0,l.useEffect)(r,[y,E,x,T,L,!!U,S,F,r]);const z=(0,l.useMemo)((()=>(0,D.getRelationAttributesList)(A,T)),[T,A]),q=(0,l.useMemo)((()=>S&&{entityUri:S.uri,entityType:S.type,entityLabel:(0,D.getLabel)(S.label)}),[S]),W=(0,l.useCallback)((e=>(0,u.pipe)(Se.profile.actions.addAttributes,a)(e.map((e=>fr({},e,{viewId:y}))))),[y,a]),G=(0,l.useCallback)((e=>(0,u.pipe)(Se.profile.actions.modifyAttribute,a)(fr({},e,{viewId:y}))),[y,a]),V=(0,l.useCallback)((e=>(0,u.pipe)(Se.profile.actions.removeAttribute,a)(fr({},e,{viewId:y}))),[y,a]),Z=(0,l.useCallback)((()=>{const e=(0,D.validateHierarchyConnection)(A,E);return a(Se.profile.errors.actions.errorsSet(e)),0===e.length}),[E,A,a]),Q=(0,l.useCallback)((()=>{a((e=>{let{id:t,node:r}=e;return e=>{e((0,u.cond)([[(0,u.equals)(D.NODE_EDITING_MODES.addingParent),(0,u.always)(pt.treeNodeNewParentEditingCanceled)],[(0,u.equals)(D.NODE_EDITING_MODES.addingChild),(0,u.always)(pt.treeNodeNewChildEditingCanceled)],[(0,u.equals)(D.NODE_EDITING_MODES.editing),(0,u.always)(pt.treeNodeEditingCanceled)]])(r.editingMode)({id:t,node:r}))}})({id:y,node:t}))}),[t,y,a]),J=(0,l.useCallback)((()=>{Z()&&a((e=>{let{id:t,node:r,isReversed:n}=e;return(e,o)=>{const a=Ne().selectors.getTreeEditingConnection(o(),t,r.relation.uri);let i;switch(r.editingMode){case D.NODE_EDITING_MODES.addingParent:case D.NODE_EDITING_MODES.addingChild:i=pt.treeRelationCreated;break;case D.NODE_EDITING_MODES.editing:i=pt.treeRelationChanged}e(i((0,D.getPayloadForNodeApplyEditing)({node:r,connection:a,isReversed:n}))),e((0,u.cond)([[(0,u.equals)(D.NODE_EDITING_MODES.addingParent),(0,u.always)(pt.treeNodeNewParentEditingApplied)],[(0,u.equals)(D.NODE_EDITING_MODES.addingChild),(0,u.always)(pt.treeNodeNewChildEditingApplied)],[(0,u.equals)(D.NODE_EDITING_MODES.editing),(0,u.always)(pt.treeNodeEditingApplied)]])(r.editingMode)({id:t,node:r}))}})({id:y,isReversed:v,node:t}))}),[t,y,v,a,Z]),K=!(0,u.equals)(m,E)&&T,$=(0,D.getErrorMessage)(w);return s().createElement("div",{className:o.editorContainer,ref:n},s().createElement(c.Z,{handleHeight:!0,onResize:r}),1!==L.length&&s().createElement(hr,{isChild:O,relationTypes:F,className:o.item,value:T,metadata:A,onChange:U}),s().createElement(or.Z,{errorMessage:$,className:o.item},s().createElement(ar.Z,{key:T,className:p()({[o.dense]:$}),entity:q||{},entityTypesUris:B,max:b.max||20,globalSearchRequestOptions:I,mode:j,onChange:H,metadata:A,attributeTypesSelectionStrategy:D.relationEditorAttributeTypesSelectionStrategy})),T&&s().createElement(ir.Z,{className:o.item,attrTypes:z,entity:P,showEmptyEditors:!1,crosswalks:k,mode:j,parentUri:d,onAddAttributes:W,onChangeAttribute:G,onDeleteAttribute:V}),s().createElement("div",{className:o.actionButtons},s().createElement(tr(),{onClick:Q},h().text("Cancel")),s().createElement(tr(),{color:"primary",disabled:!K,onClick:J},h().text("Apply"))))};vr.propTypes={node:oe,registerChild:i().func,measure:i().func};const Or=(0,l.memo)(vr),Er="loading",wr="regular",xr="editor",Cr=(0,u.cond)([[ht,(0,u.always)(xr)],[e=>e.loading,(0,u.always)(Er)],[u.T,(0,u.always)(wr)]]),Sr=e=>class{static build(e){const{node:t}=e;switch(Cr(t)){case Er:return s().createElement(Oe,e);case wr:return s().createElement(Yt,e);case xr:return s().createElement(Or,e)}}}.build(e);Sr.propTypes={node:oe,onToggleShowParents:i().func};const Nr=Sr,Tr=e=>{let{className:t,config:r,tree:n={},onChildrenRequested:o,onParentsRequested:a,onTreeChanged:i,onTreeScroll:c,onNodeMoved:d,onToggleNodeCheckbox:u,checkedNodes:g,mode:h}=e;const m=I(),f=(0,D.isEditableMode)(h),b=(0,R.useSelector)(Ne().selectors.getMetadata),y=(0,l.useMemo)((()=>({config:r,entitiesMap:n.entitiesMap,onToggleNodeCheckbox:u,checkedNodes:g,canSelect:f,onParentsRequested:a,showSecondaryLabel:yt(n.showSecondaryLabel,Ft(r))})),[g,r,f,u,n.entitiesMap,n.showSecondaryLabel,a]),v=(0,l.useMemo)((()=>({generateTreeNodeProps:e=>{let{node:t}=e;return{treeNodeClassName:p()({[m.checkedNode]:gt({node:t,checkedNodes:g}),[m.editorNode]:ht(t)})}}})),[g,m]),O=(0,l.useCallback)((e=>{let{node:t}=e;return f&&!ht(t)&&!bt(t)&&Zt(t,b,h)}),[f,b,h]),E=(0,l.useCallback)((e=>{let{nextParent:t,node:o}=e;const a=!jt(r),i=null===t?n.root:t;return i&&!i.loading&&Vt(r,b,i)&&(0,D.isAvailableRelationBetweenEntities)(a,o.entity,i.entity,b,(0,D.getRelationType)(b,o.relation.type))}),[r,b,n.root]);return s().createElement("div",{className:p()(m.panel,t)},s().createElement("div",{className:m.treeWrapper},s().createElement(Z.Provider,{value:v},s().createElement(Kt.Provider,{value:y},s().createElement(me,{NodeRenderer:Nr,onChange:i,canDrag:O,canDrop:E,root:n.root,scrollToNode:n.scrollTo,onScroll:c,onRequestChildren:o,onNodeMoved:d,inlineRoot:!!n.root&&ht(n.root)})))))};Tr.propTypes={className:i().string,tree:ie,onChildrenRequested:i().func,onParentsRequested:i().func,onTreeChanged:i().func,onTreeScroll:i().func,onNodeMoved:i().func,onToggleNodeCheckbox:i().func,checkedNodes:i().object,mode:i().string,config:i().object};const kr=(0,l.memo)(Tr);var Pr=r(1730),Rr=r(92944);const Dr=(0,S.makeStyles)((e=>({view:{width:"100%"},linearIndicator:{top:"42px"},filtersBar:{paddingLeft:"24px",display:"flex",alignItems:"center",marginTop:"2px",marginBottom:"12px",height:"46px"},errorMessage:{fontSize:"13px",marginLeft:"24px",marginRight:"16px",lineHeight:"1.4",color:e.palette.text.secondary},activenessDate:{flex:1,margin:0},filterSortButton:{flexShrink:0,margin:"0 6px 0 12px"},breadcrumbs:{padding:"8px 24px",backgroundColor:"rgba(0,0,0,0.03)"},graphTypeSelector:{margin:"0 10px 15px 24px",overflow:"hidden"},"@global div[role=tooltip]":{fontFamily:"Roboto, Helvetica, Arial, sans-serif"},"@global div[role=presentation]":{fontFamily:"Roboto, Helvetica, Arial, sans-serif"}})));var Ir=r(29627);function Ar(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const jr=Se.profile.trees.actions,_r=(0,S.makeStyles)({onlyValue:{color:"rgba(0,0,0,.6)",fontSize:"13px",fontWeight:"normal",whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden"},select:{fontSize:"13px",color:"rgba(0,0,0,.6)",paddingLeft:"15px","&&":{paddingRight:"35px"}},selectMenu:{"& li":{fontSize:"13px",height:"32px"}},textField:{maxWidth:"100%"}});var Mr=r(1128);const Lr=e=>{let{value:t,onChange:r,options:n,classes:o={},emptyLabel:a}=e;const i=_r(),[c,...d]=n,p=0===d.length;(0,l.useEffect)((()=>{p&&t!==c.value&&r(c.value)}),[c.value]);const u=!!a;return s().createElement("div",{className:o.root},p?s().createElement(f(),{className:o.onlyValue||i.onlyValue,variant:"h6"},c.label):s().createElement(Mr.Z,{displayEmpty:u,disableUnderline:!0,classes:{select:o.select||i.select},TextFieldProps:{classes:{root:o.textField||i.textField}},MenuProps:{classes:{list:o.selectMenu||i.selectMenu}},value:t||"",entries:u?[{value:"",label:a},...n]:n,onChange:e=>r(e||null)}))};Lr.propTypes={value:i().string,onChange:i().func,options:i().arrayOf(i().shape({value:i().string,label:i().string})),classes:i().shape({root:i().string,onlyValue:i().string,select:i().string,selectMenu:i().string,textField:i().string}),emptyLabel:i().string};const Fr=Lr,Br=e=>{let{value:t,onChange:r,graphTypes:n,className:o}=e;return s().createElement(Fr,{classes:{root:o},value:t,onChange:r,options:n.map((e=>{let{uri:t,label:r}=e;return{value:t,label:r}}))})};Br.propTypes={value:i().string,onChange:i().func,graphTypes:i().arrayOf(D.GraphTypeType),className:i().string};const Ur=Br;var Hr=r(39600);function zr(){return zr=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},zr.apply(this,arguments)}const qr=e=>{let{value:t,onChange:r}=e,n=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["value","onChange"]);const o=(0,u.pipe)((e=>e&&e.getTime()),r);return s().createElement(Hr.Z,zr({value:t,label:h().text("Effective date"),onChange:o,margin:"dense"},n))};qr.propTypes={value:ae,onChange:i().func};const Wr=qr;var Gr=r(26446),Vr=r.n(Gr),Zr=r(36444),Qr=r(70595),Jr=r(90324),Kr=r(46907),$r=r.n(Kr),Xr=r(46973),Yr=r.n(Xr);const en="23px",tn=(0,S.makeStyles)((()=>({triggerButton:{minWidth:0,color:"rgba(0,0,0,0.54)",width:"36px"},popupContent:{paddingTop:"19px",paddingBottom:"23px",paddingLeft:en,paddingRight:en,minWidth:"245px",maxWidth:"308px",width:"40%"},title:{marginBottom:"30px"},sortControls:{display:"flex",alignItems:"center"},sortSelectorRoot:{flex:1,padding:"13px 16px",fontSize:"0.85rem"},sortSelectorMenuItem:{fontSize:"0.85rem"},sortOrderButton:{flexShrink:0,margin:"0 8px 0 7px"},checkboxControlRoot:{marginTop:"6px",marginLeft:"-12px"},checkboxControlLabel:{fontSize:"0.85rem"},checkboxControlCheckbox:{marginRight:"5px"},divider:{backgroundColor:"rgba(0,0,0,0.1)",margin:"19px -23px"}}))),rn=(0,v.Z)($r()),nn=[{label:h().text("Relationship type label"),value:D.TREE_SORT_FIELD_VALUES.relationTypeLabel},{label:h().text("Entity label"),value:D.TREE_SORT_FIELD_VALUES.entityLabel}],on=e=>{let{className:t,sortField:r,sortOrder:n,onSort:o,showSecondaryLabel:a,showSecondaryLabelDisabledReason:i,onShowSecondaryLabelChange:c}=e;const d=tn(),u=(0,l.useRef)(),[g,m]=(0,l.useState)(!1),b=n===D.TREE_SORT_ORDER_VALUES.asc,y=()=>m((e=>!e));return s().createElement(s().Fragment,null,s().createElement(tr(),{ref:u,classes:{root:p()(d.triggerButton,t)},onClick:y},s().createElement(Zr.Z,null)),s().createElement(Vr(),{open:g,classes:{paper:d.popupContent},anchorEl:u.current,onClose:y,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"}},c&&s().createElement(s().Fragment,null,s().createElement(f(),{className:d.viewOptionsTitle,variant:"h6"},h().text("View options")),s().createElement(rn,{tooltipTitle:i,showForDisabled:!!i,classes:{root:d.checkboxControlRoot,label:d.checkboxControlLabel},control:s().createElement(Ce(),{className:d.checkboxControlCheckbox,checked:a||!1,onChange:e=>c(e.target.checked)}),label:h().text("Display secondary label"),disabled:!!i}),s().createElement(Yr(),{className:d.divider})),s().createElement(f(),{className:d.title,variant:"h6"},h().text("Sort by")),s().createElement("div",{className:d.sortControls},s().createElement(Mr.Z,{entries:nn,TextFieldProps:{variant:"filled"},classes:{root:d.sortSelectorRoot,menuItem:d.sortSelectorMenuItem},fullWidth:!0,disableUnderline:!0,value:r,onChange:e=>{o({sortField:e,sortOrder:n})},MenuProps:{getContentAnchorEl:null,anchorOrigin:{vertical:"bottom",horizontal:"left"}}}),s().createElement(kt.k,{tooltipTitle:b?h().text("Ascending"):h().text("Descending"),icon:b?Jr.Z:Qr.Z,onClick:()=>{o({sortField:r,sortOrder:b?D.TREE_SORT_ORDER_VALUES.desc:D.TREE_SORT_ORDER_VALUES.asc})},className:d.sortOrderButton,size:"L"}))))};on.propTypes={className:i().string,sortField:i().string,sortOrder:i().string,onSort:i().func,showSecondaryLabel:i().bool,showSecondaryLabelDisabledReason:i().string,onShowSecondaryLabelChange:i().func};const an=on;var ln=r(25182),sn=r.n(ln),cn=r(63764),dn=r.n(cn);const pn=(0,S.makeStyles)((()=>({text:{fontSize:"12px",lineHeight:"14px",letterSpacing:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},textContainer:{maxWidth:"calc(100% - 13px)"},separator:{marginLeft:"4px",marginRight:"4px"}})));function un(){return un=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},un.apply(this,arguments)}const gn=e=>{let{items:t=[]}=e,r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["items"]);const n=pn();return s().createElement(sn(),un({"aria-label":h().text("Breadcrumb"),expandText:h().text("Show path"),classes:{li:n.textContainer,separator:p()(n.text,n.separator)}},r),t.map(((e,t,r)=>{const{label:o,href:a,onClick:i}=e,l=t===r.length-1?"textPrimary":"textSecondary";return i||a?s().createElement(dn(),{key:t,color:l,classes:{root:n.text},href:a,onClick:i},o):s().createElement(f(),{key:t,href:a,color:l,classes:{root:n.text}},o)})))},hn=i().shape({label:i().string.isRequired,href:i().string,onClick:i().func});gn.propTypes={items:i().arrayOf(hn)};const mn=gn,fn=Se.profile.trees.actions,bn=["showSecondaryLabel"],yn=(0,u.pipe)((0,u.filter)((0,u.anyPass)([(0,u.has)("root"),...bn.map((e=>(0,u.has)(e)))])),(0,u.map)((0,u.pick)(bn)),(0,u.reject)(u.isEmpty)),vn=Se.profile.trees.actions;function On(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const En=Se.profile.trees.actions,wn=e=>{let{config:t,tree:r,metadata:n,entity:o={},mode:a,className:i}=e;const{id:c,caption:d,graph:g,showPath:m}=t,{uri:b,type:y}=o,v=(0,l.useRef)(Date.now()),{activenessDate:O=v.current,sortField:E,sortOrder:w,loading:x,errorMessage:C,showSecondaryLabel:S}=r||{},N=jt(t),T=Ft(t),k=yt(S,T),[I,A]=(0,l.useState)(g.type),j=(0,l.useMemo)((()=>((0,D.getGraphTypesForEntityType)(n,y),[])),[n,y]),_=ct(n,I),L=(0,R.useDispatch)(),F=(0,l.useCallback)((e=>{let{sortField:t,sortOrder:r}=e;L(En.treeSorted({id:c,typesLabelsMap:(0,D.createRelationTypesLabelsMap)(n),sortField:t,sortOrder:r})),L((e=>(t,r)=>{const n=Ne().selectors.getTree(r(),e),o=(0,u.path)(["root","children",0,"entity","uri"],n);o&&t(st({id:e,uri:o}))})(c))}),[c,n,L]),B=(0,l.useCallback)((0,D.debounce)((()=>L((e=>(t,r)=>{const n=r(),o=Ne().selectors.getTrees(n),a=yn(o);t(fn.treesStateSaved({id:e,state:a}))})(c))),500),[c,L]),U=(0,l.useCallback)((e=>{L(En.treeSecondaryLabelShown({id:c,show:e})),B()}),[c,L,B]);(0,l.useEffect)((()=>{E&&w||F({sortField:Lt(t),sortOrder:Mt(t)})}),[F,E,w,t]),(e=>{let{entityUri:t,id:r,graphTypes:n,activenessDate:o,isReversed:a,enabled:i}=e;const s=(0,Ir._)({cancelOnUnmount:!1}),c=(0,R.useDispatch)(),d=(0,R.useSelector)(Ne().selectors.getMetadata),p=(0,R.useSelector)((e=>Ne().selectors.getTree(e,r)))||{},{root:g,isReversed:m,graphTypes:f}=p,b=(0,M.D)(o)||o,y=(0,l.useCallback)((()=>setTimeout((()=>c(st({id:r,uri:t}))),100)),[r,t,c]),v=!!g,O=(0,R.useSelector)(Ne().selectors.getEntity);(0,nr.D)((()=>{const e=(0,D.updateTreesWithNewEntity)((0,u.pick)(["uri","label","secondaryLabel","type"],O),{[r]:p});e.length&&c(jr.treeChanged({id:r,tree:e[0].root}))}),[null==O?void 0:O.updatedTime]),(0,l.useEffect)((()=>{i&&v&&y()}),[i,y,v]),(0,l.useEffect)((()=>{if(i){const e=e=>jr.treeLoaded({id:r,tree:e,graphTypes:n,activenessDate:o,isReversed:a}),i=(0,u.pipe)(qe,e,c);(!(0,D.hasEntityInTree)(g,t)||m!==a||b!==o||f!==n||mt(g))&&(c(jr.treeLoading(r)),s((0,D.getTree)({uri:t,graphTypes:n,activenessDate:o,isReversed:a})).then((e=>i(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){Ar(e,t,r[t])}))}return e}({},e,{graphTypes:n}),d))).then((e=>y())).catch((e=>{c(jr.treeLoadedWithError({id:r,errorMessage:(0,D.getRequestErrorMessage)(e,h().text("Something went wrong"))})),console.warn(e)})))}}),[t,g,n,o,r,d,a,i,s,c,y,m,f,b])})({id:c,entityUri:b,graphTypes:I,activenessDate:O,isReversed:N,enabled:b&&(0,D.isViewMode)(a)&&!(0,D.isTempUri)(b)}),(e=>{let{id:t,entityUri:r,graphTypes:n,activenessDate:o,isReversed:a}=e;const i=(0,R.useDispatch)(),s=(0,R.useSelector)(Ne().selectors.getMetadata),c=(0,R.useSelector)((e=>Ne().selectors.getModifiedEntity(e,r))),{root:d}=(0,R.useSelector)((e=>Ne().selectors.getTree(e,t)))||{};(0,l.useEffect)((()=>{var e;if(c&&(0,D.isTempUri)(r)&&(null==d||null===(e=d.entity)||void 0===e?void 0:e.uri)!==r){const e=e=>vn.treeLoaded({id:t,tree:e,graphTypes:n,activenessDate:o,isReversed:a});(0,u.pipe)(qe,e,i)({root:{entity:c,total:0},graphTypes:n},s)}}),[o,i,r,n,t,a,s,c,d])})({id:c,entityUri:b,graphTypes:I,activenessDate:O,isReversed:N});const H=(0,l.useCallback)((e=>L(lt({parentUri:e.entity.uri,parentId:e.nodeId,graphTypes:I,activenessDate:O,id:c,isReversed:N}))),[I,O,c,L,N]),z=(0,l.useCallback)((e=>L((e=>{let{uri:t,graphTypes:r,activenessDate:n,id:o,isReversed:a}=e;return e=>{const i=(0,u.pipe)(ot(a),(e=>it.entitiesMappingLoaded({id:o,entitiesSubMap:e})),e);return(0,D.getHops)({uri:t,graphTypes:r,activenessDate:n}).then(i)}})({uri:e.entity.uri,graphTypes:I,activenessDate:O,id:c,isReversed:N}))),[I,O,c,N,L]),q=(0,l.useCallback)((e=>{L(En.treeChanged({id:c,tree:e}))}),[L,c]),W=(0,l.useCallback)((e=>{L(En.activenessDateChanged({id:c,activenessDate:e}))}),[L,c]),G=(0,l.useCallback)((e=>{L(st({id:c,uri:b}))}),[L,c,b]),V=(0,l.useCallback)((e=>{const{node:t,nextParentNode:r}=e,{entity:n}=r||{},{relation:o,entity:a}=t;o?L(En.treeRelationRepointed({entity:a,relation:o,newParent:n,isReversed:N})):console.error("relation not found:"+JSON.stringify(e))}),[L,N]),[Z,Q]=(0,l.useState)({}),J=(0,l.useCallback)((e=>{let{checked:t,node:r}=e;Q(t?e=>function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){On(e,t,r[t])}))}return e}({},e,{[r.nodeId]:r}):(0,u.omit)([r.nodeId]))}),[]),K=(0,l.useCallback)((()=>{L(Se.ui.actions.openGraph({viewId:c,graphType:I}))}),[L,c,I]),$=(0,l.useCallback)((()=>Q({})),[]);(0,l.useEffect)($,[a]);const X=Dr(),Y=(0,l.useMemo)((()=>(0,D.getPathByEntityUri)((r||{}).root,b).map((e=>({label:(0,D.getLabel)((0,u.path)(["entity","label"],e))})))),[r,b]);return s().createElement(Pr.Z,{className:p()(X.view,i)},s().createElement(P,{title:d,onScrollToCurrentEntity:G,entityLabel:(0,D.getLabel)(o.label),onGraphOpen:K,disabled:x}),x&&s().createElement(Rr.Z,{className:X.linearIndicator}),j.length>0&&s().createElement(Ur,{className:X.graphTypeSelector,value:I,onChange:A,graphTypes:j}),s().createElement("div",{className:X.filtersBar},s().createElement(Wr,{className:X.activenessDate,value:O,onChange:W,fullWidth:!0}),s().createElement(an,{sortField:E,sortOrder:w,className:X.filterSortButton,onSort:F,showSecondaryLabel:k,onShowSecondaryLabelChange:T?U:void 0,showSecondaryLabelDisabledReason:_?"":h().text("Entity types in this hierarchy don't have any secondary label pattern defined.")})),m&&Y.length>0&&s().createElement(mn,{items:Y,className:X.breadcrumbs}),C?s().createElement(f(),{className:X.errorMessage},C):s().createElement(kr,{config:t,tree:r,onTreeChanged:q,mode:a,onNodeMoved:V,onParentsRequested:z,onChildrenRequested:H,onToggleNodeCheckbox:J,checkedNodes:Z}))};wn.propTypes={classes:i().object,className:i().string,config:i().object,tree:ie,total:i().number,entity:i().object,metadata:D.MetadataType,mode:i().string};const xn=wn,Cn=(0,R.connect)(((e,t)=>({tree:Ne().selectors.getTree(e,t.config.id),total:Ne().selectors.getTreeTotal(e,t.config.id),entity:Ne().selectors.getEntity(e),metadata:Ne().selectors.getMetadata(e),mode:Ne().selectors.getMode(e)})),void 0)(xn);var Sn=r(21406),Nn=r(12212),Tn=r(97333);const kn=(0,S.createGenerateClassName)({productionPrefix:"hierarchyTree",disableGlobal:!0}),Pn=e=>{let{config:t,store:r,onResize:n=u.identity,className:a}=e;return s().createElement(R.Provider,{store:r},s().createElement(Nn.m.Provider,{value:t.id},s().createElement(S.StylesProvider,{generateClassName:kn},s().createElement(Sn.is,{utils:o.Z},s().createElement(c.Z,{handleHeight:!0,onResize:(e,t)=>n(Math.floor(e),Math.floor(t))}),t&&s().createElement(Cn,{config:t,className:a}),s().createElement(Tn.Z,null)))))};Pn.propTypes={config:D.HierarchyTreeViewConfigType,store:i().object,onResize:i().func,className:i().string};const Rn=Pn},96330:(e,t,r)=>{e.exports=r.p+"5271a9e7b6651c852e93.png"}}]);
1
+ "use strict";(self.webpackChunk_reltio_profile=self.webpackChunk_reltio_profile||[]).push([[666],{74443:(e,t,r)=>{var n=r(71600);t.Z=void 0;var o=n(r(8156)),a=(0,n(r(50175)).default)(o.default.createElement("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11h-4v4h-2v-4H7v-2h4V7h2v4h4v2z"}),"AddCircle");t.Z=a},86666:(e,t,r)=>{r.r(t),r.d(t,{HierarchyTreeView:()=>Rn});var n={};r.r(n),r.d(n,{MIN_NODE_CONTENT_WIDTH:()=>Y,nodeContentRenderer:()=>V,rowHeight:()=>te,scaffoldBlockPxWidth:()=>ee,slideRegionSize:()=>re,treeNodeRenderer:()=>X});var o=r(8598),a=r(95099),i=r.n(a),l=r(8156),s=r.n(l),c=r(88267),d=r(78310),p=r.n(d),u=r(73288),g=r(65751),h=r.n(g),m=r(76593),f=r.n(m),b=r(70683),y=r.n(b),v=r(78223),O=r(52722);function E(){return E=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},E.apply(this,arguments)}const w=e=>{let{styles:t={}}=e,r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["styles"]);return s().createElement("svg",E({width:"24",height:"24",viewBox:"0 0 24 24",version:"1.1",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink"},r),s().createElement("defs",null,s().createElement("path",{d:"M12 7c2.762 0 5 2.238 5 5s-2.238 5-5 5-5-2.238-5-5 2.238-5 5-5zm0 2a3 3 0 100 6 3 3 0 100-6zm8.94 2A8.994 8.994 0 0013 3.06V1h-2v2.06A8.994 8.994 0 003.06 11H1v2h2.06A8.994 8.994 0 0011 20.94V23h2v-2.06A8.994 8.994 0 0020.94 13H23v-2h-2.06zM12 19c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z",id:"svg2250934887a"})),s().createElement("g",{stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd"},s().createElement("mask",{id:"svg2250934887b",fill:"#fff"},s().createElement("use",{xlinkHref:"#svg2250934887a"})),s().createElement("path",{fillOpacity:".54",fill:"#000",mask:"url(#svg2250934887b)",d:"M0 0h24v24H0z"})))};function x(){return x=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},x.apply(this,arguments)}const C=e=>{let{styles:t={}}=e,r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["styles"]);return s().createElement("svg",x({width:"20",height:"20",viewBox:"0 0 20 20",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},r),s().createElement("g",{stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd",fillOpacity:".54"},s().createElement("path",{d:"M14.5 5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm4 5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm-17 1a1.5 1.5 0 110-3 1.5 1.5 0 010 3zM4 4a2 2 0 110-4 2 2 0 010 4zm1 16a2 2 0 110-4 2 2 0 010 4zm4.5-6a4.5 4.5 0 110-9 4.5 4.5 0 010 9zm0-2a2.5 2.5 0 100-5 2.5 2.5 0 000 5zm6 5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z",fill:"#000"})))};var S=r(40797);const N=(0,S.makeStyles)((()=>({header:{padding:"0 4px 0 16px"},buttonsContainer:{flexShrink:0,marginLeft:"auto","& > * + *":{marginLeft:"-4px"}},button:{padding:"8px"},icon:{width:"24px",height:"24px"},disabledIcon:{opacity:.54}}))),T=(0,v.Z)(y()),k=e=>{let{title:t,entityLabel:r="",onScrollToCurrentEntity:n,onGraphOpen:o,disabled:a=!1}=e;const i=N(),l=p()(i.icon,{[i.disabledIcon]:a});return s().createElement(O.Z,{title:t,className:i.header},s().createElement("div",{className:i.buttonsContainer},s().createElement(T,{tooltipTitle:h().text("Show Graph"),onClick:o,classes:{root:i.button,label:l},disabled:a,showForDisabled:!0},s().createElement(C,null)),s().createElement(T,{tooltipTitle:h().text("Scroll to ${node}",{node:r}),tooltipPlacement:"bottom-end",onClick:n,classes:{root:i.button,label:l},disabled:a,showForDisabled:!0},s().createElement(w,null))))};k.propTypes={title:i().string,entityLabel:i().string,total:i().number,onScrollToCurrentEntity:i().func,onGraphOpen:i().func,disabled:i().bool};const P=k;var R=r(34756),D=r(2396);const I=(0,S.makeStyles)((e=>({textField:{marginLeft:e.spacing(),marginRight:e.spacing(),width:200},panel:{display:"flex",flexGrow:1,flexDirection:"column",minHeight:"372px",maxHeight:"507px"},treeWrapper:{flexGrow:1,height:0,marginTop:7},checkedNode:{backgroundColor:"rgba(0,114,206, 0.12)"},editorNode:{"&:hover":{backgroundColor:"transparent !important"},"&:hover div.rst__moveHandle":{visibility:"hidden"},"& div.rst__rowLabel":{paddingRight:0}}})));var A=r(12335);const j=(0,S.makeStyles)((()=>({container:{display:"flex",flexDirection:"column",height:"100%"},root:{minHeight:"28px",display:"flex",padding:"0 18px","&:hover":{backgroundColor:"rgba(0,0,0,0.06)"},wordBreak:"break-all"},tree:{flexGrow:1,height:0}})));var _=r(98858),M=r(90690),L=r(73006),F=r(14940),B=r(86929),U=r.n(B);function H(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return t.filter(Boolean).join(" ")}function z(){return z=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},z.apply(this,arguments)}function q(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){W(e,t,r[t])}))}return e}function W(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class G extends l.Component{render(){const e=this.props,{scaffoldBlockPxWidth:t,toggleChildrenVisibility:r,connectDragPreview:n,connectDragSource:o,isDragging:a,canDrop:i,canDrag:l,node:c,title:d,subtitle:p,draggedNode:u,path:g,treeIndex:m,isSearchMatch:f,isSearchFocus:b,buttons:y,className:v,style:O,didDrop:E,treeId:w,isOver:x,parentNode:C,rowDirection:S}=e,N=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["scaffoldBlockPxWidth","toggleChildrenVisibility","connectDragPreview","connectDragSource","isDragging","canDrop","canDrag","node","title","subtitle","draggedNode","path","treeIndex","isSearchMatch","isSearchFocus","buttons","className","style","didDrop","treeId","isOver","parentNode","rowDirection"]),T=d||c.title,k=p||c.subtitle,P="rtl"===S?"rst__rtl":null;let R;l&&(R="function"==typeof c.children&&c.expanded?s().createElement("div",{className:"rst__loadingHandle"},s().createElement("div",{className:"rst__loadingCircle"},[...new Array(12)].map(((e,t)=>s().createElement("div",{key:t,className:H("rst__loadingCirclePoint",P)}))))):o(s().createElement("div",{className:"rst__moveHandle"},s().createElement(U(),{title:h().text("Drag node")},s().createElement(F.Z,null))),{dropEffect:"copy"}));const D=u&&_.ZP.isDescendant(u,c),I=!E&&a,A=r&&!c.root&&!c.cycled&&(c.children&&c.children.length>0||c.pending);return s().createElement("div",z({style:{height:"100%"}},N,{key:c.nodeId}),A&&c.expanded&&!a&&s().createElement("div",{style:{width:t-2},className:H("rst__lineChildren",P)}),s().createElement("div",{className:H("rst__rowWrapper",P)},n(s().createElement("div",{className:H("rst__row",I&&"rst__rowLandingPad",I&&!i&&"rst__rowCancelPad",f&&"rst__rowSearchMatch",b&&"rst__rowSearchFocus",P,v),style:q({opacity:D?.5:1},O)},R,s().createElement("div",{className:H("rst__rowContents",!l&&"rst__rowContentsDragDisabled",P)},A?s().createElement("div",{className:"rst__buttonWrapper",onClick:()=>{r({node:c,path:g,treeIndex:m})}},s().createElement("div",{"aria-label":c.expanded?"Collapse":"Expand",className:H(c.expanded?"rst__collapseButton":"rst__expandButton",P)})):s().createElement("div",{className:H("rst__buttonWrapper","rst__noButton")}),s().createElement("div",{className:H("rst__rowLabel",P)},s().createElement("div",{className:H("rst__rowTitle",c.subtitle&&"rst__rowTitleWithSubtitle")},"function"==typeof T?T({node:c,path:g,treeIndex:m}):T),k&&s().createElement("span",{className:"rst__rowSubtitle"},"function"==typeof k?k({node:c,path:g,treeIndex:m}):k)),s().createElement("div",{className:"rst__rowToolbar"},y.map(((e,t)=>s().createElement("div",{key:t,className:"rst__toolbarButton"},e)))))),{offsetX:0,offsetY:0})))}}G.defaultProps={isSearchMatch:!1,isSearchFocus:!1,canDrag:!1,toggleChildrenVisibility:null,buttons:[],className:"",style:{},parentNode:null,draggedNode:null,canDrop:!1,title:null,subtitle:null,rowDirection:"ltr"},G.propTypes={node:i().shape({}).isRequired,title:i().oneOfType([i().func,i().node]),subtitle:i().oneOfType([i().func,i().node]),path:i().arrayOf(i().oneOfType([i().string,i().number])).isRequired,treeIndex:i().number.isRequired,treeId:i().string.isRequired,isSearchMatch:i().bool,isSearchFocus:i().bool,canDrag:i().bool,scaffoldBlockPxWidth:i().number.isRequired,toggleChildrenVisibility:i().func,buttons:i().arrayOf(i().node),className:i().string,style:i().shape({}),connectDragPreview:i().func.isRequired,connectDragSource:i().func.isRequired,parentNode:i().shape({}),isDragging:i().bool.isRequired,didDrop:i().bool.isRequired,draggedNode:i().shape({}),isOver:i().bool.isRequired,canDrop:i().bool,rowDirection:i().string};const V=G,Z=(0,l.createContext)({generateTreeNodeProps:void 0});function Q(){return Q=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Q.apply(this,arguments)}function J(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){K(e,t,r[t])}))}return e}function K(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Z.displayName="TreeThemeContext";class $ extends l.Component{render(){const e=this.props,{children:t,listIndex:r,swapFrom:n,swapLength:o,swapDepth:a,scaffoldBlockPxWidth:i,lowerSiblingCounts:c,connectDropTarget:d,isOver:p,draggedNode:u,canDrop:g,treeIndex:h,treeId:m,getPrevRow:f,node:b,path:y,rowDirection:v}=e,O=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["children","listIndex","swapFrom","swapLength","swapDepth","scaffoldBlockPxWidth","lowerSiblingCounts","connectDropTarget","isOver","draggedNode","canDrop","treeIndex","treeId","getPrevRow","node","path","rowDirection"]),E="rtl"===v?"rst__rtl":null,w=c.length,x=[];let C;c.forEach(((e,t)=>{let l="";if(e>0?l=t===w-1?"rst__lineHalfHorizontalRight rst__lineFullVertical":"rst__lineFullVertical":t===w-1&&(l="rst__lineHalfVerticalTop rst__lineHalfHorizontalRight"),x.push(s().createElement("div",{key:`pre_${1+t}`,style:{width:i},className:H("rst__lineBlock",l,E)})),h!==r&&t===a){let e,a="";a=r===n+o-1?"rst__highlightBottomLeftCorner":h===n?"rst__highlightTopLeftCorner":"rst__highlightLineVertical",e="rtl"===v?{width:i,right:i*t}:{width:i,left:i*t},x.push(s().createElement("div",{key:t,style:e,className:H("rst__absoluteLineBlock",a,E)}))}}));const S=i*w;C="rtl"===v?{right:S}:{left:S},C=J({},C,{width:`calc(100% - ${S}px`});const N=`${S+Y}px`,T=J({},O.style,{width:N}),k=this.context&&this.context.generateTreeNodeProps&&this.context.generateTreeNodeProps(this.props);return d(s().createElement("div",Q({},O,{className:H("rst__node",b.root&&"rst__root",E,k&&k.treeNodeClassName,!!u&&u.nodeId!==b.nodeId&&"rst_node_hover_disabled"),style:T}),x,s().createElement("div",{className:"rst__nodeContent",style:C},l.Children.map(t,(e=>(0,l.cloneElement)(e,{isOver:p,canDrop:g,draggedNode:u}))))))}}$.contextType=Z,$.defaultProps={swapFrom:null,swapDepth:null,swapLength:null,canDrop:!1,draggedNode:null,rowDirection:"ltr"},$.propTypes={treeIndex:i().number.isRequired,treeId:i().string.isRequired,swapFrom:i().number,swapDepth:i().number,swapLength:i().number,scaffoldBlockPxWidth:i().number.isRequired,lowerSiblingCounts:i().arrayOf(i().number).isRequired,listIndex:i().number.isRequired,children:i().node.isRequired,connectDropTarget:i().func.isRequired,isOver:i().bool.isRequired,canDrop:i().bool,draggedNode:i().shape({}),getPrevRow:i().func.isRequired,node:i().shape({}).isRequired,path:i().arrayOf(i().oneOfType([i().string,i().number])).isRequired,rowDirection:i().string};const X=$,Y=250,ee=16,te=28,re=50,ne=i().shape({nodeId:i().oneOfType([i().number,i().string]),children:i().arrayOf((()=>ne)),showParents:i().bool,expanded:i().bool,pending:i().bool,cycled:i().bool}),oe=i().shape({nodeId:i().oneOfType([i().number,i().string]),entity:D.EntityType,relation:D.RelationType,relations:i().arrayOf(D.RelationType),total:i().number,parent:i().arrayOf(i().string),directParentUri:i().string,children:i().arrayOf((()=>oe)),loading:i().bool,expanded:i().bool,showParents:i().bool,cycled:i().bool,pending:i().bool}),ae=i().number,ie=i().shape({root:oe,graphTypes:i().string,entitiesMap:i().object,title:i().string,activenessDate:ae,scrollTo:oe,loading:i().bool}),le=e=>{let{measure:t,registerChild:r,NodeRenderer:n,node:o,treeIndex:a}=e;return(0,l.useEffect)(t,[a]),s().createElement(n,{measure:t,registerChild:r,node:o})};le.propTypes={measure:i().func,registerChild:i().func,NodeRenderer:i().func,node:ne,treeIndex:i().number};const se=e=>{const t=(e=>document.querySelector(`[data-node-id="${e}"]`))(e);t?t.scrollIntoView({block:"nearest",inline:"start"}):setTimeout((()=>se(e)),0)},ce=e=>{let{node:t}=e;return t.nodeId},de=e=>{let{node:t}=e;return t.title||null};function pe(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){ue(e,t,r[t])}))}return e}function ue(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const ge=(0,u.pick)(["nodeContentRenderer","treeNodeRenderer","scaffoldBlockPxWidth","rowHeight","slideRegionSize"],n),he=e=>{let{NodeRenderer:t=de,root:r,scrollToNode:n,onChange:o,onRequestChildren:a,canDrag:i=!1,canDrop:c,onScroll:d=u.identity,onNodeMoved:p=u.identity,inlineRoot:g}=e;const h=j(),m=(0,l.useMemo)((()=>{const e=r&&r.children||[];return g?[(0,u.pipe)((0,u.omit)(["children"]),(0,u.assoc)("root",!0))(r),...e]:e}),[r,g]),f=(0,l.useRef)(null),b=(0,l.useRef)(null);b.current=m;const y=((e,t)=>{const r=(0,l.useCallback)((r=>{const n=_.ZP.getVisibleNodeInfoAtIndex({treeData:e.current,index:r,getNodeKey:t});return t({node:(0,u.propOr)({nodeId:-1},"node",n)})}),[t,e]),[n]=(0,l.useState)(new A.t1({fixedWidth:!0,defaultHeight:te,minHeight:te,keyMapper:r})),o=(0,l.useCallback)((()=>{n.clearAll()}),[]);return(0,l.useEffect)((()=>(window.addEventListener("resize",o),()=>{window.removeEventListener("resize",o)})),[o]),n})(b,ce);((e,t)=>{const r=(0,l.useRef)(!1);(0,l.useEffect)((()=>{t&&!r.current&&(r.current=!0,e())}),[e,t])})((()=>{setTimeout((()=>{const e=v();e&&e.forceUpdateGrid()}),0)}),r),(0,l.useEffect)((()=>{if(r&&n){const e=_.ZP.find({treeData:m,getNodeKey:ce,searchFocusOffset:0,searchQuery:"",searchMethod:e=>{let{node:t}=e;return t===n}}),t=(0,u.path)(["matches",0,"treeIndex"],e),r=v();r&&null!=t&&(r.scrollToRow(t),setTimeout((()=>{se(n.nodeId)}),500))}}),[r,m,n]);const v=()=>(0,u.path)(["current","wrappedInstance","current"],f),O=(0,l.useCallback)((e=>{o&&o(pe({},r,{children:g?e.slice(1):e}))}),[o,r,g]),E=(0,l.useCallback)((e=>{let{node:r,treeIndex:n}=e;return s().createElement(A.Z8,{cache:y,columnIndex:0,key:ce({node:r}),rowIndex:n,parent:v()},(e=>{let{NodeRenderer:t,node:r,treeIndex:n}=e;return e=>{let{measure:o,registerChild:a}=e;return s().createElement(le,{NodeRenderer:t,node:r,treeIndex:n,measure:o,registerChild:a})}})({NodeRenderer:t,node:r,treeIndex:n}))}),[t,y]),w=(0,l.useCallback)((e=>({title:E(e)})),[E]),x=(0,M.D)(m),C=(0,l.useCallback)((e=>{const{prevPath:t,nextParentNode:n}=e;let o;if(t.length>1){const e=t.slice(0,-1),r=_.ZP.getNodeAtPath({treeData:x,getNodeKey:ce,path:e});r&&(o=r.node)}else o=r;p(pe({prevParentNode:o},e,{nextParentNode:n||r}))}),[p,r,x]),S=(0,l.useCallback)((e=>{let{node:t}=e;a(t)}),[a]);return r?s().createElement("div",{className:h.container},!g&&s().createElement("div",{className:h.root},s().createElement(t,{node:r})),s().createElement("div",{className:h.tree},s().createElement(L.ZP,{isVirtualized:!0,canDrag:i,canDrop:c,treeData:m,theme:ge,generateNodeProps:w,rowHeight:y.rowHeight,reactVirtualizedListProps:{ref:f,scrollToAlignment:"end",onScroll:d},onMoveNode:C,onChange:O,onLazyLoadChildren:S,getNodeKey:ce}))):null};he.propTypes={NodeRenderer:i().elementType,root:ne,canDrag:i().oneOfType([i().bool,i().func]),canDrop:i().func,scrollToNode:i().object,onChange:i().func,onRequestChildren:i().func,onNodeMoved:i().func,onScroll:i().func,inlineRoot:i().bool,getNodeKey:i().func};const me=he,fe=(0,S.makeStyles)((()=>({container:{fontSize:"13px",display:"flex",paddingTop:"6px",position:"relative"},title:{flexGrow:1,width:0,minHeight:"15px"}}))),be=(0,S.makeStyles)((()=>({loadingSpinner:{alignSelf:"center",maxHeight:"16px",marginRight:"16px"}}))),ye=e=>{let{className:t}=e;return s().createElement("img",{className:t,alt:"loading",src:(0,D.gif2Url)("R0lGODlhFQALAKIAAP///8Hf75vL5Van0wB4v////wAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQJCgAFACwAAAIAFQAHAAADLFi6zPSQFEGpGhgXkrEUQShc1bB1wxcGYzGUZ6eKJGVy8lS1aJxJjaAiAkkAACH5BAkKAAUALAAAAwAUAAUAAAMiWLFbJRC6QakCODjBxIzDlW3dB4UBBmhPWQygwrCR9FZDAgAh+QQJCgAFACwIAAMADAAFAAADFBiqVfIvgBmaWHeC6rCklrdw0JMAACH5BAkKAAUALAAAAgAUAAcAAAMkSLpU/vCRQWmLLmg967hYAIxBV4GRSJoWlo1A6X1usXGMUkcJACH5BAkKAAUALAAAAgAOAAcAAAMdWLpF/qSMORudcYg97M2b0BHXAHIelV0pxizQkwAAOw==")})},ve=e=>{let{className:t,registerChild:r}=e;const n=fe(),o=be();return s().createElement("div",{className:p()(n.container,t),ref:r},s().createElement(ye,{className:o.loadingSpinner}),s().createElement("div",{className:n.title},h().text("Loading...")))};ve.propTypes={className:i().string,registerChild:i().func};const Oe=ve;var Ee=r(41531),we=r.n(Ee),xe=r(95351),Ce=r.n(xe),Se=r(42308),Ne=r.n(Se);const Te=(0,S.makeStyles)((()=>({wrapper:{width:"100%"},avatar:{height:"16px",width:"16px",marginRight:"8px"},avatarWithMultiParent:{cursor:"pointer"},number:{color:"rgba(0,0,0,0.54)",marginLeft:"13px"},multiParentIcon:{position:"absolute",top:"15px",left:"-3px",cursor:"pointer"},actionsBlock:{position:"absolute",right:"0",top:"2px",backgroundColor:"rgb(240,240,240)","&::after":{content:'""',position:"absolute",left:"-40px",top:0,width:"40px",height:"100%",background:"linear-gradient(to right, rgba(240,240,240, 0.2), rgba(240,240,240, 1) 100%)",pointerEvents:"none"}},actionsBlockWithOpenMenu:{backgroundColor:"white","&::after":{background:"linear-gradient(to right, rgba(255,255,255, 0.2), rgba(255,255,255, 1) 100%)"}},actionsBlockForCheckedNode:{backgroundColor:"rgb(224,238,249)","&::after":{background:"linear-gradient(to right, rgba(224,238,249, 0.2), rgba(224,238,249, 1) 100%)"}},regularNodeCheckbox:{padding:0,marginRight:"16px",marginTop:"-4px",marginLeft:"-4px"},subtitle:{fontSize:"11px",letterSpacing:0,lineHeight:"13px",paddingLeft:"24px",paddingTop:"2px",paddingBottom:"4px",wordBreak:"break-word"}})));var ke=r(96330);function Pe(){return Pe=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Pe.apply(this,arguments)}const Re=e=>{let{styles:t={}}=e,r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["styles"]);return s().createElement("svg",Pe({width:"11",height:"11",viewBox:"0 0 12 12",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},r),s().createElement("g",{stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd"},s().createElement("circle",{strokeOpacity:".54",stroke:"#000",fill:"#FFF",cx:"6",cy:"6",r:"5.5"}),s().createElement("path",{d:"M5.536 4.641L4.505 3.61H8v3.495L6.874 5.98 5.509 7.344a1.995 1.995 0 00-.581 1.548l-.407-.408a2 2 0 010-2.828l1.015-1.015z",fillOpacity:".87",fill:"#000"})))};var De=r(48685);const Ie=(0,S.makeStyles)((e=>({link:{cursor:"pointer",color:e.palette.secondary.main,lineHeight:"15px"},selected:{fontWeight:"bold"}}))),Ae=e=>{let{title:t,isSelected:r,link:n,onClick:o}=e;const a=Ie();return s().createElement("span",{className:p()(a.link,{[a.selected]:r})},s().createElement(De.Z,{to:n,onClick:o},t))},je=(0,S.makeStyles)((()=>({avatar:{height:"16px",width:"16px",marginRight:"6px",flexShrink:"0"},multiParent:{position:"relative",background:"#ffffff",border:"1px solid rgba(0,0,0,0.12)",marginLeft:"-5px",marginTop:"10px",padding:"10px 11px 9px 6px","&:after,&:before":{bottom:"100%",left:"12px",border:"solid transparent",content:"' '",height:0,width:0,position:"absolute","pointer-events":"none"},"&:after":{borderColor:"rgba(255, 255, 255, 0)",borderBottomColor:"#ffffff",borderWidth:"6px",marginLeft:"-6px"},"&:before":{borderColor:"rgba(220, 216, 245, 0)",borderBottomColor:"rgba(0,0,0,0.12)",borderWidth:"7px",marginLeft:"-7px"}},parentContainer:{fontSize:"13px",lineHeight:"16px",display:"flex",marginBottom:"12px",alignItems:"center","&:last-child":{marginBottom:0}},loadingNode:{paddingTop:0}})));function _e(){return _e=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},_e.apply(this,arguments)}const Me=e=>{let{styles:t={}}=e,r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["styles"]);return s().createElement("svg",_e({width:"10",height:"10",viewBox:"0 0 10 10",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},r),s().createElement("g",{stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd",fillOpacity:".38"},s().createElement("path",{d:"M4.536 3.641L3.505 2.61H7v3.495L5.874 4.98 4.509 6.344a1.995 1.995 0 00-.581 1.548l-.407-.408a2 2 0 010-2.828l1.015-1.015z",fill:"#000"})))},Le=e=>{let{showParents:t,additionalParents:r}=e;const n=je(),o=(0,R.useDispatch)();return t&&r.length>0?s().createElement("div",{className:n.multiParent},r.map(((e,t)=>s().createElement("div",{key:t,className:n.parentContainer},e.pending?s().createElement(Oe,{className:n.loadingNode}):s().createElement(s().Fragment,null,s().createElement(Me,{className:n.avatar}),s().createElement(Ae,{title:e.title,link:e.entityLink,onClick:()=>o(Se.ui.actions.openEntity({uri:e.entityUri,viewId:e.viewId}))})))))):null},Fe=(0,S.makeStyles)((()=>({details:{margin:"1px 0 8px 24px"},loadingNode:{paddingTop:0},detailLine:{display:"flex"},detail:{flexGrow:1,width:0,wordWrap:"break-word",lineHeight:"16px",paddingLeft:"8px",textIndent:"-8px"},detailLabel:{color:"rgba(0, 0, 0, 0.6)",whiteSpace:"nowrap",lineHeight:"16px",letterSpacing:0,marginRight:"5px"},detailValue:{fontSize:"0.75rem",letterSpacing:0}})));var Be=r(67586);function Ue(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function He(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){ze(e,t,r[t])}))}return e}function ze(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const qe=(e,t)=>{const{sortField:r,sortOrder:n,graphTypes:o}=e,a=(0,D.mapTree)(e.root,{childrenProcessing:(0,D.sortTreeChildren)({sortField:r,sortOrder:n,typesLabelsMap:(0,D.createRelationTypesLabelsMap)(t)}),nodeProcessing:(0,u.pipe)(Ke,Xe,Ye)});return He({},e,{root:a,entitiesMap:tt(a),title:((0,D.getGraphType)(t,o)||{}).label})};let We=0;const Ge=()=>We++,Ve=e=>e?[].concat(e):[],Ze=e=>(0,u.path)(["entity","uri"],e),Qe=e=>e?(0,D.wrapInArrayIfNeeded)(e):[],Je=(e,t)=>{const r=(0,u.prop)("relation",e);if(Array.isArray(r)){const n=Ve(e.parent),o=(0,u.findIndex)((0,u.equals)(t),n);return(0,u.path)([o],r)}return r},Ke=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.formatted?e:He({},e,{nodeId:Ge(),parent:Ve(e.parent),directParentUri:Ze(t),pending:!e.children&&e.total>0,formatted:!0,relations:Qe(e.relation),relation:Je(e,Ze(t))})},$e=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{children:r,parent:n,traversedRelations:o,untraversedRelations:a,cycled:i,formatted:l,relation:s}=e,c=Ue(e,["children","parent","traversedRelations","untraversedRelations","cycled","formatted","relation"]);if(l)return e;const d=o+a-1,p=Ze(t),u={nodeId:Ge(),cycled:i,entity:c,parent:Ve(n),directParentUri:p,total:d,pending:!i&&!r&&d>0,formatted:!0,relations:Qe(s),relation:Je(e,p)};return r&&(u.children=r,u.pending=!i&&d>r.length),u},Xe=e=>{const t=e.children||[];return t.some((t=>(0,u.path)(["entity","uri"],t)===e.entity.uri||t.uri===e.entity.uri))||e.cycled||!e.parent.includes(e.entity.uri)?e:He({},e,{children:t.concat(He({},e,{nodeId:Ge(),directParentUri:e.entity.uri,total:0,children:[],cycled:!0}))})},Ye=(0,u.when)((0,u.both)((0,u.has)("children"),(0,u.complement)((0,u.prop)("pending"))),(0,u.assoc)("expanded",!0)),et=e=>{let{nodeId:t,relation:r,formatted:n,directParentUri:o,pending:a,children:i,total:l}=e;return Ue(e,["nodeId","relation","formatted","directParentUri","pending","children","total"])},tt=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const r=Ze(e);return r&&(t[r]=et(e)),e.children&&e.children.forEach((e=>tt(e,t))),t},rt=e=>Object.keys(e).reduce(((t,r)=>{const n=$e(e[r]);return t[r]=et(n),t}),{}),nt=(e,t)=>{let{entities:r,relations:n}=e;if(Array.isArray(r)){const e=r.reduce(((e,t)=>(e[t.uri]=t,e)),{});return(n||[]).forEach((r=>{const n=t?"startObject":"endObject",o=e[r[t?"endObject":"startObject"].objectURI],a=e[r[n].objectURI];o.children=o.children||[],o.children.includes(a)||o.children.push(a),a.parent=a.parent||[],a.relation||(a.relation=r),a.parent.includes(o.uri)||a.parent.push(o.uri)})),e}},ot=(0,u.curry)(((e,t)=>(0,u.pipe)(nt,rt)(t,e))),at=()=>({nodeId:Ge(),relation:{uri:(0,D.generateNewRelationUri)(),attributes:{}}}),it=Se.profile.trees.actions,lt=e=>{let{parentUri:t,parentId:r,graphTypes:n,activenessDate:o,id:a,isReversed:i}=e;return(e,l)=>{const{sortField:s,sortOrder:c}=Ne().selectors.getTree(l(),a),d=Ne().selectors.getMetadata(l());return e(it.childrenLoading({id:a,parentId:r,nodeId:Ge()})),(0,D.getHops)({uri:t,graphTypes:n,activenessDate:o}).then((n=>{const{children:o}=(e=>{let{json:t,parentUri:r,sortField:n,sortOrder:o,metadata:a,isReversed:i}=e;const l=nt(t,i),s=l&&(e=>{const t=[{node:e,parent:null}],r=[];for(const e of t){const{node:n,parent:o}=e;r.includes(n)?o.children=o.children.map((e=>e===n?He({},n,{cycled:!0,children:[]}):e)):(r.push(n),n.children&&t.push(...n.children.map((e=>({node:e,parent:n})))))}return e})(l[r]);return(0,D.mapTree)(s,{nodeProcessing:(0,u.pipe)($e,Xe),childrenProcessing:(0,D.sortTreeChildren)({sortField:n,sortOrder:o,typesLabelsMap:(0,D.createRelationTypesLabelsMap)(a)})})})({json:n,parentUri:t,sortField:s,sortOrder:c,metadata:d,isReversed:i}),l=ot(i,n);e(it.childrenLoaded({id:a,children:o,parentId:r})),e(it.entitiesMappingLoaded({id:a,entitiesSubMap:l}))}))}},st=e=>{let{id:t,uri:r}=e;return e=>{e(it.currentEntityShownInTree({id:t,uri:r})),setTimeout((()=>{e(it.resetScrollToNode(t))}),0)}},ct=(0,u.pipe)(D.getAllEntityTypesForGraphType,(0,u.any)((0,u.prop)("secondaryLabelPattern")));function dt(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const pt=Se.profile.trees.actions,ut=(0,u.has)("attributes"),gt=e=>{let{node:t,checkedNodes:r}=e;return(0,u.has)(t.nodeId,r)},ht=(0,u.has)("editingMode"),mt=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return ht(e)||(0,u.has)("children",e)&&e.children.some(mt)},ft=e=>{let{id:t,node:r}=e;return e=>{const{nodeId:n,relation:o}=r,a=Array.isArray(o)?o[0]:o;return ut(a)?Promise.resolve(o):(0,D.getRelation)(a.uri).then((r=>{const o=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){dt(e,t,r[t])}))}return e}({},a,r);return e(pt.treeNodeChanged({id:t,node:{nodeId:n,relation:o}})),Promise.resolve(o)}))}},bt=e=>e.loading||(0,u.has)("children",e)&&e.children.some(bt),yt=function(){let e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=arguments.length>1?arguments[1]:void 0;return t&&e},vt=(0,u.pick)(["startDate","endDate"]),Ot=[{uri:"typeName",type:D.DataTypes.TYPE_STRING,label:h().text("Relationship")},...D.ACTIVENESS_ATTR_TYPES],Et=e=>{let{showDetails:t,metadata:r,relation:n={}}=e;const o=Fe(),a=vt(n);return a.typeName=(0,u.prop)("label",(0,D.getRelationType)(r,n.type)),t&&n?s().createElement("div",{className:o.details},ut(n)?Ot.map((e=>a[e.uri]&&s().createElement("div",{key:e.uri,className:o.detailLine},s().createElement("div",{className:o.detail},s().createElement(f(),{variant:"caption",gutterBottom:!0,className:o.detailLabel},e.label+": "),s().createElement("span",{className:o.detailValue},s().createElement(Be.Z,{value:a[e.uri],dataTypeDefinition:e})))))):s().createElement(Oe,{key:"loading-details",className:o.loadingNode})):null};Et.propTypes={showDetails:i().bool,relation:D.RelationType,metadata:D.MetadataType};const wt=Et;var xt=r(27604),Ct=r(82726),St=r(86680),Nt=r(74443),Tt=r(22983),kt=r(39475),Pt=r(98538);const Rt=(0,S.makeStyles)((()=>({addButton:{marginRight:"11px"},editButton:{marginRight:"13px"}}))),Dt=e=>{let{className:t,show:r,showDetails:n,onToggleRelationDetails:o,onMenuOpen:a,onMenuClose:i,onStartEditing:l,onAddParent:c,onAddChild:d,onDelete:p}=e;const g=Rt(),m=[c&&{text:h().text("Add Parent"),onClick:c},d&&{text:h().text("Add Child"),onClick:d}].filter(u.identity);return r&&(o||l||c||d||p)?s().createElement("div",{className:t},o&&s().createElement(kt.k,{tooltipTitle:n?h().text("Hide details"):h().text("View details"),tooltipPlacement:"bottom-end",size:"S",icon:n?St.Z:Ct.Z,onClick:o}),m.length>0&&s().createElement(Pt.Z,{buttonComponent:kt.k,buttonProps:{icon:Nt.Z,size:"S",tooltipTitle:h().text("Add node"),className:g.addButton},menuId:"tree-node-actions",menuItems:m,onMenuOpen:a,onMenuClose:i}),l&&s().createElement(kt.k,{tooltipTitle:h().text("Edit node"),size:"S",icon:xt.Z,onClick:l,className:g.editButton}),p&&s().createElement(kt.k,{tooltipTitle:h().text("Delete node"),size:"S",icon:Tt.Z,onClick:p})):null};Dt.propTypes={show:i().bool,showDetails:i().bool,className:i().string,onMenuOpen:i().func,onMenuClose:i().func,onStartEditing:i().func,onAddParent:i().func,onAddChild:i().func,onDelete:i().func,onToggleRelationDetails:i().func};const It=Dt,At=(0,u.prop)("graph"),jt=(0,u.pipe)(At,(0,u.path)(["options","reverseRelations"])),_t=(0,u.pipe)(At,(0,u.prop)("type")),Mt=(0,u.pipe)((0,u.prop)("sortOrder"),D.getValidatedSortOrder),Lt=(0,u.pipe)((0,u.prop)("sortBy"),D.getValidatedSortField),Ft=(0,u.pipe)((0,u.prop)("attributes"),(0,u.defaultTo)([]),(0,u.includes)("secondaryLabel"));function Bt(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){Ut(e,t,r[t])}))}return e}function Ut(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const Ht=Se.profile.trees.actions,zt=(e,t,r)=>{const n=(0,D.getEntityType)(t,r)||{},o=(0,D.getPropWithInheritance)(t,n,"typeGraphIcon");return o&&(0,D.getAbsoluteImageUrl)(e,o)},qt=(e,t,r)=>{let{relation:n}=e;return!!n&&(0,D.checkMetadataForUpdate)(r,(0,D.getRelationType)(t,n.type))},Wt=(0,u.curry)(((e,t,r,n)=>{const{entity:o={}}=n,a=jt(t)?"parent"===e:"child"===e,i=o.type,l=_t(t);if(l){const e=(0,D.getGraphType)(r,l),t=(0,D.getRelationshipTypeUrisFromGraphType)(e)||[],n=(0,D.isInHierarchy)(r,u.__,i);return t.map((0,D.getRelationType)(r)).filter(u.identity).map(a?D.getStartObjectTypeUri:D.getEndObjectTypeUri).some(n)}return!0})),Gt=Wt("parent"),Vt=Wt("child"),Zt=(e,t,r)=>{let{relation:n}=e;return!!n&&(0,D.checkMetadataForDelete)(r,(0,D.getRelationType)(t,n.type))},Qt=e=>{let{node:t,metadata:r,absoluteImagePath:n,currentEntityUri:o,mode:a,config:i={},uiPath:l,showSecondaryLabel:s,onParentsRequested:c,dispatch:d}=e;const{entity:p,children:g,total:h,pending:m,showParents:f,nodeId:b}=t,{id:y}=i,v=((e,t)=>Ze(e)===t)(t,o),O=(0,D.isEditableMode)(a),E={onToggleShowParents:e=>{d(Ht.treeNodeChanged({id:y,node:{nodeId:b,showParents:!f}})),e&&c(t)}},w=Bt(O?{onStartEditing:qt(t,r,a)?()=>d((e=>{let{id:t,node:r}=e;return e=>{const{nodeId:n}=r;e(pt.treeNodeChanged({id:t,node:{nodeId:n,loading:!0}})),e(ft({id:t,node:r})).then((()=>{e(pt.treeNodeEditingStarted({id:t,node:r}))}))}})({id:y,node:t})):null,onAddParent:Gt(i,r,t)?()=>d(Ht.treeNodeNewParentEditingStarted({id:y,node:t,newNode:at()})):null,onAddChild:Vt(i,r,t)?()=>d((e=>{let{id:t,node:r,newNode:n,isReversed:o}=e;return(e,a)=>{if(e(pt.treeNodeNewChildEditingStarted({id:t,node:r,newNode:n})),r.pending){const n=a(),{activenessDate:i,graphTypes:l}=Ne().selectors.getTree(n,t);e(lt({parentUri:r.entity.uri,parentId:r.nodeId,graphTypes:l,activenessDate:i,id:t,isReversed:o}))}}})({id:y,isReversed:jt(i),node:t,newNode:at()})):null,onDelete:Zt(t,r,a)?()=>{const e=(0,u.path)(["relation","uri"],t);e&&d(Ht.treeRelationRemoved({relationUri:e})),d(Ht.treeNodeRemoved({id:y,nodeId:b}))}:null}:{onToggleRelationDetails:()=>d((e=>{let{id:t,node:r}=e;return e=>{const{nodeId:n,showDetails:o,relation:a}=r,i={nodeId:n,showDetails:!o};e(pt.treeNodeChanged({id:t,node:i})),!o&&!ut(a)&&a&&e(ft({id:t,node:r}))}})({id:y,node:t}))},E);return Bt({title:(0,D.getLabel)(p.label),subtitle:s?p.secondaryLabel:void 0,number:g&&!m?g.length:h,icon:zt(n,r,p.type),isSelectedNode:v,entityLink:(0,D.getEntityLink)({uiPath:l,uri:p.uri}),entityUri:p.uri,viewId:y,showDetails:t.showDetails&&!O},(0,u.reject)(u.isNil,w))},Jt=e=>{let{node:t,entitiesMap:r,metadata:n,config:o,absoluteImagePath:a,uiPath:i}=e;const{entity:l,directParentUri:s}=t;return(0,u.pathOr)([],[l.uri,"parent"],r).filter((e=>e!==s)).map((e=>{const t=(0,u.prop)(e,r);return t?Qt({node:t,config:o,metadata:n,absoluteImagePath:a,uiPath:i}):{pending:!0}}))},Kt=(0,l.createContext)({config:{},entitiesMap:{},onToggleNodeCheckbox:()=>{},onParentsRequested:()=>{},checkedNodes:{},canSelect:!1});Kt.displayName="NodeContext";const $t=e=>{e.target.src=ke},Xt=e=>{let{node:t={},registerChild:r,measure:n=u.identity}=e;const o=Te(),a=fe(),i=(0,R.useDispatch)(),{config:c,entitiesMap:d,onToggleNodeCheckbox:g,checkedNodes:h,canSelect:m,onParentsRequested:f,showSecondaryLabel:b}=(0,l.useContext)(Kt),y=(0,R.useSelector)(Ne().selectors.getAbsoluteImagePath),v=(0,R.useSelector)(Ne().selectors.getMetadata),{uri:O}=(0,R.useSelector)(Ne().selectors.getEntity),E=(0,R.useSelector)(Ne().selectors.getMode),w=(0,R.useSelector)(Ne().selectors.getUIPath),{title:x,subtitle:C,number:S,icon:N,relation:T,showDetails:k,additionalParents:P=[],showParents:D,isSelectedNode:I,nodeId:A,entityLink:j,viewId:_,entityUri:M,onStartEditing:L,onAddParent:F,onAddChild:B,onToggleRelationDetails:U,onDelete:H,onToggleShowParents:z}=(e=>{let{node:t,entitiesMap:r,metadata:n,absoluteImagePath:o,currentEntityUri:a,mode:i,config:l,uiPath:s,showSecondaryLabel:c,onParentsRequested:d,dispatch:p}=e;return Bt({},t,{relation:Array.isArray(t.relation)?t.relation[0]:t.relation},Qt({node:t,metadata:n,absoluteImagePath:o,currentEntityUri:a,mode:i,config:l,uiPath:s,showSecondaryLabel:c,onParentsRequested:d,dispatch:p}),{additionalParents:Jt({node:t,config:l,entitiesMap:r,metadata:n,absoluteImagePath:o,uiPath:s})})})({node:t,entitiesMap:d,metadata:v,absoluteImagePath:y,currentEntityUri:O,mode:E,config:c,uiPath:w,showSecondaryLabel:b,onParentsRequested:f,dispatch:i}),q=P.some((e=>e.pending)),[W,G]=(0,l.useState)(!1),V=(0,l.useCallback)((()=>G(!0)),[]),Z=(0,l.useCallback)((()=>G(!1)),[]),[Q,J]=(0,l.useState)(!1),K=(0,l.useCallback)((()=>J(!0)),[]),$=(0,l.useCallback)((()=>{J(!1),G(!1)}),[]),X=P.length>0,Y=X&&z?z.bind(null,q):void 0,ee=((0,l.useCallback)((e=>g({checked:e.target.checked,node:t})),[t,g]),gt({node:t,checkedNodes:h})),te=(0,l.useCallback)((()=>{i(Se.ui.actions.openEntity({uri:M,viewId:_}))}),[_,M,i]);return(0,l.useEffect)(n,[!1,X,C,!!U,k,S,D,k&&ut(T),D&&q,n]),s().createElement("div",{className:o.wrapper,"data-node-id":A,onMouseEnter:V,onMouseLeave:Z,ref:r},s().createElement("div",{className:a.container},s().createElement(we(),{className:p()(o.avatar,{[o.avatarWithMultiParent]:X}),src:N||ke,onError:$t,onClick:Y}),X&&s().createElement(Re,{className:o.multiParentIcon,onClick:Y}),s().createElement("div",{className:a.title},s().createElement(Ae,{title:x,isSelected:I,link:j,onClick:te}),!!S&&s().createElement("span",{className:o.number},S),s().createElement(It,{show:W||Q,className:p()(o.actionsBlock,{[o.actionsBlockWithOpenMenu]:Q&&!ee,[o.actionsBlockForCheckedNode]:Q&&ee}),showDetails:k,onToggleRelationDetails:T&&U,onMenuOpen:K,onMenuClose:$,onStartEditing:L,onAddChild:B,onAddParent:F,onDelete:H}))),s().createElement(Le,{showParents:D,additionalParents:P}),C&&s().createElement("div",{className:o.subtitle},C),U&&s().createElement(wt,{showDetails:k,metadata:v,relation:T}))};Xt.propTypes={node:oe,registerChild:i().func,measure:i().func};const Yt=(0,l.memo)(Xt);var er=r(47450),tr=r.n(er);const rr=(0,S.makeStyles)((()=>({editorContainer:{width:"calc(100% - 34px)",minWidth:"185px",backgroundColor:"rgba(0,0,0,0.03)",padding:"16px 16px 8px 16px"},dense:{marginBottom:0},item:{marginBottom:"20px"},actionButtons:{display:"flex",justifyContent:"flex-end"}})));var nr=r(55962),or=r(53591),ar=r(61981),ir=r(76141),lr=r(65629);function sr(){return sr=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},sr.apply(this,arguments)}function cr(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){dr(e,t,r[t])}))}return e}function dr(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const pr=e=>e.value,ur=(e,t)=>t.find((0,u.propEq)("value",e)),gr=e=>{let{value:t,relationTypes:r=[],isChild:n,onChange:o=u.identity,metadata:a}=e,i=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["value","relationTypes","isChild","onChange","metadata"]);const c=(0,l.useMemo)((()=>((e,t,r)=>{const n={},o=(0,u.pipe)(D.getDirectionalLabelFromObject,(0,u.tap)((e=>n[e]=(0,u.propOr)(0,e,n)+1))),a=(0,u.ascend)((0,u.prop)("label")),i=(e,t)=>{const r=(0,D.getEntityType)(e,t);return cr({},r,{typeIcon:(0,D.getPropWithInheritance)(e,r,"typeIcon")})};return e.map((e=>{let{uri:n,label:a,startObject:l,endObject:s}=e;return{label:{directionalLabel:o(t?s:l),typeLabel:a},value:n,startObject:cr({},l,{objectType:i(r,l.objectTypeURI)}),endObject:cr({},s,{objectType:i(r,s.objectTypeURI)})}})).map((0,u.evolve)({label:e=>{let{directionalLabel:t,typeLabel:r}=e;return t?n[t]>1?`${t} (${r})`:t:r}})).sort(a)})(r,n,a)),[r,n,a]);return s().createElement(lr.Z,sr({value:ur(t,c),options:c,onChange:(0,u.pipe)(pr,o)},i))};gr.propTypes={className:i().string,value:i().string,relationTypes:i().arrayOf(D.RelationTypeType),isChild:i().bool,metadata:D.MetadataType,onChange:i().func};const hr=gr,mr=(0,u.curry)(((e,t,r,n)=>{const o=(0,D.isInHierarchy)(r,u.__,t.type),a=e?D.getStartObjectTypeUri:D.getEndObjectTypeUri;return(0,u.pipe)(a,o)(n)}));function fr(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){br(e,t,r[t])}))}return e}function br(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const yr=Se.profile.trees.actions,vr=e=>{let{node:t={},measure:r,registerChild:n}=e;const o=rr(),a=(0,R.useDispatch)(),{relatedEntity:i,relation:{uri:d}={},editingMode:g,initialConnection:m}=t,f=g===D.NODE_EDITING_MODES.addingParent,{config:b}=(0,l.useContext)(Kt),y=b.id,v=jt(b)||!1,O=v?f:!f,E=(0,R.useSelector)((e=>Ne().selectors.getTreeEditingConnection(e,y,d))),w=(0,R.useSelector)((e=>(0,D.getHierarchyNodeEditorActiveError)(E,Ne().selectors.getProfileErrors(e)))),x=(0,R.useSelector)(Ne().selectors.getProfileErrors),{relation:C,entity:S}=E,{attributes:N,type:T,crosswalks:k=[]}=C,P=(0,l.useMemo)((()=>fr({attributes:N},(0,D.getActivenessAttributes)(C))),[N,C]),I=(0,R.useSelector)((e=>Ne().selectors.getGlobalSearchRequestOptions(e,["ovOnly"]))),A=(0,R.useSelector)(Ne().selectors.getMetadata),j=(0,R.useSelector)(Ne().selectors.getMode),_=_t(b),M=(0,D.getGraphType)(A,_)||{},L=(0,l.useMemo)((()=>((e,t,r,n)=>(0,u.pipe)(D.getRelationshipTypeUrisFromGraphType,(0,u.defaultTo)([]),(0,u.map)((0,D.getRelationType)(r)),(0,u.reject)(u.isNil),(0,u.filter)(mr(e,t,r)))(n))(O,i,A,M)),[O,i,A,M]),F=(0,l.useMemo)((()=>S&&S.uri?L.filter((0,D.isAvailableRelationBetweenEntities)(O,S,i,A)):L),[S,L,O,i,A]),B=(0,l.useMemo)((()=>(0,D.getSuitableEntityTypeUrisForRelationTypes)(O,A,T?[(0,D.getRelationType)(A,T)]:L)),[O,A,T,L]),U=(0,l.useCallback)((e=>{a(yr.treeNodeRelationTypeChanged({id:y,node:t,relationTypeUri:e}))}),[t,y,a]),H=(0,l.useCallback)((e=>{a(yr.treeNodeEntityChanged({id:y,node:t,entity:e}))}),[t,y,a]);(0,l.useEffect)((()=>{T||1!==L.length||U(L[0].uri)}),[T,L,U]),(0,nr.D)((()=>{!T&&F.length>=1&&U(F[0].uri)}),[T,S,F,U]),(0,l.useEffect)(r,[y,E,x,T,L,!!U,S,F,r]);const z=(0,l.useMemo)((()=>(0,D.getRelationAttributesList)(A,T)),[T,A]),q=(0,l.useMemo)((()=>S&&{entityUri:S.uri,entityType:S.type,entityLabel:(0,D.getLabel)(S.label)}),[S]),W=(0,l.useCallback)((e=>(0,u.pipe)(Se.profile.actions.addAttributes,a)(e.map((e=>fr({},e,{viewId:y}))))),[y,a]),G=(0,l.useCallback)((e=>(0,u.pipe)(Se.profile.actions.modifyAttribute,a)(fr({},e,{viewId:y}))),[y,a]),V=(0,l.useCallback)((e=>(0,u.pipe)(Se.profile.actions.removeAttribute,a)(fr({},e,{viewId:y}))),[y,a]),Z=(0,l.useCallback)((()=>{const e=(0,D.validateHierarchyConnection)(A,E);return a(Se.profile.errors.actions.errorsSet(e)),0===e.length}),[E,A,a]),Q=(0,l.useCallback)((()=>{a((e=>{let{id:t,node:r}=e;return e=>{e((0,u.cond)([[(0,u.equals)(D.NODE_EDITING_MODES.addingParent),(0,u.always)(pt.treeNodeNewParentEditingCanceled)],[(0,u.equals)(D.NODE_EDITING_MODES.addingChild),(0,u.always)(pt.treeNodeNewChildEditingCanceled)],[(0,u.equals)(D.NODE_EDITING_MODES.editing),(0,u.always)(pt.treeNodeEditingCanceled)]])(r.editingMode)({id:t,node:r}))}})({id:y,node:t}))}),[t,y,a]),J=(0,l.useCallback)((()=>{Z()&&a((e=>{let{id:t,node:r,isReversed:n}=e;return(e,o)=>{const a=Ne().selectors.getTreeEditingConnection(o(),t,r.relation.uri);let i;switch(r.editingMode){case D.NODE_EDITING_MODES.addingParent:case D.NODE_EDITING_MODES.addingChild:i=pt.treeRelationCreated;break;case D.NODE_EDITING_MODES.editing:i=pt.treeRelationChanged}e(i((0,D.getPayloadForNodeApplyEditing)({node:r,connection:a,isReversed:n}))),e((0,u.cond)([[(0,u.equals)(D.NODE_EDITING_MODES.addingParent),(0,u.always)(pt.treeNodeNewParentEditingApplied)],[(0,u.equals)(D.NODE_EDITING_MODES.addingChild),(0,u.always)(pt.treeNodeNewChildEditingApplied)],[(0,u.equals)(D.NODE_EDITING_MODES.editing),(0,u.always)(pt.treeNodeEditingApplied)]])(r.editingMode)({id:t,node:r}))}})({id:y,isReversed:v,node:t}))}),[t,y,v,a,Z]),K=!(0,u.equals)(m,E)&&T,$=(0,D.getErrorMessage)(w);return s().createElement("div",{className:o.editorContainer,ref:n},s().createElement(c.Z,{handleHeight:!0,onResize:r}),1!==L.length&&s().createElement(hr,{isChild:O,relationTypes:F,className:o.item,value:T,metadata:A,onChange:U}),s().createElement(or.Z,{errorMessage:$,className:o.item},s().createElement(ar.Z,{key:T,className:p()({[o.dense]:$}),entity:q||{},entityTypesUris:B,max:b.max||20,globalSearchRequestOptions:I,mode:j,onChange:H,metadata:A,attributeTypesSelectionStrategy:D.relationEditorAttributeTypesSelectionStrategy})),T&&s().createElement(ir.Z,{className:o.item,attrTypes:z,entity:P,showEmptyEditors:!1,crosswalks:k,mode:j,parentUri:d,onAddAttributes:W,onChangeAttribute:G,onDeleteAttribute:V}),s().createElement("div",{className:o.actionButtons},s().createElement(tr(),{onClick:Q},h().text("Cancel")),s().createElement(tr(),{color:"primary",disabled:!K,onClick:J},h().text("Apply"))))};vr.propTypes={node:oe,registerChild:i().func,measure:i().func};const Or=(0,l.memo)(vr),Er="loading",wr="regular",xr="editor",Cr=(0,u.cond)([[ht,(0,u.always)(xr)],[e=>e.loading,(0,u.always)(Er)],[u.T,(0,u.always)(wr)]]),Sr=e=>class{static build(e){const{node:t}=e;switch(Cr(t)){case Er:return s().createElement(Oe,e);case wr:return s().createElement(Yt,e);case xr:return s().createElement(Or,e)}}}.build(e);Sr.propTypes={node:oe,onToggleShowParents:i().func};const Nr=Sr,Tr=e=>{let{className:t,config:r,tree:n={},onChildrenRequested:o,onParentsRequested:a,onTreeChanged:i,onTreeScroll:c,onNodeMoved:d,onToggleNodeCheckbox:u,checkedNodes:g,mode:h}=e;const m=I(),f=(0,D.isEditableMode)(h),b=(0,R.useSelector)(Ne().selectors.getMetadata),y=(0,l.useMemo)((()=>({config:r,entitiesMap:n.entitiesMap,onToggleNodeCheckbox:u,checkedNodes:g,canSelect:f,onParentsRequested:a,showSecondaryLabel:yt(n.showSecondaryLabel,Ft(r))})),[g,r,f,u,n.entitiesMap,n.showSecondaryLabel,a]),v=(0,l.useMemo)((()=>({generateTreeNodeProps:e=>{let{node:t}=e;return{treeNodeClassName:p()({[m.checkedNode]:gt({node:t,checkedNodes:g}),[m.editorNode]:ht(t)})}}})),[g,m]),O=(0,l.useCallback)((e=>{let{node:t}=e;return f&&!ht(t)&&!bt(t)&&Zt(t,b,h)}),[f,b,h]),E=(0,l.useCallback)((e=>{let{nextParent:t,node:o}=e;const a=!jt(r),i=null===t?n.root:t;return i&&!i.loading&&Vt(r,b,i)&&(0,D.isAvailableRelationBetweenEntities)(a,o.entity,i.entity,b,(0,D.getRelationType)(b,o.relation.type))}),[r,b,n.root]);return s().createElement("div",{className:p()(m.panel,t)},s().createElement("div",{className:m.treeWrapper},s().createElement(Z.Provider,{value:v},s().createElement(Kt.Provider,{value:y},s().createElement(me,{NodeRenderer:Nr,onChange:i,canDrag:O,canDrop:E,root:n.root,scrollToNode:n.scrollTo,onScroll:c,onRequestChildren:o,onNodeMoved:d,inlineRoot:!!n.root&&ht(n.root)})))))};Tr.propTypes={className:i().string,tree:ie,onChildrenRequested:i().func,onParentsRequested:i().func,onTreeChanged:i().func,onTreeScroll:i().func,onNodeMoved:i().func,onToggleNodeCheckbox:i().func,checkedNodes:i().object,mode:i().string,config:i().object};const kr=(0,l.memo)(Tr);var Pr=r(1730),Rr=r(92944);const Dr=(0,S.makeStyles)((e=>({view:{width:"100%"},linearIndicator:{top:"42px"},filtersBar:{paddingLeft:"24px",display:"flex",alignItems:"center",marginTop:"2px",marginBottom:"12px",height:"46px"},errorMessage:{fontSize:"13px",marginLeft:"24px",marginRight:"16px",lineHeight:"1.4",color:e.palette.text.secondary},activenessDate:{flex:1,margin:0},filterSortButton:{flexShrink:0,margin:"0 6px 0 12px"},breadcrumbs:{padding:"8px 24px",backgroundColor:"rgba(0,0,0,0.03)"},graphTypeSelector:{margin:"0 10px 15px 24px",overflow:"hidden"},"@global div[role=tooltip]":{fontFamily:"Roboto, Helvetica, Arial, sans-serif"},"@global div[role=presentation]":{fontFamily:"Roboto, Helvetica, Arial, sans-serif"}})));var Ir=r(29627);function Ar(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const jr=Se.profile.trees.actions,_r=(0,S.makeStyles)({onlyValue:{color:"rgba(0,0,0,.6)",fontSize:"13px",fontWeight:"normal",whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden"},select:{fontSize:"13px",color:"rgba(0,0,0,.6)",paddingLeft:"15px","&&":{paddingRight:"35px"}},selectMenu:{"& li":{fontSize:"13px",height:"32px"}},textField:{maxWidth:"100%"}});var Mr=r(1128);const Lr=e=>{let{value:t,onChange:r,options:n,classes:o={},emptyLabel:a}=e;const i=_r(),[c,...d]=n,p=0===d.length;(0,l.useEffect)((()=>{p&&t!==c.value&&r(c.value)}),[c.value]);const u=!!a;return s().createElement("div",{className:o.root},p?s().createElement(f(),{className:o.onlyValue||i.onlyValue,variant:"h6"},c.label):s().createElement(Mr.Z,{displayEmpty:u,disableUnderline:!0,classes:{select:o.select||i.select},TextFieldProps:{classes:{root:o.textField||i.textField}},MenuProps:{classes:{list:o.selectMenu||i.selectMenu}},value:t||"",entries:u?[{value:"",label:a},...n]:n,onChange:e=>r(e||null)}))};Lr.propTypes={value:i().string,onChange:i().func,options:i().arrayOf(i().shape({value:i().string,label:i().string})),classes:i().shape({root:i().string,onlyValue:i().string,select:i().string,selectMenu:i().string,textField:i().string}),emptyLabel:i().string};const Fr=Lr,Br=e=>{let{value:t,onChange:r,graphTypes:n,className:o}=e;return s().createElement(Fr,{classes:{root:o},value:t,onChange:r,options:n.map((e=>{let{uri:t,label:r}=e;return{value:t,label:r}}))})};Br.propTypes={value:i().string,onChange:i().func,graphTypes:i().arrayOf(D.GraphTypeType),className:i().string};const Ur=Br;var Hr=r(39600);function zr(){return zr=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},zr.apply(this,arguments)}const qr=e=>{let{value:t,onChange:r}=e,n=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["value","onChange"]);const o=(0,u.pipe)((e=>e&&e.getTime()),r);return s().createElement(Hr.Z,zr({value:t,label:h().text("Effective date"),onChange:o,margin:"dense"},n))};qr.propTypes={value:ae,onChange:i().func};const Wr=qr;var Gr=r(26446),Vr=r.n(Gr),Zr=r(36444),Qr=r(70595),Jr=r(90324),Kr=r(46907),$r=r.n(Kr),Xr=r(46973),Yr=r.n(Xr);const en="23px",tn=(0,S.makeStyles)((()=>({triggerButton:{minWidth:0,color:"rgba(0,0,0,0.54)",width:"36px"},popupContent:{paddingTop:"19px",paddingBottom:"23px",paddingLeft:en,paddingRight:en,minWidth:"245px",maxWidth:"308px",width:"40%"},title:{marginBottom:"30px"},sortControls:{display:"flex",alignItems:"center"},sortSelectorRoot:{flex:1,padding:"13px 16px",fontSize:"0.85rem"},sortSelectorMenuItem:{fontSize:"0.85rem"},sortOrderButton:{flexShrink:0,margin:"0 8px 0 7px"},checkboxControlRoot:{marginTop:"6px",marginLeft:"-12px"},checkboxControlLabel:{fontSize:"0.85rem"},checkboxControlCheckbox:{marginRight:"5px"},divider:{backgroundColor:"rgba(0,0,0,0.1)",margin:"19px -23px"}}))),rn=(0,v.Z)($r()),nn=[{label:h().text("Relationship type label"),value:D.TREE_SORT_FIELD_VALUES.relationTypeLabel},{label:h().text("Entity label"),value:D.TREE_SORT_FIELD_VALUES.entityLabel}],on=e=>{let{className:t,sortField:r,sortOrder:n,onSort:o,showSecondaryLabel:a,showSecondaryLabelDisabledReason:i,onShowSecondaryLabelChange:c}=e;const d=tn(),u=(0,l.useRef)(),[g,m]=(0,l.useState)(!1),b=n===D.TREE_SORT_ORDER_VALUES.asc,y=()=>m((e=>!e));return s().createElement(s().Fragment,null,s().createElement(tr(),{ref:u,classes:{root:p()(d.triggerButton,t)},onClick:y},s().createElement(Zr.Z,null)),s().createElement(Vr(),{open:g,classes:{paper:d.popupContent},anchorEl:u.current,onClose:y,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"}},c&&s().createElement(s().Fragment,null,s().createElement(f(),{className:d.viewOptionsTitle,variant:"h6"},h().text("View options")),s().createElement(rn,{tooltipTitle:i,showForDisabled:!!i,classes:{root:d.checkboxControlRoot,label:d.checkboxControlLabel},control:s().createElement(Ce(),{className:d.checkboxControlCheckbox,checked:a||!1,onChange:e=>c(e.target.checked)}),label:h().text("Display secondary label"),disabled:!!i}),s().createElement(Yr(),{className:d.divider})),s().createElement(f(),{className:d.title,variant:"h6"},h().text("Sort by")),s().createElement("div",{className:d.sortControls},s().createElement(Mr.Z,{entries:nn,TextFieldProps:{variant:"filled"},classes:{root:d.sortSelectorRoot,menuItem:d.sortSelectorMenuItem},fullWidth:!0,disableUnderline:!0,value:r,onChange:e=>{o({sortField:e,sortOrder:n})},MenuProps:{getContentAnchorEl:null,anchorOrigin:{vertical:"bottom",horizontal:"left"}}}),s().createElement(kt.k,{tooltipTitle:b?h().text("Ascending"):h().text("Descending"),icon:b?Jr.Z:Qr.Z,onClick:()=>{o({sortField:r,sortOrder:b?D.TREE_SORT_ORDER_VALUES.desc:D.TREE_SORT_ORDER_VALUES.asc})},className:d.sortOrderButton,size:"L"}))))};on.propTypes={className:i().string,sortField:i().string,sortOrder:i().string,onSort:i().func,showSecondaryLabel:i().bool,showSecondaryLabelDisabledReason:i().string,onShowSecondaryLabelChange:i().func};const an=on;var ln=r(25182),sn=r.n(ln),cn=r(63764),dn=r.n(cn);const pn=(0,S.makeStyles)((()=>({text:{fontSize:"12px",lineHeight:"14px",letterSpacing:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},textContainer:{maxWidth:"calc(100% - 13px)"},separator:{marginLeft:"4px",marginRight:"4px"}})));function un(){return un=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},un.apply(this,arguments)}const gn=e=>{let{items:t=[]}=e,r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,["items"]);const n=pn();return s().createElement(sn(),un({"aria-label":h().text("Breadcrumb"),expandText:h().text("Show path"),classes:{li:n.textContainer,separator:p()(n.text,n.separator)}},r),t.map(((e,t,r)=>{const{label:o,href:a,onClick:i}=e,l=t===r.length-1?"textPrimary":"textSecondary";return i||a?s().createElement(dn(),{key:t,color:l,classes:{root:n.text},href:a,onClick:i},o):s().createElement(f(),{key:t,href:a,color:l,classes:{root:n.text}},o)})))},hn=i().shape({label:i().string.isRequired,href:i().string,onClick:i().func});gn.propTypes={items:i().arrayOf(hn)};const mn=gn,fn=Se.profile.trees.actions,bn=["showSecondaryLabel"],yn=(0,u.pipe)((0,u.filter)((0,u.anyPass)([(0,u.has)("root"),...bn.map((e=>(0,u.has)(e)))])),(0,u.map)((0,u.pick)(bn)),(0,u.reject)(u.isEmpty)),vn=Se.profile.trees.actions;function On(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const En=Se.profile.trees.actions,wn=e=>{let{config:t,tree:r,metadata:n,entity:o={},mode:a,className:i}=e;const{id:c,caption:d,graph:g,showPath:m}=t,{uri:b,type:y}=o,v=(0,l.useRef)(Date.now()),{activenessDate:O=v.current,sortField:E,sortOrder:w,loading:x,errorMessage:C,showSecondaryLabel:S}=r||{},N=jt(t),T=Ft(t),k=yt(S,T),[I,A]=(0,l.useState)(g.type),j=(0,l.useMemo)((()=>((0,D.getGraphTypesForEntityType)(n,y),[])),[n,y]),_=ct(n,I),L=(0,R.useDispatch)(),F=(0,l.useCallback)((e=>{let{sortField:t,sortOrder:r}=e;L(En.treeSorted({id:c,typesLabelsMap:(0,D.createRelationTypesLabelsMap)(n),sortField:t,sortOrder:r})),L((e=>(t,r)=>{const n=Ne().selectors.getTree(r(),e),o=(0,u.path)(["root","children",0,"entity","uri"],n);o&&t(st({id:e,uri:o}))})(c))}),[c,n,L]),B=(0,l.useCallback)((0,D.debounce)((()=>L((e=>(t,r)=>{const n=r(),o=Ne().selectors.getTrees(n),a=yn(o);t(fn.treesStateSaved({id:e,state:a}))})(c))),500),[c,L]),U=(0,l.useCallback)((e=>{L(En.treeSecondaryLabelShown({id:c,show:e})),B()}),[c,L,B]);(0,l.useEffect)((()=>{E&&w||F({sortField:Lt(t),sortOrder:Mt(t)})}),[F,E,w,t]),(e=>{let{entityUri:t,id:r,graphTypes:n,activenessDate:o,isReversed:a,enabled:i}=e;const s=(0,Ir._)({cancelOnUnmount:!1}),c=(0,R.useDispatch)(),d=(0,R.useSelector)(Ne().selectors.getMetadata),p=(0,R.useSelector)((e=>Ne().selectors.getTree(e,r)))||{},{root:g,isReversed:m,graphTypes:f}=p,b=(0,M.D)(o)||o,y=(0,l.useCallback)((()=>setTimeout((()=>c(st({id:r,uri:t}))),100)),[r,t,c]),v=!!g,O=(0,R.useSelector)(Ne().selectors.getEntity);(0,nr.D)((()=>{const e=(0,D.updateTreesWithNewEntity)((0,u.pick)(["uri","label","secondaryLabel","type"],O),{[r]:p});e.length&&c(jr.treeChanged({id:r,tree:e[0].root}))}),[null==O?void 0:O.updatedTime]),(0,l.useEffect)((()=>{i&&v&&y()}),[i,y,v]),(0,l.useEffect)((()=>{if(i){const e=e=>jr.treeLoaded({id:r,tree:e,graphTypes:n,activenessDate:o,isReversed:a}),i=(0,u.pipe)(qe,e,c);(!(0,D.hasEntityInTree)(g,t)||m!==a||b!==o||f!==n||mt(g))&&(c(jr.treeLoading(r)),s((0,D.getTree)({uri:t,graphTypes:n,activenessDate:o,isReversed:a})).then((e=>i(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){Ar(e,t,r[t])}))}return e}({},e,{graphTypes:n}),d))).then((e=>y())).catch((e=>{c(jr.treeLoadedWithError({id:r,errorMessage:(0,D.getRequestErrorMessage)(e,h().text("Something went wrong"))})),console.warn(e)})))}}),[t,g,n,o,r,d,a,i,s,c,y,m,f,b])})({id:c,entityUri:b,graphTypes:I,activenessDate:O,isReversed:N,enabled:b&&(0,D.isViewMode)(a)&&!(0,D.isTempUri)(b)}),(e=>{let{id:t,entityUri:r,graphTypes:n,activenessDate:o,isReversed:a}=e;const i=(0,R.useDispatch)(),s=(0,R.useSelector)(Ne().selectors.getMetadata),c=(0,R.useSelector)((e=>Ne().selectors.getModifiedEntity(e,r))),{root:d}=(0,R.useSelector)((e=>Ne().selectors.getTree(e,t)))||{};(0,l.useEffect)((()=>{var e;if(c&&(0,D.isTempUri)(r)&&(null==d||null===(e=d.entity)||void 0===e?void 0:e.uri)!==r){const e=e=>vn.treeLoaded({id:t,tree:e,graphTypes:n,activenessDate:o,isReversed:a});(0,u.pipe)(qe,e,i)({root:{entity:c,total:0},graphTypes:n},s)}}),[o,i,r,n,t,a,s,c,d])})({id:c,entityUri:b,graphTypes:I,activenessDate:O,isReversed:N});const H=(0,l.useCallback)((e=>L(lt({parentUri:e.entity.uri,parentId:e.nodeId,graphTypes:I,activenessDate:O,id:c,isReversed:N}))),[I,O,c,L,N]),z=(0,l.useCallback)((e=>L((e=>{let{uri:t,graphTypes:r,activenessDate:n,id:o,isReversed:a}=e;return e=>{const i=(0,u.pipe)(ot(a),(e=>it.entitiesMappingLoaded({id:o,entitiesSubMap:e})),e);return(0,D.getHops)({uri:t,graphTypes:r,activenessDate:n}).then(i)}})({uri:e.entity.uri,graphTypes:I,activenessDate:O,id:c,isReversed:N}))),[I,O,c,N,L]),q=(0,l.useCallback)((e=>{L(En.treeChanged({id:c,tree:e}))}),[L,c]),W=(0,l.useCallback)((e=>{L(En.activenessDateChanged({id:c,activenessDate:e}))}),[L,c]),G=(0,l.useCallback)((e=>{L(st({id:c,uri:b}))}),[L,c,b]),V=(0,l.useCallback)((e=>{const{node:t,nextParentNode:r}=e,{entity:n}=r||{},{relation:o,entity:a}=t;o?L(En.treeRelationRepointed({entity:a,relation:o,newParent:n,isReversed:N})):console.error("relation not found:"+JSON.stringify(e))}),[L,N]),[Z,Q]=(0,l.useState)({}),J=(0,l.useCallback)((e=>{let{checked:t,node:r}=e;Q(t?e=>function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?Object(arguments[t]):{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){On(e,t,r[t])}))}return e}({},e,{[r.nodeId]:r}):(0,u.omit)([r.nodeId]))}),[]),K=(0,l.useCallback)((()=>{L(Se.ui.actions.openGraph({viewId:c,graphType:I}))}),[L,c,I]),$=(0,l.useCallback)((()=>Q({})),[]);(0,l.useEffect)($,[a]);const X=Dr(),Y=(0,l.useMemo)((()=>(0,D.getPathByEntityUri)((r||{}).root,b).map((e=>({label:(0,D.getLabel)((0,u.path)(["entity","label"],e))})))),[r,b]);return s().createElement(Pr.Z,{className:p()(X.view,i)},s().createElement(P,{title:d,onScrollToCurrentEntity:G,entityLabel:(0,D.getLabel)(o.label),onGraphOpen:K,disabled:x}),x&&s().createElement(Rr.Z,{className:X.linearIndicator}),j.length>0&&s().createElement(Ur,{className:X.graphTypeSelector,value:I,onChange:A,graphTypes:j}),s().createElement("div",{className:X.filtersBar},s().createElement(Wr,{className:X.activenessDate,value:O,onChange:W,fullWidth:!0}),s().createElement(an,{sortField:E,sortOrder:w,className:X.filterSortButton,onSort:F,showSecondaryLabel:k,onShowSecondaryLabelChange:T?U:void 0,showSecondaryLabelDisabledReason:_?"":h().text("Entity types in this hierarchy don't have any secondary label pattern defined.")})),m&&Y.length>0&&s().createElement(mn,{items:Y,className:X.breadcrumbs}),C?s().createElement(f(),{className:X.errorMessage},C):s().createElement(kr,{config:t,tree:r,onTreeChanged:q,mode:a,onNodeMoved:V,onParentsRequested:z,onChildrenRequested:H,onToggleNodeCheckbox:J,checkedNodes:Z}))};wn.propTypes={classes:i().object,className:i().string,config:i().object,tree:ie,total:i().number,entity:i().object,metadata:D.MetadataType,mode:i().string};const xn=wn,Cn=(0,R.connect)(((e,t)=>({tree:Ne().selectors.getTree(e,t.config.id),total:Ne().selectors.getTreeTotal(e,t.config.id),entity:Ne().selectors.getEntity(e),metadata:Ne().selectors.getMetadata(e),mode:Ne().selectors.getMode(e)})),void 0)(xn);var Sn=r(35985),Nn=r(12212),Tn=r(97333);const kn=(0,S.createGenerateClassName)({productionPrefix:"hierarchyTree",disableGlobal:!0}),Pn=e=>{let{config:t,store:r,onResize:n=u.identity,className:a}=e;return s().createElement(R.Provider,{store:r},s().createElement(Nn.m.Provider,{value:t.id},s().createElement(S.StylesProvider,{generateClassName:kn},s().createElement(Sn.is,{utils:o.Z},s().createElement(c.Z,{handleHeight:!0,onResize:(e,t)=>n(Math.floor(e),Math.floor(t))}),t&&s().createElement(Cn,{config:t,className:a}),s().createElement(Tn.Z,null)))))};Pn.propTypes={config:D.HierarchyTreeViewConfigType,store:i().object,onResize:i().func,className:i().string};const Rn=Pn},96330:(e,t,r)=>{e.exports=r.p+"5271a9e7b6651c852e93.png"}}]);