Mercurial > hg > NetworkVis
comparison d3s_examples/python-neo4jrestclient/static/platin/Rakefile @ 8:18ef6948d689
new d3s examples
author | Dirk Wintergruen <dwinter@mpiwg-berlin.mpg.de> |
---|---|
date | Thu, 01 Oct 2015 17:17:27 +0200 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
7:45dad9e38c82 | 8:18ef6948d689 |
---|---|
1 # Rakefile - create single combined nd compressed javascript file | |
2 | |
3 COMPRESS="java -jar lib/yuicompressor-2.4.2.jar" | |
4 COMPRESSED_OUTPUT_FILE='platin-min.js' | |
5 OUTPUT_FILE='platin.js' | |
6 CSS_FILE='css/platin.css' | |
7 | |
8 task :default => :all | |
9 | |
10 task :all => [COMPRESSED_OUTPUT_FILE, OUTPUT_FILE, CSS_FILE, :copyJqueryUIImageDirectory] | |
11 | |
12 # javascript sources | |
13 Files = %w(js/Build/Minifier/basic.js | |
14 lib/excanvas/excanvas.js | |
15 lib/slider/js/range.js | |
16 lib/slider/js/slider.js | |
17 lib/slider/js/timer.js | |
18 lib/openlayers/OpenLayers.js | |
19 lib/jquery/jquery-deparam.min.js | |
20 lib/jquery/jquery.remember.js | |
21 lib/jquery/purl.min.js | |
22 lib/jquery-ui/jquery-ui-1.10.3.custom.js | |
23 lib/jszip/jszip.min.js | |
24 lib/sheetjs/shim.js | |
25 lib/sheetjs/xls.min.js | |
26 lib/sheetjs/xlsx.js | |
27 lib/momentjs/moment.js | |
28 lib/ucsv/csvToArray.js | |
29 lib/flot/jquery.flot.js | |
30 lib/flot/jquery.flot.pie.js | |
31 lib/flot/jquery.flot.resize.js | |
32 lib/flot/jquery.flot.selection.js | |
33 lib/flot/jquery.flot.time.js | |
34 lib/flot/jquery.flot.tooltip.js | |
35 lib/SimileRemnants.js | |
36 js/Util/Tooltips.js | |
37 js/GeoTemConfig.js | |
38 js/Map/MapControl.js | |
39 js/Map/CircleObject.js | |
40 js/Util/FilterBar.js | |
41 js/Util/Selection.js | |
42 js/Map/PlacenameTags.js | |
43 js/Map/MapConfig.js | |
44 js/Map/MapGui.js | |
45 js/Map/MapWidget.js | |
46 js/Time/TimeConfig.js | |
47 js/Time/TimeGui.js | |
48 js/Time/TimeWidget.js | |
49 js/Table/TableConfig.js | |
50 js/Table/TableGui.js | |
51 js/Table/TableWidget.js | |
52 js/Table/Table.js | |
53 js/Dataloader/Dataloader.js | |
54 js/Dataloader/DataloaderConfig.js | |
55 js/Dataloader/DataloaderGui.js | |
56 js/Dataloader/DataloaderWidget.js | |
57 js/FuzzyTimeline/FuzzyTimelineConfig.js | |
58 js/FuzzyTimeline/FuzzyTimelineDensity.js | |
59 js/FuzzyTimeline/FuzzyTimelineGui.js | |
60 js/FuzzyTimeline/FuzzyTimelineRangeBars.js | |
61 js/FuzzyTimeline/FuzzyTimelineRangePiechart.js | |
62 js/FuzzyTimeline/FuzzyTimelineRangeSlider.js | |
63 js/FuzzyTimeline/FuzzyTimelineWidget.js | |
64 js/Overlayloader/Overlayloader.js | |
65 js/Overlayloader/OverlayloaderConfig.js | |
66 js/Overlayloader/OverlayloaderGui.js | |
67 js/Overlayloader/OverlayloaderWidget.js | |
68 js/PieChart/PieChart.js | |
69 js/PieChart/PieChartCategoryChooser.js | |
70 js/PieChart/PieChartConfig.js | |
71 js/PieChart/PieChartGui.js | |
72 js/PieChart/PieChartHashFunctions.js | |
73 js/PieChart/PieChartWidget.js | |
74 js/Storytelling/Storytelling.js | |
75 js/Storytelling/StorytellingConfig.js | |
76 js/Storytelling/StorytellingGui.js | |
77 js/Storytelling/StorytellingWidget.js | |
78 js/LineOverlay/LineOverlay.js | |
79 js/LineOverlay/LineOverlayConfig.js | |
80 js/LineOverlay/LineOverlayWidget.js | |
81 js/Util/DataObject.js | |
82 js/Util/Dataset.js | |
83 js/Time/TimeDataSource.js | |
84 js/Map/Binning.js | |
85 js/Map/MapDataSource.js | |
86 js/Map/Clustering.js | |
87 js/Util/Dropdown.js | |
88 js/Map/MapZoomSlider.js | |
89 js/Map/MapPopup.js | |
90 js/Map/PlacenamePopup.js | |
91 js/Util/Publisher.js | |
92 js/Util/WidgetWrapper.js | |
93 js/Build/Minifier/final.js) | |
94 | |
95 # css sources | |
96 Cssfiles = %w(lib/openlayers/theme/default/style.css | |
97 lib/jquery-ui/jquery-ui-1.10.3.custom.css | |
98 css/style.css) | |
99 | |
100 def cat_files(outputfile, basename) | |
101 File.open(outputfile, 'a') do |x| | |
102 Files.each do |f| | |
103 x.puts(File.open(f).read.gsub('REPLACEME-REPLACEME', basename)) | |
104 end | |
105 end | |
106 end | |
107 | |
108 file CSS_FILE => Cssfiles do | |
109 File.open(CSS_FILE, 'w') do |x| | |
110 Cssfiles.each do |f| | |
111 x.puts(File.open(f).read) | |
112 end | |
113 end | |
114 end | |
115 | |
116 # Just one big JS file, no compression. | |
117 file OUTPUT_FILE => Files do | |
118 basename = File.basename(OUTPUT_FILE, ".js") | |
119 | |
120 File.open(OUTPUT_FILE, 'w') do |x| | |
121 x.puts("(function($){\n\nvar jQuery = $;"); | |
122 end | |
123 | |
124 cat_files(OUTPUT_FILE, basename) | |
125 | |
126 File.open(OUTPUT_FILE, 'a') do |x| | |
127 x.puts("})(jQuery);"); | |
128 end | |
129 end | |
130 | |
131 task :copyJqueryUIImageDirectory do | |
132 @source = "./lib/jquery-ui/images" | |
133 @target = "./css/images" | |
134 @includePattern = "/**/*" | |
135 FileUtils.rm_rf(@target) #remove target directory (if exists) | |
136 FileUtils.mkdir_p(@target) #create the target directory | |
137 files = FileList.new().include("#{@source}#{@includePattern}"); | |
138 files.each do |file| | |
139 #create target location file string (replace source with target in path) | |
140 targetLocation = file.sub(@source, @target) | |
141 #ensure directory exists | |
142 FileUtils.mkdir_p(File.dirname(targetLocation)); | |
143 #copy the file | |
144 FileUtils.cp_r(file, targetLocation) | |
145 end | |
146 end | |
147 | |
148 # Compress it. | |
149 file COMPRESSED_OUTPUT_FILE => Files do | |
150 basename = File.basename(COMPRESSED_OUTPUT_FILE, ".js") | |
151 | |
152 File.open(OUTPUT_FILE, 'w') do |x| | |
153 x.puts("(function($){\n\nvar jQuery = $;"); | |
154 end | |
155 | |
156 cat_files(OUTPUT_FILE, basename) | |
157 | |
158 File.open(OUTPUT_FILE, 'a') do |x| | |
159 x.puts("})(jQuery);"); | |
160 end | |
161 | |
162 system "#{COMPRESS} #{OUTPUT_FILE} >> #{COMPRESSED_OUTPUT_FILE}" | |
163 end | |
164 | |
165 # Clean up the whole thing. | |
166 task :clean do | |
167 rm OUTPUT_FILE | |
168 rm COMPRESSED_OUTPUT_FILE | |
169 rm CSS_FILE | |
170 end |