@@ -14,65 +14,70 @@ function init() {
1414 for ( var i = 0 ; i < lists . length ; i ++ ) {
1515 var checks = lists [ i ] . getElementsByTagName ( 'input' ) ;
1616 for ( var j = 0 ; j < checks . length ; j ++ ) {
17+ if ( checks [ j ] . id === 'Core' ) {
18+ continue ;
19+ }
1720 checks [ j ] . checked = selectAll ;
1821 }
1922 var lis = lists [ i ] . getElementsByTagName ( 'li' ) ;
2023 for ( var n = 0 ; n < checks . length ; n ++ ) {
24+ if ( checks [ n ] . id === 'Core' ) {
25+ continue ;
26+ }
2127 lis [ n ] . className = ( selectAll ) ? 'active' : '' ;
2228 }
2329 }
2430 updateCommand ( ) ;
2531 return false ;
2632 }
33+
2734 addModule ( 'Core' , deplist , true ) ;
2835 $ ( '#deplist li' ) [ 0 ] . className = 'active' ;
29- for ( var ol3Module in ol3Modules ) {
36+ for ( var ol3Module in ol3Modules ) {
3037 var title = ol3Modules [ ol3Module ] . title ;
3138 addGroup ( 'ol3' , title , ol3Modules [ ol3Module ] . description , $ ( '#ol3select' ) [ 0 ] ) ;
32- for ( var module in ol3Modules [ ol3Module ] ) {
33- if ( module === 'title' || module === 'description' ) {
39+ for ( var module in ol3Modules [ ol3Module ] ) {
40+ if ( module === 'title' || module === 'description' ) {
3441 continue ;
3542 }
36- addModule ( module , $ ( '#ol3_' + title ) [ 0 ] ) ;
43+ addModule ( module , $ ( '#ol3_' + title ) [ 0 ] , false , ol3Modules [ ol3Module ] [ module ] . name ) ;
3744 }
3845 }
3946 for ( var leafletModule in leafletModules ) {
4047 var title = leafletModules [ leafletModule ] . title ;
4148 addGroup ( 'leaflet' , title , leafletModules [ leafletModule ] . description , $ ( '#leafletselect' ) [ 0 ] ) ;
42- for ( var module in leafletModules [ leafletModule ] ) {
43- if ( module === 'title' || module === 'description' ) {
49+ for ( var module in leafletModules [ leafletModule ] ) {
50+ if ( module === 'title' || module === 'description' ) {
4451 continue ;
4552 }
46- addModule ( module , $ ( '#leaflet_' + title ) [ 0 ] ) ;
53+ addModule ( module , $ ( '#leaflet_' + title ) [ 0 ] , false , leafletModules [ leafletModule ] [ module ] . name ) ;
4754 }
4855 }
4956 updateCommand ( ) ;
5057
5158 $ ( '.clientTabs li a' ) . click ( function ( e ) {
5259 e . preventDefault ( )
53- if ( this . innerHTML === 'Leaflet' ) {
54- var checks = $ ( '.deplist input' ) ;
55- for ( var i = 0 ; i < checks . length ; i ++ ) {
56- if ( checks [ i ] . id . indexOf ( 'ol3_' ) !== - 1 && checks [ i ] . checked ) {
57- checks [ i ] . checked = false ;
58- checks [ i ] . parentNode . className = '' ;
59- }
60- }
60+ if ( this . innerHTML === 'Leaflet' ) {
61+ cancelChecked ( 'ol3' ) ;
6162 }
62- if ( this . innerHTML === 'OL3' ) {
63- var checks = $ ( '.deplist input' ) ;
64- for ( var i = 0 ; i < checks . length ; i ++ ) {
65- if ( checks [ i ] . id . indexOf ( 'leaflet_' ) !== - 1 && checks [ i ] . checked ) {
66- checks [ i ] . checked = false ;
67- checks [ i ] . parentNode . className = '' ;
68- }
69- }
63+ if ( this . innerHTML === 'OL3' ) {
64+ cancelChecked ( 'leaflet' ) ;
7065 }
7166 updateCommand ( ) ;
7267 $ ( this ) . tab ( 'show' ) ;
7368 } )
7469}
7570
71+ function cancelChecked ( clientName ) {
72+ var checks = $ ( '#' + clientName + 'select .deplist input' ) ;
73+ for ( var i = 0 ; i < checks . length ; i ++ ) {
74+ if ( checks [ i ] . checked ) {
75+ checks [ i ] . checked = false ;
76+ checks [ i ] . parentNode . className = '' ;
77+ }
78+ }
79+ }
80+
7681function addGroup ( client , title , description , div ) {
7782 var ul = document . createElement ( 'ul' ) ;
7883 ul . id = client + '_' + title ;
@@ -86,22 +91,25 @@ function addGroup(client, title, description, div) {
8691 div . appendChild ( ul ) ;
8792}
8893
89- function addModule ( name , list , checked ) {
94+ function addModule ( title , list , checked , name ) {
9095 var li = document . createElement ( 'li' ) ;
9196 var content = document . createElement ( 'div' ) ;
9297 var label = document . createElement ( 'label' ) ;
9398 var check = document . createElement ( 'input' ) ;
9499 check . type = 'checkbox' ;
95- check . id = name ;
100+ check . id = title ;
96101 check . checked = ( checked ) ? 'checked' : '' ;
97102 check . onchange = onCheckboxChange ;
98103 li . appendChild ( check ) ;
99- label . htmlFor = name ;
104+ label . htmlFor = title ;
100105 li . appendChild ( label ) ;
101106 content . className = 'item' ;
102- content . appendChild ( document . createTextNode ( name . substring ( name . indexOf ( '_' ) + 1 ) ) ) ;
107+ if ( ! name ) {
108+ name = title ;
109+ }
110+ content . appendChild ( document . createTextNode ( name ) ) ;
103111 li . appendChild ( content ) ;
104- if ( ! checked ) {
112+ if ( ! checked ) {
105113 li . onclick = onModuleClick ;
106114 }
107115 list . appendChild ( li ) ;
@@ -120,27 +128,35 @@ function updateCommand() {
120128 var modulePaths = '' ;
121129 for ( var i = 0 ; i < deplistItems . length ; i ++ ) {
122130 if ( deplistItems [ i ] . checked ) {
123- for ( var coreModule in coreModules ) {
124- modulePaths += coreModule + ',' ;
125- }
131+ modulePaths = "Core" + ','
126132 }
127133 }
128134 var deplistItems2 = $ ( '.deplist li input' ) ;
129135 for ( var i = 0 ; i < deplistItems2 . length ; i ++ ) {
136+ if ( deplistItems2 [ i ] . id === "Core" ) {
137+ continue ;
138+ }
130139 if ( deplistItems2 [ i ] . checked ) {
131140 modulePaths += deplistItems2 [ i ] . id + ',' ;
132141 }
133142 }
134143 modulePaths = modulePaths . substring ( 0 , modulePaths . length - 1 ) ;
135- if ( modulePaths . indexOf ( 'Leaflet' ) !== - 1 ) {
136- commandInput . value = modulePaths === '' ? modulePaths : 'npm run package - leaflet ' + modulePaths ;
137- return ;
144+ commandInput . value = modulePaths === '' ? modulePaths : 'npm run package - ' + getKey ( ) + " " + modulePaths ;
145+ }
146+
147+ function getKey ( ) {
148+ var key = "core" ;
149+ for ( var check in $ ( '#ol3select .deplist li input' ) ) {
150+ if ( $ ( '#ol3select .deplist li input' ) [ check ] . checked ) {
151+ key = "ol3" ;
152+ }
138153 }
139- if ( modulePaths . indexOf ( 'OL3' ) !== - 1 ) {
140- commandInput . value = modulePaths === '' ? modulePaths : 'npm run package - ol3 ' + modulePaths ;
141- return ;
154+ for ( var check in $ ( '#leafletselect .deplist li input' ) ) {
155+ if ( $ ( '#leafletselect .deplist li input' ) [ check ] . checked ) {
156+ key = "leaflet" ;
157+ }
142158 }
143- commandInput . value = modulePaths === '' ? modulePaths : 'npm run package - core ' + modulePaths ;
159+ return key ;
144160}
145161
146162function onCheckboxChange ( ) {
0 commit comments