fomantic-ui 2.10.0-beta.7 → 2.10.0-beta.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.js +0 -10
- package/README.md +4 -5
- package/changelog-setup.js +64 -70
- package/dist/components/accordion.css +1 -1
- package/dist/components/accordion.js +94 -131
- package/dist/components/accordion.min.css +1 -1
- package/dist/components/accordion.min.js +2 -2
- package/dist/components/ad.css +1 -1
- package/dist/components/ad.min.css +1 -1
- package/dist/components/api.js +152 -205
- package/dist/components/api.min.js +2 -2
- package/dist/components/breadcrumb.css +1 -1
- package/dist/components/breadcrumb.min.css +1 -1
- package/dist/components/button.css +1 -1
- package/dist/components/button.min.css +1 -1
- package/dist/components/calendar.css +1 -1
- package/dist/components/calendar.js +305 -341
- package/dist/components/calendar.min.css +1 -1
- package/dist/components/calendar.min.js +2 -2
- package/dist/components/card.css +1 -1
- package/dist/components/card.min.css +1 -1
- package/dist/components/checkbox.css +1 -1
- package/dist/components/checkbox.js +76 -116
- package/dist/components/checkbox.min.css +1 -1
- package/dist/components/checkbox.min.js +2 -2
- package/dist/components/comment.css +1 -1
- package/dist/components/comment.min.css +1 -1
- package/dist/components/container.css +1 -1
- package/dist/components/container.min.css +1 -1
- package/dist/components/dimmer.css +1 -1
- package/dist/components/dimmer.js +58 -91
- package/dist/components/dimmer.min.css +1 -1
- package/dist/components/dimmer.min.js +2 -2
- package/dist/components/divider.css +1 -1
- package/dist/components/divider.min.css +1 -1
- package/dist/components/dropdown.css +7 -5
- package/dist/components/dropdown.js +653 -943
- package/dist/components/dropdown.min.css +2 -2
- package/dist/components/dropdown.min.js +2 -2
- package/dist/components/embed.css +1 -1
- package/dist/components/embed.js +71 -109
- package/dist/components/embed.min.css +1 -1
- package/dist/components/embed.min.js +2 -2
- package/dist/components/emoji.css +1 -1
- package/dist/components/emoji.min.css +1 -1
- package/dist/components/feed.css +1 -1
- package/dist/components/feed.min.css +1 -1
- package/dist/components/flag.css +1 -1
- package/dist/components/flag.min.css +1 -1
- package/dist/components/flyout.css +1 -1
- package/dist/components/flyout.js +183 -257
- package/dist/components/flyout.min.css +1 -1
- package/dist/components/flyout.min.js +2 -2
- package/dist/components/form.css +1 -1
- package/dist/components/form.js +325 -429
- package/dist/components/form.min.css +1 -1
- package/dist/components/form.min.js +2 -2
- package/dist/components/grid.css +1 -1
- package/dist/components/grid.min.css +1 -1
- package/dist/components/header.css +1 -1
- package/dist/components/header.min.css +1 -1
- package/dist/components/icon.css +1 -1
- package/dist/components/icon.min.css +1 -1
- package/dist/components/image.css +1 -1
- package/dist/components/image.min.css +1 -1
- package/dist/components/input.css +1 -1
- package/dist/components/input.min.css +1 -1
- package/dist/components/item.css +1 -1
- package/dist/components/item.min.css +1 -1
- package/dist/components/label.css +1 -1
- package/dist/components/label.min.css +1 -1
- package/dist/components/list.css +1 -1
- package/dist/components/list.min.css +1 -1
- package/dist/components/loader.css +1 -1
- package/dist/components/loader.min.css +1 -1
- package/dist/components/menu.css +1 -1
- package/dist/components/menu.min.css +1 -1
- package/dist/components/message.css +1 -1
- package/dist/components/message.min.css +1 -1
- package/dist/components/modal.css +1 -1
- package/dist/components/modal.js +212 -296
- package/dist/components/modal.min.css +1 -1
- package/dist/components/modal.min.js +2 -2
- package/dist/components/nag.css +1 -1
- package/dist/components/nag.js +67 -97
- package/dist/components/nag.min.css +1 -1
- package/dist/components/nag.min.js +2 -2
- package/dist/components/placeholder.css +1 -1
- package/dist/components/placeholder.min.css +1 -1
- package/dist/components/popup.css +1 -1
- package/dist/components/popup.js +176 -236
- package/dist/components/popup.min.css +1 -1
- package/dist/components/popup.min.js +2 -2
- package/dist/components/progress.css +1 -1
- package/dist/components/progress.js +103 -138
- package/dist/components/progress.min.css +1 -1
- package/dist/components/progress.min.js +2 -2
- package/dist/components/rail.css +1 -1
- package/dist/components/rail.min.css +1 -1
- package/dist/components/rating.css +1 -1
- package/dist/components/rating.js +80 -121
- package/dist/components/rating.min.css +1 -1
- package/dist/components/rating.min.js +2 -2
- package/dist/components/reset.css +1 -1
- package/dist/components/reset.min.css +1 -1
- package/dist/components/reveal.css +1 -1
- package/dist/components/reveal.min.css +1 -1
- package/dist/components/search.css +1 -1
- package/dist/components/search.js +240 -334
- package/dist/components/search.min.css +1 -1
- package/dist/components/search.min.js +2 -2
- package/dist/components/segment.css +1 -1
- package/dist/components/segment.min.css +1 -1
- package/dist/components/shape.css +1 -1
- package/dist/components/shape.js +157 -223
- package/dist/components/shape.min.css +1 -1
- package/dist/components/shape.min.js +2 -2
- package/dist/components/sidebar.css +1 -1
- package/dist/components/sidebar.js +122 -163
- package/dist/components/sidebar.min.css +1 -1
- package/dist/components/sidebar.min.js +2 -2
- package/dist/components/site.css +1 -1
- package/dist/components/site.js +38 -57
- package/dist/components/site.min.css +1 -1
- package/dist/components/site.min.js +2 -2
- package/dist/components/slider.css +1 -1
- package/dist/components/slider.js +242 -325
- package/dist/components/slider.min.css +1 -1
- package/dist/components/slider.min.js +2 -2
- package/dist/components/state.js +68 -98
- package/dist/components/state.min.js +2 -2
- package/dist/components/statistic.css +1 -1
- package/dist/components/statistic.min.css +1 -1
- package/dist/components/step.css +1 -1
- package/dist/components/step.min.css +1 -1
- package/dist/components/sticky.css +1 -1
- package/dist/components/sticky.js +116 -159
- package/dist/components/sticky.min.css +1 -1
- package/dist/components/sticky.min.js +2 -2
- package/dist/components/tab.css +1 -1
- package/dist/components/tab.js +168 -233
- package/dist/components/tab.min.css +1 -1
- package/dist/components/tab.min.js +2 -2
- package/dist/components/table.css +1 -1
- package/dist/components/table.min.css +1 -1
- package/dist/components/text.css +1 -1
- package/dist/components/text.min.css +1 -1
- package/dist/components/toast.css +1 -1
- package/dist/components/toast.js +90 -115
- package/dist/components/toast.min.css +1 -1
- package/dist/components/toast.min.js +2 -2
- package/dist/components/transition.css +1 -1
- package/dist/components/transition.js +86 -141
- package/dist/components/transition.min.css +1 -1
- package/dist/components/transition.min.js +2 -2
- package/dist/components/visibility.js +134 -210
- package/dist/components/visibility.min.js +2 -2
- package/dist/semantic.css +59 -57
- package/dist/semantic.js +4015 -5567
- package/dist/semantic.min.css +2 -2
- package/dist/semantic.min.js +2 -2
- package/examples/assets/show-examples.js +2 -4
- package/gulpfile.js +5 -7
- package/package.json +1 -1
- package/scripts/nightly-version.js +7 -10
- package/src/definitions/behaviors/api.js +151 -204
- package/src/definitions/behaviors/form.js +324 -428
- package/src/definitions/behaviors/state.js +67 -97
- package/src/definitions/behaviors/visibility.js +133 -209
- package/src/definitions/globals/site.js +37 -56
- package/src/definitions/modules/accordion.js +93 -130
- package/src/definitions/modules/calendar.js +304 -340
- package/src/definitions/modules/checkbox.js +75 -115
- package/src/definitions/modules/dimmer.js +57 -90
- package/src/definitions/modules/dropdown.js +652 -942
- package/src/definitions/modules/dropdown.less +11 -5
- package/src/definitions/modules/embed.js +70 -108
- package/src/definitions/modules/flyout.js +182 -256
- package/src/definitions/modules/modal.js +211 -295
- package/src/definitions/modules/nag.js +66 -96
- package/src/definitions/modules/popup.js +175 -235
- package/src/definitions/modules/progress.js +102 -137
- package/src/definitions/modules/rating.js +79 -120
- package/src/definitions/modules/search.js +239 -333
- package/src/definitions/modules/shape.js +156 -222
- package/src/definitions/modules/sidebar.js +121 -162
- package/src/definitions/modules/slider.js +241 -324
- package/src/definitions/modules/sticky.js +115 -158
- package/src/definitions/modules/tab.js +167 -232
- package/src/definitions/modules/toast.js +89 -114
- package/src/definitions/modules/transition.js +85 -140
- package/src/themes/default/modules/dropdown.variables +1 -0
- package/tasks/admin/components/create.js +88 -108
- package/tasks/admin/components/init.js +26 -32
- package/tasks/admin/components/update.js +46 -53
- package/tasks/admin/distributions/create.js +71 -101
- package/tasks/admin/distributions/init.js +27 -33
- package/tasks/admin/distributions/update.js +45 -52
- package/tasks/admin/register.js +11 -15
- package/tasks/build/assets.js +14 -18
- package/tasks/build/css.js +54 -63
- package/tasks/build/javascript.js +45 -53
- package/tasks/build.js +4 -6
- package/tasks/check-install.js +5 -7
- package/tasks/clean.js +2 -4
- package/tasks/collections/admin.js +13 -15
- package/tasks/collections/build.js +6 -8
- package/tasks/collections/docs.js +2 -4
- package/tasks/collections/install.js +2 -4
- package/tasks/collections/rtl.js +2 -4
- package/tasks/collections/various.js +2 -4
- package/tasks/config/admin/github.js +7 -9
- package/tasks/config/admin/templates/css-package.js +1 -3
- package/tasks/config/admin/templates/less-package.js +1 -3
- package/tasks/config/npm/gulpfile.js +4 -6
- package/tasks/config/project/config.js +22 -30
- package/tasks/config/project/install.js +56 -70
- package/tasks/config/project/release.js +6 -8
- package/tasks/config/tasks.js +8 -12
- package/tasks/config/user.js +13 -17
- package/tasks/docs/build.js +26 -31
- package/tasks/docs/metadata.js +24 -30
- package/tasks/docs/serve.js +20 -26
- package/tasks/install.js +71 -98
- package/tasks/rtl/build.js +2 -4
- package/tasks/rtl/watch.js +2 -4
- package/tasks/watch.js +9 -11
- package/test/meteor/fonts.js +1 -2
- package/test/modules/module.spec.js +16 -18
@@ -14,103 +14,95 @@
|
|
14
14
|
* create meteor.js file
|
15
15
|
*/
|
16
16
|
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
gulp = require('gulp'),
|
17
|
+
// node dependencies
|
18
|
+
const fs = require('node:fs');
|
19
|
+
const path = require('node:path');
|
20
|
+
const gulp = require('gulp');
|
22
21
|
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
22
|
+
// admin dependencies
|
23
|
+
const concatFileNames = require('@fomantic/gulp-concat-filenames');
|
24
|
+
const flatten = require('gulp-flatten');
|
25
|
+
const jsonEditor = require('gulp-json-editor');
|
26
|
+
const plumber = require('@fomantic/gulp-plumber');
|
27
|
+
const rename = require('gulp-rename');
|
28
|
+
const replace = require('gulp-replace');
|
29
|
+
const tap = require('gulp-tap');
|
31
30
|
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
31
|
+
// config
|
32
|
+
const config = require('../../config/user');
|
33
|
+
const release = require('../../config/admin/release');
|
34
|
+
const project = require('../../config/project/release');
|
36
35
|
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
;
|
36
|
+
// shorthand
|
37
|
+
const version = project.version;
|
38
|
+
const output = config.paths.output;
|
41
39
|
|
42
40
|
module.exports = function (callback) {
|
43
|
-
let
|
44
|
-
|
45
|
-
tasks = []
|
46
|
-
;
|
41
|
+
let index;
|
42
|
+
let tasks = [];
|
47
43
|
|
48
44
|
for (index in release.components) {
|
49
|
-
let
|
50
|
-
component = release.components[index]
|
51
|
-
;
|
45
|
+
let component = release.components[index];
|
52
46
|
|
53
47
|
// streams... designed to save time and make coding fun...
|
54
48
|
(function (component) {
|
55
|
-
let
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
49
|
+
let outputDirectory = path.join(release.outputRoot, component);
|
50
|
+
let isJavascript = fs.existsSync(output.compressed + component + '.js');
|
51
|
+
let isCSS = fs.existsSync(output.compressed + component + '.css');
|
52
|
+
let capitalizedComponent = component.charAt(0).toUpperCase() + component.slice(1);
|
53
|
+
let packageName = release.packageRoot + component;
|
54
|
+
let repoName = release.componentRepoRoot + capitalizedComponent;
|
55
|
+
let gitURL = 'https://github.com/' + release.org + '/' + repoName + '.git';
|
56
|
+
let concatSettings = {
|
57
|
+
newline: '',
|
58
|
+
root: outputDirectory,
|
59
|
+
prepend: " '",
|
60
|
+
append: "',",
|
61
|
+
};
|
62
|
+
let regExp = {
|
63
|
+
match: {
|
64
|
+
// templated values
|
65
|
+
name: '{component}',
|
66
|
+
titleName: '{Component}',
|
67
|
+
version: '{version}',
|
68
|
+
files: '{files}',
|
69
|
+
// release notes
|
70
|
+
spacedVersions: /(###.*\n)\n+(?=###)/gm,
|
71
|
+
spacedLists: /(^- .*\n)\n+(?=^-)/gm,
|
72
|
+
trim: /^\s+|\s+$/g,
|
73
|
+
unrelatedNotes: new RegExp('^((?!(^.*(' + component + ').*$|###.*)).)*$', 'gmi'),
|
74
|
+
whitespace: /\n\s*\n\s*\n/gm,
|
75
|
+
// npm
|
76
|
+
componentExport: /(.*)\$\.fn\.\w+\s*=\s*function\(([^)]*)\)\s*{/g,
|
77
|
+
componentReference: '$.fn.' + component,
|
78
|
+
settingsExport: /\$\.fn\.\w+\.settings\s*=/g,
|
79
|
+
settingsReference: /\$\.fn\.\w+\.settings/g,
|
80
|
+
trailingComma: /,(?=[^,]*$)/,
|
81
|
+
jQuery: /jQuery/g,
|
68
82
|
},
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
settingsExport: /\$\.fn\.\w+\.settings\s*=/g,
|
86
|
-
settingsReference: /\$\.fn\.\w+\.settings/g,
|
87
|
-
trailingComma: /,(?=[^,]*$)/,
|
88
|
-
jQuery: /jQuery/g,
|
89
|
-
},
|
90
|
-
replace: {
|
91
|
-
// readme
|
92
|
-
name: component,
|
93
|
-
titleName: capitalizedComponent,
|
94
|
-
// release notes
|
95
|
-
spacedVersions: '',
|
96
|
-
spacedLists: '$1',
|
97
|
-
trim: '',
|
98
|
-
unrelatedNotes: '',
|
99
|
-
whitespace: '\n\n',
|
100
|
-
// npm
|
101
|
-
componentExport: 'var _module = module;\n$1module.exports = function($2) {',
|
102
|
-
componentReference: '_module.exports',
|
103
|
-
settingsExport: 'module.exports.settings =',
|
104
|
-
settingsReference: '_module.exports.settings',
|
105
|
-
jQuery: 'require("jquery")',
|
106
|
-
},
|
83
|
+
replace: {
|
84
|
+
// readme
|
85
|
+
name: component,
|
86
|
+
titleName: capitalizedComponent,
|
87
|
+
// release notes
|
88
|
+
spacedVersions: '',
|
89
|
+
spacedLists: '$1',
|
90
|
+
trim: '',
|
91
|
+
unrelatedNotes: '',
|
92
|
+
whitespace: '\n\n',
|
93
|
+
// npm
|
94
|
+
componentExport: 'var _module = module;\n$1module.exports = function($2) {',
|
95
|
+
componentReference: '_module.exports',
|
96
|
+
settingsExport: 'module.exports.settings =',
|
97
|
+
settingsReference: '_module.exports.settings',
|
98
|
+
jQuery: 'require("jquery")',
|
107
99
|
},
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
;
|
100
|
+
};
|
101
|
+
// paths to includable assets
|
102
|
+
let manifest = {
|
103
|
+
assets: outputDirectory + '/assets/**/' + component + '?(s).*',
|
104
|
+
component: outputDirectory + '/' + component + '+(.js|.css)',
|
105
|
+
};
|
114
106
|
|
115
107
|
// copy dist files into output folder adjusting asset paths
|
116
108
|
function copyDist() {
|
@@ -118,8 +110,7 @@ module.exports = function (callback) {
|
|
118
110
|
.pipe(plumber())
|
119
111
|
.pipe(flatten())
|
120
112
|
.pipe(replace(release.paths.source, release.paths.output))
|
121
|
-
.pipe(gulp.dest(outputDirectory))
|
122
|
-
;
|
113
|
+
.pipe(gulp.dest(outputDirectory));
|
123
114
|
}
|
124
115
|
|
125
116
|
// create npm module
|
@@ -133,8 +124,7 @@ module.exports = function (callback) {
|
|
133
124
|
.pipe(replace(regExp.match.settingsReference, regExp.replace.settingsReference))
|
134
125
|
.pipe(replace(regExp.match.jQuery, regExp.replace.jQuery))
|
135
126
|
.pipe(rename('index.js'))
|
136
|
-
.pipe(gulp.dest(outputDirectory))
|
137
|
-
;
|
127
|
+
.pipe(gulp.dest(outputDirectory));
|
138
128
|
}
|
139
129
|
|
140
130
|
// create readme
|
@@ -144,8 +134,7 @@ module.exports = function (callback) {
|
|
144
134
|
.pipe(flatten())
|
145
135
|
.pipe(replace(regExp.match.name, regExp.replace.name))
|
146
136
|
.pipe(replace(regExp.match.titleName, regExp.replace.titleName))
|
147
|
-
.pipe(gulp.dest(outputDirectory))
|
148
|
-
;
|
137
|
+
.pipe(gulp.dest(outputDirectory));
|
149
138
|
}
|
150
139
|
|
151
140
|
// extend bower.json
|
@@ -171,8 +160,7 @@ module.exports = function (callback) {
|
|
171
160
|
|
172
161
|
return bower;
|
173
162
|
}))
|
174
|
-
.pipe(gulp.dest(outputDirectory))
|
175
|
-
;
|
163
|
+
.pipe(gulp.dest(outputDirectory));
|
176
164
|
}
|
177
165
|
|
178
166
|
// extend package.json
|
@@ -200,8 +188,7 @@ module.exports = function (callback) {
|
|
200
188
|
|
201
189
|
return npm;
|
202
190
|
}))
|
203
|
-
.pipe(gulp.dest(outputDirectory))
|
204
|
-
;
|
191
|
+
.pipe(gulp.dest(outputDirectory));
|
205
192
|
}
|
206
193
|
|
207
194
|
// extend composer.json
|
@@ -224,8 +211,7 @@ module.exports = function (callback) {
|
|
224
211
|
|
225
212
|
return composer;
|
226
213
|
}))
|
227
|
-
.pipe(gulp.dest(outputDirectory))
|
228
|
-
;
|
214
|
+
.pipe(gulp.dest(outputDirectory));
|
229
215
|
}
|
230
216
|
|
231
217
|
// create release notes
|
@@ -239,15 +225,12 @@ module.exports = function (callback) {
|
|
239
225
|
.pipe(replace(regExp.match.spacedVersions, regExp.replace.spacedVersions))
|
240
226
|
.pipe(replace(regExp.match.spacedLists, regExp.replace.spacedLists))
|
241
227
|
.pipe(replace(regExp.match.trim, regExp.replace.trim))
|
242
|
-
.pipe(gulp.dest(outputDirectory))
|
243
|
-
;
|
228
|
+
.pipe(gulp.dest(outputDirectory));
|
244
229
|
}
|
245
230
|
|
246
231
|
// Creates meteor package.js
|
247
232
|
function createMeteorPackage() {
|
248
|
-
let
|
249
|
-
filenames = ''
|
250
|
-
;
|
233
|
+
let filenames = '';
|
251
234
|
|
252
235
|
return gulp.src(manifest.component)
|
253
236
|
.pipe(concatFileNames('empty.txt', concatSettings))
|
@@ -271,12 +254,9 @@ module.exports = function (callback) {
|
|
271
254
|
.pipe(replace(regExp.match.version, version))
|
272
255
|
.pipe(replace(regExp.match.files, filenames))
|
273
256
|
.pipe(rename(release.files.meteor))
|
274
|
-
.pipe(gulp.dest(outputDirectory))
|
275
|
-
|
276
|
-
|
277
|
-
;
|
278
|
-
})
|
279
|
-
;
|
257
|
+
.pipe(gulp.dest(outputDirectory));
|
258
|
+
});
|
259
|
+
});
|
280
260
|
}
|
281
261
|
|
282
262
|
tasks.push(gulp.series(
|
@@ -12,29 +12,25 @@
|
|
12
12
|
|
13
13
|
*/
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
: false
|
29
|
-
;
|
15
|
+
// node dependencies
|
16
|
+
const fs = require('fs-extra');
|
17
|
+
const path = require('node:path');
|
18
|
+
const console = require('@fomantic/better-console');
|
19
|
+
const git = require('@fomantic/gulp-git');
|
20
|
+
|
21
|
+
// admin files
|
22
|
+
const release = require('../../config/admin/release');
|
23
|
+
|
24
|
+
// oAuth configuration for GitHub
|
25
|
+
const oAuth = fs.pathExistsSync(path.join(__dirname, '/../../config/admin/oauth.js'))
|
26
|
+
? require('../../config/admin/oauth.js') // eslint-disable-line import/extensions
|
27
|
+
: false;
|
30
28
|
|
31
29
|
module.exports = function (callback) {
|
32
|
-
let
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
stepRepo
|
37
|
-
;
|
30
|
+
let index = -1;
|
31
|
+
let total = release.components.length;
|
32
|
+
let timer;
|
33
|
+
let stepRepo;
|
38
34
|
|
39
35
|
if (!oAuth) {
|
40
36
|
console.error('Must add oauth token for GitHub in tasks/config/admin/oauth.js');
|
@@ -52,19 +48,17 @@ module.exports = function (callback) {
|
|
52
48
|
return;
|
53
49
|
}
|
54
50
|
|
55
|
-
let
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
repoName = release.componentRepoRoot + capitalizedComponent,
|
51
|
+
let component = release.components[index];
|
52
|
+
let outputDirectory = path.resolve(release.outputRoot + component);
|
53
|
+
let capitalizedComponent = component.charAt(0).toUpperCase() + component.slice(1);
|
54
|
+
let repoName = release.componentRepoRoot + capitalizedComponent;
|
60
55
|
|
61
|
-
|
62
|
-
|
63
|
-
|
56
|
+
let gitOptions = { cwd: outputDirectory };
|
57
|
+
let pullOptions = { args: '-q', cwd: outputDirectory, quiet: true };
|
58
|
+
let resetOptions = { args: '-q --hard', cwd: outputDirectory, quiet: true };
|
64
59
|
|
65
|
-
|
66
|
-
|
67
|
-
;
|
60
|
+
let gitURL = 'git@github.com:' + release.org + '/' + repoName + '.git';
|
61
|
+
let localRepoSetup = fs.pathExistsSync(path.join(outputDirectory, '.git'));
|
68
62
|
|
69
63
|
console.log('Processing repository: ' + outputDirectory);
|
70
64
|
|
@@ -12,36 +12,32 @@
|
|
12
12
|
|
13
13
|
*/
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
version = project.version
|
34
|
-
;
|
15
|
+
// node dependencies
|
16
|
+
const fs = require('node:fs');
|
17
|
+
const path = require('node:path');
|
18
|
+
const console = require('@fomantic/better-console');
|
19
|
+
const gulp = require('gulp');
|
20
|
+
const git = require('@fomantic/gulp-git');
|
21
|
+
|
22
|
+
// admin files
|
23
|
+
const release = require('../../config/admin/release');
|
24
|
+
const project = require('../../config/project/release');
|
25
|
+
|
26
|
+
// oAuth configuration for GitHub
|
27
|
+
const oAuth = fs.existsSync(path.join(__dirname, '/../../config/admin/oauth.js'))
|
28
|
+
? require('../../config/admin/oauth.js') // eslint-disable-line import/extensions
|
29
|
+
: false;
|
30
|
+
|
31
|
+
// shorthand
|
32
|
+
const version = project.version;
|
35
33
|
|
36
34
|
module.exports = function (callback) {
|
37
35
|
const github = require('../../config/admin/github'); // eslint-disable-line global-require
|
38
36
|
|
39
|
-
let
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
stepRepo
|
44
|
-
;
|
37
|
+
let index = -1;
|
38
|
+
let total = release.components.length;
|
39
|
+
let timer;
|
40
|
+
let stepRepo;
|
45
41
|
|
46
42
|
if (!oAuth) {
|
47
43
|
console.error('Must add oauth token for GitHub in tasks/config/admin/oauth.js');
|
@@ -58,38 +54,36 @@ module.exports = function (callback) {
|
|
58
54
|
return;
|
59
55
|
}
|
60
56
|
|
61
|
-
let
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
repoName = release.componentRepoRoot + capitalizedComponent,
|
57
|
+
let component = release.components[index];
|
58
|
+
let outputDirectory = path.resolve(path.join(release.outputRoot, component));
|
59
|
+
let capitalizedComponent = component.charAt(0).toUpperCase() + component.slice(1);
|
60
|
+
let repoName = release.componentRepoRoot + capitalizedComponent;
|
66
61
|
|
67
|
-
|
68
|
-
|
69
|
-
|
62
|
+
let commitArgs = oAuth.name !== undefined && oAuth.email !== undefined
|
63
|
+
? '--author "' + oAuth.name + ' <' + oAuth.email + '>"'
|
64
|
+
: '';
|
70
65
|
|
71
|
-
|
72
|
-
|
73
|
-
|
66
|
+
let componentPackage = fs.existsSync(outputDirectory + 'package.json')
|
67
|
+
? require(outputDirectory + 'package.json') // eslint-disable-line global-require, import/no-dynamic-require
|
68
|
+
: false;
|
74
69
|
|
75
|
-
|
70
|
+
let isNewVersion = version && componentPackage.version !== version;
|
76
71
|
|
77
|
-
|
78
|
-
|
79
|
-
|
72
|
+
let commitMessage = isNewVersion
|
73
|
+
? 'Updated component to version ' + version
|
74
|
+
: 'Updated files from main repo';
|
80
75
|
|
81
|
-
|
82
|
-
|
83
|
-
|
76
|
+
let gitOptions = { cwd: outputDirectory };
|
77
|
+
let commitOptions = { args: commitArgs, cwd: outputDirectory };
|
78
|
+
let releaseOptions = { tag_name: version, owner: release.org, repo: repoName };
|
84
79
|
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
80
|
+
let fileModeOptions = { args: 'config core.fileMode false', cwd: outputDirectory };
|
81
|
+
let usernameOptions = { args: 'config user.name "' + oAuth.name + '"', cwd: outputDirectory };
|
82
|
+
let emailOptions = { args: 'config user.email "' + oAuth.email + '"', cwd: outputDirectory };
|
83
|
+
let versionOptions = { args: 'rev-parse --verify HEAD', cwd: outputDirectory };
|
89
84
|
|
90
|
-
|
91
|
-
|
92
|
-
;
|
85
|
+
let localRepoSetup = fs.existsSync(path.join(outputDirectory, '.git'));
|
86
|
+
let canProceed = true;
|
93
87
|
|
94
88
|
console.info('Processing repository:' + outputDirectory);
|
95
89
|
|
@@ -120,8 +114,7 @@ module.exports = function (callback) {
|
|
120
114
|
console.info('Nothing new to commit');
|
121
115
|
nextRepo();
|
122
116
|
}
|
123
|
-
})
|
124
|
-
;
|
117
|
+
});
|
125
118
|
}
|
126
119
|
|
127
120
|
// push changes to remote
|