Skip to content
This repository was archived by the owner on Nov 25, 2020. It is now read-only.

Commit 75436f9

Browse files
committed
Adding Grunt task to compile core UI in gui.ajax
1 parent b9c3211 commit 75436f9

File tree

2 files changed

+251
-0
lines changed

2 files changed

+251
-0
lines changed
Lines changed: 231 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,231 @@
1+
module.exports = function(grunt) {
2+
grunt.initConfig({
3+
uglify: {
4+
options:{
5+
mangle: false,
6+
compress: {
7+
hoist_funs: false
8+
},
9+
},
10+
js: {
11+
files: {
12+
'res/js/pydio.min.js': [
13+
'res/js/vendor/modernizr/modernizr.min.js',
14+
'res/js/core/lang/Observable.js',
15+
'res/js/core/lang/Logger.js',
16+
'res/js/core/util/LangUtils.js',
17+
'res/js/core/util/XMLUtils.js',
18+
'res/js/core/util/PathUtils.js',
19+
'res/js/core/util/HasherUtils.js',
20+
'res/js/core/model/Router.js',
21+
'res/js/core/model/AjxpNode.js',
22+
'res/js/ui/prototype/util/ajxp_utils.js',
23+
'res/js/ui/prototype/interfaces/class.IAjxpNodeProvider.js',
24+
'res/js/ui/prototype/interfaces/class.IAjxpWidget.js',
25+
'res/js/ui/prototype/interfaces/class.IActionProvider.js',
26+
'res/js/ui/prototype/interfaces/class.IFocusable.js',
27+
'res/js/ui/prototype/interfaces/class.IContextMenuable.js',
28+
'res/js/ui/prototype/class.AjxpPane.js',
29+
'res/js/vendor/prototype/webfx.selectable.js',
30+
'res/js/vendor/prototype/webfx.sortable.js',
31+
'res/js/vendor/prototype/proto.menu.js',
32+
'res/js/vendor/prototype/splitter.js',
33+
'res/js/vendor/prototype/cookiejar.js',
34+
'res/js/vendor/prototype/protopass.js',
35+
'res/js/vendor/prototype/resizable.js',
36+
'res/js/vendor/prototype/es6compat.js',
37+
'res/js/vendor/leightbox/lightbox.js',
38+
'res/js/vendor/scriptaculous/src/builder.js',
39+
'res/js/vendor/scriptaculous/src/effects.js',
40+
'res/js/vendor/scriptaculous/src/dragdrop.js',
41+
'res/js/vendor/scriptaculous/src/controls.js',
42+
'res/js/vendor/scriptaculous/src/slider.js',
43+
'res/js/vendor/prototype/cssfx.js',
44+
'res/js/vendor/prototype/proto.scroller.js',
45+
'res/js/vendor/prototype/carousel.js',
46+
'res/js/vendor/prototype/accordion.js',
47+
'res/js/vendor/webfx/xtree.js',
48+
'res/js/vendor/webfx/ajxptree.js',
49+
'res/js/vendor/chosen/event.simulate.js',
50+
'res/js/vendor/chosen/chosen.proto.js',
51+
'res/js/core/model/User.js',
52+
'res/js/core/http/ResourcesManager.js',
53+
'res/js/core/model/RemoteNodeProvider.js',
54+
'res/js/core/model/EmptyNodeProvider.js',
55+
'res/js/core/model/Repository.js',
56+
'res/js/core/model/BackgroundTasksManager.js',
57+
'res/js/core/http/PydioApi.js',
58+
'res/js/core/model/Action.js',
59+
'res/js/core/model/Controller.js',
60+
'res/js/core/model/PydioDataModel.js',
61+
'res/js/core/model/Registry.js',
62+
'res/js/ui/prototype/class.AjxpDraggable.js',
63+
'res/js/ui/prototype/class.AjxpSortable.js',
64+
'res/js/ui/prototype/class.AjxpTabulator.js',
65+
'res/js/ui/prototype/class.VisibilityToggler.js',
66+
'res/js/ui/prototype/class.AjxpSimpleTabs.js',
67+
'res/js/ui/prototype/class.RepositorySelect.js',
68+
'res/js/ui/prototype/class.RepositorySimpleLabel.js',
69+
'res/js/ui/prototype/class.Breadcrumb.js',
70+
'res/js/ui/prototype/class.LocationBar.js',
71+
'res/js/ui/prototype/class.UserWidget.js',
72+
'res/js/ui/prototype/class.LogoWidget.js',
73+
'res/js/ui/prototype/class.AjxpAutoCompleter.js',
74+
'res/js/ui/prototype/class.AjxpUsersCompleter.js',
75+
'res/js/ui/prototype/class.TreeSelector.js',
76+
'res/js/ui/prototype/class.SliderInput.js',
77+
'res/js/ui/prototype/class.ActionsToolbar.js',
78+
'res/js/ui/prototype/class.BackgroundManagerPane.js',
79+
'res/js/ui/prototype/class.HeaderResizer.js',
80+
'res/js/ui/prototype/class.PreviewFactory.js',
81+
'res/js/ui/prototype/class.FilesList.js',
82+
'res/js/ui/prototype/class.FoldersTree.js',
83+
'res/js/ui/prototype/class.SearchEngine.js',
84+
'res/js/ui/prototype/class.FetchedResultPane.js',
85+
'res/js/ui/prototype/class.InfoPanel.js',
86+
'res/js/ui/prototype/class.PropertyPanel.js',
87+
'res/js/ui/prototype/class.AbstractEditor.js',
88+
'res/js/ui/prototype/class.Modal.js',
89+
'res/js/ui/prototype/class.BookmarksBar.js',
90+
'res/js/ui/prototype/class.FormManager.js',
91+
'res/js/ui/prototype/class.DataModelProperty.js',
92+
'res/js/ui/prototype/class.MultiDownloader.js',
93+
'res/js/ui/prototype/class.ActivityMonitor.js',
94+
'res/js/ui/prototype/class.AjxpReactComponent.js',
95+
'res/js/ui/prototype/class.PydioUI.js',
96+
'res/js/core/Pydio.js',
97+
]
98+
},
99+
},
100+
},
101+
102+
babel: {
103+
options: {
104+
},
105+
106+
dist: {
107+
files: [
108+
{
109+
mode: { loose : true, },
110+
expand: true,
111+
cwd: 'res/js/es6/',
112+
src: ['**/*.es6'],
113+
dest: 'res/js/core/',
114+
ext: '.js'
115+
},
116+
],
117+
},
118+
},
119+
120+
browserify: {
121+
dist: {
122+
files: {
123+
'bundle.js': 'export.js'
124+
},
125+
},
126+
127+
},
128+
129+
watch: {
130+
js: {
131+
files: [
132+
'res/js/vendor/modernizr/modernizr.min.js',
133+
'res/js/core/lang/Observable.js',
134+
'res/js/core/lang/Logger.js',
135+
'res/js/core/util/LangUtils.js',
136+
'res/js/core/util/XMLUtils.js',
137+
'res/js/core/util/PathUtils.js',
138+
'res/js/core/util/HasherUtils.js',
139+
'res/js/core/model/Router.js',
140+
'res/js/core/model/AjxpNode.js',
141+
'res/js/ui/prototype/util/ajxp_utils.js',
142+
'res/js/ui/prototype/interfaces/class.IAjxpNodeProvider.js',
143+
'res/js/ui/prototype/interfaces/class.IAjxpWidget.js',
144+
'res/js/ui/prototype/interfaces/class.IActionProvider.js',
145+
'res/js/ui/prototype/interfaces/class.IFocusable.js',
146+
'res/js/ui/prototype/interfaces/class.IContextMenuable.js',
147+
'res/js/ui/prototype/class.AjxpPane.js',
148+
'res/js/vendor/prototype/webfx.selectable.js',
149+
'res/js/vendor/prototype/webfx.sortable.js',
150+
'res/js/vendor/prototype/proto.menu.js',
151+
'res/js/vendor/prototype/splitter.js',
152+
'res/js/vendor/prototype/cookiejar.js',
153+
'res/js/vendor/prototype/protopass.js',
154+
'res/js/vendor/prototype/resizable.js',
155+
'res/js/vendor/prototype/es6compat.js',
156+
'res/js/vendor/leightbox/lightbox.js',
157+
'res/js/vendor/scriptaculous/src/builder.js',
158+
'res/js/vendor/scriptaculous/src/effects.js',
159+
'res/js/vendor/scriptaculous/src/dragdrop.js',
160+
'res/js/vendor/scriptaculous/src/controls.js',
161+
'res/js/vendor/scriptaculous/src/slider.js',
162+
'res/js/vendor/prototype/cssfx.js',
163+
'res/js/vendor/prototype/proto.scroller.js',
164+
'res/js/vendor/prototype/carousel.js',
165+
'res/js/vendor/prototype/accordion.js',
166+
'res/js/vendor/webfx/xtree.js',
167+
'res/js/vendor/webfx/ajxptree.js',
168+
'res/js/vendor/chosen/event.simulate.js',
169+
'res/js/vendor/chosen/chosen.proto.js',
170+
'res/js/core/model/User.js',
171+
'res/js/core/http/ResourcesManager.js',
172+
'res/js/core/model/RemoteNodeProvider.js',
173+
'res/js/core/model/EmptyNodeProvider.js',
174+
'res/js/core/model/Repository.js',
175+
'res/js/core/model/BackgroundTasksManager.js',
176+
'res/js/core/http/PydioApi.js',
177+
'res/js/core/model/Action.js',
178+
'res/js/core/model/Controller.js',
179+
'res/js/core/model/PydioDataModel.js',
180+
'res/js/core/model/Registry.js',
181+
'res/js/ui/prototype/class.AjxpDraggable.js',
182+
'res/js/ui/prototype/class.AjxpSortable.js',
183+
'res/js/ui/prototype/class.AjxpTabulator.js',
184+
'res/js/ui/prototype/class.VisibilityToggler.js',
185+
'res/js/ui/prototype/class.AjxpSimpleTabs.js',
186+
'res/js/ui/prototype/class.RepositorySelect.js',
187+
'res/js/ui/prototype/class.RepositorySimpleLabel.js',
188+
'res/js/ui/prototype/class.Breadcrumb.js',
189+
'res/js/ui/prototype/class.LocationBar.js',
190+
'res/js/ui/prototype/class.UserWidget.js',
191+
'res/js/ui/prototype/class.LogoWidget.js',
192+
'res/js/ui/prototype/class.AjxpAutoCompleter.js',
193+
'res/js/ui/prototype/class.AjxpUsersCompleter.js',
194+
'res/js/ui/prototype/class.TreeSelector.js',
195+
'res/js/ui/prototype/class.SliderInput.js',
196+
'res/js/ui/prototype/class.ActionsToolbar.js',
197+
'res/js/ui/prototype/class.BackgroundManagerPane.js',
198+
'res/js/ui/prototype/class.HeaderResizer.js',
199+
'res/js/ui/prototype/class.PreviewFactory.js',
200+
'res/js/ui/prototype/class.FilesList.js',
201+
'res/js/ui/prototype/class.FoldersTree.js',
202+
'res/js/ui/prototype/class.SearchEngine.js',
203+
'res/js/ui/prototype/class.FetchedResultPane.js',
204+
'res/js/ui/prototype/class.InfoPanel.js',
205+
'res/js/ui/prototype/class.PropertyPanel.js',
206+
'res/js/ui/prototype/class.AbstractEditor.js',
207+
'res/js/ui/prototype/class.Modal.js',
208+
'res/js/ui/prototype/class.BookmarksBar.js',
209+
'res/js/ui/prototype/class.FormManager.js',
210+
'res/js/ui/prototype/class.DataModelProperty.js',
211+
'res/js/ui/prototype/class.MultiDownloader.js',
212+
'res/js/ui/prototype/class.ActivityMonitor.js',
213+
'res/js/ui/prototype/class.AjxpReactComponent.js',
214+
'res/js/ui/prototype/class.PydioUI.js',
215+
'res/js/core/Pydio.js',
216+
],
217+
tasks: ['uglify'],
218+
options: {
219+
spawn: false,
220+
},
221+
},
222+
},
223+
})
224+
225+
grunt.loadNpmTasks('grunt-browserify')
226+
grunt.loadNpmTasks('grunt-babel')
227+
grunt.loadNpmTasks('grunt-contrib-uglify')
228+
grunt.loadNpmTasks('grunt-contrib-watch')
229+
grunt.registerTask('default', ['babel','uglify'])
230+
}
231+
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{
2+
"name": "gui.ajax",
3+
"version": "0.0.0",
4+
"description": "",
5+
"main": "index.js",
6+
"scripts": {
7+
"test": "echo \"Error: no test specified\" && exit 1"
8+
},
9+
"author": "",
10+
"license": "BSD-2-Clause",
11+
"dependencies": {
12+
"grunt": "~0.4.5"
13+
},
14+
"devDependencies": {
15+
"grunt-babel": "~5.0.3",
16+
"grunt-contrib-uglify": "~0.9.2",
17+
"grunt-contrib-watch": "~0.6.1",
18+
"grunt-browserify": "~4.0.1"
19+
}
20+
}

0 commit comments

Comments
 (0)