@reltio/remotes 1.4.1176 → 1.4.1180

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.
Files changed (176) hide show
  1. package/1136.js +2 -0
  2. package/1136.js.map +1 -0
  3. package/1196.css +2 -0
  4. package/1196.css.map +1 -0
  5. package/1196.js +2 -1
  6. package/1196.js.map +1 -0
  7. package/{8096.js → 1274.js} +2 -1
  8. package/1274.js.map +1 -0
  9. package/1396.js +2 -1
  10. package/1396.js.map +1 -0
  11. package/1406.js +2 -0
  12. package/1406.js.map +1 -0
  13. package/1635.js +2 -1
  14. package/1635.js.map +1 -0
  15. package/1920.js +2 -1
  16. package/1920.js.map +1 -0
  17. package/1957.css +2 -0
  18. package/1957.css.map +1 -0
  19. package/1957.js +2 -1
  20. package/1957.js.map +1 -0
  21. package/2114.js +2 -0
  22. package/2114.js.map +1 -0
  23. package/2244.js +2 -1
  24. package/2244.js.map +1 -0
  25. package/2393.js +2 -1
  26. package/2393.js.map +1 -0
  27. package/2605.js +2 -1
  28. package/2605.js.map +1 -0
  29. package/2890.js +2 -1
  30. package/2890.js.map +1 -0
  31. package/2899.js +2 -1
  32. package/2899.js.map +1 -0
  33. package/3126.js +2 -0
  34. package/3126.js.map +1 -0
  35. package/3213.js +2 -1
  36. package/3213.js.map +1 -0
  37. package/3348.js +2 -1
  38. package/3348.js.map +1 -0
  39. package/3405.js +2 -1
  40. package/3405.js.map +1 -0
  41. package/350.js +2 -1
  42. package/350.js.map +1 -0
  43. package/366.js +2 -1
  44. package/366.js.map +1 -0
  45. package/3745.js +2 -1
  46. package/3745.js.map +1 -0
  47. package/3980.js +2 -1
  48. package/3980.js.map +1 -0
  49. package/3981.js +2 -0
  50. package/3981.js.map +1 -0
  51. package/4132.js +2 -1
  52. package/4132.js.map +1 -0
  53. package/4277.js +2 -1
  54. package/4277.js.map +1 -0
  55. package/4361.js +2 -1
  56. package/4361.js.map +1 -0
  57. package/4582.js +2 -1
  58. package/4582.js.map +1 -0
  59. package/4689.js +2 -1
  60. package/4689.js.map +1 -0
  61. package/4803.js +2 -1
  62. package/4803.js.map +1 -0
  63. package/4843.js +1 -1
  64. package/4863.js +2 -1
  65. package/4863.js.map +1 -0
  66. package/4889.js +2 -1
  67. package/4889.js.map +1 -0
  68. package/5026.js +2 -1
  69. package/5026.js.map +1 -0
  70. package/5198.js +2 -1
  71. package/5198.js.map +1 -0
  72. package/5312.js +2 -1
  73. package/5312.js.map +1 -0
  74. package/5400.js +2 -1
  75. package/5400.js.map +1 -0
  76. package/5701.js +2 -1
  77. package/5701.js.map +1 -0
  78. package/5709.js +2 -1
  79. package/5709.js.map +1 -0
  80. package/5714.js +2 -1
  81. package/5714.js.map +1 -0
  82. package/5720.js +2 -1
  83. package/5720.js.map +1 -0
  84. package/5797.js +2 -0
  85. package/5797.js.map +1 -0
  86. package/5805.js +2 -1
  87. package/5805.js.map +1 -0
  88. package/5884.js +2 -1
  89. package/5884.js.map +1 -0
  90. package/5912.js +2 -1
  91. package/5912.js.map +1 -0
  92. package/5953.js +2 -1
  93. package/5953.js.map +1 -0
  94. package/621.js +2 -0
  95. package/621.js.map +1 -0
  96. package/6244.js +2 -1
  97. package/6244.js.map +1 -0
  98. package/6248.js +2 -1
  99. package/6248.js.map +1 -0
  100. package/6596.css +2 -0
  101. package/6596.css.map +1 -0
  102. package/6596.js +2 -1
  103. package/6596.js.map +1 -0
  104. package/6710.js +2 -1
  105. package/6710.js.map +1 -0
  106. package/6719.js +2 -1
  107. package/6719.js.map +1 -0
  108. package/6971.js +2 -1
  109. package/6971.js.map +1 -0
  110. package/7147.js +2 -0
  111. package/7147.js.map +1 -0
  112. package/7265.js +2 -1
  113. package/7265.js.map +1 -0
  114. package/7526.js +2 -0
  115. package/7526.js.map +1 -0
  116. package/7621.js +2 -1
  117. package/7621.js.map +1 -0
  118. package/7737.js +2 -1
  119. package/7737.js.map +1 -0
  120. package/781.js +2 -1
  121. package/781.js.map +1 -0
  122. package/79.js +2 -1
  123. package/79.js.map +1 -0
  124. package/8047.js +2 -1
  125. package/8047.js.map +1 -0
  126. package/8122.js +2 -1
  127. package/8122.js.map +1 -0
  128. package/8148.js +2 -1
  129. package/8148.js.map +1 -0
  130. package/8419.js +2 -1
  131. package/8419.js.map +1 -0
  132. package/8570.js +2 -1
  133. package/8570.js.map +1 -0
  134. package/8581.js +2 -1
  135. package/8581.js.map +1 -0
  136. package/8753.js +2 -1
  137. package/8753.js.map +1 -0
  138. package/8794.js +2 -1
  139. package/8794.js.map +1 -0
  140. package/8969.js +2 -1
  141. package/8969.js.map +1 -0
  142. package/9394.js +2 -1
  143. package/9394.js.map +1 -0
  144. package/9431.js +2 -1
  145. package/9431.js.map +1 -0
  146. package/9446.js +2 -1
  147. package/9446.js.map +1 -0
  148. package/9503.js +2 -0
  149. package/9503.js.map +1 -0
  150. package/9551.js +2 -1
  151. package/9551.js.map +1 -0
  152. package/9630.js +2 -1
  153. package/9630.js.map +1 -0
  154. package/9838.css +2 -0
  155. package/9838.css.map +1 -0
  156. package/9838.js +2 -1
  157. package/9838.js.map +1 -0
  158. package/9854.js +2 -1
  159. package/9854.js.map +1 -0
  160. package/9983.js +2 -0
  161. package/9983.js.map +1 -0
  162. package/main.js +2 -1
  163. package/main.js.map +1 -0
  164. package/package.json +1 -1
  165. package/remoteEntry.js +2 -1
  166. package/remoteEntry.js.map +1 -0
  167. package/1526.js +0 -1
  168. package/4327.js +0 -1
  169. package/4418.js +0 -1
  170. package/4754.js +0 -1
  171. package/6186.js +0 -1
  172. package/6190.js +0 -1
  173. package/6250.js +0 -1
  174. package/6349.js +0 -1
  175. package/696.js +0 -1
  176. package/8308.js +0 -1
package/4361.js CHANGED
@@ -1 +1,2 @@
1
- "use strict";(self.webpackChunk_reltio_remotes=self.webpackChunk_reltio_remotes||[]).push([[4361],{14361:(e,t,n)=>{n.r(t),n.d(t,{RelationshipsTableView:()=>Xe});var o=n(8598),a=n(13980),r=n.n(a),l=n(24328),i=n.n(l),c=n(44443),s=n(17440),u=n(52730),p=n(59431),d=n(65549),m=n(94079),g=n(87918),h=n.n(g),f=n(79692);const y=(0,f.Z)({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"}}),b=e=>{let{onClick:t}=e;const n=y();return i().createElement(m.Button,{color:"primary",className:n.addButton,onClick:t},i().createElement(d.Z,{classes:{root:n.icon}}),i().createElement("div",{className:n.label},h().text("Add")))};b.propTypes={onClick:r().func};const v=b;var C=n(71153),w=n.n(C),E=n(56306);const R={textDecoration:"line-through",color:"rgba(0,0,0,.54)"},x={color:"rgba(0,0,0,.54)"},O=(0,f.Z)((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 &":R,"$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)":R},"row-cell--inactive":x})));function P(){return P=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},P.apply(this,arguments)}const T=e=>{let{cell:t,CellValueRenderer:n,rowValue:{connection:o},isSorted:a}=e,r=function(e,t){if(null==e)return{};var n,o,a=function(e,t){if(null==e)return{};var n,o,a={},r=Object.keys(e);for(o=0;o<r.length;o++)n=r[o],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o<r.length;o++)n=r[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}(e,["cell","CellValueRenderer","rowValue","isSorted"]);const l=O(),c=(0,E.$qe)(o),s=(0,E.Fn9)(o.relation)&&(0,E.Fn9)(o.entity);return i().createElement("div",{className:w()({[l["row-cell--sorted"]]:a,[l["row-cell--removed"]]:c,[l["row-cell--inactive"]]:!s},l.rowCell)},t.values.map(((e,t)=>i().createElement(n,P({key:t,value:e},r)))))};T.propTypes={rowValue:r().object,cell:r().object,CellValueRenderer:r().elementType,isSorted:r().bool};const S=T;var j=n(85709),k=n(94656),N=n(39450),I=n(31254),D=n(88611);const Z=e=>{let{value:{entityType:t,entity:n}}=e;const o=(0,u.useDispatch)(),a=(0,l.useContext)(N.m),r=O(),c=(0,E.idV)(n.entityLabel),d=(0,E.wwR)({uri:n.entityUri,dataTenant:n.dataTenant});return i().createElement("div",{className:r.entityCell},i().createElement(I.Z,{className:r.entityAvatar,entityType:t}),i().createElement(D.C,{value:c},i().createElement("span",{className:r.entityLabel,onClick:(0,s.pipe)((0,s.always)({uri:d,viewId:a}),p.ui.actions.openEntity,o)},c)))};Z.propTypes={value:r().shape({entity:r().shape({entityUri:r().string,entityLabel:r().string}),entityType:E.p8l})};const A=Z;var F=n(92332);const z=(0,n(67353).Z)((e=>{const t=O();return i().createElement("div",{className:t.headCell},i().createElement(F.default,e))}));var _=n(64091);const L=(0,s.pipe)((0,s.map)((e=>e.uri||e)),s.uniq);function U(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const V=(0,s.pipe)((0,s.split)("."),(0,s.slice)(2,1/0)),B=e=>{if(e.startsWith("relation.attributes")){const t=V(e);return t.length>1?t.slice(0,-1):null}return null},M=(0,s.map)((e=>{return function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){U(e,t,n[t])}))}return e}({},e,{sortable:!0,resizable:!0,nestedPath:B(e.id),headCellRenderer:z,rowCellValueRenderer:(t=e.id,"entity.label"===t?A:_.Z)});var t})),W=(0,f.Z)({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 H=n(27604),Q=n(22983);const q=e=>{let{canUpdate:t,canRemove:n,handleEditRelation:o,handleRemoveRelation:a}=e;return i().createElement(i().Fragment,null,t&&i().createElement(m.Tooltip,{title:h().text("Edit")},i().createElement(m.IconButton,{onClick:o},i().createElement(H.Z,null))),n&&i().createElement(m.Tooltip,{title:h().text("Remove")},i().createElement(m.IconButton,{onClick:a},i().createElement(Q.Z,null))))};q.propTypes={canUpdate:r().bool,canRemove:r().bool,handleEditRelation:r().func,handleRemoveRelation:r().func};const G=q;function $(){return $=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},$.apply(this,arguments)}const Y=e=>{let{mode:t,columnsData:n,connections:o,metadata:a,sorting:r,onSort:c,filters:u,onFilter:d,onEditRelation:m,onRemoveRelation:g,basicTableRef:h,allowOnlyCreateNew:f}=e;const y=(0,l.useMemo)((()=>((e,t,n)=>e.map((e=>(0,s.pipe)((0,s.reduce)(((t,o)=>{let{id:a}=o;return(0,s.assoc)(a,((e,t,n)=>{let{entity:o,relation:a}=t;switch(e){case"entity.label":return{entity:o,entityType:(0,E.nt9)(n,o.entityType)};case"relation.label":return a.relationLabel||(0,E.Lmx)(n,a.relationType);case"relation.activeness.startDate":return a.startDate;case"relation.activeness.endDate":return a.endDate;default:return((e,t)=>(0,s.pipe)((0,s.path)(["object","attributes"]),(0,E.tT_)(e))(t))(V(e),a)}})(a,e,n),t)}),{}),(0,s.assoc)("connection",e))(t))))(o,n,a)),[o,n,a]),b=(0,l.useMemo)((()=>M(n)),[n]),v=W(),C=(0,l.useCallback)((e=>i().createElement(S,$({},e,{isSorted:!!r&&r.field===e.columnData.id}))),[r]),[w,R]=(0,l.useState)(null),{canRemove:x,canUpdate:O}=(e=>{let{metadata:t,mode:n,connection:o,onRemoveRelation:a,onEditRelation:r,allowOnlyCreateNew:l}=e;const i=(0,E.xvW)(o);if(p.N5.mode.selectors.getIsEditableMode(n)&&o&&(!l||i)){const{relation:{relationType:e}}=o,l=(0,E.$qe)(o),i=(0,E.V3K)(t,e);return{canRemove:a&&!l&&(0,E.Edd)(n,i),canUpdate:r&&!l&&(0,E.Z5t)(n,i)}}return{canRemove:!1,canUpdate:!1}})({mode:t,onRemoveRelation:g,onEditRelation:m,metadata:a,allowOnlyCreateNew:f,connection:(0,s.path)([w,"connection"],y)}),P=(0,l.useCallback)((e=>R(e)),[]),T=(0,l.useCallback)((()=>m((0,s.path)([w,"connection"],y))),[w,m,y]),k=(0,l.useCallback)((()=>g((0,s.path)([w,"connection","relation","relationUri"],y))),[w,g,y]),N=x||O?i().createElement(G,{handleEditRelation:T,handleRemoveRelation:k,canRemove:x,canUpdate:O}):void 0;return i().createElement("div",{className:v.tableContainer},i().createElement(j.Z,{columnsData:b,rowsData:y,sorting:r,onSort:c,filters:u,onFilter:d,hoverStateEnabled:!0,defaultColumnWidth:250,defaultColumnMinWidth:200,headRowHeight:56,renderRowCell:C,onRowHover:P,hoverRowIndex:w,hoveredRowRightContent:N,classes:{hoveredRowRightContentWrapper:v["row-cell__buttons-wrapper"],hoveredRowRightContentContainer:v["row-cell__buttons-container"]},ref:h}))};Y.propTypes={mode:r().string,columnsData:k.uz,connections:r().arrayOf(E.Rjq),metadata:E.pGS,filters:r().objectOf(k.Dq),onFilter:r().func,sorting:k.nI,onSort:r().func,onEditRelation:r().func,onRemoveRelation:r().func,basicTableRef:r().shape({current:r().object}),allowOnlyCreateNew:r().bool};const J=Y;var K=n(93416),X=n(75512),ee=n(30553),te=n(32152),ne=n(1876),oe=n(60894),ae=n(43054),re=n(8818);const le=(0,f.Z)((()=>({popupContent:{padding:"19px 23px"},checkboxControlLabel:{fontSize:"0.85rem"},checkboxControlCheckbox:{marginRight:"5px"}}))),ie=e=>{let{className:t,showInactive:n,onShowInactiveChange:o}=e;const a=le(),r=(0,l.useRef)(),[c,s]=(0,l.useState)(!1),u=()=>s((e=>!e));return i().createElement(i().Fragment,null,i().createElement(re.k,{className:t,ref:r,tooltipTitle:h().text("More"),icon:ae.Z,onClick:u,size:"L"}),i().createElement(m.Popover,{open:c,classes:{paper:a.popupContent},anchorEl:r.current,onClose:u,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"}},i().createElement(m.FormControlLabel,{classes:{label:a.checkboxControlLabel},control:i().createElement(m.Checkbox,{className:a.checkboxControlCheckbox,checked:n||!1,onChange:e=>o(e.target.checked)}),label:h().text("Show inactive Relationships")})))},ce=(0,f.Z)({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"}}),se=e=>{let{title:t,total:n,searchQuery:o,onChangeSearchQuery:a,filtersEnabled:r,onToggleFilters:l,columnsData:c,selectedColumns:s,onChangeColumns:u,showInactive:p,onChangeShowInactive:d}=e;const g=ce();return i().createElement(K.Z,{title:t,className:g.header},i().createElement(X.Z,{widthToHide:500},i().createElement(ee.Z,{height:24,margin:16}),i().createElement(m.Typography,{className:g.totalCaption,variant:"caption"},n>1?h().text("${count} entities",{count:n}):h().text("${count} entity",{count:n}))),i().createElement(te.i,{query:o,onChange:a}),i().createElement(ne.Z,{enabled:r,onClick:l}),i().createElement(ee.Z,{height:24,margin:4}),i().createElement(oe.Z,{columnsData:c,selectedColumns:s,onChangeColumns:u}),i().createElement(ie,{className:g.moreButton,showInactive:p,onShowInactiveChange:d}))};se.propTypes={title:r().string,total:r().number,columnsData:k.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 ue=se;var pe=n(26180),de=n(31276);function me(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.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 he="CHANGE_SEARCH_QUERY",fe="CHANGE_SHOW_INACTIVE",ye=me({},pe.ZP.actions,{changeSearchQuery:(0,de.zD)(he),changeShowInactive:(0,de.zD)(fe)}),be=(e,t)=>{switch(t.type){case he:return me({},e,{searchQuery:t.payload,page:0});case fe:return me({},e,{showInactive:t.payload});default:return pe.ZP.reducer(e,t)}};var ve=n(26481),Ce=n(37152),we=n(52016),Ee=n(10237),Re=n(11013),xe=n(58662),Oe=n(99136);const Pe=[10,25,50,100],Te=[{id:"entity.label",get label(){return h().text("Entity label")},dataTypeDefinition:{type:E.oS0.TYPE_STRING},hideable:!1},{id:"relation.label",get label(){return h().text("Directional label")},dataTypeDefinition:{type:E.oS0.TYPE_STRING}},{id:"relation.activeness.startDate",get label(){return h().text("Start date")},dataTypeDefinition:E.PY2.startDate},{id:"relation.activeness.endDate",get label(){return h().text("End date")},dataTypeDefinition:E.PY2.endDate}],Se=(0,s.pipe)(E.Tde,(0,s.concat)("relation.")),je=(0,s.pipe)((0,s.map)((e=>({id:Se(e.uri),label:e.label,dataTypeDefinition:(0,E.PFL)(e)}))),(0,s.uniqBy)((0,s.prop)("id"))),ke=(0,s.pipe)(((e,t)=>{let{content:{inRelations:n=[],outRelations:o=[]}}=e,{relationTypes:a}=t;return(0,s.pipe)(L,(0,s.chain)((e=>(0,s.pipe)((0,s.find)((0,s.propEq)("uri",e)),E.DK$)(a))))([...n,...o])}),je,(0,s.concat)(Te));var Ne=n(99341);function Ie(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){De(e,t,n[t])}))}return e}function De(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Ze=e=>e.uri||e,Ae=e=>t=>Ze(t)===e,Fe=(0,s.curry)(((e,t)=>{const n=(t,o)=>{let a=Ze(o),r=!1;a.startsWith("!")&&(a=a.slice(1),r=!0);const l=e[a]&&(0,E.uGe)(E.BDP.READ,e[a]),i=t.find(Ae(a))||!l?t:t.concat(o.uri?Ie({},o,{uri:a}):a);return r?i:(0,s.keys)(e).reduce(((t,o)=>e[o].extendsTypeURI!==a||t.find(Ae(o))?t:n(t,o)),i)};return t.reduce(n,[])})),ze=(0,s.curry)(((e,t)=>{const n=function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return n.reduce(((n,o)=>{const a=Ze(o),r=(0,s.path)([a,t,"objectTypeUri"],e);return!r||n.find(Ae(r))?n:n.concat(r)}),[])};return Ie({},t,{entityTypes:[...n("startObject",t.inRelations),...n("endObject",t.outRelations)]})})),_e=(0,s.indexBy)((0,s.prop)("uri")),Le=(0,s.curry)(((e,t)=>{const n=_e(e.relationTypes),o=_e(e.entityTypes),a=e=>(0,s.evolve)({inRelations:Fe(n),outRelations:Fe(n),entityTypes:Fe(o),nextEntry:a},e);return(0,s.pipe)((0,s.unless)((0,s.either)((0,s.prop)("nextEntry"),(0,s.prop)("entityTypes")),ze(n)),a)(t)})),Ue=(0,f.Z)({addArea:{display:"flex",alignItems:"center",height:"48px",borderBottom:"1px solid rgba(0, 0, 0, 0.12)"}}),Ve=(0,s.pluck)("id",Te),[Be]=Ve,Me=e=>{let{className:t,config:n,entity:o,metadata:a,connections:r=[],total:c=0,mode:u,relationToAdd:d,relationsToEdit:m=[],checkIfCanAddRelations:g,dispatch:h}=e;const f={searchQuery:"",filters:null,visibleColumns:Ve,sorting:{order:n.sortOrder||"asc",field:n.sortColumn||Be},page:0,rowsPerPage:n.max||15,showInactive:!1},y=Ue(),b=(0,l.useContext)(ve.j)?u:E.fO_.VIEWING,[C,w]=(0,l.useReducer)(be,f),R=(0,s.pipe)(ye.changeSearchQuery,w),x=(0,s.pipe)(ye.changeShowInactive,w);(0,l.useEffect)((()=>{R("")}),[null==o?void 0:o.uri]);const{visibleColumns:O,searchQuery:P,filters:T,sorting:S,page:j,rowsPerPage:k,showInactive:N}=C,I=(0,l.useMemo)((()=>ke(n,a)),[n,a]),D=(0,l.useMemo)((()=>O.map((e=>I.find((0,s.propEq)("id",e))))),[O,I]),Z=(0,l.useMemo)((()=>((e,t,n)=>{const o=E.wSh.fromFalsy(e).map(E.zHo).map((e=>`containsWordStartingWith(entity.label,${e}) or containsWordStartingWith(relation.label,${e})`)).orSome(""),a=(0,Ne.Tz)(n,t);return(new E.MEy).addClause(o).addClause(a).build()})(P,T,D)),[T,P]),{isLoading:A}=(0,Ce.a)({sorting:S,filter:Z,page:j,rowsPerPage:k,config:n,entity:o,relationActivityFilter:N?E.YJ7.ALL:E.YJ7.ACTIVE_ONLY,mode:u}),F=(0,l.useMemo)((()=>{return e=f.rowsPerPage,Pe.filter((t=>t!==e)).concat(e).sort(s.subtract);var e}),[]),{handleRowsPerPageChange:z,handlePageChange:_}=(0,l.useMemo)((()=>({handleRowsPerPageChange:(0,s.pipe)(ye.changeRowsPerPage,w),handlePageChange:(0,s.pipe)(ye.changePage,w)})),[]),L=(0,l.useCallback)((()=>{const e=(0,E.vlo)({config:n,mode:b,metadata:a});(0,s.pipe)(p.N5.relations.actions.openRelationEditor(n.id),h)(e)}),[n,b,a,h]),U=(0,l.useCallback)((e=>{h(p.N5.relations.actions.closeRelationEditor(n.id,e)),h(p.N5.relations.actions.removeRelation(n.id,e));const t=r.find((t=>p.N5.relations.selectors.getRelationUriFromConnection(t)===e)),o=p.N5.relations.selectors.getEntityUriFromConnection(t);(0,E.ZiX)(o)&&h(p.N5.modifiedEntities.actions.entityDeleted(o))}),[n,r,h]),V=o&&g,B=d?[d,...m]:m,{canUpdate:M,canDelete:W}=(0,we.l)(),H=M(n),Q=W(n),q=(0,l.useRef)(null);return i().createElement(Ee.Z,{className:t},i().createElement(ue,{title:n.caption,total:c,columnsData:I,selectedColumns:O,onChangeColumns:(0,s.pipe)(ye.changeColumns,w),searchQuery:P,onChangeSearchQuery:R,filtersEnabled:!!T,onToggleFilters:(0,s.pipe)(ye.toggleFilters,w),showInactive:N,onChangeShowInactive:x}),V&&i().createElement("div",{className:y.addArea},i().createElement(v,{onClick:L})),B.map((e=>i().createElement(Re.Z,{key:p.N5.relations.selectors.getRelationUriFromConnection(e),connection:e,config:n,mode:b,metadata:a}))),i().createElement("div",{style:{position:"relative"}},i().createElement(J,{mode:b,columnsData:D,connections:r,metadata:a,filters:T,onFilter:(0,s.pipe)(ye.changeFilter,w),sorting:S,onSort:(0,s.pipe)(ye.toggleSort,w),onEditRelation:H?(0,s.pipe)(p.N5.relations.actions.openRelationEditor(n.id),h):null,onRemoveRelation:Q?U:null,basicTableRef:q,allowOnlyCreateNew:n.allowOnlyCreateNew}),i().createElement(xe.Z,{count:c,rowsPerPageOptions:F,rowsPerPage:k,onChangeRowsPerPage:z,page:j,onChangePage:_,basicTableRef:q}),A&&i().createElement(Oe.Z,null)))};Me.propTypes={className:r().string,config:E.PiC,entity:E.pyR,metadata:E.pGS,connections:r().arrayOf(E.Rjq),total:r().number,mode:r().string,relationToAdd:r().object,relationsToEdit:r().array,dispatch:r().func,checkIfCanAddRelations:r().bool};const We=Me;function He(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Qe=(0,s.memoizeWith)(((e,t)=>t.id),((e,t)=>(0,s.evolve)({content:Le(e)},t))),qe=(0,u.connect)(((e,t)=>{const{config:n}=t;return{connections:p.ZP.selectors.getConnectionsWithDraftsByViewId(e,n.id),total:p.ZP.selectors.getTotalByViewId(e,n.id),entity:p.ZP.selectors.getEntity(e),metadata:p.ZP.selectors.getMetadata(e),mode:p.ZP.selectors.getMode(e),relationToAdd:p.ZP.selectors.getRelationToAddByViewId(e,n.id),relationsToEdit:p.ZP.selectors.getRelationsToEditByViewId(e,n.id),checkIfCanAddRelations:p.ZP.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]):{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){He(e,t,n[t])}))}return e}({},e,t,n,{config:Qe(e.metadata,n.config)})))(We);var Ge=n(36138),$e=n(22664),Ye=n(585);const Je=(0,Ge.createGenerateClassName)({productionPrefix:"relTable",disableGlobal:!0}),Ke=e=>{let{config:t,store:n,onResize:a=s.identity,className:r}=e;return i().createElement(u.Provider,{store:n},i().createElement(N.m.Provider,{value:t.id},i().createElement(Ge.StylesProvider,{generateClassName:Je},i().createElement($e.MuiPickersUtilsProvider,{utils:o.Z},i().createElement(c.Z,{handleHeight:!0,onResize:(e,t)=>a(Math.floor(e),Math.floor(t))}),t&&i().createElement(qe,{config:t,className:r}),i().createElement(Ye.Z,null)))))};Ke.propTypes={config:E.PiC,store:r().object,onResize:r().func,className:r().string};const Xe=Ke}}]);
1
+ "use strict";(self.webpackChunk_reltio_remotes=self.webpackChunk_reltio_remotes||[]).push([[4361],{14361:(e,t,n)=>{n.r(t),n.d(t,{RelationshipsTableView:()=>Xe});var o=n(8598),a=n(13980),r=n.n(a),l=n(24328),i=n.n(l),c=n(44443),s=n(17440),u=n(52730),p=n(59431),d=n(65549),m=n(94079),g=n(87918),h=n.n(g),f=n(79692);const y=(0,f.Z)({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"}}),b=e=>{let{onClick:t}=e;const n=y();return i().createElement(m.Button,{color:"primary",className:n.addButton,onClick:t},i().createElement(d.Z,{classes:{root:n.icon}}),i().createElement("div",{className:n.label},h().text("Add")))};b.propTypes={onClick:r().func};const v=b;var C=n(71153),w=n.n(C),E=n(56306);const R={textDecoration:"line-through",color:"rgba(0,0,0,.54)"},x={color:"rgba(0,0,0,.54)"},O=(0,f.Z)((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 &":R,"$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)":R},"row-cell--inactive":x})));function P(){return P=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},P.apply(this,arguments)}const T=e=>{let{cell:t,CellValueRenderer:n,rowValue:{connection:o},isSorted:a}=e,r=function(e,t){if(null==e)return{};var n,o,a=function(e,t){if(null==e)return{};var n,o,a={},r=Object.keys(e);for(o=0;o<r.length;o++)n=r[o],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o<r.length;o++)n=r[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}(e,["cell","CellValueRenderer","rowValue","isSorted"]);const l=O(),c=(0,E.$qe)(o),s=(0,E.Fn9)(o.relation)&&(0,E.Fn9)(o.entity);return i().createElement("div",{className:w()({[l["row-cell--sorted"]]:a,[l["row-cell--removed"]]:c,[l["row-cell--inactive"]]:!s},l.rowCell)},t.values.map(((e,t)=>i().createElement(n,P({key:t,value:e},r)))))};T.propTypes={rowValue:r().object,cell:r().object,CellValueRenderer:r().elementType,isSorted:r().bool};const S=T;var j=n(85709),k=n(94656),N=n(39450),I=n(31254),D=n(88611);const Z=e=>{let{value:{entityType:t,entity:n}}=e;const o=(0,u.useDispatch)(),a=(0,l.useContext)(N.m),r=O(),c=(0,E.idV)(n.entityLabel),d=(0,E.wwR)({uri:n.entityUri,dataTenant:n.dataTenant});return i().createElement("div",{className:r.entityCell},i().createElement(I.Z,{className:r.entityAvatar,entityType:t}),i().createElement(D.C,{value:c},i().createElement("span",{className:r.entityLabel,onClick:(0,s.pipe)((0,s.always)({uri:d,viewId:a}),p.ui.actions.openEntity,o)},c)))};Z.propTypes={value:r().shape({entity:r().shape({entityUri:r().string,entityLabel:r().string}),entityType:E.p8l})};const A=Z;var F=n(92332);const z=(0,n(67353).Z)((e=>{const t=O();return i().createElement("div",{className:t.headCell},i().createElement(F.default,e))}));var _=n(64091);const L=(0,s.pipe)((0,s.map)((e=>e.uri||e)),s.uniq);function U(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const V=(0,s.pipe)((0,s.split)("."),(0,s.slice)(2,1/0)),B=e=>{if(e.startsWith("relation.attributes")){const t=V(e);return t.length>1?t.slice(0,-1):null}return null},M=(0,s.map)((e=>{return function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){U(e,t,n[t])}))}return e}({},e,{sortable:!0,resizable:!0,nestedPath:B(e.id),headCellRenderer:z,rowCellValueRenderer:(t=e.id,"entity.label"===t?A:_.Z)});var t})),W=(0,f.Z)({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 H=n(27604),Q=n(22983);const q=e=>{let{canUpdate:t,canRemove:n,handleEditRelation:o,handleRemoveRelation:a}=e;return i().createElement(i().Fragment,null,t&&i().createElement(m.Tooltip,{title:h().text("Edit")},i().createElement(m.IconButton,{onClick:o},i().createElement(H.Z,null))),n&&i().createElement(m.Tooltip,{title:h().text("Remove")},i().createElement(m.IconButton,{onClick:a},i().createElement(Q.Z,null))))};q.propTypes={canUpdate:r().bool,canRemove:r().bool,handleEditRelation:r().func,handleRemoveRelation:r().func};const G=q;function $(){return $=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},$.apply(this,arguments)}const Y=e=>{let{mode:t,columnsData:n,connections:o,metadata:a,sorting:r,onSort:c,filters:u,onFilter:d,onEditRelation:m,onRemoveRelation:g,basicTableRef:h,allowOnlyCreateNew:f}=e;const y=(0,l.useMemo)((()=>((e,t,n)=>e.map((e=>(0,s.pipe)((0,s.reduce)(((t,o)=>{let{id:a}=o;return(0,s.assoc)(a,((e,t,n)=>{let{entity:o,relation:a}=t;switch(e){case"entity.label":return{entity:o,entityType:(0,E.nt9)(n,o.entityType)};case"relation.label":return a.relationLabel||(0,E.Lmx)(n,a.relationType);case"relation.activeness.startDate":return a.startDate;case"relation.activeness.endDate":return a.endDate;default:return((e,t)=>(0,s.pipe)((0,s.path)(["object","attributes"]),(0,E.tT_)(e))(t))(V(e),a)}})(a,e,n),t)}),{}),(0,s.assoc)("connection",e))(t))))(o,n,a)),[o,n,a]),b=(0,l.useMemo)((()=>M(n)),[n]),v=W(),C=(0,l.useCallback)((e=>i().createElement(S,$({},e,{isSorted:!!r&&r.field===e.columnData.id}))),[r]),[w,R]=(0,l.useState)(null),{canRemove:x,canUpdate:O}=(e=>{let{metadata:t,mode:n,connection:o,onRemoveRelation:a,onEditRelation:r,allowOnlyCreateNew:l}=e;const i=(0,E.xvW)(o);if(p.N5.mode.selectors.getIsEditableMode(n)&&o&&(!l||i)){const{relation:{relationType:e}}=o,l=(0,E.$qe)(o),i=(0,E.V3K)(t,e);return{canRemove:a&&!l&&(0,E.Edd)(n,i),canUpdate:r&&!l&&(0,E.Z5t)(n,i)}}return{canRemove:!1,canUpdate:!1}})({mode:t,onRemoveRelation:g,onEditRelation:m,metadata:a,allowOnlyCreateNew:f,connection:(0,s.path)([w,"connection"],y)}),P=(0,l.useCallback)((e=>R(e)),[]),T=(0,l.useCallback)((()=>m((0,s.path)([w,"connection"],y))),[w,m,y]),k=(0,l.useCallback)((()=>g((0,s.path)([w,"connection","relation","relationUri"],y))),[w,g,y]),N=x||O?i().createElement(G,{handleEditRelation:T,handleRemoveRelation:k,canRemove:x,canUpdate:O}):void 0;return i().createElement("div",{className:v.tableContainer},i().createElement(j.Z,{columnsData:b,rowsData:y,sorting:r,onSort:c,filters:u,onFilter:d,hoverStateEnabled:!0,defaultColumnWidth:250,defaultColumnMinWidth:200,headRowHeight:56,renderRowCell:C,onRowHover:P,hoverRowIndex:w,hoveredRowRightContent:N,classes:{hoveredRowRightContentWrapper:v["row-cell__buttons-wrapper"],hoveredRowRightContentContainer:v["row-cell__buttons-container"]},ref:h}))};Y.propTypes={mode:r().string,columnsData:k.uz,connections:r().arrayOf(E.Rjq),metadata:E.pGS,filters:r().objectOf(k.Dq),onFilter:r().func,sorting:k.nI,onSort:r().func,onEditRelation:r().func,onRemoveRelation:r().func,basicTableRef:r().shape({current:r().object}),allowOnlyCreateNew:r().bool};const J=Y;var K=n(93416),X=n(75512),ee=n(30553),te=n(32152),ne=n(1876),oe=n(60894),ae=n(43054),re=n(8818);const le=(0,f.Z)((()=>({popupContent:{padding:"19px 23px"},checkboxControlLabel:{fontSize:"0.85rem"},checkboxControlCheckbox:{marginRight:"5px"}}))),ie=e=>{let{className:t,showInactive:n,onShowInactiveChange:o}=e;const a=le(),r=(0,l.useRef)(),[c,s]=(0,l.useState)(!1),u=()=>s((e=>!e));return i().createElement(i().Fragment,null,i().createElement(re.k,{className:t,ref:r,tooltipTitle:h().text("More"),icon:ae.Z,onClick:u,size:"L"}),i().createElement(m.Popover,{open:c,classes:{paper:a.popupContent},anchorEl:r.current,onClose:u,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"}},i().createElement(m.FormControlLabel,{classes:{label:a.checkboxControlLabel},control:i().createElement(m.Checkbox,{className:a.checkboxControlCheckbox,checked:n||!1,onChange:e=>o(e.target.checked)}),label:h().text("Show inactive Relationships")})))},ce=(0,f.Z)({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"}}),se=e=>{let{title:t,total:n,searchQuery:o,onChangeSearchQuery:a,filtersEnabled:r,onToggleFilters:l,columnsData:c,selectedColumns:s,onChangeColumns:u,showInactive:p,onChangeShowInactive:d}=e;const g=ce();return i().createElement(K.Z,{title:t,className:g.header},i().createElement(X.Z,{widthToHide:500},i().createElement(ee.Z,{height:24,margin:16}),i().createElement(m.Typography,{className:g.totalCaption,variant:"caption"},n>1?h().text("${count} entities",{count:n}):h().text("${count} entity",{count:n}))),i().createElement(te.i,{query:o,onChange:a}),i().createElement(ne.Z,{enabled:r,onClick:l}),i().createElement(ee.Z,{height:24,margin:4}),i().createElement(oe.Z,{columnsData:c,selectedColumns:s,onChangeColumns:u}),i().createElement(ie,{className:g.moreButton,showInactive:p,onShowInactiveChange:d}))};se.propTypes={title:r().string,total:r().number,columnsData:k.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 ue=se;var pe=n(26180),de=n(31276);function me(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.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 he="CHANGE_SEARCH_QUERY",fe="CHANGE_SHOW_INACTIVE",ye=me({},pe.ZP.actions,{changeSearchQuery:(0,de.zD)(he),changeShowInactive:(0,de.zD)(fe)}),be=(e,t)=>{switch(t.type){case he:return me({},e,{searchQuery:t.payload,page:0});case fe:return me({},e,{showInactive:t.payload});default:return pe.ZP.reducer(e,t)}};var ve=n(26481),Ce=n(37152),we=n(52016),Ee=n(10237),Re=n(11013),xe=n(58662),Oe=n(99136);const Pe=[10,25,50,100],Te=[{id:"entity.label",get label(){return h().text("Entity label")},dataTypeDefinition:{type:E.oS0.TYPE_STRING},hideable:!1},{id:"relation.label",get label(){return h().text("Directional label")},dataTypeDefinition:{type:E.oS0.TYPE_STRING}},{id:"relation.activeness.startDate",get label(){return h().text("Start date")},dataTypeDefinition:E.PY2.startDate},{id:"relation.activeness.endDate",get label(){return h().text("End date")},dataTypeDefinition:E.PY2.endDate}],Se=(0,s.pipe)(E.Tde,(0,s.concat)("relation.")),je=(0,s.pipe)((0,s.map)((e=>({id:Se(e.uri),label:e.label,dataTypeDefinition:(0,E.PFL)(e)}))),(0,s.uniqBy)((0,s.prop)("id"))),ke=(0,s.pipe)(((e,t)=>{let{content:{inRelations:n=[],outRelations:o=[]}}=e,{relationTypes:a}=t;return(0,s.pipe)(L,(0,s.chain)((e=>(0,s.pipe)((0,s.find)((0,s.propEq)("uri",e)),E.DK$)(a))))([...n,...o])}),je,(0,s.concat)(Te));var Ne=n(99341);function Ie(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?Object(arguments[t]):{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){De(e,t,n[t])}))}return e}function De(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Ze=e=>e.uri||e,Ae=e=>t=>Ze(t)===e,Fe=(0,s.curry)(((e,t)=>{const n=(t,o)=>{let a=Ze(o),r=!1;a.startsWith("!")&&(a=a.slice(1),r=!0);const l=e[a]&&(0,E.uGe)(E.BDP.READ,e[a]),i=t.find(Ae(a))||!l?t:t.concat(o.uri?Ie({},o,{uri:a}):a);return r?i:(0,s.keys)(e).reduce(((t,o)=>e[o].extendsTypeURI!==a||t.find(Ae(o))?t:n(t,o)),i)};return t.reduce(n,[])})),ze=(0,s.curry)(((e,t)=>{const n=function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return n.reduce(((n,o)=>{const a=Ze(o),r=(0,s.path)([a,t,"objectTypeUri"],e);return!r||n.find(Ae(r))?n:n.concat(r)}),[])};return Ie({},t,{entityTypes:[...n("startObject",t.inRelations),...n("endObject",t.outRelations)]})})),_e=(0,s.indexBy)((0,s.prop)("uri")),Le=(0,s.curry)(((e,t)=>{const n=_e(e.relationTypes),o=_e(e.entityTypes),a=e=>(0,s.evolve)({inRelations:Fe(n),outRelations:Fe(n),entityTypes:Fe(o),nextEntry:a},e);return(0,s.pipe)((0,s.unless)((0,s.either)((0,s.prop)("nextEntry"),(0,s.prop)("entityTypes")),ze(n)),a)(t)})),Ue=(0,f.Z)({addArea:{display:"flex",alignItems:"center",height:"48px",borderBottom:"1px solid rgba(0, 0, 0, 0.12)"}}),Ve=(0,s.pluck)("id",Te),[Be]=Ve,Me=e=>{let{className:t,config:n,entity:o,metadata:a,connections:r=[],total:c=0,mode:u,relationToAdd:d,relationsToEdit:m=[],checkIfCanAddRelations:g,dispatch:h}=e;const f={searchQuery:"",filters:null,visibleColumns:Ve,sorting:{order:n.sortOrder||"asc",field:n.sortColumn||Be},page:0,rowsPerPage:n.max||15,showInactive:!1},y=Ue(),b=(0,l.useContext)(ve.j)?u:E.fO_.VIEWING,[C,w]=(0,l.useReducer)(be,f),R=(0,s.pipe)(ye.changeSearchQuery,w),x=(0,s.pipe)(ye.changeShowInactive,w);(0,l.useEffect)((()=>{R("")}),[null==o?void 0:o.uri]);const{visibleColumns:O,searchQuery:P,filters:T,sorting:S,page:j,rowsPerPage:k,showInactive:N}=C,I=(0,l.useMemo)((()=>ke(n,a)),[n,a]),D=(0,l.useMemo)((()=>O.map((e=>I.find((0,s.propEq)("id",e))))),[O,I]),Z=(0,l.useMemo)((()=>((e,t,n)=>{const o=E.wSh.fromFalsy(e).map(E.zHo).map((e=>`containsWordStartingWith(entity.label,${e}) or containsWordStartingWith(relation.label,${e})`)).orSome(""),a=(0,Ne.Tz)(n,t);return(new E.MEy).addClause(o).addClause(a).build()})(P,T,D)),[T,P]),{isLoading:A}=(0,Ce.a)({sorting:S,filter:Z,page:j,rowsPerPage:k,config:n,entity:o,relationActivityFilter:N?E.YJ7.ALL:E.YJ7.ACTIVE_ONLY,mode:u}),F=(0,l.useMemo)((()=>{return e=f.rowsPerPage,Pe.filter((t=>t!==e)).concat(e).sort(s.subtract);var e}),[]),{handleRowsPerPageChange:z,handlePageChange:_}=(0,l.useMemo)((()=>({handleRowsPerPageChange:(0,s.pipe)(ye.changeRowsPerPage,w),handlePageChange:(0,s.pipe)(ye.changePage,w)})),[]),L=(0,l.useCallback)((()=>{const e=(0,E.vlo)({config:n,mode:b,metadata:a});(0,s.pipe)(p.N5.relations.actions.openRelationEditor(n.id),h)(e)}),[n,b,a,h]),U=(0,l.useCallback)((e=>{h(p.N5.relations.actions.closeRelationEditor(n.id,e)),h(p.N5.relations.actions.removeRelation(n.id,e));const t=r.find((t=>p.N5.relations.selectors.getRelationUriFromConnection(t)===e)),o=p.N5.relations.selectors.getEntityUriFromConnection(t);(0,E.ZiX)(o)&&h(p.N5.modifiedEntities.actions.entityDeleted(o))}),[n,r,h]),V=o&&g,B=d?[d,...m]:m,{canUpdate:M,canDelete:W}=(0,we.l)(),H=M(n),Q=W(n),q=(0,l.useRef)(null);return i().createElement(Ee.Z,{className:t},i().createElement(ue,{title:n.caption,total:c,columnsData:I,selectedColumns:O,onChangeColumns:(0,s.pipe)(ye.changeColumns,w),searchQuery:P,onChangeSearchQuery:R,filtersEnabled:!!T,onToggleFilters:(0,s.pipe)(ye.toggleFilters,w),showInactive:N,onChangeShowInactive:x}),V&&i().createElement("div",{className:y.addArea},i().createElement(v,{onClick:L})),B.map((e=>i().createElement(Re.Z,{key:p.N5.relations.selectors.getRelationUriFromConnection(e),connection:e,config:n,mode:b,metadata:a}))),i().createElement("div",{style:{position:"relative"}},i().createElement(J,{mode:b,columnsData:D,connections:r,metadata:a,filters:T,onFilter:(0,s.pipe)(ye.changeFilter,w),sorting:S,onSort:(0,s.pipe)(ye.toggleSort,w),onEditRelation:H?(0,s.pipe)(p.N5.relations.actions.openRelationEditor(n.id),h):null,onRemoveRelation:Q?U:null,basicTableRef:q,allowOnlyCreateNew:n.allowOnlyCreateNew}),i().createElement(xe.Z,{count:c,rowsPerPageOptions:F,rowsPerPage:k,onChangeRowsPerPage:z,page:j,onChangePage:_,basicTableRef:q}),A&&i().createElement(Oe.Z,null)))};Me.propTypes={className:r().string,config:E.PiC,entity:E.pyR,metadata:E.pGS,connections:r().arrayOf(E.Rjq),total:r().number,mode:r().string,relationToAdd:r().object,relationsToEdit:r().array,dispatch:r().func,checkIfCanAddRelations:r().bool};const We=Me;function He(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const Qe=(0,s.memoizeWith)(((e,t)=>t.id),((e,t)=>(0,s.evolve)({content:Le(e)},t))),qe=(0,u.connect)(((e,t)=>{const{config:n}=t;return{connections:p.ZP.selectors.getConnectionsWithDraftsByViewId(e,n.id),total:p.ZP.selectors.getTotalByViewId(e,n.id),entity:p.ZP.selectors.getEntity(e),metadata:p.ZP.selectors.getMetadata(e),mode:p.ZP.selectors.getMode(e),relationToAdd:p.ZP.selectors.getRelationToAddByViewId(e,n.id),relationsToEdit:p.ZP.selectors.getRelationsToEditByViewId(e,n.id),checkIfCanAddRelations:p.ZP.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]):{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),o.forEach((function(t){He(e,t,n[t])}))}return e}({},e,t,n,{config:Qe(e.metadata,n.config)})))(We);var Ge=n(36138),$e=n(22664),Ye=n(585);const Je=(0,Ge.createGenerateClassName)({productionPrefix:"relTable",disableGlobal:!0}),Ke=e=>{let{config:t,store:n,onResize:a=s.identity,className:r}=e;return i().createElement(u.Provider,{store:n},i().createElement(N.m.Provider,{value:t.id},i().createElement(Ge.StylesProvider,{generateClassName:Je},i().createElement($e.MuiPickersUtilsProvider,{utils:o.Z},i().createElement(c.Z,{handleHeight:!0,onResize:(e,t)=>a(Math.floor(e),Math.floor(t))}),t&&i().createElement(qe,{config:t,className:r}),i().createElement(Ye.Z,null)))))};Ke.propTypes={config:E.PiC,store:r().object,onResize:r().func,className:r().string};const Xe=Ke}}]);
2
+ //# sourceMappingURL=4361.js.map
package/4361.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"4361.js","mappings":"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","sources":["webpack://@reltio/remotes/../relations-table/src/RelationsTableView/AddRelationButton/styles.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/AddRelationButton/AddRelationButton.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTable/cell-renderers/styles.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTable/cell-renderers/RowCellRenderer.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTable/cell-renderers/EntityProfileRenderer.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTable/cell-renderers/HeadCellRenderer.js","webpack://@reltio/remotes/../relations-table/src/core/relations.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTable/helpers/dataHelpers.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTable/styles.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTable/EditButtons.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTable/RelationsTable.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTable/helpers/buttonsHelper.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTableHeader/MoreButton/styles.ts","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTableHeader/MoreButton/MoreButton.tsx","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTableHeader/styles.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTableHeader/RelationsTableHeader.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/stateReducer.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/helpers/tableHelpers.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/helpers/relationsHelpers.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/styles.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/RelationsTableView.js","webpack://@reltio/remotes/../relations-table/src/RelationsTableView/index.js","webpack://@reltio/remotes/../relations-table/src/index.js"],"sourcesContent":["import {makeStyles} from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles({\n addButton: {\n marginLeft: '12px',\n padding: '9px 16px 9px 12px',\n backgroundColor: 'rgba(98, 2, 238, 0)'\n },\n label: {\n fontSize: '14px',\n fontWeight: 500,\n lineHeight: '16px'\n },\n icon: {\n fontSize: '18px',\n marginRight: '8px'\n }\n});\n","import AddIcon from '@material-ui/icons/Add';\nimport {Button as Button} from '@material-ui/core';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport i18n from 'ui-i18n';\nimport {useStyles} from './styles';\n\nconst AddRelationButton = ({onClick}) => {\n const styles = useStyles();\n return (\n <Button color=\"primary\" className={styles.addButton} onClick={onClick}>\n <AddIcon classes={{root: styles.icon}} />\n <div className={styles.label}>{i18n.text('Add')}</div>\n </Button>\n );\n};\n\nAddRelationButton.propTypes = {\n onClick: PropTypes.func\n};\n\nexport default AddRelationButton;\n","import {makeStyles} from '@material-ui/core/styles';\n\nconst removedStyle = {\n textDecoration: 'line-through',\n color: 'rgba(0,0,0,.54)'\n};\n\nconst inactiveStyle = {\n color: 'rgba(0,0,0,.54)'\n};\n\nexport const useStyles = makeStyles((theme) => ({\n headCell: {\n display: 'flex',\n alignItems: 'center',\n height: '100%',\n fontSize: '12px'\n },\n entityCell: {\n display: 'flex',\n alignItems: 'center',\n height: '100%'\n },\n entityLabel: {\n fontSize: '15px',\n color: theme.palette.secondary.main,\n cursor: 'pointer',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n '$row-cell--removed &': removedStyle,\n '$row-cell--inactive &': inactiveStyle\n },\n entityAvatar: {\n transform: 'scale(0.7)',\n margin: '0 10px'\n },\n rowCell: {\n fontSize: '13px',\n overflow: 'hidden'\n },\n 'row-cell--sorted': {\n color: 'rgba(0,0,0,0.87)'\n },\n 'row-cell--removed': {\n pointerEvents: 'none',\n '& > :not($entityCell)': removedStyle\n },\n 'row-cell--inactive': inactiveStyle\n}));\n","import PropTypes from 'prop-types';\nimport React from 'react';\nimport classnames from 'classnames';\nimport {checkRemoved, isActiveObject} from '@reltio/mdm-sdk';\nimport {useStyles} from './styles';\n\nconst RowCellRenderer = ({cell, CellValueRenderer, rowValue: {connection}, isSorted, ...otherProps}) => {\n const styles = useStyles();\n const isRemoved = checkRemoved(connection);\n const isActive = isActiveObject(connection.relation) && isActiveObject(connection.entity);\n\n return (\n <div\n className={classnames(\n {\n [styles['row-cell--sorted']]: isSorted,\n [styles['row-cell--removed']]: isRemoved,\n [styles['row-cell--inactive']]: !isActive\n },\n styles.rowCell\n )}\n >\n {cell.values.map((value, index) => (\n <CellValueRenderer key={index} value={value} {...otherProps} />\n ))}\n </div>\n );\n};\n\nRowCellRenderer.propTypes = {\n rowValue: PropTypes.object,\n cell: PropTypes.object,\n CellValueRenderer: PropTypes.elementType,\n isSorted: PropTypes.bool\n};\n\nexport default RowCellRenderer;\n","import PropTypes from 'prop-types';\nimport React, {useContext} from 'react';\nimport {ui} from '@reltio/mdm-module';\nimport {always, pipe} from 'ramda';\nimport {useDispatch} from 'react-redux';\nimport {useStyles} from './styles';\nimport {EntityTypeType, getEntityUriForLink, getLabel} from '@reltio/mdm-sdk';\nimport {EntityTypeIcon, ExpandedValueTooltip, ViewIdContext} from '@reltio/components';\n\nconst EntityProfileRenderer = ({value: {entityType, entity}}) => {\n const dispatch = useDispatch();\n const viewId = useContext(ViewIdContext);\n const styles = useStyles();\n const entityLabel = getLabel(entity.entityLabel);\n const preparedUri = getEntityUriForLink({uri: entity.entityUri, dataTenant: entity.dataTenant});\n return (\n <div className={styles.entityCell}>\n <EntityTypeIcon className={styles.entityAvatar} entityType={entityType} />\n <ExpandedValueTooltip value={entityLabel}>\n <span\n className={styles.entityLabel}\n onClick={pipe(always({uri: preparedUri, viewId}), ui.actions.openEntity, dispatch)}\n >\n {entityLabel}\n </span>\n </ExpandedValueTooltip>\n </div>\n );\n};\n\nEntityProfileRenderer.propTypes = {\n value: PropTypes.shape({\n entity: PropTypes.shape({\n entityUri: PropTypes.string,\n entityLabel: PropTypes.string\n }),\n entityType: EntityTypeType\n })\n};\n\nexport default EntityProfileRenderer;\n","import React from 'react';\n\nimport DefaultHeadCellRenderer from 'react-components/dist/Table/DefaultHeadCellRenderer/DefaultHeadCellRenderer';\nimport {withFilterAtBottom} from '@reltio/components';\nimport {useStyles} from './styles';\n\nconst HeadCellRenderer = (props) => {\n const styles = useStyles();\n return (\n <div className={styles.headCell}>\n <DefaultHeadCellRenderer {...props} />\n </div>\n );\n};\n\nexport default withFilterAtBottom(HeadCellRenderer);\n","import {getOvAttributeValuesByPath, getReadableAttributesList} from '@reltio/mdm-sdk';\nimport {chain, find, map, path, pipe, propEq, uniq} from 'ramda';\n\nconst getRelationTypes = pipe(\n map((rel) => rel.uri || rel),\n uniq\n);\n\nconst getRelationsAttributesFromMetadata = ({content: {inRelations = [], outRelations = []}}, {relationTypes}) =>\n pipe(\n getRelationTypes,\n chain((relationType) => pipe(find(propEq('uri', relationType)), getReadableAttributesList)(relationTypes))\n )([...inRelations, ...outRelations]);\n\nconst getRelationAttributeValues = (attrPath, relation) =>\n pipe(path(['object', 'attributes']), getOvAttributeValuesByPath(attrPath))(relation);\n\nexport {getRelationsAttributesFromMetadata, getRelationAttributeValues};\n","import EntityProfileRenderer from '../cell-renderers/EntityProfileRenderer';\nimport HeadCellRenderer from '../cell-renderers/HeadCellRenderer';\nimport {DefaultCellValueRenderer} from '@reltio/components';\nimport {assoc, map, pipe, reduce, slice, split} from 'ramda';\nimport {getEntityType, getRelationTypeLabelFromMetadata} from '@reltio/mdm-sdk';\nimport {getRelationAttributeValues} from '../../../core/relations';\n\nconst getAttrPathFromColumnId = pipe(split('.'), slice(2, Infinity));\n\nconst getRowValueByColumnId = (columnId, {entity, relation}, metadata) => {\n switch (columnId) {\n case 'entity.label':\n return {entity, entityType: getEntityType(metadata, entity.entityType)};\n case 'relation.label':\n return relation.relationLabel || getRelationTypeLabelFromMetadata(metadata, relation.relationType);\n case 'relation.activeness.startDate':\n return relation.startDate;\n case 'relation.activeness.endDate':\n return relation.endDate;\n default: {\n const attrPath = getAttrPathFromColumnId(columnId);\n return getRelationAttributeValues(attrPath, relation);\n }\n }\n};\n\nconst getBasicTableRowsData = (connections, columnsData, metadata) =>\n connections.map((connection) =>\n pipe(\n reduce((acc, {id}) => assoc(id, getRowValueByColumnId(id, connection, metadata), acc), {}),\n assoc('connection', connection)\n )(columnsData)\n );\n\nconst getNestedPathByColumnId = (columnId) => {\n if (columnId.startsWith('relation.attributes')) {\n const attrPath = getAttrPathFromColumnId(columnId);\n return attrPath.length > 1 ? attrPath.slice(0, -1) : null;\n } else {\n return null;\n }\n};\n\nconst getCellValueRenderer = (columnId) => {\n switch (columnId) {\n case 'entity.label':\n return EntityProfileRenderer;\n default:\n return DefaultCellValueRenderer;\n }\n};\n\nconst getColumnDataByColumnId = (columnData) => ({\n ...columnData,\n sortable: true,\n resizable: true,\n nestedPath: getNestedPathByColumnId(columnData.id),\n headCellRenderer: HeadCellRenderer,\n rowCellValueRenderer: getCellValueRenderer(columnData.id)\n});\n\nconst getBasicTableColumnsData = map(getColumnDataByColumnId);\n\nexport {getBasicTableRowsData, getBasicTableColumnsData};\n","import {makeStyles} from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles({\n tableContainer: {\n height: '477px',\n display: 'flex',\n fontFamily: 'Roboto',\n color: 'rgba(0,0,0,0.54)'\n },\n\n '@global div[role=tooltip]': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif'\n },\n\n '@global div[role=presentation]': {\n fontFamily: 'Roboto, Helvetica, Arial, sans-serif'\n },\n 'row-cell__buttons-container': {\n position: 'absolute'\n },\n 'row-cell__buttons-wrapper': {\n display: 'flex',\n paddingLeft: '10px',\n '& > button': {\n marginLeft: '-10px',\n transform: 'scale(0.9)'\n }\n }\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {Tooltip as Tooltip} from '@material-ui/core';\nimport {IconButton as IconButton} from '@material-ui/core';\nimport EditIcon from '@material-ui/icons/Edit';\nimport DeleteIcon from '@material-ui/icons/Delete';\nimport i18n from 'ui-i18n';\n\nexport const EditButtons = ({canUpdate, canRemove, handleEditRelation, handleRemoveRelation}) => (\n <>\n {canUpdate && (\n <Tooltip title={i18n.text('Edit')}>\n <IconButton onClick={handleEditRelation}>\n <EditIcon />\n </IconButton>\n </Tooltip>\n )}\n {canRemove && (\n <Tooltip title={i18n.text('Remove')}>\n <IconButton onClick={handleRemoveRelation}>\n <DeleteIcon />\n </IconButton>\n </Tooltip>\n )}\n </>\n);\nEditButtons.propTypes = {\n canUpdate: PropTypes.bool,\n canRemove: PropTypes.bool,\n handleEditRelation: PropTypes.func,\n handleRemoveRelation: PropTypes.func\n};\n\nexport default EditButtons;\n","import PropTypes from 'prop-types';\nimport React, {useCallback, useMemo, useState} from 'react';\nimport RowCellRenderer from './cell-renderers/RowCellRenderer';\nimport {BasicTable, ColumnFilterType, ColumnsDataType, SortingType} from '@reltio/components';\nimport {getBasicTableColumnsData, getBasicTableRowsData} from './helpers/dataHelpers';\nimport {useStyles} from './styles';\nimport {ConnectionType, MetadataType} from '@reltio/mdm-sdk';\nimport {path} from 'ramda';\nimport {checkRelationPermission} from './helpers/buttonsHelper';\nimport EditButtons from './EditButtons';\n\nconst RelationsTable = ({\n mode,\n columnsData,\n connections,\n metadata,\n sorting,\n onSort,\n filters,\n onFilter,\n onEditRelation,\n onRemoveRelation,\n basicTableRef,\n allowOnlyCreateNew\n}) => {\n const tableRowsData = useMemo(() => getBasicTableRowsData(connections, columnsData, metadata), [\n connections,\n columnsData,\n metadata\n ]);\n const tableColumnsData = useMemo(() => getBasicTableColumnsData(columnsData), [columnsData]);\n\n const styles = useStyles();\n\n const renderRowCell = useCallback(\n (props) => (\n <RowCellRenderer\n {...props}\n isSorted={!!sorting && sorting.field === props.columnData.id} /* eslint-disable-line react/prop-types */\n />\n ),\n [sorting]\n );\n\n const [hoverRowIndex, setHoverRowIndex] = useState(null);\n const {canRemove, canUpdate} = checkRelationPermission({\n mode,\n onRemoveRelation,\n onEditRelation,\n metadata,\n allowOnlyCreateNew,\n connection: path([hoverRowIndex, 'connection'], tableRowsData)\n });\n\n const handleOnRowHover = useCallback((rowIndex) => setHoverRowIndex(rowIndex), []);\n const handleEditRelation = useCallback(() => onEditRelation(path([hoverRowIndex, 'connection'], tableRowsData)), [\n hoverRowIndex,\n onEditRelation,\n tableRowsData\n ]);\n const handleRemoveRelation = useCallback(\n () => onRemoveRelation(path([hoverRowIndex, 'connection', 'relation', 'relationUri'], tableRowsData)),\n [hoverRowIndex, onRemoveRelation, tableRowsData]\n );\n\n const hoveredRowRightContent =\n canRemove || canUpdate ? (\n <EditButtons\n handleEditRelation={handleEditRelation}\n handleRemoveRelation={handleRemoveRelation}\n canRemove={canRemove}\n canUpdate={canUpdate}\n />\n ) : undefined;\n return (\n <div className={styles.tableContainer}>\n <BasicTable\n columnsData={tableColumnsData}\n rowsData={tableRowsData}\n sorting={sorting}\n onSort={onSort}\n filters={filters}\n onFilter={onFilter}\n hoverStateEnabled={true}\n defaultColumnWidth={250}\n defaultColumnMinWidth={200}\n headRowHeight={56}\n renderRowCell={renderRowCell}\n onRowHover={handleOnRowHover}\n hoverRowIndex={hoverRowIndex}\n hoveredRowRightContent={hoveredRowRightContent}\n classes={{\n hoveredRowRightContentWrapper: styles['row-cell__buttons-wrapper'],\n hoveredRowRightContentContainer: styles['row-cell__buttons-container']\n }}\n ref={basicTableRef}\n />\n </div>\n );\n};\n\nRelationsTable.propTypes = {\n mode: PropTypes.string,\n columnsData: ColumnsDataType,\n connections: PropTypes.arrayOf(ConnectionType),\n metadata: MetadataType,\n filters: PropTypes.objectOf(ColumnFilterType),\n onFilter: PropTypes.func,\n sorting: SortingType,\n onSort: PropTypes.func,\n onEditRelation: PropTypes.func,\n onRemoveRelation: PropTypes.func,\n basicTableRef: PropTypes.shape({current: PropTypes.object}),\n allowOnlyCreateNew: PropTypes.bool\n};\n\nexport default RelationsTable;\n","import {profile} from '@reltio/mdm-module';\nimport {checkMetadataForDelete, checkMetadataForUpdate, checkNew, checkRemoved, getRelationType} from '@reltio/mdm-sdk';\n\nconst checkRelationPermission = ({\n metadata,\n mode,\n connection,\n onRemoveRelation,\n onEditRelation,\n allowOnlyCreateNew\n}) => {\n const isNew = checkNew(connection);\n const isEditableMode = profile.mode.selectors.getIsEditableMode(mode);\n if (isEditableMode && connection && (!allowOnlyCreateNew || isNew)) {\n const {\n relation: {relationType}\n } = connection;\n const isRemoved = checkRemoved(connection);\n const relationTypeMetadata = getRelationType(metadata, relationType);\n const canRemove = onRemoveRelation && !isRemoved && checkMetadataForDelete(mode, relationTypeMetadata);\n const canUpdate = onEditRelation && !isRemoved && checkMetadataForUpdate(mode, relationTypeMetadata);\n return {canRemove, canUpdate};\n } else {\n return {canRemove: false, canUpdate: false};\n }\n};\n\nexport {checkRelationPermission};\n","import {makeStyles} from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles(() => ({\n popupContent: {\n padding: '19px 23px'\n },\n checkboxControlLabel: {\n fontSize: '0.85rem'\n },\n checkboxControlCheckbox: {\n marginRight: '5px'\n }\n}));\n","import React, {useRef, useState} from 'react';\nimport i18n from 'ui-i18n';\nimport {Popover as Popover} from '@material-ui/core';\nimport {FormControlLabel as FormControlLabel} from '@material-ui/core';\nimport {Checkbox as Checkbox} from '@material-ui/core';\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\nimport {SmallIconButtonWithTooltip} from '@reltio/components';\n\nimport {useStyles} from './styles';\n\ntype Props = {\n className?: string;\n showInactive: boolean;\n onShowInactiveChange: (value: boolean) => void;\n};\n\nconst MoreButton = ({className, showInactive, onShowInactiveChange}: Props) => {\n const styles = useStyles();\n const buttonRef = useRef();\n const [isOpen, setIsOpen] = useState(false);\n\n const togglePopup = () => setIsOpen((open) => !open);\n\n return (\n <>\n <SmallIconButtonWithTooltip\n className={className}\n ref={buttonRef}\n tooltipTitle={i18n.text('More')}\n icon={MoreVertIcon}\n onClick={togglePopup}\n size=\"L\"\n />\n <Popover\n open={isOpen}\n classes={{paper: styles.popupContent}}\n anchorEl={buttonRef.current}\n onClose={togglePopup}\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'right'\n }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'right'\n }}\n >\n <FormControlLabel\n classes={{\n label: styles.checkboxControlLabel\n }}\n control={\n <Checkbox\n className={styles.checkboxControlCheckbox}\n checked={showInactive || false}\n onChange={(e) => onShowInactiveChange(e.target.checked)}\n />\n }\n label={i18n.text('Show inactive Relationships')}\n />\n </Popover>\n </>\n );\n};\n\nexport default MoreButton;\n","import {makeStyles} from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles({\n header: {\n padding: '0 4px 0 16px'\n },\n totalCaption: {\n lineHeight: '19px',\n fontSize: '14px',\n letterSpacing: '0.24px',\n color: 'rgba(0,0,0,0.6)',\n flexShrink: 0,\n marginRight: '5px',\n justifyContent: 'flex-start',\n paddingTop: '16px',\n paddingBottom: '13px'\n },\n moreButton: {\n marginLeft: '-6px'\n }\n});\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport i18n from 'ui-i18n';\nimport {Typography as Typography} from '@material-ui/core';\nimport {\n FacetViewHeader,\n ColumnsDataType,\n ColumnsSettings,\n FilterButton,\n HideOnShrink,\n VerticalDivider,\n ExpandableSearchInput\n} from '@reltio/components';\nimport MoreButton from './MoreButton/MoreButton';\nimport {useStyles} from './styles';\n\nconst RelationsTableHeader = ({\n title,\n total,\n searchQuery,\n onChangeSearchQuery,\n filtersEnabled,\n onToggleFilters,\n columnsData,\n selectedColumns,\n onChangeColumns,\n showInactive,\n onChangeShowInactive\n}) => {\n const styles = useStyles();\n return (\n <FacetViewHeader title={title} className={styles.header}>\n <HideOnShrink widthToHide={500}>\n <VerticalDivider height={24} margin={16} />\n <Typography className={styles.totalCaption} variant=\"caption\">\n {total > 1\n ? i18n.text('${count} entities', {count: total})\n : i18n.text('${count} entity', {count: total})}\n </Typography>\n </HideOnShrink>\n <ExpandableSearchInput query={searchQuery} onChange={onChangeSearchQuery} />\n <FilterButton enabled={filtersEnabled} onClick={onToggleFilters} />\n <VerticalDivider height={24} margin={4} />\n <ColumnsSettings\n columnsData={columnsData}\n selectedColumns={selectedColumns}\n onChangeColumns={onChangeColumns}\n />\n <MoreButton\n className={styles.moreButton}\n showInactive={showInactive}\n onShowInactiveChange={onChangeShowInactive}\n />\n </FacetViewHeader>\n );\n};\n\nRelationsTableHeader.propTypes = {\n title: PropTypes.string,\n total: PropTypes.number,\n columnsData: ColumnsDataType,\n selectedColumns: PropTypes.arrayOf(PropTypes.string),\n onChangeColumns: PropTypes.func,\n searchQuery: PropTypes.string,\n onChangeSearchQuery: PropTypes.func,\n filtersEnabled: PropTypes.bool,\n onToggleFilters: PropTypes.func,\n showInactive: PropTypes.bool,\n onChangeShowInactive: PropTypes.func\n};\n\nexport default RelationsTableHeader;\n","import {basicTableViewState, createStandardAction} from '@reltio/components';\n\nconst CHANGE_SEARCH_QUERY = 'CHANGE_SEARCH_QUERY';\nconst CHANGE_SHOW_INACTIVE = 'CHANGE_SHOW_INACTIVE';\n\nconst actions = {\n ...basicTableViewState.actions,\n changeSearchQuery: createStandardAction(CHANGE_SEARCH_QUERY),\n changeShowInactive: createStandardAction(CHANGE_SHOW_INACTIVE)\n};\n\nconst reducer = (state, action) => {\n switch (action.type) {\n case CHANGE_SEARCH_QUERY:\n return {...state, searchQuery: action.payload, page: 0};\n case CHANGE_SHOW_INACTIVE:\n return {...state, showInactive: action.payload};\n default:\n return basicTableViewState.reducer(state, action);\n }\n};\n\nexport {reducer as default, actions};\n","import {ActivenessAttrTypes, attributeUriToSearchUri, DataTypes, getAttrDataTypeDefinition} from '@reltio/mdm-sdk';\nimport {concat, map, pipe, prop, subtract, uniqBy} from 'ramda';\nimport {getRelationsAttributesFromMetadata} from '../../core/relations';\nimport i18n from 'ui-i18n';\n\nconst ROWS_PER_PAGE_OPTIONS = [10, 25, 50, 100];\nconst getRowsPerPageOptions = (defaultRowsPerPage) =>\n ROWS_PER_PAGE_OPTIONS.filter((option) => option !== defaultRowsPerPage)\n .concat(defaultRowsPerPage)\n .sort(subtract);\n\nconst DEFAULT_COLUMNS_DATA = [\n {\n id: 'entity.label',\n get label() {\n return i18n.text('Entity label');\n },\n dataTypeDefinition: {\n type: DataTypes.TYPE_STRING\n },\n hideable: false\n },\n {\n id: 'relation.label',\n get label() {\n return i18n.text('Directional label');\n },\n dataTypeDefinition: {\n type: DataTypes.TYPE_STRING\n }\n },\n {\n id: 'relation.activeness.startDate',\n get label() {\n return i18n.text('Start date');\n },\n dataTypeDefinition: ActivenessAttrTypes.startDate\n },\n {\n id: 'relation.activeness.endDate',\n get label() {\n return i18n.text('End date');\n },\n dataTypeDefinition: ActivenessAttrTypes.endDate\n }\n];\n\nconst getColumnIdFromAttrUri = pipe(attributeUriToSearchUri, concat('relation.'));\n\nconst getColumnsDataFromRelationAttributes = pipe(\n map((attr) => ({\n id: getColumnIdFromAttrUri(attr.uri),\n label: attr.label,\n dataTypeDefinition: getAttrDataTypeDefinition(attr)\n })),\n uniqBy(prop('id'))\n);\n\nconst getColumnsData = pipe(\n getRelationsAttributesFromMetadata,\n getColumnsDataFromRelationAttributes,\n concat(DEFAULT_COLUMNS_DATA)\n);\n\nexport {getRowsPerPageOptions, DEFAULT_COLUMNS_DATA, getColumnsData};\n","import {buildColumnsFilter} from '@reltio/components';\nimport {\n checkMetadataPermission,\n FilterBuilder,\n filterValueToQueryStringWithQuotes,\n Maybe,\n MetadataPermissions\n} from '@reltio/mdm-sdk';\nimport {curry, either, evolve, indexBy, keys, path, pipe, prop, unless} from 'ramda';\n\nconst getUri = (item) => item.uri || item;\nconst containsUri = (uri) => (item) => getUri(item) === uri;\n\nexport const parseUris = curry((metadata, data) => {\n const parseUri = (acc, item) => {\n let uri = getUri(item),\n shouldSkipDescendantUris = false;\n if (uri.startsWith('!')) {\n uri = uri.slice(1);\n shouldSkipDescendantUris = true;\n }\n const hasValidMetadata = metadata[uri] && checkMetadataPermission(MetadataPermissions.READ, metadata[uri]);\n const nextAcc =\n acc.find(containsUri(uri)) || !hasValidMetadata ? acc : acc.concat(item.uri ? {...item, uri} : uri);\n // prettier-ignore\n return shouldSkipDescendantUris\n ? nextAcc\n : keys(metadata).reduce(\n (acc, descUri) =>\n metadata[descUri].extendsTypeURI === uri && !acc.find(containsUri(descUri))\n ? parseUri(acc, descUri)\n : acc,\n nextAcc\n );\n };\n\n return data.reduce(parseUri, []);\n});\n\nexport const deriveEntityTypesFromRelations = curry((relationTypes, content) => {\n const deriveEntitiesFromRelationsMetadata = (objectType, relations = []) =>\n relations.reduce((acc, relation) => {\n const relationTypeUri = getUri(relation);\n const entityTypeUri = path([relationTypeUri, objectType, 'objectTypeUri'], relationTypes);\n return !entityTypeUri || acc.find(containsUri(entityTypeUri)) ? acc : acc.concat(entityTypeUri);\n }, []);\n\n return {\n ...content,\n entityTypes: [\n ...deriveEntitiesFromRelationsMetadata('startObject', content.inRelations),\n ...deriveEntitiesFromRelationsMetadata('endObject', content.outRelations)\n ]\n };\n});\n\nconst indexByUri = indexBy(prop('uri'));\n\nexport const parseRelationsConfigContent = curry((metadata, content) => {\n const relationTypes = indexByUri(metadata.relationTypes);\n const entityTypes = indexByUri(metadata.entityTypes);\n\n const parseEntryUris = (entry) =>\n evolve(\n {\n inRelations: parseUris(relationTypes),\n outRelations: parseUris(relationTypes),\n entityTypes: parseUris(entityTypes),\n nextEntry: parseEntryUris\n },\n entry\n );\n\n return pipe(\n unless(either(prop('nextEntry'), prop('entityTypes')), deriveEntityTypesFromRelations(relationTypes)),\n parseEntryUris\n )(content);\n});\n\nexport const parseRelationsConfig = (metadata, config) =>\n evolve({content: parseRelationsConfigContent(metadata)}, config);\n\nexport const buildRelationsFilter = (searchQuery, filters, columnsData) => {\n const queryClause = Maybe.fromFalsy(searchQuery)\n .map(filterValueToQueryStringWithQuotes)\n .map(\n (queryString) =>\n `containsWordStartingWith(entity.label,${queryString})` +\n ' or ' +\n `containsWordStartingWith(relation.label,${queryString})`\n )\n .orSome('');\n\n const filtersClause = buildColumnsFilter(columnsData, filters);\n\n return new FilterBuilder().addClause(queryClause).addClause(filtersClause).build();\n};\n","import {makeStyles} from '@material-ui/core/styles';\n\nexport const useStyles = makeStyles({\n addArea: {\n display: 'flex',\n alignItems: 'center',\n height: '48px',\n borderBottom: '1px solid rgba(0, 0, 0, 0.12)'\n }\n});\n","import React, {useCallback, useContext, useEffect, useMemo, useReducer, useRef} from 'react';\nimport PropTypes from 'prop-types';\nimport AddRelationButton from './AddRelationButton/AddRelationButton';\nimport RelationsTable from './RelationsTable/RelationsTable';\nimport RelationsTableHeader from './RelationsTableHeader/RelationsTableHeader';\nimport reducer, {actions} from './stateReducer';\nimport {\n BasicTablePagination,\n BasicView,\n LinearLoadIndicator,\n ProfilePerspectiveViewContext,\n useConfigPermissions,\n useRelationsLoader,\n RelationEditor\n} from '@reltio/components';\nimport {DEFAULT_COLUMNS_DATA, getColumnsData, getRowsPerPageOptions} from './helpers/tableHelpers';\nimport {pipe, pluck, propEq} from 'ramda';\nimport {buildRelationsFilter} from './helpers/relationsHelpers';\nimport {profile} from '@reltio/mdm-module';\nimport {\n ActivityFilters,\n ConnectionType,\n EntityType,\n isTempUri,\n MetadataType,\n ModeTypes,\n RelationsConfigType,\n createNewConnectionWithDefaultRelationType\n} from '@reltio/mdm-sdk';\nimport {useStyles} from './styles';\n\nconst DEFAULT_ROWS_PER_PAGE = 15;\nconst DEFAULT_SORT_ORDER = 'asc';\nconst DEFAULT_COLUMNS_TO_SHOW = pluck('id', DEFAULT_COLUMNS_DATA);\nconst [DEFAULT_SORT_FIELD] = DEFAULT_COLUMNS_TO_SHOW;\nconst DEFAULT_SHOW_INACTIVE = false;\n\nconst RelationsTableView = ({\n className,\n config,\n entity,\n metadata,\n connections = [],\n total = 0,\n mode: modeProp,\n relationToAdd,\n relationsToEdit = [],\n checkIfCanAddRelations,\n dispatch: reduxDispatch\n}) => {\n const initialState = {\n searchQuery: '',\n filters: null,\n visibleColumns: DEFAULT_COLUMNS_TO_SHOW,\n sorting: {\n order: config.sortOrder || DEFAULT_SORT_ORDER,\n field: config.sortColumn || DEFAULT_SORT_FIELD\n },\n page: 0,\n rowsPerPage: config.max || DEFAULT_ROWS_PER_PAGE,\n showInactive: DEFAULT_SHOW_INACTIVE\n };\n\n const styles = useStyles();\n const isProfilePerspectiveView = useContext(ProfilePerspectiveViewContext);\n const mode = isProfilePerspectiveView ? modeProp : ModeTypes.VIEWING;\n\n const [state, dispatch] = useReducer(reducer, initialState);\n const changeSearchQuery = pipe(actions.changeSearchQuery, dispatch);\n const changeShowInactive = pipe(actions.changeShowInactive, dispatch);\n const clearSearchQuery = () => {\n changeSearchQuery('');\n };\n useEffect(clearSearchQuery, [entity?.uri]); //eslint-disable-line react-hooks/exhaustive-deps\n\n const {visibleColumns, searchQuery, filters, sorting, page, rowsPerPage, showInactive} = state;\n\n const allColumnsData = useMemo(() => getColumnsData(config, metadata), [config, metadata]);\n\n const visibleColumnsData = useMemo(() => visibleColumns.map((id) => allColumnsData.find(propEq('id', id))), [\n visibleColumns,\n allColumnsData\n ]);\n\n const filter = useMemo(\n () => buildRelationsFilter(searchQuery, filters, visibleColumnsData),\n [filters, searchQuery] // eslint-disable-line\n );\n\n const {isLoading} = useRelationsLoader({\n sorting,\n filter,\n page,\n rowsPerPage,\n config,\n entity,\n relationActivityFilter: showInactive ? ActivityFilters.ALL : ActivityFilters.ACTIVE_ONLY,\n mode: modeProp\n });\n\n const rowsPerPageOptions = useMemo(() => getRowsPerPageOptions(initialState.rowsPerPage), []); // eslint-disable-line\n const {handleRowsPerPageChange, handlePageChange} = useMemo(\n () => ({\n handleRowsPerPageChange: pipe(actions.changeRowsPerPage, dispatch),\n handlePageChange: pipe(actions.changePage, dispatch)\n }),\n []\n );\n\n const onAddRelation = useCallback(() => {\n const newConnection = createNewConnectionWithDefaultRelationType({config, mode, metadata});\n pipe(profile.relations.actions.openRelationEditor(config.id), reduxDispatch)(newConnection);\n }, [config, mode, metadata, reduxDispatch]);\n\n const onRemoveRelation = useCallback(\n (relationUri) => {\n reduxDispatch(profile.relations.actions.closeRelationEditor(config.id, relationUri));\n reduxDispatch(profile.relations.actions.removeRelation(config.id, relationUri));\n const connectionToRemove = connections.find(\n (connection) => profile.relations.selectors.getRelationUriFromConnection(connection) === relationUri\n );\n const entityUri = profile.relations.selectors.getEntityUriFromConnection(connectionToRemove);\n if (isTempUri(entityUri)) {\n reduxDispatch(profile.modifiedEntities.actions.entityDeleted(entityUri));\n }\n },\n [config, connections, reduxDispatch]\n );\n\n const canAddRelations = entity && checkIfCanAddRelations;\n const openedRelations = relationToAdd ? [relationToAdd, ...relationsToEdit] : relationsToEdit;\n const {canUpdate, canDelete} = useConfigPermissions();\n const canEditRelations = canUpdate(config);\n const canRemoveRelations = canDelete(config);\n const basicTableRef = useRef(null);\n\n return (\n <BasicView className={className}>\n <RelationsTableHeader\n title={config.caption}\n total={total}\n columnsData={allColumnsData}\n selectedColumns={visibleColumns}\n onChangeColumns={pipe(actions.changeColumns, dispatch)}\n searchQuery={searchQuery}\n onChangeSearchQuery={changeSearchQuery}\n filtersEnabled={!!filters}\n onToggleFilters={pipe(actions.toggleFilters, dispatch)}\n showInactive={showInactive}\n onChangeShowInactive={changeShowInactive}\n />\n {canAddRelations && (\n <div className={styles.addArea}>\n <AddRelationButton onClick={onAddRelation} />\n </div>\n )}\n {openedRelations.map((relation) => (\n <RelationEditor\n key={profile.relations.selectors.getRelationUriFromConnection(relation)}\n connection={relation}\n config={config}\n mode={mode}\n metadata={metadata}\n />\n ))}\n <div style={{position: 'relative'}}>\n <RelationsTable\n mode={mode}\n columnsData={visibleColumnsData}\n connections={connections}\n metadata={metadata}\n filters={filters}\n onFilter={pipe(actions.changeFilter, dispatch)}\n sorting={sorting}\n onSort={pipe(actions.toggleSort, dispatch)}\n onEditRelation={\n canEditRelations\n ? pipe(profile.relations.actions.openRelationEditor(config.id), reduxDispatch)\n : null\n }\n onRemoveRelation={canRemoveRelations ? onRemoveRelation : null}\n basicTableRef={basicTableRef}\n allowOnlyCreateNew={config.allowOnlyCreateNew}\n />\n <BasicTablePagination\n count={total}\n rowsPerPageOptions={rowsPerPageOptions}\n rowsPerPage={rowsPerPage}\n onChangeRowsPerPage={handleRowsPerPageChange}\n page={page}\n onChangePage={handlePageChange}\n basicTableRef={basicTableRef}\n />\n {isLoading && <LinearLoadIndicator />}\n </div>\n </BasicView>\n );\n};\n\nRelationsTableView.propTypes = {\n className: PropTypes.string,\n config: RelationsConfigType,\n entity: EntityType,\n metadata: MetadataType,\n connections: PropTypes.arrayOf(ConnectionType),\n total: PropTypes.number,\n mode: PropTypes.string,\n relationToAdd: PropTypes.object,\n relationsToEdit: PropTypes.array,\n dispatch: PropTypes.func,\n checkIfCanAddRelations: PropTypes.bool\n};\n\nexport default RelationsTableView;\n","import {memoizeWith} from 'ramda';\nimport {connect} from 'react-redux';\nimport mdm from '@reltio/mdm-module';\nimport RelationsTableView from './RelationsTableView';\nimport {parseRelationsConfig} from './helpers/relationsHelpers';\n\nconst mapStateToProps = (state, ownProps) => {\n const {config} = ownProps;\n\n return {\n connections: mdm.selectors.getConnectionsWithDraftsByViewId(state, config.id),\n total: mdm.selectors.getTotalByViewId(state, config.id),\n entity: mdm.selectors.getEntity(state),\n metadata: mdm.selectors.getMetadata(state),\n mode: mdm.selectors.getMode(state),\n relationToAdd: mdm.selectors.getRelationToAddByViewId(state, config.id),\n relationsToEdit: mdm.selectors.getRelationsToEditByViewId(state, config.id),\n checkIfCanAddRelations: mdm.selectors.getCheckIfCanAddRelations(state, config.content)\n };\n};\n\nconst memoizedParseRelationsConfig = memoizeWith((metadata, config) => config.id, parseRelationsConfig);\n\nconst mergeProps = (stateProps, dispatchProps, ownProps) => ({\n ...stateProps,\n ...dispatchProps,\n ...ownProps,\n config: memoizedParseRelationsConfig(stateProps.metadata, ownProps.config)\n});\n\nexport default connect(mapStateToProps, undefined, mergeProps)(RelationsTableView);\n","import MomentUtils from '@date-io/moment';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport ReactResizeDetector from 'react-resize-detector';\nimport RelationsTableView from './RelationsTableView';\nimport {StylesProvider, createGenerateClassName} from '@material-ui/core/styles';\n\nimport {MuiPickersUtilsProvider} from '@material-ui/pickers';\nimport {Provider} from 'react-redux';\nimport {RelationsConfigType} from '@reltio/mdm-sdk';\nimport {identity} from 'ramda';\nimport {ErrorPopup, ViewIdContext} from '@reltio/components';\n\nconst generateClassName = createGenerateClassName({\n productionPrefix: 'relTable',\n disableGlobal: true\n});\n\nconst StandaloneRelationsTableView = ({config, store, onResize = identity, className}) => (\n <Provider store={store}>\n <ViewIdContext.Provider value={config.id}>\n <StylesProvider generateClassName={generateClassName}>\n <MuiPickersUtilsProvider utils={MomentUtils}>\n <ReactResizeDetector\n handleHeight\n onResize={(width, height) => onResize(Math.floor(width), Math.floor(height))}\n />\n {config && <RelationsTableView config={config} className={className} />}\n <ErrorPopup />\n </MuiPickersUtilsProvider>\n </StylesProvider>\n </ViewIdContext.Provider>\n </Provider>\n);\n\nStandaloneRelationsTableView.propTypes = {\n config: RelationsConfigType,\n store: PropTypes.object,\n onResize: PropTypes.func,\n className: PropTypes.string\n};\n\nexport default StandaloneRelationsTableView;\n"],"names":["useStyles","makeStyles","addButton","marginLeft","padding","backgroundColor","label","fontSize","fontWeight","lineHeight","icon","marginRight","AddRelationButton","onClick","styles","Button","color","className","Add","classes","root","i18n","propTypes","PropTypes","removedStyle","textDecoration","inactiveStyle","theme","headCell","display","alignItems","height","entityCell","entityLabel","palette","secondary","main","cursor","textOverflow","overflow","whiteSpace","entityAvatar","transform","margin","rowCell","pointerEvents","RowCellRenderer","cell","CellValueRenderer","rowValue","connection","isSorted","otherProps","isRemoved","checkRemoved","isActive","isActiveObject","relation","entity","classnames","values","map","value","index","key","EntityProfileRenderer","entityType","dispatch","useDispatch","viewId","useContext","ViewIdContext","getLabel","preparedUri","getEntityUriForLink","uri","entityUri","dataTenant","EntityTypeIcon","ExpandedValueTooltip","pipe","always","ui","EntityTypeType","withFilterAtBottom","props","DefaultHeadCellRenderer","getRelationTypes","rel","uniq","getAttrPathFromColumnId","split","slice","Infinity","getNestedPathByColumnId","columnId","startsWith","attrPath","length","getBasicTableColumnsData","columnData","sortable","resizable","nestedPath","id","headCellRenderer","HeadCellRenderer","rowCellValueRenderer","DefaultCellValueRenderer","tableContainer","fontFamily","position","paddingLeft","EditButtons","canUpdate","canRemove","handleEditRelation","handleRemoveRelation","Tooltip","title","IconButton","Edit","Delete","RelationsTable","mode","columnsData","connections","metadata","sorting","onSort","filters","onFilter","onEditRelation","onRemoveRelation","basicTableRef","allowOnlyCreateNew","tableRowsData","useMemo","reduce","acc","assoc","getEntityType","relationLabel","getRelationTypeLabelFromMetadata","relationType","startDate","endDate","path","getOvAttributeValuesByPath","getRelationAttributeValues","getRowValueByColumnId","getBasicTableRowsData","tableColumnsData","renderRowCell","useCallback","field","hoverRowIndex","setHoverRowIndex","useState","isNew","checkNew","profile","relationTypeMetadata","getRelationType","checkMetadataForDelete","checkMetadataForUpdate","checkRelationPermission","handleOnRowHover","rowIndex","hoveredRowRightContent","undefined","BasicTable","rowsData","hoverStateEnabled","defaultColumnWidth","defaultColumnMinWidth","headRowHeight","onRowHover","hoveredRowRightContentWrapper","hoveredRowRightContentContainer","ref","ColumnsDataType","ConnectionType","MetadataType","ColumnFilterType","SortingType","current","popupContent","checkboxControlLabel","checkboxControlCheckbox","showInactive","onShowInactiveChange","buttonRef","useRef","isOpen","setIsOpen","togglePopup","open","SmallIconButton","tooltipTitle","MoreVertIcon","size","Popover","paper","anchorEl","onClose","anchorOrigin","vertical","horizontal","transformOrigin","FormControlLabel","control","Checkbox","checked","onChange","e","target","header","totalCaption","letterSpacing","flexShrink","justifyContent","paddingTop","paddingBottom","moreButton","RelationsTableHeader","total","searchQuery","onChangeSearchQuery","filtersEnabled","onToggleFilters","selectedColumns","onChangeColumns","onChangeShowInactive","FacetViewHeader","HideOnShrink","widthToHide","VerticalDivider","Typography","variant","count","ExpandableSearchInput","query","FilterButton","enabled","ColumnsSettings","CHANGE_SEARCH_QUERY","CHANGE_SHOW_INACTIVE","actions","basicTableViewState","changeSearchQuery","createStandardAction","changeShowInactive","reducer","state","action","type","payload","page","ROWS_PER_PAGE_OPTIONS","DEFAULT_COLUMNS_DATA","dataTypeDefinition","DataTypes","hideable","ActivenessAttrTypes","getColumnIdFromAttrUri","attributeUriToSearchUri","concat","getColumnsDataFromRelationAttributes","attr","getAttrDataTypeDefinition","uniqBy","prop","getColumnsData","content","inRelations","outRelations","relationTypes","chain","find","propEq","getReadableAttributesList","getUri","item","containsUri","parseUris","curry","data","parseUri","shouldSkipDescendantUris","hasValidMetadata","checkMetadataPermission","MetadataPermissions","nextAcc","keys","descUri","extendsTypeURI","deriveEntityTypesFromRelations","deriveEntitiesFromRelationsMetadata","objectType","relations","relationTypeUri","entityTypeUri","entityTypes","indexByUri","indexBy","parseRelationsConfigContent","parseEntryUris","entry","evolve","nextEntry","unless","either","addArea","borderBottom","DEFAULT_COLUMNS_TO_SHOW","pluck","DEFAULT_SORT_FIELD","RelationsTableView","config","modeProp","relationToAdd","relationsToEdit","checkIfCanAddRelations","reduxDispatch","initialState","visibleColumns","order","sortOrder","sortColumn","rowsPerPage","max","ProfilePerspectiveViewContext","ModeTypes","useReducer","useEffect","allColumnsData","visibleColumnsData","filter","queryClause","Maybe","filterValueToQueryStringWithQuotes","queryString","orSome","filtersClause","buildColumnsFilter","FilterBuilder","addClause","build","buildRelationsFilter","isLoading","useRelationsLoader","relationActivityFilter","ActivityFilters","rowsPerPageOptions","getRowsPerPageOptions","defaultRowsPerPage","option","sort","subtract","handleRowsPerPageChange","handlePageChange","changeRowsPerPage","changePage","onAddRelation","newConnection","createNewConnectionWithDefaultRelationType","relationUri","connectionToRemove","isTempUri","canAddRelations","openedRelations","canDelete","useConfigPermissions","canEditRelations","canRemoveRelations","BasicView","caption","changeColumns","toggleFilters","RelationEditor","style","changeFilter","toggleSort","BasicTablePagination","onChangeRowsPerPage","onChangePage","LinearLoadIndicator","RelationsConfigType","EntityType","memoizedParseRelationsConfig","memoizeWith","connect","ownProps","mdm","stateProps","dispatchProps","generateClassName","createGenerateClassName","productionPrefix","disableGlobal","StandaloneRelationsTableView","store","onResize","identity","Provider","StylesProvider","MuiPickersUtilsProvider","utils","MomentUtils","handleHeight","width","Math","floor","ErrorPopup"],"sourceRoot":""}