Produced by Araxis Merge on 12/21/2017 6:15:12 PM Eastern Standard Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.
| # | Location | File | Last Modified |
|---|---|---|---|
| 1 | Genisis_2.0_v7_bld7.zip\TS\Client\src\app\services | mvp-services.ts | Thu Dec 14 19:56:21 2017 UTC |
| 2 | Genisis_2.0_v7_bld7.zip\TS\Client\src\app\services | mvp-services.ts | Thu Dec 21 21:12:37 2017 UTC |
| Description | Between Files 1 and 2 |
|
|---|---|---|
| Text Blocks | Lines | |
| Unchanged | 3 | 844 |
| Changed | 2 | 42 |
| Inserted | 0 | 0 |
| Removed | 0 | 0 |
| Whitespace | |
|---|---|
| Character case | Differences in character case are significant |
| Line endings | Differences in line endings (CR and LF characters) are ignored |
| CR/LF characters | Not shown in the comparison detail |
No regular expressions were active.
| 1 | import { I njectable } from '@a ngular/cor e'; | |
| 2 | import { N gRedux } f rom 'ng2-r edux'; | |
| 3 | import { I AppState } from '../ store'; | |
| 4 | import { H ttp, Respo nse, Heade rs, Reques tOptions } from '@an gular/http '; | |
| 5 | import { e nvironment } from '. ./../envir onments/en vironment' ; | |
| 6 | import { A piServices } from '. /api-servi ces'; | |
| 7 | import { C onceptServ ices } fro m '../serv ices/conce pt-service s'; | |
| 8 | import { B ookmarkSer vices } fr om '../ser vices/book mark-servi ces'; | |
| 9 | ||
| 10 | ||
| 11 | import { | |
| 12 | SET_ADDI NG_DEFINIT ION_MVP_ST ATE, | |
| 13 | SET_ADDI NG_ALT_DEF INITION_MV P_STATE, | |
| 14 | SET_ADDI NG_SYNONYM _MVP_STATE , | |
| 15 | RESET_AD D_MVP_STAT E, | |
| 16 | SET_CARD _DATA, | |
| 17 | CONCEPT_ CARD_MVP_A DDED, | |
| 18 | CONCEPT_ CARD_MVP_A DDING, | |
| 19 | DISPLAY_ CONCEPT_CA RD_DETAIL, | |
| 20 | SET_ADDI NG_SUPER_C LASS_MVP_S TATE, | |
| 21 | SET_ADDI NG_SUB_CLA SS_MVP_STA TE, | |
| 22 | SET_ADDI NG_INTER_O NTOLOGY_MV P_STATE, | |
| 23 | SET_ADDI NG_PROPERT Y_MVP_STAT E, | |
| 24 | SET_ADDI NG_RELATIO NSHIP_MVP_ STATE, | |
| 25 | SET_ADDI NG_MAPPING _DATA_ELEM ENT_MVP_ST ATE, | |
| 26 | SET_ADDI NG_MAPPING _ALGORITHM _MVP_STATE , | |
| 27 | SET_ADDI NG_MAPPING _VALIDATIO N_MVP_STAT E, | |
| 28 | FETCH_BO OKMARKS, | |
| 29 | UPDATE_B OOKMARKED_ MAPPING, | |
| 30 | FOCUS_ON , | |
| 31 | } from '.. /actions'; | |
| 32 | @Injectabl e() | |
| 33 | export cla ss MvpServ ices { | |
| 34 | baseUri; | |
| 35 | mvpPrefix = 'http:// URL /mvp-schem a#'; | |
| 36 | rdfPrefi x = 'http: //www.w3.o rg/2000/01 /rdf-schem a#'; | |
| 37 | construc tor( | |
| 38 | privat e ngRedux: NgRedux<I AppState>, | |
| 39 | privat e apiServi ces: ApiSe rvices, | |
| 40 | privat e conceptS ervices: C onceptServ ices, | |
| 41 | privat e bookmark Services: BookmarkSe rvices, | |
| 42 | privat e http: Ht tp) { | |
| 43 | } | |
| 44 | ||
| 45 | getState () { | |
| 46 | return this.ngRe dux.getSta te(); | |
| 47 | } | |
| 48 | ||
| 49 | // Maste r Service Event Hand ler functi on | |
| 50 | enableMv pAddFor(ty pe = null, tabType) { | |
| 51 | switch (type) { | |
| 52 | case 'definiti on': | |
| 53 | // do what e ver redux stuff need ed for def inition | |
| 54 | th is.ngRedux .dispatch( { | |
| 55 | type: SET_ ADDING_DEF INITION_MV P_STATE | |
| 56 | }) ; | |
| 57 | br eak; | |
| 58 | case 'alt-defi nitions': | |
| 59 | th is.ngRedux .dispatch( { | |
| 60 | type: SET_ ADDING_ALT _DEFINITIO N_MVP_STAT E | |
| 61 | }) ; | |
| 62 | br eak; | |
| 63 | case 'synonyms ': | |
| 64 | th is.ngRedux .dispatch( { | |
| 65 | type: SET_ ADDING_SYN ONYM_MVP_S TATE | |
| 66 | }) ; | |
| 67 | br eak; | |
| 68 | case 'super-cl asses': | |
| 69 | th is.ngRedux .dispatch( { | |
| 70 | type: SET_ ADDING_SUP ER_CLASS_M VP_STATE | |
| 71 | }) ; | |
| 72 | br eak; | |
| 73 | case 'sub-clas ses': | |
| 74 | th is.ngRedux .dispatch( { | |
| 75 | type: SET_ ADDING_SUB _CLASS_MVP _STATE | |
| 76 | }) ; | |
| 77 | br eak; | |
| 78 | case 'inter-on tologies': | |
| 79 | th is.ngRedux .dispatch( { | |
| 80 | type: SET_ ADDING_INT ER_ONTOLOG Y_MVP_STAT E | |
| 81 | }) ; | |
| 82 | br eak; | |
| 83 | case 'properti es': | |
| 84 | th is.ngRedux .dispatch( { | |
| 85 | type: SET_ ADDING_PRO PERTY_MVP_ STATE | |
| 86 | }) ; | |
| 87 | br eak; | |
| 88 | case 'relation ships': | |
| 89 | th is.ngRedux .dispatch( { | |
| 90 | type: SET_ ADDING_REL ATIONSHIP_ MVP_STATE | |
| 91 | }) ; | |
| 92 | br eak; | |
| 93 | case 'data-ele ments': | |
| 94 | th is.ngRedux .dispatch( { | |
| 95 | type: SET_ ADDING_MAP PING_DATA_ ELEMENT_MV P_STATE | |
| 96 | }) ; | |
| 97 | br eak; | |
| 98 | case 'algorith m': | |
| 99 | th is.ngRedux .dispatch( { | |
| 100 | type: SET_ ADDING_MAP PING_ALGOR ITHM_MVP_S TATE | |
| 101 | }) ; | |
| 102 | br eak; | |
| 103 | case 'validati on': | |
| 104 | th is.ngRedux .dispatch( { | |
| 105 | type: SET_ ADDING_MAP PING_VALID ATION_MVP_ STATE | |
| 106 | }) ; | |
| 107 | br eak; | |
| 108 | defa ult: | |
| 109 | br eak; | |
| 110 | ||
| 111 | } | |
| 112 | this.f ocusOn(tab Type); | |
| 113 | } | |
| 114 | ||
| 115 | resetMvp AddState(t abType) { | |
| 116 | this.n gRedux.dis patch({ | |
| 117 | type : RESET_AD D_MVP_STAT E | |
| 118 | }); | |
| 119 | this.n gRedux.dis patch({ | |
| 120 | type : FOCUS_ON , | |
| 121 | payl oad: tabTy pe | |
| 122 | }); | |
| 123 | ||
| 124 | } | |
| 125 | ||
| 126 | focusOn( tabType) { | |
| 127 | if (ta bType != n ull) { | |
| 128 | this .ngRedux.d ispatch({ | |
| 129 | ty pe: FOCUS_ ON, | |
| 130 | pa yload: tab Type | |
| 131 | }); | |
| 132 | } | |
| 133 | } | |
| 134 | ||
| 135 | // Maste r Service Function | |
| 136 | addMvpCo ncept(opti ons = {typ e: null}, tabType) { | |
| 137 | this.n gRedux.dis patch({ | |
| 138 | type : CONCEPT_ CARD_MVP_A DDING | |
| 139 | }); | |
| 140 | switch (options.t ype) { | |
| 141 | case 'definiti on': | |
| 142 | th is.execute AddingDefi nition(opt ions, tabT ype); | |
| 143 | br eak; | |
| 144 | case 'alt-defi nitions': | |
| 145 | th is.execute AddingAltD efinitions (options, tabType); | |
| 146 | br eak; | |
| 147 | case 'synonyms ': | |
| 148 | th is.execute AddingSyno nyms(optio ns, tabTyp e); | |
| 149 | br eak; | |
| 150 | case 'super-cl asses': | |
| 151 | th is.execute AddingSupe rClasses(o ptions, ta bType); | |
| 152 | br eak; | |
| 153 | case 'sub-clas ses': | |
| 154 | th is.execute AddingSubC lasses(opt ions, tabT ype); | |
| 155 | bre ak; | |
| 156 | case 'inter-on tologies': | |
| 157 | th is.execute AddingInte rOntologie s(options, tabType); | |
| 158 | br eak; | |
| 159 | case 'properti es': | |
| 160 | th is.execute AddingProp erties(opt ions, tabT ype); | |
| 161 | br eak; | |
| 162 | case 'relation ships': | |
| 163 | th is.execute AddingRela tionships( options, t abType); | |
| 164 | br eak; | |
| 165 | case 'data-ele ments': | |
| 166 | th is.execute AddingMapp ingDataEle ments(opti ons, tabTy pe); | |
| 167 | br eak; | |
| 168 | case 'algorith m': | |
| 169 | th is.execute AddingMapp ingAlgorit hm(options , tabType) ; | |
| 170 | br eak; | |
| 171 | case 'validati on': | |
| 172 | th is.execute AddingMapp ingValidat ion(option s, tabType ); | |
| 173 | br eak; | |
| 174 | defa ult: | |
| 175 | br eak; | |
| 176 | } | |
| 177 | } | |
| 178 | ||
| 179 | // Descr iption tab sections can be con solidated to a switc h statemen t since | |
| 180 | // every thing afte r the trip le creatio n is the s ame... | |
| 181 | executeA ddingDefin ition(opti ons, tabTy pe) { | |
| 182 | let tr iple = { | |
| 183 | prop erties: [{ | |
| 184 | s: '<' + thi s.getCurre ntConceptU ri() + '>' , | |
| 185 | p: '<' + thi s.mvpPrefi x + 'Defin ition' + ' >', | |
| 186 | o: options.o bject | |
| 187 | }] | |
| 188 | }; | |
| 189 | return this.crea teAddTripl eHttpReque st(triple) | |
| 190 | .sub scribe((re sponse: Re sponse) => { | |
| 191 | if (response .status == = 200) { | |
| 192 | this.conce ptServices .reloadCon ceptCard(t abType); | |
| 193 | } | |
| 194 | }); | |
| 195 | } | |
| 196 | ||
| 197 | executeA ddingAltDe finitions( options, t abType) { | |
| 198 | let tr iple = { | |
| 199 | prop erties: [{ | |
| 200 | s: '<' + thi s.getCurre ntConceptU ri() + '>' , | |
| 201 | p: '<' + thi s.mvpPrefi x + 'AltDe finition' + '>', | |
| 202 | o: options.o bject | |
| 203 | }] | |
| 204 | }; | |
| 205 | return this.crea teAddTripl eHttpReque st(triple) | |
| 206 | .sub scribe((re sponse: Re sponse) => { | |
| 207 | if (response .status == = 200) { | |
| 208 | this.conce ptServices .reloadCon ceptCard(t abType); | |
| 209 | } | |
| 210 | }); | |
| 211 | } | |
| 212 | ||
| 213 | executeA ddingSynon yms(option s, tabType ) { | |
| 214 | let tr iple = { | |
| 215 | prop erties: [{ | |
| 216 | s: '<' + thi s.getCurre ntConceptU ri() + '>' , | |
| 217 | p: '<' + thi s.mvpPrefi x + 'Synon ym' + '>', | |
| 218 | o: options.o bject | |
| 219 | }] | |
| 220 | }; | |
| 221 | return this.crea teAddTripl eHttpReque st(triple) | |
| 222 | .sub scribe((re sponse: Re sponse) => { | |
| 223 | if (response .status == = 200) { | |
| 224 | this.conce ptServices .reloadCon ceptCard(t abType); | |
| 225 | } | |
| 226 | }); | |
| 227 | } | |
| 228 | ||
| 229 | executeA ddingSuper Classes(op tions, tab Type) { | |
| 230 | let tr iple = { | |
| 231 | pr operties: [{ | |
| 232 | s: '<' + t his.getCur rentConcep tUri() + ' >', | |
| 233 | p: '<' + t his.mvpPre fix + 'Sub ClassOf' + '>', | |
| 234 | o: '<' + o ptions.obj ect + '>' | |
| 235 | }] | |
| 236 | }; | |
| 237 | this.c reateAddTr ipleHttpRe quest(trip le) | |
| 238 | .sub scribe((re sponse: Re sponse) => { | |
| 239 | co nst rdata = JSON.par se(respons e.text()); | |
| 240 | if (response .status == = 200) { | |
| 241 | this.conce ptServices .reloadCon ceptCard(t abType); | |
| 242 | } | |
| 243 | }); | |
| 244 | } | |
| 245 | ||
| 246 | executeA ddingSubCl asses(opti ons, tabTy pe) { | |
| 247 | var co nceptNameU ri = optio ns.input.r eplace(/ / gi, '_'); | |
| 248 | let tr iple = { | |
| 249 | prop erties: [{ | |
| 250 | s: '<' + thi s.mvpPrefi x + concep tNameUri + '_?01>', | |
| 251 | p: '<' + thi s.rdfPrefi x + 'label >', | |
| 252 | o: options.i nput | |
| 253 | }, | |
| 254 | { | |
| 255 | s: '<' + thi s.mvpPrefi x + concep tNameUri + '_?01' + '>', | |
| 256 | p: '<' + thi s.mvpPrefi x + 'SubCl assOf' + ' >', | |
| 257 | o: '<' + thi s.getCurre ntConceptU ri() + '>' | |
| 258 | }] | |
| 259 | }; | |
| 260 | this.c reateAddTr ipleHttpRe quest(trip le) | |
| 261 | .subsc ribe((resp onse: Resp onse) => { | |
| 262 | if ( response.s tatus === 200) { | |
| 263 | this.conce ptServices .reloadCon ceptCard(t abType); | |
| 264 | } | |
| 265 | }); | |
| 266 | } | |
| 267 | ||
| 268 | executeA ddingInter Ontologies (options, tabType){ | |
| 269 | let tr iple = { | |
| 270 | prop erties: [{ | |
| 271 | s: '<' + thi s.getCurre ntConceptU ri() + '>' , | |
| 272 | p: '<' + thi s.mvpPrefi x + 'Inter OntologyLi nk' + '>', | |
| 273 | o: '<' + opt ions.objec t + '>' | |
| 274 | }] | |
| 275 | }; | |
| 276 | return this.crea teAddTripl eHttpReque st(triple) | |
| 277 | .sub scribe((re sponse: Re sponse) => { | |
| 278 | if (response .status == = 200) { | |
| 279 | this.conce ptServices .reloadCon ceptCard(t abType); | |
| 280 | } | |
| 281 | }); | |
| 282 | } | |
| 283 | ||
| 284 | executeA ddingPrope rties(opti ons, tabTy pe){ | |
| 285 | let tr iple = { | |
| 286 | prop erties: [{ | |
| 287 | s: '<' + thi s.getCurre ntConceptU ri() + '>' , | |
| 288 | p: '<' + opt ions.predi cate + '>' , | |
| 289 | o: options.o bject | |
| 290 | }] | |
| 291 | }; | |
| 292 | return this.crea teAddTripl eHttpReque st(triple) | |
| 293 | .sub scribe((re sponse: Re sponse) => { | |
| 294 | if (response .status == = 200) { | |
| 295 | this.conce ptServices .reloadCon ceptCard(t abType); | |
| 296 | } | |
| 297 | }); | |
| 298 | } | |
| 299 | ||
| 300 | executeA ddingRelat ionships(o ptions, ta bType){ | |
| 301 | let tr iple = { | |
| 302 | prop erties: [{ | |
| 303 | s: '<' + thi s.getCurre ntConceptU ri() + '>' , | |
| 304 | p: options.p redicate, | |
| 305 | o: '<' + opt ions.objec t + '>' | |
| 306 | }] | |
| 307 | }; | |
| 308 | return this.crea teAddTripl eHttpReque st(triple) | |
| 309 | .sub scribe((re sponse: Re sponse) => { | |
| 310 | if (response .status == = 200) { | |
| 311 | this.conce ptServices .reloadCon ceptCard(t abType); | |
| 312 | } | |
| 313 | }); | |
| 314 | } | |
| 315 | ||
| 316 | executeA ddingMappi ngDataElem ents(optio ns, tabTyp e){ | |
| 317 | let tr iple = { | |
| 318 | prop erties: [{ | |
| 319 | s: '<' + thi s.getCurre ntConceptU ri() + '>' , | |
| 320 | p: '<' + thi s.mvpPrefi x + 'Mappi ngDataElem ent' + '>' , | |
| 321 | o: '<' + opt ions.objec t + '>' | |
| 322 | }] | |
| 323 | }; | |
| 324 | return this.crea teAddTripl eHttpReque st(triple) | |
| 325 | .sub scribe((re sponse: Re sponse) => { | |
| 326 | if (response .status == = 200) { | |
| 327 | this.conce ptServices .reloadCon ceptCard(t abType); | |
| 328 | this.ngRed ux.dispatc h({ | |
| 329 | type: UP DATE_BOOKM ARKED_MAPP ING, | |
| 330 | payload: { | |
| 331 | mappin gFlag: tru e, | |
| 332 | concep tUri: this .getCurren tConceptUr i() | |
| 333 | } | |
| 334 | }); | |
| 335 | } | |
| 336 | }); | |
| 337 | } | |
| 338 | ||
| 339 | execut eAddingMap pingAlgori thm(option s, tabType ){ | |
| 340 | let tr iple = { | |
| 341 | prop erties: [{ | |
| 342 | s: '<' + thi s.getCurre ntConceptU ri() + '>' , | |
| 343 | p: '<' + thi s.mvpPrefi x + 'Mappi ngAlgorith m' + '>', | |
| 344 | o: options.o bject | |
| 345 | }] | |
| 346 | }; | |
| 347 | return this.crea teAddTripl eHttpReque st(triple) | |
| 348 | .sub scribe((re sponse: Re sponse) => { | |
| 349 | if (response .status == = 200) { | |
| 350 | this.conce ptServices .reloadCon ceptCard(t abType); | |
| 351 | } | |
| 352 | }); | |
| 353 | } | |
| 354 | ||
| 355 | execut eAddingMap pingValida tion(optio ns, tabTyp e){ | |
| 356 | let tr iple = { | |
| 357 | prop erties: [{ | |
| 358 | s: '<' + thi s.getCurre ntConceptU ri() + '>' , | |
| 359 | p: '<' + thi s.mvpPrefi x + 'Mappi ngValidati on' + '>', | |
| 360 | o: options.o bject | |
| 361 | }] | |
| 362 | }; | |
| 363 | return this.crea teAddTripl eHttpReque st(triple) | |
| 364 | .sub scribe((re sponse: Re sponse) => { | |
| 365 | if (response .status == = 200) { | |
| 366 | this.conce ptServices .reloadCon ceptCard(t abType); | |
| 367 | } | |
| 368 | }); | |
| 369 | } | |
| 370 | ||
| 371 | getCurre ntConceptU ri() { | |
| 372 | return this.getS tate().con ceptCard.c onceptCard Data.uri; | |
| 373 | } | |
| 374 | ||
| 375 | //http r equest to add triple | |
| 376 | createAd dTripleHtt pRequest(b ody) { | |
| 377 | const headers = this.apiSe rvices.get Header(); | |
| 378 | const options = new Reques tOptions({ headers: h eaders}); | |
| 379 | return this.http .post(this .apiServic es.apiUrl( ) + '/upda te', body, options); | |
| 380 | } | |
| 381 | ||
| 382 | getPredi cateLabelL ist() { | |
| 383 | let pr edicateLis t: Array<a ny> = | |
| 384 | [ | |
| 385 | {label: 'M VP-AltDefi nition', u ri: 'http: // URL /mvp-schem a#AltDefin ition'}, | |
| 386 | {label: 'M VP-Cleaned ', uri: 'h ttp:// URL /mvp-schem a#Cleaned' }, | |
| 387 | {label: 'M VP-Cleanin gProcedure ', uri: 'h ttp:// URL /mvp-schem a#Cleaning Procedure' }, | |
| 388 | {label: 'M VP-DataOut come', uri : 'http:// URL /mvp-schem a#DataOutc ome'}, | |
| 389 | {label: 'M VP-DataSou rce', uri: 'http:// URL /mvp-schem a#DataSour ce'}, | |
| 390 | {label: 'M VP-DataTra nsform', u ri: 'http: // URL /mvp-schem a#DataTran sform'}, | |
| 391 | {label: 'M VP-Definit ion', uri: 'http:// URL /mvp-schem a#Definiti on'}, | |
| 392 | {label: 'M VP-Element Type', uri : 'http:// URL /mvp-schem a#ElementT ype'}, | |
| 393 | {label: 'M VP-GUID', uri: 'http :// URL /mvp-schem a#GUID'}, | |
| 394 | {label: 'M VP-InterOn tologyLink ', uri: 'h ttp:// URL /mvp-schem a#InterOnt ologyLink' }, | |
| 395 | {label: 'M VP-Mapping Algorithm' , uri: 'ht tp:// URL /mvp-schem a#MappingA lgorithm'} , | |
| 396 | {label: 'M VP-DataEle ment', uri : 'http:// URL /mvp-schem a#DataElem ent'}, | |
| 397 | {label: 'M VP-Mapping Validation ', uri: 'h ttp:// URL /mvp-schem a#MappingV alidation' }, | |
| 398 | {label: 'M VP-Source' , uri: 'ht tp:// URL /mvp-schem a#Source'} , | |
| 399 | {label: 'M VP-Sensiti vity', uri : 'http:// URL /mvp-schem a#Sensitiv ity'}, | |
| 400 | {label: 'M VP-Specifi city', uri : 'http:// URL /mvp-schem a#Specific ity'}, | |
| 401 | {label: 'M VP-SubClas sOf', uri: 'http:// URL /mvp-schem a#SubClass Of'}, | |
| 402 | {label: 'M VP-Synonym ', uri: 'h ttp:// URL /mvp-schem a#Synonym' }, | |
| 403 | {label: 'M VP-Units', uri: 'htt p:// URL /mvp-schem a#Units'}, | |
| 404 | {label: 'M VP-Validat edBy', uri : 'http:// URL /mvp-schem a#Validate dBy'}]; | |
| 405 | ||
| 406 | let la belPredica teObj: any = {label: 'RDF-Labe l', uri: t his.rdfPre fix + 'lab el'}; | |
| 407 | const newPredica teList = p redicateLi st.concat( ); | |
| 408 | newPre dicateList .push(labe lPredicate Obj); | |
| 409 | return this.hasP ropertyPre dicate() ? predicate List : new PredicateL ist; | |
| 410 | } | |
| 411 | ||
| 412 | hasPrope rtyPredica te() { | |
| 413 | var pr opertiesLi st = this. ngRedux.ge tState().c onceptCard .conceptCa rdData.met a.properti es; | |
| 414 | if (pr opertiesLi st !== nul l && prope rtiesList !== undefi ned && pro pertiesLis t.length > 0) { | |
| 415 | re turn prope rtiesList. find(prope rtyObj => propertyOb j.property Uri === (t his.rdfPre fix + 'lab el')) != u ndefined; | |
| 416 | } else { | |
| 417 | re turn false ; | |
| 418 | } | |
| 419 | } | |
| 420 | ||
| 421 | getMvpBo okmarkedCo nceptList( ){ | |
| 422 | const conceptCar dUri = thi s.getState ().concept Card.conce ptCardData .uri; | |
| 423 | const bookmarked ConceptLis t = this.g etState(). bookmark.b ookmarks; | |
| 424 | const newArray = bookmarke dConceptLi st.filter( | |
| 425 | book mark => bo okmark.con ceptUri != = conceptC ardUri); | |
| 426 | if (ne wArray != null && ne wArray.len gth > 0) { | |
| 427 | retu rn newArra y; | |
| 428 | } else { | |
| 429 | if ( bookmarked ConceptLis t.length = = 1 && boo kmarkedCon ceptList[0 ].conceptU ri === con ceptCardUr i) { | |
| 430 | re turn null; | |
| 431 | } el se { | |
| 432 | re turn bookm arkedConce ptList; | |
| 433 | } | |
| 434 | } | |
| 435 | } | |
| 436 | ||
| 437 | isConcep tMvp(){ | |
| 438 | //retu rn this.ge tState().c onceptCard .conceptCa rdData.uri != null ? this.getS tate().con ceptCard.c onceptCard Data.uri.i ndexOf(thi s.mvpPrefi x) > -1 : false | |
| 439 | return true; | |
| 440 | } | |
| 441 | ||
| 442 | ||
| 443 | } |
Araxis Merge (but not the data content of this report) is Copyright © 1993-2016 Araxis Ltd (www.araxis.com). All rights reserved.