Skip to content

Commit 946ff52

Browse files
committed
v16.1.24 is released
1 parent b196abc commit 946ff52

File tree

570 files changed

+75129
-2931
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

570 files changed

+75129
-2931
lines changed

gulpfile.js

Lines changed: 83 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,46 @@ var glob = require('glob');
88
var fs = require('fs');
99
var configRegex = /\[(.*)\]/;
1010
var shelljs = require('shelljs');
11-
var runSequence = require('run-sequence')
11+
var runSequence = require('run-sequence');
12+
13+
function extend(copied, first, second, deep) {
14+
var result = copied || {};
15+
var length = arguments.length;
16+
if (deep) {
17+
length = length - 1;
18+
}
19+
var _loop_1 = function (i) {
20+
if (!arguments_1[i]) {
21+
return 'continue';
22+
}
23+
var obj1 = arguments_1[i];
24+
Object.keys(obj1).forEach(function (key) {
25+
var src = result[key];
26+
var copy = obj1[key];
27+
var clone;
28+
if (deep && isObject(copy)) {
29+
clone = isObject(src) ? src : {};
30+
result[key] = extend({}, clone, copy, true);
31+
}
32+
else {
33+
result[key] = copy;
34+
}
35+
});
36+
};
37+
var arguments_1 = arguments;
38+
for (var i = 1; i < length; i++) {
39+
_loop_1(i);
40+
}
41+
return result;
42+
}
43+
function isObject(obj) {
44+
var objCon = {};
45+
return (!isNullOrUndefined(obj) && obj.constructor === objCon.constructor);
46+
}
47+
48+
function isNullOrUndefined(value) {
49+
return value === undefined || value === null;
50+
}
1251

1352
gulp.task('scripts', function (done) {
1453
var ts = require('gulp-typescript');
@@ -21,6 +60,20 @@ gulp.task('scripts', function (done) {
2160
done();
2261
});
2362
});
63+
gulp.task('create-locale', function () {
64+
var localeJson = glob.sync('./src/**/locale.json', { silent: true });
65+
if(localeJson.length) {
66+
// baseUtil;
67+
var obj = {};
68+
for (var i = 0; i < localeJson.length; i++) {
69+
var compentLocale = JSON.parse(fs.readFileSync(localeJson[i]));
70+
obj = extend({},obj,compentLocale,true);
71+
}
72+
fs.writeFileSync('./src/common/locale-string.ts', 'export let Locale: Object='+JSON.stringify(obj)+';');
73+
} else {
74+
fs.writeFileSync('./src/common/locale-string.ts', 'export let Locale: Object={};');
75+
}
76+
})
2477

2578
/**
2679
* Compile styles
@@ -47,6 +100,8 @@ gulp.task('generate-router', function (done) {
47100
this.addField('name');
48101
this.setRef('uid');
49102
});
103+
var apiData = JSON.parse(fs.readFileSync('./src/common/api-table', 'utf8'));
104+
var apiReference = {};
50105
var uid = 0;
51106
for (var file of files) {
52107
var routeconfig = '';
@@ -68,8 +123,33 @@ gulp.task('generate-router', function (done) {
68123
category[configs.path.split('/')[1]] = { 'name': configs.name, 'category': configs.category };
69124
var curSearchObject = {name:configs.name,uid:uid,path:configs.path};
70125
curSearchObject.component = configs.path.split('/')[0].replace(/-/g,'');
126+
var url = configs.path.split('/')[1];
71127
instance.addDoc(curSearchObject);
72128
uid++;
129+
if(configs.api){
130+
var apiList= JSON.parse(configs.api);
131+
var apiconfig = apiList|| {};
132+
var data = [];
133+
var canUpdate = false;
134+
var ObjectKeys = Object.keys(apiconfig);
135+
for (var key of ObjectKeys) {
136+
var classProperties = apiData[key];
137+
if (!classProperties) {
138+
continue;
139+
}
140+
var propertyCollection = apiconfig[key];
141+
for (var prop of propertyCollection) {
142+
var propData = classProperties[prop];
143+
if (propData) {
144+
canUpdate = true;
145+
data.push(propData);
146+
}
147+
}
148+
}
149+
if (canUpdate) {
150+
apiReference[curSearchObject.component + '/' +url] = data;
151+
}
152+
}
73153
}
74154
category['defaultSample'] = configCollection[0].path;
75155
var routeContent = fs.readFileSync('./src/common/templates/route-template', 'utf8');
@@ -87,12 +167,13 @@ gulp.task('generate-router', function (done) {
87167
allroutes = allroutes.replace(/{{imports}}/,imports);
88168
allroutes = allroutes.replace(/{{routerCollection}}/,compRoutes);
89169
allroutes = allroutes.replace(/{{category}}/, categories);
170+
allroutes = allroutes +'\n\n' + 'export let apiList:any=' + JSON.stringify(apiReference);
90171
fs.writeFileSync('./src/common/all-routes.tsx',allroutes);
91172
fs.writeFileSync('./src/common/search-index.json', JSON.stringify(instance.toJSON()));
92173
done();
93174
});
94175
gulp.task('build', function (done) {
95-
runSequence('generate-router','styles','scripts','bundle', 'plnkr-json', done);
176+
runSequence('create-locale','generate-router','styles','scripts','bundle', 'plnkr-json', done);
96177
});
97178

98179
gulp.task('bundle', function () {

index.html

Lines changed: 107 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<meta http-equiv="X-UA-Compatible" content="IE=edge">
77
<meta name="description" content="Essential JS 2 for React">
88
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
9-
<title>Essential JS 2 for React (Preview)</title>
9+
<title>Essential JS 2 for React</title>
1010
<link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet">
1111
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
1212
<link rel="shortcut icon" href="favicon.ico" />
@@ -16,13 +16,45 @@
1616
</head>
1717

1818
<body class='e-view'>
19-
<div class="sample-browser e-view">
20-
<div class="sb-mobile-overlay sb-hide"></div>
21-
<div class="sb-mobile-right-pane sb-hide">
19+
<aside id='left-sidebar'>
20+
<div class='sb-left-pane e-view'>
21+
<div class="sb-left-pane-header">
22+
<div class="sb-header-top">
23+
<div class="sb-ej2">
24+
<div class="sb-mobile-logo"></div>
25+
<div class="sb-name">Essential JS 2</div>
26+
</div>
27+
</div>
28+
</div>
29+
<div class="sb-home" onclick="document.getElementById('sb-home').click()">
30+
<div class="sb-home-link sb-icons sb-icon-Home"></div>
31+
<div class="sb-home-text">
32+
<span>HOME</span>
33+
</div>
34+
<a id="sb-home" href="https://ej2.syncfusion.com/home/react.html"></a>
35+
</div>
36+
<div id="left-pane-component"></div>
37+
<div class='sb-left-pane-footer'>
38+
<div class="sb-mobile-header-buttons">
39+
<a href='https://www.syncfusion.com/products/essential-js2' target="_blank">
40+
<div class="sb-mobile-header-button">
41+
About</div>
42+
</a>
43+
<a href='https://www.syncfusion.com/downloads/essential-js2' target="_blank" ><div class="sb-mobile-header-button">Pricing</div></a>
44+
</div>
45+
</div>
46+
</div>
47+
</aside>
48+
<aside id='right-sidebar' class="sb-hide">
49+
<div class="sb-mobile-right-pane">
2250
<div class="sb-mobile-preference sb-hide"></div>
2351
<div class="sb-mobile-prop-pane sb-hide"></div>
2452
<div class="sb-mobile-right-pane-close sb-icons"></div>
2553
</div>
54+
</aside>
55+
<div class="sample-browser e-view">
56+
<div class="sb-mobile-overlay sb-hide"></div>
57+
2658
<div id='sample-header' class="sb-header e-view" role="banner">
2759
<div class='sb-header-left sb-left sb-table'>
2860
<div class='sb-header-item sb-table-cell'>
@@ -37,9 +69,6 @@
3769
<div class='sb-header-item sb-table-cell sb-lang-toggler-wrapper'>
3870
<span id='sb-switcher' class='sb-lang-toggler sb-icons sb-icon-Dropdown'></span>
3971
</div>
40-
<div class='sb-header-item sb-table-cell sb-preview-wrapper'>
41-
<div class='sb-header-preview'></div>
42-
</div>
4372
</div>
4473
<div class='sb-header-right sb-right sb-table'>
4574
<div class="sb-header-item sb-table-cell">
@@ -85,7 +114,13 @@
85114
<a id='typescript'>TypeScript</a>
86115
</li>
87116
<li>
88-
<a id='javascript'>JavaScript</a>
117+
<a id='javascript'>JavaScript (ES5)</a>
118+
</li>
119+
<li>
120+
<a id='aspnetcore'>ASP.NET Core</a>
121+
</li>
122+
<li>
123+
<a id='aspnetmvc'>ASP.NET MVC</a>
89124
</li>
90125
</ul>
91126
</div>
@@ -103,6 +138,10 @@
103138
<span class='sb-icons sb-theme-select sb-icon-icon-selection'></span>
104139
<span class="switch-text">Bootstrap</span>
105140
</li>
141+
<li class="e-list" id="highcontrast">
142+
<span class='sb-icons sb-theme-select sb-icon-icon-selection'></span>
143+
<span class="switch-text">High Contrast</span>
144+
</li>
106145
</ul>
107146
</div>
108147
<div id='settings-popup' class='sb-setting-popup'>
@@ -121,6 +160,7 @@
121160
<option value="material">Material</option>
122161
<option value="fabric">Fabric</option>
123162
<option value="bootstrap">Bootstrap</option>
163+
<option value="highcontrast">High Contrast</option>
124164
</select>
125165
</div>
126166
</div>
@@ -134,51 +174,43 @@
134174
<div id='mouse' class="sb-responsive-items">Mouse</div>
135175
</div>
136176
</div>
177+
<div class='sb-setting-item sb-setting-culture'>
178+
<div class='setting-label'>
179+
<div class='sb-icons sb-setting-icons sb-icon-Localization'></div>
180+
<div class='sb-setting-text'>Localization</div>
181+
</div>
182+
<div class='setting-content'>
183+
<select id='sb-setting-culture' class='sb-setting-culture-select'>
184+
<option value="en">English*</option>
185+
<option value="de">German - Germany*</option>
186+
<option value="fr-CH">French - Switzerland*</option>
187+
<option value="ar">Arabic*</option>
188+
<option value="zh">Chinese - China*</option>
189+
</select>
190+
</div>
191+
<div class="sb-setting-translate">
192+
<span>* Translated by Google Translator</span>
193+
</div>
194+
</div>
195+
<div class='sb-setting-item sb-setting-currency'>
196+
<div class='setting-label'>
197+
<div class='sb-icons sb-setting-icons sb-icon-Currency'></div>
198+
<div class='sb-setting-text'>Currency</div>
199+
</div>
200+
<div class='setting-content'>
201+
<select id='sb-setting-currency' class='sb-setting-currency-content'>
202+
<option value="USD">USD</option>
203+
<option value="EUR">EUR</option>
204+
<option value="AED">AED</option>
205+
<option value="CHF">CHF</option>
206+
<option value="CNY">CNY</option>
207+
</select>
208+
</div>
209+
</div>
137210
</div>
138211
</div>
139212
</div>
140213
<div class="sb-content e-view">
141-
<div class="sb-body-overlay">
142-
<div class="sb-loading">
143-
<svg class="circular" height="40" width="40">
144-
<circle class="path" cx="25" cy="25" r="20" fill="none" stroke-width="6" stroke-miterlimit="10" />
145-
</svg>
146-
</div>
147-
</div>
148-
<div class="e-search-overlay sb-hide">
149-
<div class='sb-search-input' id='search-input-wrapper'>
150-
<input type='text' class="e-icons" id='search-input' class='e-icons' placeholder="Search here..." />
151-
<span class='e-icons sb-search-icon'></span>
152-
</div>
153-
<div id='search-popup' class='sb-search-result'></div>
154-
</div>
155-
<div class='sb-left-pane e-view sb-hide'>
156-
<div class="sb-left-pane-header">
157-
<div class="sb-header-top">
158-
<div class="sb-ej2">
159-
<div class="sb-mobile-logo"></div>
160-
<div class="sb-name">Essential JS 2</div>
161-
</div>
162-
</div>
163-
</div>
164-
<div class="sb-home" onclick="document.getElementById('sb-home').click()">
165-
<div class="sb-home-link sb-icons sb-icon-Home"></div>
166-
<div class="sb-home-text">
167-
<span>HOME</span>
168-
</div>
169-
<a id="sb-home" href="http://ej2.syncfusion.com/home/react.html"></a>
170-
</div>
171-
<div id="left-pane-component"></div>
172-
<div class='sb-left-pane-footer'>
173-
<div class="sb-mobile-header-buttons">
174-
<a href='https://www.syncfusion.com/products/essential-js2' target="_blank">
175-
<div class="sb-mobile-header-button">
176-
About</div>
177-
</a>
178-
<a href='https://www.syncfusion.com/downloads/essential-js2' target="_blank" ><div class="sb-mobile-header-button">Pricing</div></a>
179-
</div>
180-
</div>
181-
</div>
182214
<div class='sb-right-pane e-view' id='right-pane'>
183215
<div class="sb-content-overlay">
184216
<div class="sb-loading">
@@ -220,7 +252,7 @@
220252
<div class="sb-footer-link">Knowledge Base</div>
221253
</a>
222254
</div>
223-
<div class="sb-footer-copyright">Copyright © 2001-2017 Syncfusion Inc.</div>
255+
<div class="sb-footer-copyright">Copyright © 2001-2018 Syncfusion Inc.</div>
224256
</div>
225257
<div class="sb-footer-logo">
226258
<a href="//www.syncfusion.com" target="_blank">
@@ -230,6 +262,23 @@
230262
</div>
231263
</div>
232264
</div>
265+
<div class="sb-body-overlay e-view">
266+
<div class="sb-loading">
267+
<svg class="circular" height="40" width="40">
268+
<circle class="path" cx="25" cy="25" r="20" fill="none" stroke-width="6" stroke-miterlimit="10" />
269+
</svg>
270+
</div>
271+
</div>
272+
<div class="e-search-overlay sb-hide">
273+
<div class='sb-search-input' id='search-input-wrapper' data-value=''>
274+
<input type='text' class="e-icons" id='search-input' onkeyup='this.parentElement.setAttribute("data-value",this.value)' class='e-icons' placeholder="Search here..." />
275+
<span class='e-icons sb-reset-icon'></span>
276+
<span class='e-icons sb-search-icon'></span>
277+
</div>
278+
<div id='search-popup' class='sb-search-result'></div>
279+
</div>
280+
281+
233282
<div class='sb-mobilefooter e-view sample-navigation' id='mobile-footer'>
234283
<button id='mobile-prev-sample' class="sb-navigation-prev sb-left">
235284
PREVIOUS
@@ -242,6 +291,14 @@
242291
</div>
243292

244293
</div>
294+
<script id="template" type="text/x-template">
295+
<a href="${link}" target="_blank">${name}</a>
296+
</script>
297+
<script id="template-description" type="text/x-template">
298+
<div class='sb-sample-description'>
299+
<div class='sb-api-content'>${description}</div>
300+
</div>
301+
</script>
245302

246303
<script src="./dist/bundle.js"></script>
247304

0 commit comments

Comments
 (0)