fomantic-ui 2.10.0-beta.0 → 2.10.0-beta.10
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/.all-contributorsrc +9 -0
- package/.eslintrc.js +0 -10
- package/.github/workflows/ci.yml +3 -3
- package/CONTRIBUTING.md +4 -1
- package/CONTRIBUTORS.md +1 -0
- package/FAQ.md +7 -2
- package/README.md +5 -9
- package/ROADMAP.md +4 -4
- package/SECURITY.md +8 -7
- package/changelog-setup.js +64 -70
- package/dist/components/accordion.css +1 -1
- package/dist/components/accordion.js +103 -142
- 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 +157 -210
- 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 -2
- package/dist/components/button.min.css +2 -2
- package/dist/components/calendar.css +1 -2
- package/dist/components/calendar.js +314 -352
- package/dist/components/calendar.min.css +2 -2
- 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 -2
- package/dist/components/checkbox.js +85 -135
- package/dist/components/checkbox.min.css +2 -2
- 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 +2 -4
- package/dist/components/container.min.css +2 -2
- package/dist/components/dimmer.css +1 -11
- package/dist/components/dimmer.js +61 -94
- package/dist/components/dimmer.min.css +2 -2
- package/dist/components/dimmer.min.js +2 -2
- package/dist/components/divider.css +1 -2
- package/dist/components/divider.min.css +2 -2
- package/dist/components/dropdown.css +30 -51
- package/dist/components/dropdown.js +736 -1055
- 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 +85 -114
- package/dist/components/embed.min.css +1 -1
- package/dist/components/embed.min.js +2 -2
- package/dist/components/emoji.css +3809 -7617
- package/dist/components/emoji.min.css +2 -2
- 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 +2 -3
- package/dist/components/flyout.js +226 -355
- package/dist/components/flyout.min.css +2 -2
- package/dist/components/flyout.min.js +2 -2
- package/dist/components/form.css +5 -95
- package/dist/components/form.js +335 -444
- package/dist/components/form.min.css +2 -2
- package/dist/components/form.min.js +2 -2
- package/dist/components/grid.css +2 -58
- package/dist/components/grid.min.css +2 -2
- package/dist/components/header.css +1 -1
- package/dist/components/header.min.css +1 -1
- package/dist/components/icon.css +4 -4
- package/dist/components/icon.min.css +2 -2
- package/dist/components/image.css +1 -1
- package/dist/components/image.min.css +1 -1
- package/dist/components/input.css +1 -536
- package/dist/components/input.min.css +2 -2
- 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 -3
- package/dist/components/list.min.css +2 -2
- package/dist/components/loader.css +1 -1
- package/dist/components/loader.min.css +1 -1
- package/dist/components/menu.css +1 -9
- package/dist/components/menu.min.css +2 -2
- package/dist/components/message.css +1 -1
- package/dist/components/message.min.css +1 -1
- package/dist/components/modal.css +5 -9
- package/dist/components/modal.js +261 -384
- package/dist/components/modal.min.css +2 -2
- package/dist/components/modal.min.js +2 -2
- package/dist/components/nag.css +1 -1
- package/dist/components/nag.js +68 -98
- 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 -2
- package/dist/components/popup.js +198 -271
- package/dist/components/popup.min.css +2 -2
- package/dist/components/popup.min.js +2 -2
- package/dist/components/progress.css +1 -1
- package/dist/components/progress.js +109 -144
- 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 +91 -123
- 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 +2 -9
- package/dist/components/search.js +277 -379
- package/dist/components/search.min.css +2 -2
- package/dist/components/search.min.js +2 -2
- package/dist/components/segment.css +2 -7
- package/dist/components/segment.min.css +2 -2
- package/dist/components/shape.css +1 -2
- package/dist/components/shape.js +158 -224
- package/dist/components/shape.min.css +2 -2
- package/dist/components/shape.min.js +2 -2
- package/dist/components/sidebar.css +2 -3
- package/dist/components/sidebar.js +124 -206
- package/dist/components/sidebar.min.css +2 -2
- package/dist/components/sidebar.min.js +2 -2
- package/dist/components/site.css +9 -25
- package/dist/components/site.js +38 -57
- package/dist/components/site.min.css +2 -2
- package/dist/components/site.min.js +2 -2
- package/dist/components/slider.css +1 -1
- package/dist/components/slider.js +246 -329
- package/dist/components/slider.min.css +1 -1
- package/dist/components/slider.min.js +2 -2
- package/dist/components/state.js +70 -100
- 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 +135 -180
- 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 +176 -244
- package/dist/components/tab.min.css +1 -1
- package/dist/components/tab.min.js +2 -2
- package/dist/components/table.css +3 -37
- package/dist/components/table.min.css +2 -2
- package/dist/components/text.css +1 -1
- package/dist/components/text.min.css +1 -1
- package/dist/components/toast.css +1 -3
- package/dist/components/toast.js +109 -147
- 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 +91 -146
- package/dist/components/transition.min.css +1 -1
- package/dist/components/transition.min.js +2 -2
- package/dist/components/visibility.js +146 -224
- package/dist/components/visibility.min.js +2 -2
- package/dist/semantic.css +3906 -8720
- package/dist/semantic.js +4397 -6155
- 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 +20 -16
- package/scripts/nightly-version.js +7 -10
- package/src/README.md +3 -3
- package/src/definitions/behaviors/api.js +156 -209
- package/src/definitions/behaviors/form.js +334 -443
- package/src/definitions/behaviors/state.js +69 -99
- package/src/definitions/behaviors/visibility.js +145 -223
- package/src/definitions/collections/form.less +1 -13
- package/src/definitions/collections/grid.less +1 -61
- package/src/definitions/collections/menu.less +0 -11
- package/src/definitions/collections/table.less +1 -35
- package/src/definitions/elements/input.less +1 -61
- package/src/definitions/elements/segment.less +0 -6
- package/src/definitions/globals/site.js +37 -56
- package/src/definitions/globals/site.less +2 -18
- package/src/definitions/modules/accordion.js +102 -141
- package/src/definitions/modules/calendar.js +313 -351
- package/src/definitions/modules/checkbox.js +84 -134
- package/src/definitions/modules/dimmer.js +60 -93
- package/src/definitions/modules/dimmer.less +0 -9
- package/src/definitions/modules/dropdown.js +735 -1054
- package/src/definitions/modules/dropdown.less +31 -47
- package/src/definitions/modules/embed.js +84 -113
- package/src/definitions/modules/flyout.js +225 -354
- package/src/definitions/modules/modal.js +260 -383
- package/src/definitions/modules/modal.less +1 -1
- package/src/definitions/modules/nag.js +67 -97
- package/src/definitions/modules/popup.js +197 -270
- package/src/definitions/modules/progress.js +108 -143
- package/src/definitions/modules/rating.js +90 -122
- package/src/definitions/modules/search.js +276 -378
- package/src/definitions/modules/search.less +0 -3
- package/src/definitions/modules/shape.js +157 -223
- package/src/definitions/modules/sidebar.js +123 -205
- package/src/definitions/modules/slider.js +245 -328
- package/src/definitions/modules/slider.less +1 -1
- package/src/definitions/modules/sticky.js +134 -179
- package/src/definitions/modules/tab.js +175 -243
- package/src/definitions/modules/toast.js +108 -146
- package/src/definitions/modules/toast.less +1 -1
- package/src/definitions/modules/transition.js +90 -145
- package/src/theme.less +0 -13
- package/src/themes/basic/elements/icon.variables +1 -1
- package/src/themes/default/collections/grid.variables +0 -30
- package/src/themes/default/collections/table.variables +1 -5
- package/src/themes/default/elements/icon.variables +3 -3
- package/src/themes/default/globals/site.variables +8 -15
- package/src/themes/default/globals/variation.variables +1 -2
- package/src/themes/default/modules/dropdown.variables +1 -0
- package/src/themes/default/modules/slider.variables +1 -1
- package/src/themes/github/elements/icon.variables +1 -1
- package/src/themes/material/elements/icon.variables +1 -1
- package/tasks/README.md +1 -1
- package/tasks/admin/components/create.js +89 -122
- package/tasks/admin/components/init.js +34 -65
- package/tasks/admin/components/update.js +50 -61
- package/tasks/admin/distributions/create.js +71 -111
- package/tasks/admin/distributions/init.js +32 -63
- package/tasks/admin/distributions/update.js +49 -57
- package/tasks/admin/publish.js +1 -1
- package/tasks/admin/register.js +14 -19
- package/tasks/admin/release.js +2 -2
- package/tasks/build/assets.js +14 -18
- package/tasks/build/css.js +59 -68
- package/tasks/build/javascript.js +48 -56
- package/tasks/build.js +4 -6
- package/tasks/check-install.js +5 -8
- package/tasks/clean.js +5 -7
- package/tasks/collections/admin.js +14 -16
- package/tasks/collections/build.js +6 -8
- package/tasks/collections/docs.js +4 -6
- 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 +9 -19
- package/tasks/config/admin/templates/README.md +2 -2
- package/tasks/config/admin/templates/bower.json +2 -4
- package/tasks/config/admin/templates/composer.json +1 -1
- package/tasks/config/admin/templates/css-package.js +1 -4
- package/tasks/config/admin/templates/less-package.js +1 -3
- package/tasks/config/defaults.js +0 -1
- package/tasks/config/npm/gulpfile.js +4 -6
- package/tasks/config/project/config.js +27 -35
- package/tasks/config/project/install.js +64 -82
- package/tasks/config/project/release.js +7 -9
- package/tasks/config/tasks.js +16 -30
- package/tasks/config/user.js +14 -20
- package/tasks/docs/build.js +26 -31
- package/tasks/docs/metadata.js +30 -39
- package/tasks/docs/serve.js +23 -27
- package/tasks/install.js +94 -128
- package/tasks/rtl/build.js +2 -4
- package/tasks/rtl/watch.js +3 -5
- package/tasks/watch.js +13 -13
- package/test/meteor/fonts.js +1 -2
- package/test/modules/module.spec.js +16 -18
- package/types/fomantic-ui-calendar.d.ts +1 -1
- package/types/fomantic-ui-dropdown.d.ts +45 -1
- package/types/fomantic-ui-embed.d.ts +1 -1
- package/types/fomantic-ui-flyout.d.ts +1 -1
- package/types/fomantic-ui-form.d.ts +0 -7
- package/types/fomantic-ui-modal.d.ts +1 -1
- package/types/fomantic-ui-search.d.ts +12 -6
- package/types/fomantic-ui-toast.d.ts +1 -1
- package/src/themes/basic/assets/fonts/icons.woff +0 -0
- package/src/themes/default/assets/fonts/Lato-Bold.woff +0 -0
- package/src/themes/default/assets/fonts/Lato-BoldItalic.woff +0 -0
- package/src/themes/default/assets/fonts/Lato-Italic.woff +0 -0
- package/src/themes/default/assets/fonts/Lato-Regular.woff +0 -0
- package/src/themes/default/assets/fonts/LatoLatin-Bold.woff +0 -0
- package/src/themes/default/assets/fonts/LatoLatin-BoldItalic.woff +0 -0
- package/src/themes/default/assets/fonts/LatoLatin-Italic.woff +0 -0
- package/src/themes/default/assets/fonts/LatoLatin-Regular.woff +0 -0
- package/src/themes/default/assets/fonts/brand-icons.woff +0 -0
- package/src/themes/default/assets/fonts/icons.woff +0 -0
- package/src/themes/default/assets/fonts/outline-icons.woff +0 -0
- package/src/themes/github/assets/fonts/octicons.woff +0 -0
- package/src/themes/material/assets/fonts/icons.woff +0 -0
@@ -8,41 +8,36 @@
|
|
8
8
|
|
9
9
|
* Commits changes from create repo
|
10
10
|
* Pushes changes to GitHub
|
11
|
-
* Tag new releases if version changed in main repo
|
11
|
+
* Tag new releases if the version changed in main repo
|
12
12
|
|
13
13
|
*/
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
git = require('@fomantic/gulp-git'),
|
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');
|
22
21
|
|
23
|
-
|
24
|
-
|
25
|
-
|
22
|
+
// admin files
|
23
|
+
const release = require('../../config/admin/release');
|
24
|
+
const project = require('../../config/project/release');
|
26
25
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
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;
|
31
30
|
|
32
|
-
|
33
|
-
|
34
|
-
;
|
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
|
-
stream,
|
44
|
-
stepRepo
|
45
|
-
;
|
37
|
+
let index = -1;
|
38
|
+
let total = release.components.length;
|
39
|
+
let timer;
|
40
|
+
let stepRepo;
|
46
41
|
|
47
42
|
if (!oAuth) {
|
48
43
|
console.error('Must add oauth token for GitHub in tasks/config/admin/oauth.js');
|
@@ -50,7 +45,7 @@ module.exports = function (callback) {
|
|
50
45
|
return;
|
51
46
|
}
|
52
47
|
|
53
|
-
// Do Git commands synchronously per component, to avoid issues
|
48
|
+
// Do the Git commands synchronously per component, to avoid issues
|
54
49
|
stepRepo = function () {
|
55
50
|
index += 1;
|
56
51
|
if (index >= total) {
|
@@ -59,41 +54,36 @@ module.exports = function (callback) {
|
|
59
54
|
return;
|
60
55
|
}
|
61
56
|
|
62
|
-
let
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
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;
|
67
61
|
|
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
|
-
|
76
|
-
? require(outputDirectory + 'package.json') // eslint-disable-line global-require, import/no-dynamic-require
|
77
|
-
: false,
|
70
|
+
let isNewVersion = version && componentPackage.version !== version;
|
78
71
|
|
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
|
-
|
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 };
|
88
84
|
|
89
|
-
|
90
|
-
|
91
|
-
emailOptions = { args: 'config user.email "' + oAuth.email + '"', cwd: outputDirectory },
|
92
|
-
versionOptions = { args: 'rev-parse --verify HEAD', cwd: outputDirectory },
|
93
|
-
|
94
|
-
localRepoSetup = fs.existsSync(path.join(outputDirectory, '.git')),
|
95
|
-
canProceed = true
|
96
|
-
;
|
85
|
+
let localRepoSetup = fs.existsSync(path.join(outputDirectory, '.git'));
|
86
|
+
let canProceed = true;
|
97
87
|
|
98
88
|
console.info('Processing repository:' + outputDirectory);
|
99
89
|
|
@@ -114,24 +104,23 @@ module.exports = function (callback) {
|
|
114
104
|
gulp.src('./', gitOptions)
|
115
105
|
.pipe(git.add(gitOptions))
|
116
106
|
.pipe(git.commit(commitMessage, commitOptions), function () {})
|
117
|
-
.on('error', function (
|
107
|
+
.on('error', function () {
|
118
108
|
// canProceed = false; bug in git commit <https://github.com/stevelacy/gulp-git/issues/49>
|
119
109
|
})
|
120
|
-
.on('finish', function (
|
110
|
+
.on('finish', function () {
|
121
111
|
if (canProceed) {
|
122
112
|
pushFiles();
|
123
113
|
} else {
|
124
114
|
console.info('Nothing new to commit');
|
125
115
|
nextRepo();
|
126
116
|
}
|
127
|
-
})
|
128
|
-
;
|
117
|
+
});
|
129
118
|
}
|
130
119
|
|
131
120
|
// push changes to remote
|
132
121
|
function pushFiles() {
|
133
122
|
console.info('Pushing files for ' + component);
|
134
|
-
git.push('origin', 'master', { args: '', cwd: outputDirectory }, function (
|
123
|
+
git.push('origin', 'master', { args: '', cwd: outputDirectory }, function () {
|
135
124
|
console.info('Push completed successfully');
|
136
125
|
getSHA();
|
137
126
|
});
|
@@ -152,10 +141,10 @@ module.exports = function (callback) {
|
|
152
141
|
}
|
153
142
|
github.repos.createRelease(releaseOptions, function () {
|
154
143
|
nextRepo();
|
155
|
-
});
|
144
|
+
}).then();
|
156
145
|
}
|
157
146
|
|
158
|
-
// Steps to next repository
|
147
|
+
// Steps to the next repository
|
159
148
|
function nextRepo() {
|
160
149
|
console.log('Sleeping for 1 second...');
|
161
150
|
// avoid rate throttling
|
@@ -9,88 +9,66 @@
|
|
9
9
|
* update package.json file
|
10
10
|
*/
|
11
11
|
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
// shorthand
|
32
|
-
version = project.version,
|
33
|
-
output = config.paths.output
|
34
|
-
;
|
12
|
+
// node dependencies
|
13
|
+
const fs = require('node:fs');
|
14
|
+
const path = require('node:path');
|
15
|
+
const gulp = require('gulp');
|
16
|
+
const mergeStream = require('merge-stream');
|
17
|
+
|
18
|
+
// admin dependencies
|
19
|
+
const flatten = require('gulp-flatten');
|
20
|
+
const jsonEditor = require('gulp-json-editor');
|
21
|
+
const plumber = require('@fomantic/gulp-plumber');
|
22
|
+
const rename = require('gulp-rename');
|
23
|
+
const replace = require('gulp-replace');
|
24
|
+
|
25
|
+
// config
|
26
|
+
const release = require('../../config/admin/release');
|
27
|
+
const project = require('../../config/project/release');
|
28
|
+
|
29
|
+
// shorthand
|
30
|
+
const version = project.version;
|
35
31
|
|
36
32
|
module.exports = function (callback) {
|
37
|
-
let
|
38
|
-
|
39
|
-
index,
|
40
|
-
tasks = []
|
41
|
-
;
|
33
|
+
let index;
|
34
|
+
let tasks = [];
|
42
35
|
|
43
36
|
for (index in release.distributions) {
|
44
|
-
let
|
45
|
-
distribution = release.distributions[index]
|
46
|
-
;
|
37
|
+
let distribution = release.distributions[index];
|
47
38
|
|
48
39
|
// streams... designed to save time and make coding fun...
|
49
40
|
(function (distribution) {
|
50
|
-
let
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
files: '{files}',
|
58
|
-
version: '{version}',
|
59
|
-
},
|
41
|
+
let distLowerCase = distribution.toLowerCase();
|
42
|
+
let outputDirectory = path.join(release.outputRoot, distLowerCase);
|
43
|
+
let packageFile = path.join(outputDirectory, release.files.npm);
|
44
|
+
let regExp = {
|
45
|
+
match: {
|
46
|
+
files: '{files}',
|
47
|
+
version: '{version}',
|
60
48
|
},
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
meteor: distribution + ' create meteor package.js',
|
65
|
-
package: distribution + ' create package.json',
|
66
|
-
},
|
67
|
-
gatherFiles,
|
68
|
-
createList
|
69
|
-
;
|
49
|
+
};
|
50
|
+
let gatherFiles;
|
51
|
+
let createList;
|
70
52
|
|
71
53
|
// get files for meteor
|
72
54
|
gatherFiles = function (dir) {
|
73
55
|
dir = dir || path.resolve('.');
|
74
|
-
let
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
files = []
|
87
|
-
;
|
56
|
+
let list = fs.readdirSync(dir);
|
57
|
+
let omitted = [
|
58
|
+
'.git',
|
59
|
+
'node_modules',
|
60
|
+
'package.js',
|
61
|
+
'LICENSE',
|
62
|
+
'README.md',
|
63
|
+
'package.json',
|
64
|
+
'bower.json',
|
65
|
+
'.gitignore',
|
66
|
+
];
|
67
|
+
let files = [];
|
88
68
|
list.forEach(function (file) {
|
89
|
-
let
|
90
|
-
|
91
|
-
|
92
|
-
stat = fs.statSync(filePath)
|
93
|
-
;
|
69
|
+
let isOmitted = omitted.indexOf(file) > -1;
|
70
|
+
let filePath = path.join(dir, file);
|
71
|
+
let stat = fs.statSync(filePath);
|
94
72
|
if (!isOmitted) {
|
95
73
|
if (stat && stat.isDirectory()) {
|
96
74
|
files = files.concat(gatherFiles(filePath));
|
@@ -115,71 +93,54 @@ module.exports = function (callback) {
|
|
115
93
|
};
|
116
94
|
|
117
95
|
tasks.push(function () {
|
118
|
-
let
|
119
|
-
|
120
|
-
filenames = createList(files)
|
121
|
-
;
|
96
|
+
let files = gatherFiles(outputDirectory);
|
97
|
+
let filenames = createList(files);
|
122
98
|
gulp.src(release.templates.meteor[distLowerCase])
|
123
99
|
.pipe(plumber())
|
124
100
|
.pipe(flatten())
|
125
101
|
.pipe(replace(regExp.match.version, version))
|
126
102
|
.pipe(replace(regExp.match.files, filenames))
|
127
103
|
.pipe(rename(release.files.meteor))
|
128
|
-
.pipe(gulp.dest(outputDirectory))
|
129
|
-
;
|
104
|
+
.pipe(gulp.dest(outputDirectory));
|
130
105
|
});
|
131
106
|
|
132
107
|
if (distribution === 'CSS') {
|
133
108
|
tasks.push(function () {
|
134
|
-
let
|
135
|
-
|
136
|
-
|
137
|
-
releases
|
138
|
-
;
|
109
|
+
let themes;
|
110
|
+
let components;
|
111
|
+
let releases;
|
139
112
|
themes = gulp.src('dist/themes/default/**/*', { base: 'dist/', encoding: false })
|
140
|
-
.pipe(gulp.dest(outputDirectory))
|
141
|
-
;
|
113
|
+
.pipe(gulp.dest(outputDirectory));
|
142
114
|
components = gulp.src('dist/components/*', { base: 'dist/' })
|
143
|
-
.pipe(gulp.dest(outputDirectory))
|
144
|
-
;
|
115
|
+
.pipe(gulp.dest(outputDirectory));
|
145
116
|
releases = gulp.src('dist/*', { base: 'dist/' })
|
146
|
-
.pipe(gulp.dest(outputDirectory))
|
147
|
-
;
|
117
|
+
.pipe(gulp.dest(outputDirectory));
|
148
118
|
|
149
119
|
return mergeStream(themes, components, releases);
|
150
120
|
});
|
151
121
|
} else if (distribution === 'LESS') {
|
152
122
|
tasks.push(function () {
|
153
|
-
let
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
themes
|
161
|
-
;
|
123
|
+
let definitions;
|
124
|
+
let overridesImport;
|
125
|
+
let lessImport;
|
126
|
+
let themeImport;
|
127
|
+
let themeConfig;
|
128
|
+
let siteTheme;
|
129
|
+
let themes;
|
162
130
|
definitions = gulp.src('src/definitions/**/*', { base: 'src/' })
|
163
|
-
.pipe(gulp.dest(outputDirectory))
|
164
|
-
;
|
131
|
+
.pipe(gulp.dest(outputDirectory));
|
165
132
|
overridesImport = gulp.src('src/overrides.less', { base: 'src/' })
|
166
|
-
.pipe(gulp.dest(outputDirectory))
|
167
|
-
;
|
133
|
+
.pipe(gulp.dest(outputDirectory));
|
168
134
|
lessImport = gulp.src('src/semantic.less', { base: 'src/' })
|
169
|
-
.pipe(gulp.dest(outputDirectory))
|
170
|
-
;
|
135
|
+
.pipe(gulp.dest(outputDirectory));
|
171
136
|
themeImport = gulp.src('src/theme.less', { base: 'src/' })
|
172
|
-
.pipe(gulp.dest(outputDirectory))
|
173
|
-
;
|
137
|
+
.pipe(gulp.dest(outputDirectory));
|
174
138
|
themeConfig = gulp.src('src/theme.config.example', { base: 'src/' })
|
175
|
-
.pipe(gulp.dest(outputDirectory))
|
176
|
-
;
|
139
|
+
.pipe(gulp.dest(outputDirectory));
|
177
140
|
siteTheme = gulp.src('src/_site/**/*', { base: 'src/' })
|
178
|
-
.pipe(gulp.dest(outputDirectory))
|
179
|
-
;
|
141
|
+
.pipe(gulp.dest(outputDirectory));
|
180
142
|
themes = gulp.src('src/themes/**/*', { base: 'src/', encoding: false })
|
181
|
-
.pipe(gulp.dest(outputDirectory))
|
182
|
-
;
|
143
|
+
.pipe(gulp.dest(outputDirectory));
|
183
144
|
|
184
145
|
return mergeStream(definitions, overridesImport, lessImport, themeImport, themeConfig, siteTheme, themes);
|
185
146
|
});
|
@@ -196,8 +157,7 @@ module.exports = function (callback) {
|
|
196
157
|
|
197
158
|
return pkg;
|
198
159
|
}))
|
199
|
-
.pipe(gulp.dest(outputDirectory))
|
200
|
-
;
|
160
|
+
.pipe(gulp.dest(outputDirectory));
|
201
161
|
});
|
202
162
|
})(distribution);
|
203
163
|
}
|
@@ -7,44 +7,30 @@
|
|
7
7
|
This task pulls the latest version of distribution from GitHub
|
8
8
|
|
9
9
|
* Creates new repo if doesn't exist (locally & GitHub)
|
10
|
-
* Adds remote it doesn't
|
10
|
+
* Adds remote it doesn't exist
|
11
11
|
* Pulls latest changes from repo
|
12
12
|
|
13
13
|
*/
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
console = require('@fomantic/better-console'),
|
21
|
-
gulp = require('gulp'),
|
22
|
-
git = require('@fomantic/gulp-git'),
|
23
|
-
mkdirp = require('mkdirp'),
|
24
|
-
|
25
|
-
// admin files
|
26
|
-
release = require('../../config/admin/release'),
|
27
|
-
project = require('../../config/project/release'),
|
28
|
-
|
29
|
-
// oAuth configuration for GitHub
|
30
|
-
oAuth = fs.existsSync(path.join(__dirname, '/../../config/admin/oauth.js'))
|
31
|
-
? require('../../config/admin/oauth.js') // eslint-disable-line import/extensions
|
32
|
-
: false,
|
33
|
-
|
34
|
-
// shorthand
|
35
|
-
version = project.version
|
36
|
-
;
|
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');
|
37
20
|
|
38
|
-
|
39
|
-
|
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;
|
40
28
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
stepRepo
|
47
|
-
;
|
29
|
+
module.exports = function (callback) {
|
30
|
+
let index = -1;
|
31
|
+
let total = release.distributions.length;
|
32
|
+
let timer;
|
33
|
+
let stepRepo;
|
48
34
|
|
49
35
|
if (!oAuth) {
|
50
36
|
console.error('Must add oauth token for GitHub in tasks/config/admin/oauth.js');
|
@@ -62,31 +48,26 @@ module.exports = function (callback) {
|
|
62
48
|
return;
|
63
49
|
}
|
64
50
|
|
65
|
-
let
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
repoName = release.distRepoRoot + component,
|
51
|
+
let component = release.distributions[index];
|
52
|
+
let lowerCaseComponent = component.toLowerCase();
|
53
|
+
let outputDirectory = path.resolve(release.outputRoot + lowerCaseComponent);
|
54
|
+
let repoName = release.distRepoRoot + component;
|
70
55
|
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
localRepoSetup = fs.existsSync(path.join(outputDirectory, '.git'))
|
77
|
-
;
|
56
|
+
let gitOptions = { cwd: outputDirectory };
|
57
|
+
let pullOptions = { args: '-q', cwd: outputDirectory, quiet: true };
|
58
|
+
let resetOptions = { args: '-q --hard', cwd: outputDirectory, quiet: true };
|
59
|
+
let gitURL = 'git@github.com:' + release.org + '/' + repoName + '.git';
|
60
|
+
let localRepoSetup = fs.pathExistsSync(path.join(outputDirectory, '.git'));
|
78
61
|
|
79
62
|
console.log('Processing repository: ' + outputDirectory);
|
80
63
|
|
81
|
-
// create folder if doesn't exist
|
82
|
-
|
83
|
-
mkdirp.sync(outputDirectory);
|
84
|
-
}
|
64
|
+
// create folder if it doesn't exist
|
65
|
+
fs.ensureDirSync(outputDirectory);
|
85
66
|
|
86
67
|
// clean folder
|
87
68
|
if (release.outputRoot.startsWith('../repos')) {
|
88
69
|
console.info('Cleaning dir', outputDirectory);
|
89
|
-
|
70
|
+
fs.removeSync(outputDirectory);
|
90
71
|
}
|
91
72
|
|
92
73
|
// set-up local repo
|
@@ -108,17 +89,6 @@ module.exports = function (callback) {
|
|
108
89
|
});
|
109
90
|
}
|
110
91
|
|
111
|
-
function createRepo() {
|
112
|
-
console.info('Creating GitHub repo ' + repoURL);
|
113
|
-
github.repos.createFromOrg({
|
114
|
-
org: release.org,
|
115
|
-
name: repoName,
|
116
|
-
homepage: release.homepage,
|
117
|
-
}, function () {
|
118
|
-
setupRepo();
|
119
|
-
});
|
120
|
-
}
|
121
|
-
|
122
92
|
function addRemote() {
|
123
93
|
console.info('Adding remote origin as ' + gitURL);
|
124
94
|
git.addRemote('origin', gitURL, gitOptions, function () {
|
@@ -128,14 +98,14 @@ module.exports = function (callback) {
|
|
128
98
|
|
129
99
|
function pullFiles() {
|
130
100
|
console.info('Pulling ' + component + ' files');
|
131
|
-
git.pull('origin', 'master', pullOptions, function (
|
101
|
+
git.pull('origin', 'master', pullOptions, function () {
|
132
102
|
resetFiles();
|
133
103
|
});
|
134
104
|
}
|
135
105
|
|
136
106
|
function resetFiles() {
|
137
107
|
console.info('Resetting files to head');
|
138
|
-
git.reset('HEAD', resetOptions, function (
|
108
|
+
git.reset('HEAD', resetOptions, function () {
|
139
109
|
nextRepo();
|
140
110
|
});
|
141
111
|
}
|
@@ -153,7 +123,6 @@ module.exports = function (callback) {
|
|
153
123
|
pullFiles();
|
154
124
|
} else {
|
155
125
|
setupRepo();
|
156
|
-
// createRepo() only use to create remote repo (easier to do manually)
|
157
126
|
}
|
158
127
|
};
|
159
128
|
|