Update Semantic to 2.1

Ticket #56
This commit is contained in:
Tim Schumacher 2016-06-10 00:34:34 +02:00
parent 3f1e728781
commit 4385f1acbc
425 changed files with 59924 additions and 37200 deletions

View file

@ -119,6 +119,13 @@ module.exports = {
config.globs = {};
}
// remove duplicates from component array
if(config.components instanceof Array) {
config.components = config.components.filter(function(component, index) {
return config.components.indexOf(component) == index;
});
}
// takes component object and creates file glob matching selected components
config.globs.components = (typeof config.components == 'object')
? (config.components.length > 1)

View file

@ -92,7 +92,6 @@ module.exports = {
folder = pathArray[pathArray.length - 1],
nextDirectory = path.join(directory, path.sep, '..')
;
console.log(folder, nextDirectory);
if( folder == 'bower_components') {
return {
name: 'Bower',
@ -228,7 +227,7 @@ module.exports = {
siteVariable: /@siteFolder .*\'(.*)/mg
},
// source paths (relative to tasks/install.js )
// source paths (when installing)
source: {
config : './semantic.json.example',
definitions : './src/definitions',
@ -239,6 +238,7 @@ module.exports = {
themeConfig : './src/theme.config.example',
themeImport : './src/theme.less',
themes : './src/themes',
defaultTheme : './src/themes/default',
userGulpFile : './tasks/config/npm/gulpfile.js'
},
@ -253,15 +253,17 @@ module.exports = {
// folder paths to files relative to root
folders: {
config : './',
definitions : 'src/definitions/',
lessImport : 'src/',
modules : 'node_modules/',
site : 'src/site/',
tasks : 'tasks/',
themeConfig : 'src/',
themeImport : 'src/',
themes : 'src/themes/'
config : './',
definitions : 'src/definitions/',
lessImport : 'src/',
modules : 'node_modules/',
site : 'src/site/',
tasks : 'tasks/',
themeConfig : 'src/',
themeImport : 'src/',
themes : 'src/themes/',
defaultTheme : 'default/' // only path that is relative to another directory and not root
},
// questions asked during install
@ -276,7 +278,7 @@ module.exports = {
' {packageMessage} \n' +
' \n' +
' Is this your project folder?\n' +
' \033[92m{root}\033[0m \n' +
' \x1b[92m{root}\x1b[0m \n' +
' \n ' +
'\n',
choices: [
@ -352,6 +354,7 @@ module.exports = {
{ name: "reset", checked: true },
{ name: "site", checked: true },
{ name: "button", checked: true },
{ name: "container", checked: true },
{ name: "divider", checked: true },
{ name: "flag", checked: true },
{ name: "header", checked: true },
@ -381,6 +384,7 @@ module.exports = {
{ name: "checkbox", checked: true },
{ name: "dimmer", checked: true },
{ name: "dropdown", checked: true },
{ name: "embed", checked: true },
{ name: "modal", checked: true },
{ name: "nag", checked: true },
{ name: "popup", checked: true },
@ -392,7 +396,6 @@ module.exports = {
{ name: "sticky", checked: true },
{ name: "tab", checked: true },
{ name: "transition", checked: true },
{ name: "video", checked: true },
{ name: "api", checked: true },
{ name: "form", checked: true },
{ name: "state", checked: true },
@ -437,6 +440,10 @@ module.exports = {
name: 'Yes',
value: true
},
{
name: 'Build Both',
value: 'both'
}
]
},
{
@ -729,33 +736,20 @@ module.exports = {
/* Copy Install Folders */
wrench: {
// copy during npm update (default theme / definition)
update: {
// overwrite existing files update & install (default theme / definition)
overwrite: {
forceDelete : true,
excludeHiddenUnix : true,
preserveFiles : false
},
// copy during first npm install
install: {
forceDelete : true,
excludeHiddenUnix : true,
preserveFiles : false
},
// copy for node_modules
modules: {
forceDelete : true,
excludeHiddenUnix : true,
preserveFiles : false
},
// copy for site theme
site: {
// only create files that don't exist (site theme update)
merge: {
forceDelete : false,
excludeHiddenUnix : true,
preserveFiles : true
}
}
}

View file

@ -5,7 +5,7 @@
var
requireDotFile = require('require-dot-file'),
config,
package,
npmPackage,
version
;
@ -15,25 +15,29 @@ var
*******************************/
try {
config = requireDotFile('semantic.json');
package = require('../../../package.json');
// looks for version in config or package.json (whichever is available)
version = (config && config.version !== undefined)
? config.version
: package.version
;
config = requireDotFile('semantic.json');
}
catch(error) {}
try {
npmPackage = require('../../../package.json');
}
catch(error) {
// generate fake package
package = {
npmPackage = {
name: 'Unknown',
version: 'x.x'
};
}
// looks for version in config or package.json (whichever is available)
version = (npmPackage && npmPackage.version !== undefined && npmPackage.name == 'semantic-ui')
? npmPackage.version
: config.version
;
/*******************************
Export
*******************************/
@ -56,6 +60,6 @@ module.exports = {
+ ' *' + '\n'
+ ' */' + '\n',
version : package.version
version : version
};

View file

@ -1,127 +0,0 @@
var
config = require('../user'),
release = require('./release')
;
module.exports = {
banner : release.banner,
log: {
created: function(file) {
return 'Created: ' + file;
},
modified: function(file) {
return 'Modified: ' + file;
}
},
filenames: {
concatenatedCSS : 'semantic.css',
concatenatedJS : 'semantic.js',
concatenatedMinifiedCSS : 'semantic.min.css',
concatenatedMinifiedJS : 'semantic.min.js',
concatenatedRTLCSS : 'semantic.rtl.css',
concatenatedMinifiedRTLCSS : 'semantic.rtl.min.css'
},
regExp: {
comments: {
// remove all comments from config files (.variable)
variables : {
in : /(\/\*[\s\S]+?\*\/+)[\s\S]+?\/\* End Config \*\//,
out : '$1',
},
// add version to first comment
license: {
in : /(^\/\*[\s\S]+)(# Semantic UI )([\s\S]+?\*\/)/,
out : '$1$2' + release.version + ' $3'
},
// adds uniform spacing around comments
large: {
in : /(\/\*\*\*\*[\s\S]+?\*\/)/mg,
out : '\n\n$1\n'
},
small: {
in : /(\/\*---[\s\S]+?\*\/)/mg,
out : '\n$1\n'
},
tiny: {
in : /(\/\* [\s\S]+? \*\/)/mg,
out : '\n$1'
}
},
theme: /.*\/themes\/.*?(?=\/)/mg
},
settings: {
/* Remove Files in Clean */
del: {
silent : true
},
/* Comment Banners */
header: {
title : release.title,
version : release.version,
repository : release.repository,
url : release.url
},
/* What Browsers to Prefix */
prefix: {
browsers: [
'last 2 version',
'> 1%',
'opera 12.1',
'safari 6',
'ie 9',
'bb 10',
'android 4'
]
},
/* File Renames */
rename: {
minJS : { extname : '.min.js' },
minCSS : { extname : '.min.css' },
rtlCSS : { extname : '.rtl.css' },
rtlMinCSS : { extname : '.rtl.min.css' }
},
/* Minified CSS Concat */
minify: {
processImport : false,
restructuring : false,
keepSpecialComments : 1
},
/* Minified JS Settings */
uglify: {
mangle : true,
preserveComments : 'some'
},
/* Minified Concat CSS Settings */
concatMinify: {
processImport : false,
restructuring : false,
keepSpecialComments : false
},
/* Minified Concat JS */
concatUglify: {
mangle : true,
preserveComments : false
}
}
};