Connect data
This commit is contained in:
+6
-6
@@ -77,7 +77,7 @@ class App
|
|||||||
set_socket()
|
set_socket()
|
||||||
{
|
{
|
||||||
// Set up
|
// Set up
|
||||||
this.socket = socket_io_client( `http://${this.options.domain}:${this.options.port}` )
|
this.socket = socket_io_client( `http://${this.options.domain}:${this.options.port}/app` )
|
||||||
|
|
||||||
// Connect event
|
// Connect event
|
||||||
this.socket.on( 'connect', () =>
|
this.socket.on( 'connect', () =>
|
||||||
@@ -106,7 +106,7 @@ class App
|
|||||||
this.watcher.on( 'add', ( _path ) =>
|
this.watcher.on( 'add', ( _path ) =>
|
||||||
{
|
{
|
||||||
// Set up
|
// Set up
|
||||||
let relative_path = _path.replace( process.cwd() + '/', '' )
|
let relative_path = _path.replace( process.cwd(), '.' )
|
||||||
|
|
||||||
console.log( 'add:'.green.bold, relative_path )
|
console.log( 'add:'.green.bold, relative_path )
|
||||||
|
|
||||||
@@ -122,7 +122,7 @@ class App
|
|||||||
this.watcher.on( 'change', ( _path ) =>
|
this.watcher.on( 'change', ( _path ) =>
|
||||||
{
|
{
|
||||||
// Set up
|
// Set up
|
||||||
let relative_path = _path.replace( process.cwd() + '/', '' )
|
let relative_path = _path.replace( process.cwd(), '.' )
|
||||||
|
|
||||||
console.log( 'change:'.green.bold, relative_path )
|
console.log( 'change:'.green.bold, relative_path )
|
||||||
|
|
||||||
@@ -138,7 +138,7 @@ class App
|
|||||||
this.watcher.on( 'unlink', ( _path ) =>
|
this.watcher.on( 'unlink', ( _path ) =>
|
||||||
{
|
{
|
||||||
// Set up
|
// Set up
|
||||||
let relative_path = _path.replace( process.cwd() + '/', '' )
|
let relative_path = _path.replace( process.cwd(), '.' )
|
||||||
|
|
||||||
console.log( 'unlink:'.green.bold, relative_path )
|
console.log( 'unlink:'.green.bold, relative_path )
|
||||||
|
|
||||||
@@ -150,7 +150,7 @@ class App
|
|||||||
this.watcher.on( 'addDir', ( _path ) =>
|
this.watcher.on( 'addDir', ( _path ) =>
|
||||||
{
|
{
|
||||||
// Set up
|
// Set up
|
||||||
let relative_path = _path.replace( process.cwd() + '/', '' )
|
let relative_path = _path.replace( process.cwd(), '.' )
|
||||||
|
|
||||||
console.log( 'addDir:'.green.bold, relative_path )
|
console.log( 'addDir:'.green.bold, relative_path )
|
||||||
|
|
||||||
@@ -162,7 +162,7 @@ class App
|
|||||||
this.watcher.on( 'unlinkDir', ( _path ) =>
|
this.watcher.on( 'unlinkDir', ( _path ) =>
|
||||||
{
|
{
|
||||||
// Set up
|
// Set up
|
||||||
let relative_path = _path.replace( process.cwd() + '/', '' )
|
let relative_path = _path.replace( process.cwd(), '.' )
|
||||||
|
|
||||||
console.log( 'unlinkDir:'.green.bold, relative_path )
|
console.log( 'unlinkDir:'.green.bold, relative_path )
|
||||||
|
|
||||||
|
|||||||
+41
-15
@@ -36,16 +36,16 @@ class App
|
|||||||
// Set up
|
// Set up
|
||||||
this.projects = new Projects()
|
this.projects = new Projects()
|
||||||
|
|
||||||
// // Tests
|
// Tests
|
||||||
// var project = this.projects.create_project( 'test' )
|
// var project = this.projects.create_project( 'test' )
|
||||||
// project.create_folder( 'toto' )
|
// project.create_folder( './toto' )
|
||||||
// project.get_folder( 'toto//tutu/tete', true )
|
// project.get_folder( './toto//tutu/tete', true )
|
||||||
// project.create_file( 'coucou/coco.txt', 'content 0' )
|
// project.create_file( './coucou/coco.txt', 'content 0' )
|
||||||
// project.update_file( 'toto/tutu/tete/tutu.txt', 'content 1' )
|
// project.create_file( './test-1.txt', 'content 1' )
|
||||||
// project.update_file( 'toto/tata/lorem.txt', 'content 2' )
|
// project.update_file( './toto/tata/lorem.txt', 'content 2' )
|
||||||
// project.update_file( 'toto/tata/ipsum.txt', 'content 3' )
|
// project.update_file( './toto/tata/ipsum.txt', 'content 3' )
|
||||||
// project.delete_folder( 'toto/tutu', true )
|
// project.delete_folder( './toto/tutu', true )
|
||||||
// project.delete_file( 'toto/tata/ipsum.txt' )
|
// project.delete_file( './toto/tata/ipsum.txt' )
|
||||||
// console.log( util.inspect( project, { depth: null, colors: true } ) )
|
// console.log( util.inspect( project, { depth: null, colors: true } ) )
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -108,51 +108,77 @@ class App
|
|||||||
set_socket()
|
set_socket()
|
||||||
{
|
{
|
||||||
// Set up
|
// Set up
|
||||||
this.io = socket_io.listen( this.server )
|
this.sockets = {}
|
||||||
|
this.sockets.main = socket_io.listen( this.server )
|
||||||
// Connection event
|
this.sockets.app = this.sockets.main.of( '/app' )
|
||||||
this.io.on( 'connection', ( socket ) =>
|
this.sockets.site = this.sockets.main.of( '/site' )
|
||||||
{
|
|
||||||
console.log( 'socket'.green.bold + ' - ' + 'connect'.cyan + ' - ' + socket.id.cyan )
|
|
||||||
|
|
||||||
let project = null
|
let project = null
|
||||||
|
|
||||||
|
// Connection event
|
||||||
|
this.sockets.app.on( 'connection', ( socket ) =>
|
||||||
|
{
|
||||||
|
console.log( 'socket app'.green.bold + ' - ' + 'connect'.cyan + ' - ' + socket.id.cyan )
|
||||||
|
|
||||||
socket.on( 'start_project', ( data ) =>
|
socket.on( 'start_project', ( data ) =>
|
||||||
{
|
{
|
||||||
project = this.projects.create_project( data.slug )
|
project = this.projects.create_project( data.slug )
|
||||||
|
|
||||||
console.log( util.inspect( project, { depth: null, colors: true } ) )
|
console.log( util.inspect( project, { depth: null, colors: true } ) )
|
||||||
} )
|
} )
|
||||||
|
|
||||||
socket.on( 'update_file', ( data ) =>
|
socket.on( 'update_file', ( data ) =>
|
||||||
{
|
{
|
||||||
project.update_file( data.path, data.content )
|
project.update_file( data.path, data.content )
|
||||||
|
|
||||||
|
this.sockets.site.emit( 'update_project', project )
|
||||||
|
|
||||||
console.log( util.inspect( project, { depth: null, colors: true } ) )
|
console.log( util.inspect( project, { depth: null, colors: true } ) )
|
||||||
} )
|
} )
|
||||||
|
|
||||||
socket.on( 'create_file', ( data ) =>
|
socket.on( 'create_file', ( data ) =>
|
||||||
{
|
{
|
||||||
project.create_file( data.path, data.content )
|
project.create_file( data.path, data.content )
|
||||||
|
|
||||||
|
this.sockets.site.emit( 'update_project', project )
|
||||||
|
|
||||||
console.log( util.inspect( project, { depth: null, colors: true } ) )
|
console.log( util.inspect( project, { depth: null, colors: true } ) )
|
||||||
} )
|
} )
|
||||||
|
|
||||||
socket.on( 'delete_file', ( data ) =>
|
socket.on( 'delete_file', ( data ) =>
|
||||||
{
|
{
|
||||||
project.delete_file( data.path )
|
project.delete_file( data.path )
|
||||||
|
|
||||||
|
this.sockets.site.emit( 'update_project', project )
|
||||||
|
|
||||||
console.log( util.inspect( project, { depth: null, colors: true } ) )
|
console.log( util.inspect( project, { depth: null, colors: true } ) )
|
||||||
} )
|
} )
|
||||||
|
|
||||||
socket.on( 'create_folder', ( data ) =>
|
socket.on( 'create_folder', ( data ) =>
|
||||||
{
|
{
|
||||||
project.create_folder( data.path, data.content )
|
project.create_folder( data.path, data.content )
|
||||||
|
|
||||||
|
this.sockets.site.emit( 'update_project', project )
|
||||||
|
|
||||||
console.log( util.inspect( project, { depth: null, colors: true } ) )
|
console.log( util.inspect( project, { depth: null, colors: true } ) )
|
||||||
} )
|
} )
|
||||||
|
|
||||||
socket.on( 'delete_folder', ( data ) =>
|
socket.on( 'delete_folder', ( data ) =>
|
||||||
{
|
{
|
||||||
project.delete_folder( data.path )
|
project.delete_folder( data.path )
|
||||||
|
|
||||||
|
this.sockets.site.emit( 'update_project', project )
|
||||||
|
|
||||||
console.log( util.inspect( project, { depth: null, colors: true } ) )
|
console.log( util.inspect( project, { depth: null, colors: true } ) )
|
||||||
} )
|
} )
|
||||||
} )
|
} )
|
||||||
|
|
||||||
|
this.sockets.site.on( 'connection', ( socket ) =>
|
||||||
|
{
|
||||||
|
console.log( 'socket site'.green.bold + ' - ' + 'connect'.cyan + ' - ' + socket.id.cyan )
|
||||||
|
|
||||||
|
socket.emit( 'update_project', project )
|
||||||
|
} )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
'use strict'
|
'use strict'
|
||||||
|
|
||||||
// Dependencies
|
// Dependencies
|
||||||
let path = require( 'path' ),
|
let paths = require( '../utils/paths.class.js' ),
|
||||||
util = require( 'util' ),
|
util = require( 'util' ),
|
||||||
File = require( './file.class.js' )
|
File = require( './file.class.js' )
|
||||||
|
|
||||||
@@ -23,11 +23,11 @@ class Project
|
|||||||
create_file( _path, _content )
|
create_file( _path, _content )
|
||||||
{
|
{
|
||||||
// Set up
|
// Set up
|
||||||
let normalize_path = path.normalize( _path ),
|
let normalized_path = paths.normalize( _path ),
|
||||||
parsed_path = path.parse( normalize_path )
|
parsed_path = paths.parse( normalized_path )
|
||||||
|
|
||||||
// Retrieve file
|
// Retrieve file
|
||||||
let file = this.get_file( normalize_path )
|
let file = this.get_file( normalized_path )
|
||||||
|
|
||||||
// File already exist
|
// File already exist
|
||||||
if( file )
|
if( file )
|
||||||
@@ -54,8 +54,8 @@ class Project
|
|||||||
_force_creation = false
|
_force_creation = false
|
||||||
|
|
||||||
// Set up
|
// Set up
|
||||||
let normalize_path = path.normalize( _path ),
|
let normalized_path = paths.normalize( _path ),
|
||||||
parsed_path = path.parse( normalize_path )
|
parsed_path = paths.parse( normalized_path )
|
||||||
|
|
||||||
// Retrieve folder
|
// Retrieve folder
|
||||||
let folder = this.get_folder( parsed_path.dir, _force_creation )
|
let folder = this.get_folder( parsed_path.dir, _force_creation )
|
||||||
@@ -75,7 +75,7 @@ class Project
|
|||||||
if( _force_creation )
|
if( _force_creation )
|
||||||
{
|
{
|
||||||
// Create folders
|
// Create folders
|
||||||
file = this.create_file( normalize_path )
|
file = this.create_file( normalized_path )
|
||||||
|
|
||||||
return file
|
return file
|
||||||
}
|
}
|
||||||
@@ -87,10 +87,10 @@ class Project
|
|||||||
update_file( _path, _content )
|
update_file( _path, _content )
|
||||||
{
|
{
|
||||||
// Set up
|
// Set up
|
||||||
let normalize_path = path.normalize( _path )
|
let normalized_path = paths.normalize( _path )
|
||||||
|
|
||||||
// Retrieve file
|
// Retrieve file
|
||||||
let file = this.get_file( normalize_path, true )
|
let file = this.get_file( normalized_path, true )
|
||||||
|
|
||||||
// Create version
|
// Create version
|
||||||
file.create_version( _content )
|
file.create_version( _content )
|
||||||
@@ -99,8 +99,7 @@ class Project
|
|||||||
delete_file( _path )
|
delete_file( _path )
|
||||||
{
|
{
|
||||||
// Set up
|
// Set up
|
||||||
let normalize_path = path.normalize( _path ),
|
let parsed_path = paths.parse( _path )
|
||||||
parsed_path = path.parse( normalize_path )
|
|
||||||
|
|
||||||
// Retrieve folder
|
// Retrieve folder
|
||||||
let folder = this.get_folder( parsed_path.dir )
|
let folder = this.get_folder( parsed_path.dir )
|
||||||
@@ -122,27 +121,27 @@ class Project
|
|||||||
create_folder( _path )
|
create_folder( _path )
|
||||||
{
|
{
|
||||||
// Set up
|
// Set up
|
||||||
let normalize_path = path.normalize( _path ),
|
let normalized_path = paths.normalize( _path ),
|
||||||
path_parts = normalize_path.split( path.sep ),
|
path_folders = normalized_path.split( paths.separator ),
|
||||||
folder = this
|
folder = this
|
||||||
|
|
||||||
for( let _path_part of path_parts )
|
for( let _path_folder of path_folders )
|
||||||
{
|
{
|
||||||
// Temporary folder
|
// Temporary folder
|
||||||
let __folder = folder.folders[ _path_part ]
|
let _folder = folder.folders[ _path_folder ]
|
||||||
|
|
||||||
// Folder doesn't exist
|
// Folder doesn't exist
|
||||||
if( typeof __folder === 'undefined' )
|
if( typeof _folder === 'undefined' )
|
||||||
{
|
{
|
||||||
__folder = {}
|
_folder = {}
|
||||||
__folder.name = _path_part
|
_folder.name = _path_folder
|
||||||
__folder.files = {}
|
_folder.files = {}
|
||||||
__folder.folders = {}
|
_folder.folders = {}
|
||||||
|
|
||||||
folder.folders[ _path_part ] = __folder
|
folder.folders[ _path_folder ] = _folder
|
||||||
}
|
}
|
||||||
|
|
||||||
folder = __folder
|
folder = _folder
|
||||||
}
|
}
|
||||||
|
|
||||||
return folder
|
return folder
|
||||||
@@ -154,14 +153,14 @@ class Project
|
|||||||
if( typeof _force_creation === 'undefined' )
|
if( typeof _force_creation === 'undefined' )
|
||||||
_force_creation = false
|
_force_creation = false
|
||||||
|
|
||||||
let normalize_path = path.normalize( _path ),
|
let normalized_path = paths.normalize( _path ),
|
||||||
path_parts = normalize_path.split( path.sep ),
|
path_folders = normalized_path.split( paths.separator ),
|
||||||
folder = this,
|
folder = this,
|
||||||
found = true
|
found = true
|
||||||
|
|
||||||
for( let _path_part of path_parts )
|
for( let _path_folder of path_folders )
|
||||||
{
|
{
|
||||||
folder = folder.folders[ _path_part ]
|
folder = folder.folders[ _path_folder ]
|
||||||
|
|
||||||
// Folder not found
|
// Folder not found
|
||||||
if(typeof folder === 'undefined')
|
if(typeof folder === 'undefined')
|
||||||
@@ -179,7 +178,7 @@ class Project
|
|||||||
if( _force_creation )
|
if( _force_creation )
|
||||||
{
|
{
|
||||||
// Create folders
|
// Create folders
|
||||||
folder = this.create_folder( normalize_path )
|
folder = this.create_folder( normalized_path )
|
||||||
|
|
||||||
return folder
|
return folder
|
||||||
}
|
}
|
||||||
@@ -191,9 +190,8 @@ class Project
|
|||||||
delete_folder( _path )
|
delete_folder( _path )
|
||||||
{
|
{
|
||||||
// Set up
|
// Set up
|
||||||
let normalize_path = path.normalize( _path ),
|
let normalized_path = paths.normalize( _path ),
|
||||||
path_parts = _path.split( path.sep ),
|
folder = this.get_folder( normalized_path )
|
||||||
folder = this.get_folder( normalize_path )
|
|
||||||
|
|
||||||
// Folder not found
|
// Folder not found
|
||||||
if( !folder )
|
if( !folder )
|
||||||
|
|||||||
@@ -4,17 +4,20 @@ angular_module.controller(
|
|||||||
'ApplicationController',
|
'ApplicationController',
|
||||||
[
|
[
|
||||||
'$scope',
|
'$scope',
|
||||||
'data',
|
'project',
|
||||||
function( $scope, data )
|
function( $scope, project )
|
||||||
{
|
{
|
||||||
console.log(data);
|
var that = this;
|
||||||
|
|
||||||
this.pwet = 'uh';
|
project.on_update( function( data )
|
||||||
this.codes =
|
{
|
||||||
[
|
$scope.$apply( function()
|
||||||
{ title: 'Title 1' },
|
{
|
||||||
{ title: 'Title 2' }
|
that.project = data;
|
||||||
];
|
} );
|
||||||
|
} );
|
||||||
|
|
||||||
|
this.project = project.data;
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,12 +0,0 @@
|
|||||||
angular_module.factory(
|
|
||||||
'data',
|
|
||||||
[
|
|
||||||
function()
|
|
||||||
{
|
|
||||||
return function()
|
|
||||||
{
|
|
||||||
console.log( 'data' );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
);
|
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
angular_module.factory(
|
||||||
|
'project',
|
||||||
|
[
|
||||||
|
'$timeout',
|
||||||
|
'$rootScope',
|
||||||
|
function( $timeout, $rootScope )
|
||||||
|
{
|
||||||
|
update_callback = null;
|
||||||
|
|
||||||
|
var result = {};
|
||||||
|
result.data = null;
|
||||||
|
result.on_update = function( callback )
|
||||||
|
{
|
||||||
|
update_callback = callback;
|
||||||
|
};
|
||||||
|
|
||||||
|
var socket = io( 'http://192.168.1.4:3000/site' );
|
||||||
|
|
||||||
|
socket.on( 'connect', function()
|
||||||
|
{
|
||||||
|
console.log('connected');
|
||||||
|
} );
|
||||||
|
|
||||||
|
socket.on( 'update_project', function( data )
|
||||||
|
{
|
||||||
|
result.data = data;
|
||||||
|
|
||||||
|
if( typeof update_callback === 'function' )
|
||||||
|
update_callback.apply( this, [ data ] );
|
||||||
|
} );
|
||||||
|
|
||||||
|
result.data = {"name":"pwet","folders":{".":{"name":".","files":{"test-1.txt":{"name":"test-1.txt","versions":[{"date":"2016-06-03T21:16:35.574Z","content":"dsfsdf\n\naaaa\n\ndsfsdf\n\nbbbb\n\ndsfsdf\nsodifja\n","diff":false}]},"test-2.txt":{"name":"test-2.txt","versions":[{"date":"2016-06-03T21:16:38.667Z","content":"kqsdqsdjn\niudfgdfg\n\nqsdiuhqsdiuqhsd\n","diff":false}]}},"folders":{}},"folder-2":{"name":"folder-2","files":{"hey.txt":{"name":"hey.txt","versions":[{"date":"2016-06-03T21:16:32.742Z","content":"qdsqsdsq\n","diff":false}]}},"folders":{}}}};
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
]
|
||||||
|
);
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
'use strict'
|
||||||
|
|
||||||
|
// Dependencies
|
||||||
|
let path = require( 'path' )
|
||||||
|
|
||||||
|
class Paths
|
||||||
|
{
|
||||||
|
constructor()
|
||||||
|
{
|
||||||
|
this.separator = path.sep
|
||||||
|
}
|
||||||
|
|
||||||
|
normalize( _path )
|
||||||
|
{
|
||||||
|
if( _path === '.' || _path === '' )
|
||||||
|
return '.';
|
||||||
|
|
||||||
|
let normalized_path = './' + path.normalize( _path )
|
||||||
|
|
||||||
|
return normalized_path
|
||||||
|
}
|
||||||
|
|
||||||
|
parse( _path )
|
||||||
|
{
|
||||||
|
let normalized_path = this.normalize( _path ),
|
||||||
|
parsed_path = path.parse( normalized_path )
|
||||||
|
|
||||||
|
return parsed_path
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
let paths = new Paths()
|
||||||
|
|
||||||
|
module.exports = paths
|
||||||
+60
-51
@@ -1,66 +1,78 @@
|
|||||||
html(ng-app="application")
|
html(ng-app="application",ng-controller="ApplicationController as controller")
|
||||||
head
|
head
|
||||||
title
|
title
|
||||||
| Code Spectat
|
| Code Spectat
|
||||||
|
script(src="/socket.io/socket.io.js")
|
||||||
script(src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js")
|
script(src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js")
|
||||||
script(src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular-route.js")
|
script(src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular-route.js")
|
||||||
script(src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular-resource.js")
|
script(src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular-resource.js")
|
||||||
script(src="/javascript/application/application.js")
|
script(src="/javascript/application/application.js")
|
||||||
script(src="/javascript/services/data.js")
|
script(src="/javascript/services/project.js")
|
||||||
body
|
body
|
||||||
|
|
||||||
|
script(type="text/ng-template",id="tree_item_renderer.html")
|
||||||
|
| {{data.name}}
|
||||||
|
ul
|
||||||
|
li(ng-repeat="data in data.folders",ng-include="'tree_item_renderer.html'")
|
||||||
|
li(ng-repeat="file in data.files")
|
||||||
|
| {{file.name}}
|
||||||
|
|
||||||
header.main-header
|
header.main-header
|
||||||
h1
|
h1
|
||||||
| Code Spectat
|
| Code Spectat
|
||||||
aside
|
aside
|
||||||
header.aside-header
|
header.aside-header
|
||||||
| Project name
|
| {{ controller.project.name }}
|
||||||
nav.aside-nav
|
nav.aside-nav
|
||||||
ul
|
ul
|
||||||
li
|
li(ng-repeat="data in controller.project.folders",ng-include="'tree_item_renderer.html'")
|
||||||
a(href="#")
|
|
||||||
| folder-1
|
//- ul
|
||||||
ul
|
//- li
|
||||||
li
|
//- a(href="#")
|
||||||
a(href="#")
|
//- | folder-1
|
||||||
| folder-1-1
|
//- ul
|
||||||
li
|
//- li
|
||||||
a(href="#")
|
//- a(href="#")
|
||||||
| folder-1-2
|
//- | folder-1-1
|
||||||
li
|
//- li
|
||||||
a(href="#")
|
//- a(href="#")
|
||||||
| file-1-1
|
//- | folder-1-2
|
||||||
li
|
//- li
|
||||||
a(href="#")
|
//- a(href="#")
|
||||||
| file-1-2
|
//- | file-1-1
|
||||||
li
|
//- li
|
||||||
a(href="#")
|
//- a(href="#")
|
||||||
| folder-2
|
//- | file-1-2
|
||||||
ul
|
//- li
|
||||||
li
|
//- a(href="#")
|
||||||
a(href="#")
|
//- | folder-2
|
||||||
| folder-2-1
|
//- ul
|
||||||
ul
|
//- li
|
||||||
li
|
//- a(href="#")
|
||||||
a(href="#")
|
//- | folder-2-1
|
||||||
| folder-2-1-1
|
//- ul
|
||||||
li
|
//- li
|
||||||
a(href="#")
|
//- a(href="#")
|
||||||
| file-2-1-1
|
//- | folder-2-1-1
|
||||||
li
|
//- li
|
||||||
a(href="#")
|
//- a(href="#")
|
||||||
| file-2-1-2
|
//- | file-2-1-1
|
||||||
li
|
//- li
|
||||||
a(href="#")
|
//- a(href="#")
|
||||||
| file-2-1-3
|
//- | file-2-1-2
|
||||||
li
|
//- li
|
||||||
a(href="#")
|
//- a(href="#")
|
||||||
| file-2-1
|
//- | file-2-1-3
|
||||||
li
|
//- li
|
||||||
a(href="#")
|
//- a(href="#")
|
||||||
| file-2-2
|
//- | file-2-1
|
||||||
li
|
//- li
|
||||||
a(href="#")
|
//- a(href="#")
|
||||||
| file-2-3
|
//- | file-2-2
|
||||||
|
//- li
|
||||||
|
//- a(href="#")
|
||||||
|
//- | file-2-3
|
||||||
section.file
|
section.file
|
||||||
section.historic
|
section.historic
|
||||||
a.version(href="#")
|
a.version(href="#")
|
||||||
@@ -81,6 +93,3 @@ html(ng-app="application")
|
|||||||
section.code
|
section.code
|
||||||
pre
|
pre
|
||||||
| <html>
|
| <html>
|
||||||
div(ng-controller="ApplicationController as hoy")
|
|
||||||
span
|
|
||||||
{{ hoy.pwet }}
|
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
sdnufoisdf
|
||||||
@@ -4,7 +4,8 @@ aaaa
|
|||||||
|
|
||||||
dsfsdf
|
dsfsdf
|
||||||
|
|
||||||
bbbb
|
bbbbiuhsdfiuhsdfdsf
|
||||||
|
|
||||||
|
|
||||||
dsfsdf
|
dsfsdf
|
||||||
sodifja
|
sodifja
|
||||||
Reference in New Issue
Block a user