fomantic-ui 2.9.3-beta.15 → 2.9.3-beta.17

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.
Files changed (166) hide show
  1. package/dist/components/accordion.css +1 -1
  2. package/dist/components/accordion.js +1 -1
  3. package/dist/components/accordion.min.css +1 -1
  4. package/dist/components/accordion.min.js +1 -1
  5. package/dist/components/ad.css +1 -1
  6. package/dist/components/ad.min.css +1 -1
  7. package/dist/components/api.js +1 -1
  8. package/dist/components/api.min.js +1 -1
  9. package/dist/components/breadcrumb.css +1 -1
  10. package/dist/components/breadcrumb.min.css +1 -1
  11. package/dist/components/button.css +1 -1
  12. package/dist/components/button.min.css +1 -1
  13. package/dist/components/calendar.css +1 -1
  14. package/dist/components/calendar.js +1 -1
  15. package/dist/components/calendar.min.css +1 -1
  16. package/dist/components/calendar.min.js +1 -1
  17. package/dist/components/card.css +1 -1
  18. package/dist/components/card.min.css +1 -1
  19. package/dist/components/checkbox.css +1 -1
  20. package/dist/components/checkbox.js +1 -1
  21. package/dist/components/checkbox.min.css +1 -1
  22. package/dist/components/checkbox.min.js +1 -1
  23. package/dist/components/comment.css +1 -1
  24. package/dist/components/comment.min.css +1 -1
  25. package/dist/components/container.css +1 -1
  26. package/dist/components/container.min.css +1 -1
  27. package/dist/components/dimmer.css +1 -1
  28. package/dist/components/dimmer.js +1 -1
  29. package/dist/components/dimmer.min.css +1 -1
  30. package/dist/components/dimmer.min.js +1 -1
  31. package/dist/components/divider.css +1 -1
  32. package/dist/components/divider.min.css +1 -1
  33. package/dist/components/dropdown.css +1 -1
  34. package/dist/components/dropdown.js +12 -9
  35. package/dist/components/dropdown.min.css +1 -1
  36. package/dist/components/dropdown.min.js +2 -2
  37. package/dist/components/embed.css +1 -1
  38. package/dist/components/embed.js +1 -1
  39. package/dist/components/embed.min.css +1 -1
  40. package/dist/components/embed.min.js +1 -1
  41. package/dist/components/emoji.css +1 -1
  42. package/dist/components/emoji.min.css +1 -1
  43. package/dist/components/feed.css +1 -1
  44. package/dist/components/feed.min.css +1 -1
  45. package/dist/components/flag.css +1 -1
  46. package/dist/components/flag.min.css +1 -1
  47. package/dist/components/flyout.css +1 -1
  48. package/dist/components/flyout.js +1 -1
  49. package/dist/components/flyout.min.css +1 -1
  50. package/dist/components/flyout.min.js +1 -1
  51. package/dist/components/form.css +2 -16
  52. package/dist/components/form.js +48 -25
  53. package/dist/components/form.min.css +2 -2
  54. package/dist/components/form.min.js +2 -2
  55. package/dist/components/grid.css +1 -1
  56. package/dist/components/grid.min.css +1 -1
  57. package/dist/components/header.css +1 -1
  58. package/dist/components/header.min.css +1 -1
  59. package/dist/components/icon.css +1 -1
  60. package/dist/components/icon.min.css +1 -1
  61. package/dist/components/image.css +1 -1
  62. package/dist/components/image.min.css +1 -1
  63. package/dist/components/input.css +1 -25
  64. package/dist/components/input.min.css +2 -2
  65. package/dist/components/item.css +1 -1
  66. package/dist/components/item.min.css +1 -1
  67. package/dist/components/label.css +1 -1
  68. package/dist/components/label.min.css +1 -1
  69. package/dist/components/list.css +1 -1
  70. package/dist/components/list.min.css +1 -1
  71. package/dist/components/loader.css +1 -1
  72. package/dist/components/loader.min.css +1 -1
  73. package/dist/components/menu.css +1 -1
  74. package/dist/components/menu.min.css +1 -1
  75. package/dist/components/message.css +1 -1
  76. package/dist/components/message.min.css +1 -1
  77. package/dist/components/modal.css +1 -1
  78. package/dist/components/modal.js +1 -1
  79. package/dist/components/modal.min.css +1 -1
  80. package/dist/components/modal.min.js +1 -1
  81. package/dist/components/nag.css +1 -1
  82. package/dist/components/nag.js +1 -1
  83. package/dist/components/nag.min.css +1 -1
  84. package/dist/components/nag.min.js +1 -1
  85. package/dist/components/placeholder.css +1 -1
  86. package/dist/components/placeholder.min.css +1 -1
  87. package/dist/components/popup.css +1 -1
  88. package/dist/components/popup.js +1 -1
  89. package/dist/components/popup.min.css +1 -1
  90. package/dist/components/popup.min.js +1 -1
  91. package/dist/components/progress.css +1 -1
  92. package/dist/components/progress.js +1 -1
  93. package/dist/components/progress.min.css +1 -1
  94. package/dist/components/progress.min.js +1 -1
  95. package/dist/components/rail.css +1 -1
  96. package/dist/components/rail.min.css +1 -1
  97. package/dist/components/rating.css +1 -1
  98. package/dist/components/rating.js +1 -1
  99. package/dist/components/rating.min.css +1 -1
  100. package/dist/components/rating.min.js +1 -1
  101. package/dist/components/reset.css +1 -1
  102. package/dist/components/reset.min.css +1 -1
  103. package/dist/components/reveal.css +1 -1
  104. package/dist/components/reveal.min.css +1 -1
  105. package/dist/components/search.css +1 -1
  106. package/dist/components/search.js +1 -1
  107. package/dist/components/search.min.css +1 -1
  108. package/dist/components/search.min.js +1 -1
  109. package/dist/components/segment.css +1 -1
  110. package/dist/components/segment.min.css +1 -1
  111. package/dist/components/shape.css +1 -1
  112. package/dist/components/shape.js +1 -1
  113. package/dist/components/shape.min.css +1 -1
  114. package/dist/components/shape.min.js +1 -1
  115. package/dist/components/sidebar.css +1 -1
  116. package/dist/components/sidebar.js +1 -1
  117. package/dist/components/sidebar.min.css +1 -1
  118. package/dist/components/sidebar.min.js +1 -1
  119. package/dist/components/site.css +1 -1
  120. package/dist/components/site.js +1 -1
  121. package/dist/components/site.min.css +1 -1
  122. package/dist/components/site.min.js +1 -1
  123. package/dist/components/slider.css +1 -1
  124. package/dist/components/slider.js +1 -1
  125. package/dist/components/slider.min.css +1 -1
  126. package/dist/components/slider.min.js +1 -1
  127. package/dist/components/state.js +1 -1
  128. package/dist/components/state.min.js +1 -1
  129. package/dist/components/statistic.css +1 -1
  130. package/dist/components/statistic.min.css +1 -1
  131. package/dist/components/step.css +1 -1
  132. package/dist/components/step.min.css +1 -1
  133. package/dist/components/sticky.css +1 -1
  134. package/dist/components/sticky.js +1 -1
  135. package/dist/components/sticky.min.css +1 -1
  136. package/dist/components/sticky.min.js +1 -1
  137. package/dist/components/tab.css +1 -1
  138. package/dist/components/tab.js +1 -1
  139. package/dist/components/tab.min.css +1 -1
  140. package/dist/components/tab.min.js +1 -1
  141. package/dist/components/table.css +1 -1
  142. package/dist/components/table.min.css +1 -1
  143. package/dist/components/text.css +1 -1
  144. package/dist/components/text.min.css +1 -1
  145. package/dist/components/toast.css +1 -1
  146. package/dist/components/toast.js +1 -1
  147. package/dist/components/toast.min.css +1 -1
  148. package/dist/components/toast.min.js +1 -1
  149. package/dist/components/transition.css +1 -1
  150. package/dist/components/transition.js +1 -1
  151. package/dist/components/transition.min.css +1 -1
  152. package/dist/components/transition.min.js +1 -1
  153. package/dist/components/visibility.js +1 -1
  154. package/dist/components/visibility.min.js +1 -1
  155. package/dist/semantic.css +54 -98
  156. package/dist/semantic.js +84 -58
  157. package/dist/semantic.min.css +2 -2
  158. package/dist/semantic.min.js +2 -2
  159. package/package.json +1 -1
  160. package/src/definitions/behaviors/form.js +47 -24
  161. package/src/definitions/collections/form.less +1 -8
  162. package/src/definitions/modules/dropdown.js +11 -8
  163. package/src/themes/default/globals/variation.variables +1 -1
  164. package/tasks/admin/distributions/create.js +8 -3
  165. package/tasks/config/project/install.js +3 -0
  166. package/tasks/install.js +15 -5
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fomantic-ui",
3
- "version": "2.9.3-beta.15+88ae1e1",
3
+ "version": "2.9.3-beta.17+5e5da5d",
4
4
  "description": "Fomantic empowers designers and developers by creating a shared vocabulary for UI.",
5
5
  "keywords": [
6
6
  "fomantic-ui",
@@ -77,6 +77,7 @@
77
77
  initialize: function () {
78
78
  // settings grabbed at run time
79
79
  module.get.settings();
80
+ $module.addClass(className.initial);
80
81
  if (methodInvoked) {
81
82
  if (instance === undefined) {
82
83
  module.instantiate();
@@ -130,10 +131,13 @@
130
131
  module.bindEvents();
131
132
  },
132
133
 
133
- submit: function () {
134
+ submit: function (event) {
134
135
  module.verbose('Submitting form', $module);
135
136
  submitting = true;
136
137
  $module.trigger('submit');
138
+ if (event) {
139
+ event.preventDefault();
140
+ }
137
141
  },
138
142
 
139
143
  attachEvents: function (selector, action) {
@@ -159,6 +163,7 @@
159
163
  .on('click' + eventNamespace, selector.reset, module.reset)
160
164
  .on('click' + eventNamespace, selector.clear, module.clear)
161
165
  ;
166
+ $field.on('invalid' + eventNamespace, module.event.field.invalid);
162
167
  if (settings.keyboardShortcuts) {
163
168
  $module.on('keydown' + eventNamespace, selector.field, module.event.field.keydown);
164
169
  }
@@ -274,8 +279,12 @@
274
279
  var
275
280
  allValid = true
276
281
  ;
277
- $.each(validation, function (fieldName, field) {
278
- if (!module.validate.field(field, fieldName, true)) {
282
+ $field.each(function (index, el) {
283
+ var $el = $(el),
284
+ validation = module.get.validation($el) || {},
285
+ identifier = module.get.identifier(validation, $el)
286
+ ;
287
+ if (!module.validate.field(validation, identifier, true)) {
279
288
  allValid = false;
280
289
  }
281
290
  });
@@ -431,9 +440,8 @@
431
440
  if (!event.ctrlKey && key === keyCode.enter && isInput && !isInDropdown && !isCheckbox) {
432
441
  if (!keyHeldDown) {
433
442
  $field.one('keyup' + eventNamespace, module.event.field.keyup);
434
- module.submit();
443
+ module.submit(event);
435
444
  module.debug('Enter pressed on input submitting form');
436
- event.preventDefault();
437
445
  }
438
446
  keyHeldDown = true;
439
447
  }
@@ -441,15 +449,18 @@
441
449
  keyup: function () {
442
450
  keyHeldDown = false;
443
451
  },
452
+ invalid: function (event) {
453
+ event.preventDefault();
454
+ },
444
455
  blur: function (event) {
445
456
  var
446
457
  $field = $(this),
447
- $fieldGroup = $field.closest($group),
448
- validationRules = module.get.validation($field)
458
+ validationRules = module.get.validation($field) || {},
459
+ identifier = module.get.identifier(validationRules, $field)
449
460
  ;
450
- if (validationRules && (settings.on === 'blur' || ($fieldGroup.hasClass(className.error) && settings.revalidate))) {
461
+ if (settings.on === 'blur' || (!$module.hasClass(className.initial) && settings.revalidate)) {
451
462
  module.debug('Revalidating field', $field, validationRules);
452
- module.validate.field(validationRules);
463
+ module.validate.field(validationRules, identifier);
453
464
  if (!settings.inline) {
454
465
  module.validate.form(false, true);
455
466
  }
@@ -458,14 +469,14 @@
458
469
  change: function (event) {
459
470
  var
460
471
  $field = $(this),
461
- $fieldGroup = $field.closest($group),
462
- validationRules = module.get.validation($field)
472
+ validationRules = module.get.validation($field) || {},
473
+ identifier = module.get.identifier(validationRules, $field)
463
474
  ;
464
- if (validationRules && (settings.on === 'change' || ($fieldGroup.hasClass(className.error) && settings.revalidate))) {
475
+ if (settings.on === 'change' || (!$module.hasClass(className.initial) && settings.revalidate)) {
465
476
  clearTimeout(module.timer);
466
477
  module.timer = setTimeout(function () {
467
478
  module.debug('Revalidating field', $field, validationRules);
468
- module.validate.field(validationRules);
479
+ module.validate.field(validationRules, identifier);
469
480
  if (!settings.inline) {
470
481
  module.validate.form(false, true);
471
482
  }
@@ -531,6 +542,9 @@
531
542
 
532
543
  return fullFields;
533
544
  },
545
+ identifier: function (validation, $el) {
546
+ return validation.identifier || $el.attr('id') || $el.attr('name') || $el.data(metadata.validate);
547
+ },
534
548
  prompt: function (rule, field) {
535
549
  var
536
550
  ruleName = module.get.ruleName(rule),
@@ -974,7 +988,7 @@
974
988
  $message.empty();
975
989
  },
976
990
  states: function () {
977
- $module.removeClass(className.error).removeClass(className.success);
991
+ $module.removeClass(className.error).removeClass(className.success).addClass(className.initial);
978
992
  if (!settings.inline) {
979
993
  module.remove.errors();
980
994
  }
@@ -1211,7 +1225,7 @@
1211
1225
  return rule.type === 'empty';
1212
1226
  }) !== 0
1213
1227
  : false,
1214
- identifier = validation.identifier || $el.attr('id') || $el.attr('name') || $el.data(metadata.validate)
1228
+ identifier = module.get.identifier(validation, $el)
1215
1229
  ;
1216
1230
  if (isRequired && !isDisabled && !hasEmptyRule && identifier !== undefined) {
1217
1231
  if (isCheckbox) {
@@ -1243,7 +1257,7 @@
1243
1257
  if (keyHeldDown) {
1244
1258
  return false;
1245
1259
  }
1246
-
1260
+ $module.removeClass(className.initial);
1247
1261
  // reset errors
1248
1262
  formErrors = [];
1249
1263
  if (module.determine.isValid()) {
@@ -1315,13 +1329,24 @@
1315
1329
  ? module.get.field(field.depends)
1316
1330
  : false,
1317
1331
  fieldValid = true,
1318
- fieldErrors = []
1332
+ fieldErrors = [],
1333
+ isDisabled = $field.filter(':not(:disabled)').length === 0,
1334
+ validationMessage = $field[0].validationMessage
1319
1335
  ;
1320
1336
  if (!field.identifier) {
1321
1337
  module.debug('Using field name as identifier', identifier);
1322
1338
  field.identifier = identifier;
1323
1339
  }
1324
- var isDisabled = $field.filter(':not(:disabled)').length === 0;
1340
+ if (validationMessage) {
1341
+ module.debug('Field is natively invalid', identifier);
1342
+ fieldErrors.push(validationMessage);
1343
+ fieldValid = false;
1344
+ if (showErrors) {
1345
+ $field.closest($group).addClass(className.error);
1346
+ }
1347
+ } else if (showErrors) {
1348
+ $field.closest($group).removeClass(className.error);
1349
+ }
1325
1350
  if (isDisabled) {
1326
1351
  module.debug('Field is disabled. Skipping', identifier);
1327
1352
  } else if (field.optional && module.is.blank($field)) {
@@ -1329,9 +1354,6 @@
1329
1354
  } else if (field.depends && module.is.empty($dependsField)) {
1330
1355
  module.debug('Field depends on another value that is not present or empty. Skipping', $dependsField);
1331
1356
  } else if (field.rules !== undefined) {
1332
- if (showErrors) {
1333
- $field.closest($group).removeClass(className.error);
1334
- }
1335
1357
  $.each(field.rules, function (index, rule) {
1336
1358
  if (module.has.field(identifier)) {
1337
1359
  var invalidFields = module.validate.rule(field, rule, true) || [];
@@ -1348,7 +1370,7 @@
1348
1370
  }
1349
1371
  if (fieldValid) {
1350
1372
  if (showErrors) {
1351
- module.remove.prompt(identifier, fieldErrors);
1373
+ module.remove.prompt(identifier);
1352
1374
  settings.onValid.call($field);
1353
1375
  }
1354
1376
  } else {
@@ -1638,8 +1660,8 @@
1638
1660
  isExactly: '{name} must be exactly "{ruleValue}"',
1639
1661
  not: '{name} cannot be set to "{ruleValue}"',
1640
1662
  notExactly: '{name} cannot be set to exactly "{ruleValue}"',
1641
- contain: '{name} must contain "{ruleValue}"',
1642
- containExactly: '{name} must contain exactly "{ruleValue}"',
1663
+ contains: '{name} must contain "{ruleValue}"',
1664
+ containsExactly: '{name} must contain exactly "{ruleValue}"',
1643
1665
  doesntContain: '{name} cannot contain "{ruleValue}"',
1644
1666
  doesntContainExactly: '{name} cannot contain exactly "{ruleValue}"',
1645
1667
  minLength: '{name} must be at least {ruleValue} characters',
@@ -1673,6 +1695,7 @@
1673
1695
  },
1674
1696
 
1675
1697
  className: {
1698
+ initial: 'initial',
1676
1699
  error: 'error',
1677
1700
  label: 'ui basic red pointing prompt label',
1678
1701
  pressed: 'down',
@@ -585,14 +585,7 @@
585
585
  box-shadow: @formStates[@@state][boxShadow];
586
586
  }
587
587
  & when (@state=error) and (@variationFormInvalid) {
588
- .ui.form .field input:not(:placeholder-shown):invalid {
589
- color: @c;
590
- background: @bg;
591
- border-color: @formStates[@@state][borderColor];
592
- border-radius: @formStates[@@state][borderRadius];
593
- box-shadow: @formStates[@@state][boxShadow];
594
- }
595
- .ui.form .field input:not(:-ms-input-placeholder):invalid when (@supportIE) {
588
+ .ui.form:not(.initial) .field input:invalid {
596
589
  color: @c;
597
590
  background: @bg;
598
591
  border-color: @formStates[@@state][borderColor];
@@ -1407,11 +1407,13 @@
1407
1407
  if (settings.allowAdditions) {
1408
1408
  module.remove.userAddition();
1409
1409
  }
1410
- module.remove.filteredItem();
1410
+ if (!settings.keepSearchTerm) {
1411
+ module.remove.filteredItem();
1412
+ module.remove.searchTerm();
1413
+ }
1411
1414
  if (!module.is.visible() && $target.length > 0) {
1412
1415
  module.show();
1413
1416
  }
1414
- module.remove.searchTerm();
1415
1417
  if (!module.is.focusedOnSearch() && skipRefocus !== true) {
1416
1418
  module.focusSearch(true);
1417
1419
  }
@@ -1597,7 +1599,9 @@
1597
1599
  module.verbose('Selecting item from keyboard shortcut', $selectedItem);
1598
1600
  module.event.item.click.call($selectedItem, event);
1599
1601
  if (module.is.searchSelection()) {
1600
- module.remove.searchTerm();
1602
+ if (!settings.keepSearchTerm) {
1603
+ module.remove.searchTerm();
1604
+ }
1601
1605
  if (module.is.multiple()) {
1602
1606
  $search.trigger('focus');
1603
1607
  }
@@ -1814,7 +1818,7 @@
1814
1818
  ? value
1815
1819
  : text;
1816
1820
  if (module.can.activate($(element))) {
1817
- module.set.selected(value, $(element));
1821
+ module.set.selected(value, $(element), false, settings.keepSearchTerm);
1818
1822
  if (!module.is.multiple() && !(!settings.collapseOnActionable && $(element).hasClass(className.actionable))) {
1819
1823
  module.hideAndClear();
1820
1824
  }
@@ -2464,7 +2468,7 @@
2464
2468
  valueIsSet = searchValue !== ''
2465
2469
  ;
2466
2470
  if (isMultiple && hasSearchValue) {
2467
- module.verbose('Adjusting input width', searchWidth, settings.glyphWidth);
2471
+ module.verbose('Adjusting input width', searchWidth);
2468
2472
  $search.css('width', searchWidth + 'px');
2469
2473
  }
2470
2474
  if (hasSearchValue || (isSearchMultiple && valueIsSet)) {
@@ -2763,7 +2767,7 @@
2763
2767
  return false;
2764
2768
  }
2765
2769
  module.debug('Setting selected menu item to', $selectedItem);
2766
- if (module.is.multiple()) {
2770
+ if (module.is.multiple() && !keepSearchTerm) {
2767
2771
  module.remove.searchWidth();
2768
2772
  }
2769
2773
  if (module.is.single()) {
@@ -4006,6 +4010,7 @@
4006
4010
  forceSelection: false, // force a choice on blur with search selection
4007
4011
 
4008
4012
  allowAdditions: false, // whether multiple select should allow user added values
4013
+ keepSearchTerm: false, // whether the search value should be kept and menu stays filtered on item selection
4009
4014
  ignoreCase: false, // whether to consider case sensitivity when creating labels
4010
4015
  ignoreSearchCase: true, // whether to consider case sensitivity when filtering items
4011
4016
  hideAdditions: true, // whether or not to hide special message prompting a user they can enter a value
@@ -4025,8 +4030,6 @@
4025
4030
  duration: 200, // duration of transition
4026
4031
  displayType: false, // displayType of transition
4027
4032
 
4028
- glyphWidth: 1.037, // widest glyph width in em (W is 1.037 em) used to calculate multiselect input width
4029
-
4030
4033
  headerDivider: true, // whether option headers should have an additional divider line underneath when converted from <select> <optgroup>
4031
4034
 
4032
4035
  collapseOnActionable: true, // whether the dropdown should collapse upon selection of an actionable item
@@ -127,7 +127,7 @@
127
127
  @variationInputDisabled: true;
128
128
  @variationInputInverted: true;
129
129
  @variationInputStates: @variationAllStates;
130
- @variationInputInvalid: true;
130
+ @variationInputInvalid: false;
131
131
  @variationInputTransparent: true;
132
132
  @variationInputCorner: true;
133
133
  @variationInputLoading: true;
@@ -3,7 +3,7 @@
3
3
  *******************************/
4
4
 
5
5
  /*
6
- This will create individual distribution repositories for each SUI distribution
6
+ This will create individual distribution repositories for each FUI distribution
7
7
 
8
8
  * copy distribution files to release
9
9
  * update package.json file
@@ -153,6 +153,8 @@ module.exports = function (callback) {
153
153
  tasks.push(function () {
154
154
  let
155
155
  definitions,
156
+ overridesImport,
157
+ lessImport,
156
158
  themeImport,
157
159
  themeConfig,
158
160
  siteTheme,
@@ -161,7 +163,10 @@ module.exports = function (callback) {
161
163
  definitions = gulp.src('src/definitions/**/*', { base: 'src/' })
162
164
  .pipe(gulp.dest(outputDirectory))
163
165
  ;
164
- themeImport = gulp.src('src/semantic.less', { base: 'src/' })
166
+ overridesImport = gulp.src('src/overrides.less', { base: 'src/' })
167
+ .pipe(gulp.dest(outputDirectory))
168
+ ;
169
+ lessImport = gulp.src('src/semantic.less', { base: 'src/' })
165
170
  .pipe(gulp.dest(outputDirectory))
166
171
  ;
167
172
  themeImport = gulp.src('src/theme.less', { base: 'src/' })
@@ -177,7 +182,7 @@ module.exports = function (callback) {
177
182
  .pipe(gulp.dest(outputDirectory))
178
183
  ;
179
184
 
180
- return mergeStream(definitions, themeImport, themeConfig, siteTheme, themes);
185
+ return mergeStream(definitions, overridesImport, lessImport, themeImport, themeConfig, siteTheme, themes);
181
186
  });
182
187
  }
183
188
 
@@ -240,6 +240,7 @@ module.exports = {
240
240
  config: './semantic.json.example',
241
241
  definitions: './src/definitions',
242
242
  gulpFile: './gulpfile.js',
243
+ overridesImport: './src/overrides.less',
243
244
  lessImport: './src/semantic.less',
244
245
  site: './src/_site',
245
246
  tasks: './tasks',
@@ -253,6 +254,7 @@ module.exports = {
253
254
  // expected final filenames
254
255
  files: {
255
256
  config: 'semantic.json',
257
+ overridesImport: 'src/overrides.less',
256
258
  lessImport: 'src/semantic.less',
257
259
  site: 'src/site',
258
260
  themeConfig: 'src/theme.config',
@@ -263,6 +265,7 @@ module.exports = {
263
265
  folders: {
264
266
  config: './',
265
267
  definitions: 'src/definitions/',
268
+ overridesImport: 'src/',
266
269
  lessImport: 'src/',
267
270
  modules: 'node_modules/',
268
271
  site: 'src/site/',
package/tasks/install.js CHANGED
@@ -69,9 +69,9 @@ module.exports = function (callback) {
69
69
  root: path.normalize(__dirname + '/../'),
70
70
  }; */
71
71
 
72
- /* Don't do end user config if SUI is a sub-module */
72
+ /* Don't do end user config if FUI is a sub-module */
73
73
  if (install.isSubModule()) {
74
- console.info('SUI is a sub-module, skipping end-user install');
74
+ console.info('FUI is a sub-module, skipping end-user install');
75
75
  callback();
76
76
 
77
77
  return;
@@ -86,7 +86,7 @@ module.exports = function (callback) {
86
86
  }
87
87
 
88
88
  /* -----------------
89
- Update SUI
89
+ Update FUI
90
90
  ----------------- */
91
91
 
92
92
  // run update scripts if semantic.json exists
@@ -96,6 +96,7 @@ module.exports = function (callback) {
96
96
  updatePaths = {
97
97
  config: path.join(manager.root, files.config),
98
98
  tasks: path.join(updateFolder, folders.tasks),
99
+ overridesImport: path.join(updateFolder, folders.overridesImport),
99
100
  themeImport: path.join(updateFolder, folders.themeImport),
100
101
  definition: path.join(currentConfig.paths.source.definitions),
101
102
  site: path.join(currentConfig.paths.source.site),
@@ -132,7 +133,11 @@ module.exports = function (callback) {
132
133
  .pipe(plumber())
133
134
  .pipe(gulp.dest(updatePaths.themeImport))
134
135
  ;
135
-
136
+ console.info('Updating overrides import file');
137
+ gulp.src(source.overridesImport)
138
+ .pipe(plumber())
139
+ .pipe(gulp.dest(updatePaths.overridesImport))
140
+ ;
136
141
  console.info('Adding new site theme files...');
137
142
  wrench.copyDirSyncRecursive(source.site, updatePaths.site, settings.wrench.merge);
138
143
 
@@ -187,7 +192,7 @@ module.exports = function (callback) {
187
192
  }
188
193
 
189
194
  /* --------------
190
- Create SUI
195
+ Create FUI
191
196
  --------------- */
192
197
 
193
198
  gulp.task('run setup', function (callback) {
@@ -263,6 +268,7 @@ module.exports = function (callback) {
263
268
  // special install paths only for PM install
264
269
  installPaths = extend(false, {}, installPaths, {
265
270
  definition: folders.definitions,
271
+ overridesImport: folders.overridesImport,
266
272
  lessImport: folders.lessImport,
267
273
  tasks: folders.tasks,
268
274
  theme: folders.themes,
@@ -311,6 +317,10 @@ module.exports = function (callback) {
311
317
  .pipe(plumber())
312
318
  .pipe(gulp.dest(installPaths.themeImport))
313
319
  ;
320
+ gulp.src(source.overridesImport)
321
+ .pipe(plumber())
322
+ .pipe(gulp.dest(installPaths.overridesImport))
323
+ ;
314
324
  gulp.src(source.lessImport)
315
325
  .pipe(plumber())
316
326
  .pipe(gulp.dest(installPaths.lessImport))