Skip to content

Commit 3756e90

Browse files
committed
Added examples
1 parent 63479ba commit 3756e90

File tree

5 files changed

+99
-0
lines changed

5 files changed

+99
-0
lines changed

examples/bundle.js

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/index.html

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<!doctype html>
2+
<html>
3+
<head>
4+
<meta charset="utf-8">
5+
<meta http-equiv="X-UA-Compatible" content="chrome=1">
6+
<title>infinite-tree</title>
7+
<link rel="stylesheet" href="infinite-tree.css" />
8+
<style>
9+
.infinite-tree-content {
10+
max-height: 400px;
11+
}
12+
</style>
13+
<meta name="viewport" content="width=device-width">
14+
<!--[if lt IE 9]>
15+
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
16+
<![endif]-->
17+
</head>
18+
<body>
19+
<h1>infinite-tree</h1>
20+
<p>A browser-ready tree library that can efficiently display a large tree with smooth scrolling.</p>
21+
<div id="tree"></div>
22+
<script src="bundle.js"></script>
23+
</body>
24+
</body>
25+
</html>

examples/index.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
var InfiniteTree = require('../lib');
2+
3+
var data = [];
4+
var source = '{"id":"<root>","label":"<root>","children":[{"id":"alpha","label":"Alpha"},{"id":"bravo","label":"Bravo","children":[{"id":"charlie","label":"Charlie","children":[{"id":"delta","label":"Delta","children":[{"id":"echo","label":"Echo"},{"id":"foxtrot","label":"Foxtrot"}]},{"id":"golf","label":"Golf"}]},{"id":"hotel","label":"Hotel","children":[{"id":"india","label":"India","children":[{"id":"juliet","label":"Juliet"}]}]},{"id":"kilo","label":"Kilo"}]}]}';
5+
6+
for (var i = 0; i < 1000; ++i) {
7+
data.push(JSON.parse(source.replace(/"(id|label)":"([^"]*)"/g, '"$1": "$2.' + i + '"')));
8+
}
9+
10+
var tree = new InfiniteTree({
11+
el: document.querySelector('#tree'),
12+
data: data,
13+
autoOpen: true
14+
});
15+
16+
window.tree = tree;
17+
18+
// API
19+
// node = tree.getNodeById();
20+
// tree.selectNode();

examples/infinite-tree.css

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
.infinite-tree-scroll {
2+
overflow: auto;
3+
}
4+
.infinite-tree-content {
5+
outline: 0;
6+
}
7+
.infinite-tree-content .tree-selected.tree-item,
8+
.infinite-tree-content .tree-selected.tree-item:hover {
9+
background: #deecfd;
10+
border: 1px solid #06c;
11+
}
12+
.infinite-tree-content .tree-item {
13+
border: 1px solid transparent;
14+
cursor: pointer;
15+
user-select: none;
16+
}
17+
.infinite-tree-content .tree-item:hover {
18+
background: #f2fdff;
19+
}
20+
.infinite-tree-no-data {
21+
text-align: center;
22+
}
23+

examples/webpack.config.js

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/* eslint no-var: 0 */
2+
var path = require('path');
3+
var webpack = require('webpack');
4+
5+
module.exports = {
6+
cache: true,
7+
debug: true,
8+
devtool: 'eval',
9+
entry: path.resolve('index.js'),
10+
output: {
11+
path: path.join(__dirname),
12+
filename: 'bundle.js'
13+
},
14+
module: {
15+
loaders: [
16+
{
17+
test: /\.jsx?$/,
18+
loader: 'babel',
19+
exclude: /node_modules/,
20+
query: {
21+
presets: ['es2015', 'stage-0']
22+
}
23+
}
24+
]
25+
},
26+
plugins: [
27+
new webpack.optimize.UglifyJsPlugin({ minimize: true })
28+
]
29+
};

0 commit comments

Comments
 (0)