2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								import  noteDetailService  from  "./note_detail.js" ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import  utils  from  "./utils.js" ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import  Branch  from  "../entities/branch.js" ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import  server  from  "./server.js" ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import  treeCache  from  "./tree_cache.js" ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								import  messagingService  from  "./messaging.js" ;  
						 
					
						
							
								
									
										
										
										
											2018-12-11 21:53:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								import  hoistedNoteService  from  "./hoisted_note.js" ;  
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-04-16 23:13:33 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								async  function  prepareTree ( noteRows ,  branchRows ,  relations )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    utils . assertArguments ( noteRows ,  branchRows ,  relations ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-04-16 23:13:33 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    treeCache . load ( noteRows ,  branchRows ,  relations ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-12-11 21:53:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    const  hoistedNoteId  =  await  hoistedNoteService . getHoistedNoteId ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2018-12-12 20:39:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    let  hoistedBranch ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  ( hoistedNoteId  ===  'root' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hoistedBranch  =  await  treeCache . getBranch ( 'root' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  hoistedNote  =  await  treeCache . getNote ( hoistedNoteId ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hoistedBranch  =  ( await  hoistedNote . getBranches ( ) ) [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2018-12-11 21:53:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  [  await  prepareNode ( hoistedBranch )  ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								async  function  prepareBranch ( note )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  ( note . type  ===  'search' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  await  prepareSearchBranch ( note ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  await  prepareRealBranch ( note ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-12-12 20:54:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								async  function  getIcon ( note )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    const  hoistedNoteId  =  await  hoistedNoteService . getHoistedNoteId ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-11-09 11:57:52 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    if  ( note . noteId  ===  'root' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  "jam jam-chevrons-right" ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2018-12-12 20:54:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    else  if  ( note . noteId  ===  hoistedNoteId )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  "jam jam-arrow-up" ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2018-11-09 11:57:52 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    else  if  ( note . type  ===  'text' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  ( note . hasChildren ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  "jam jam-folder" ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            return  "jam jam-file" ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    else  if  ( note . type  ===  'file' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  "jam jam-attachment" 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    else  if  ( note . type  ===  'image' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  "jam jam-picture" 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    else  if  ( note . type  ===  'code' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  "jam jam-terminal" 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    else  if  ( note . type  ===  'render' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  "jam jam-play" 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    else  if  ( note . type  ===  'search' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  "jam jam-search-folder" 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    else  if  ( note . type  ===  'relation-map' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  "jam jam-map" 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-05-26 16:16:34 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								async  function  prepareNode ( branch )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    const  note  =  await  branch . getNote ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    const  title  =  ( branch . prefix  ?  ( branch . prefix  +  " - " )  :  "" )  +  note . title ; 
							 
						 
					
						
							
								
									
										
										
										
											2018-12-12 20:54:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    const  hoistedNoteId  =  await  hoistedNoteService . getHoistedNoteId ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2018-05-26 16:16:34 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    const  node  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        noteId :  note . noteId , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        parentNoteId :  branch . parentNoteId , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        branchId :  branch . branchId , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        isProtected :  note . isProtected , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        title :  utils . escapeHtml ( title ) , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        extraClasses :  await  getExtraClasses ( note ) , 
							 
						 
					
						
							
								
									
										
										
										
											2018-12-12 20:54:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        icon :  await  getIcon ( note ) , 
							 
						 
					
						
							
								
									
										
										
										
											2018-05-26 16:16:34 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        refKey :  note . noteId , 
							 
						 
					
						
							
								
									
										
										
										
											2019-03-18 21:59:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        expanded :  branch . isExpanded  ||  hoistedNoteId  ===  note . noteId , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        lazy :  true 
							 
						 
					
						
							
								
									
										
										
										
											2018-05-26 16:16:34 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  ( note . hasChildren ( )  ||  note . type  ===  'search' )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        node . folder  =  true ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  node ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								async  function  prepareRealBranch ( parentNote )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    utils . assertArguments ( parentNote ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    const  childBranches  =  await  parentNote . getChildBranches ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  ( ! childBranches )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        messagingService . logError ( ` No children for  ${ parentNote } . This shouldn't happen. ` ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    const  noteList  =  [ ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    for  ( const  branch  of  childBranches )  { 
							 
						 
					
						
							
								
									
										
										
										
											2018-05-26 16:16:34 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  node  =  await  prepareNode ( branch ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        noteList . push ( node ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  noteList ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								async  function  prepareSearchBranch ( note )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    const  fullNote  =  await  noteDetailService . loadNote ( note . noteId ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-02-15 21:21:26 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    const  json  =  JSON . parse ( fullNote . noteContent . content ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    const  results  =  ( await  server . get ( 'search/'  +  encodeURIComponent ( json . searchString ) ) ) 
							 
						 
					
						
							
								
									
										
										
										
											2018-08-14 22:50:05 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        . filter ( res  =>  res . noteId  !==  note . noteId ) ;  // this is necessary because title of the search note is often the same as the search text which would match and create circle
 
							 
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-06-05 22:47:47 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // force to load all the notes at once instead of one by one
 
							 
						 
					
						
							
								
									
										
										
										
											2018-08-14 23:07:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    await  treeCache . getNotes ( results . map ( res  =>  res . noteId ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2018-06-05 22:47:47 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-06-04 23:21:45 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    for  ( const  result  of  results )  { 
							 
						 
					
						
							
								
									
										
										
										
											2018-06-05 22:47:47 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  origBranch  =  await  treeCache . getBranch ( result . branchId ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        const  branch  =  new  Branch ( treeCache ,  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            branchId :  "virt"  +  utils . randomString ( 10 ) , 
							 
						 
					
						
							
								
									
										
										
										
											2018-06-04 23:21:45 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            noteId :  result . noteId , 
							 
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            parentNoteId :  note . noteId , 
							 
						 
					
						
							
								
									
										
										
										
											2018-06-05 22:47:47 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            prefix :  origBranch . prefix , 
							 
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								            virtual :  true 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        treeCache . addBranch ( branch ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  await  prepareRealBranch ( fullNote ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								async  function  getExtraClasses ( note )  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    utils . assertArguments ( note ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    const  extraClasses  =  [ ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  ( note . isProtected )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        extraClasses . push ( "protected" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-04-16 23:34:56 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    if  ( note . getParentNoteIds ( ) . length  >  1 )  { 
							 
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        extraClasses . push ( "multiple-parents" ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-08-13 10:59:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    if  ( note . cssClass )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        extraClasses . push ( note . cssClass ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-01-28 21:42:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    extraClasses . push ( utils . getNoteTypeClass ( note . type ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-01-13 20:14:33 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    if  ( note . mime )  {  // some notes should not have mime type (e.g. render)
 
							 
						 
					
						
							
								
									
										
										
										
											2019-01-28 21:42:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        extraClasses . push ( utils . getMimeTypeClass ( note . mime ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-01-13 20:14:33 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    return  extraClasses . join ( " " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								export  default  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    prepareTree , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    prepareBranch , 
							 
						 
					
						
							
								
									
										
										
										
											2018-11-14 08:42:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    getExtraClasses , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    getIcon 
							 
						 
					
						
							
								
									
										
										
										
											2018-03-26 23:18:50 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}