]> git.ipfire.org Git - thirdparty/foundation/foundation-sites.git/commitdiff
Use pull request #10864 from ncoden/chore/es5-pkg-main for v6.5.0
authorNicolas Coden <nicolas@ncoden.fr>
Sat, 16 Jun 2018 07:12:52 +0000 (09:12 +0200)
committerNicolas Coden <nicolas@ncoden.fr>
Sat, 16 Jun 2018 07:13:56 +0000 (09:13 +0200)
ee3399bc1 Revert "fix: prevent side-effect from .stack-for in media-object"
329902ccf chore: make UMD build default entry point
ba9fd8abe chore: export core utilities as `CoreUtils`
565a60f44 fix: fix webpack.config entry point

Signed-off-by: Nicolas Coden <nicolas@ncoden.fr>
gulp/tasks/javascript.js
js/entries/foundation-plugins.js
js/entries/foundation.js
package.json
webpack.config.js

index 0441af8fe26c0fd4fdc5a992e25544de0709f782..782497be9cb2985a22dc30a783a887ab9acb387c 100644 (file)
@@ -38,17 +38,25 @@ var pluginsAsExternals = {
   './foundation.smoothScroll' : '{SmoothScroll: window.Foundation.SmoothScroll}',
 };
 
-var moduleConfig = {
-  rules: [
-    {
-      test: /.js$/,
-      use: [
-        {
-          loader: 'babel-loader'
-        }
-      ]
-    }
-  ]
+var webpackConfig = {
+  externals: {
+    'jquery': 'jQuery'
+  },
+  module: {
+    rules: [
+      {
+        test: /.js$/,
+        use: [
+          {
+            loader: 'babel-loader'
+          }
+        ]
+      }
+    ]
+  },
+  output: {
+    libraryTarget: 'umd',
+  }
 }
 
 // Core has to be dealt with slightly differently due to bootstrapping externals
@@ -57,20 +65,20 @@ var moduleConfig = {
 gulp.task('javascript:plugin-core', function() {
   return gulp.src('js/entries/plugins/foundation.core.js')
     .pipe(named())
-    .pipe(webpackStream({externals: {'jquery': 'jQuery'}, module: moduleConfig}, webpack2))
+    .pipe(webpackStream(webpackConfig, webpack2))
     .pipe(gulp.dest('_build/assets/js/plugins'));
 });
-gulp.task('javascript:plugins', ['javascript:plugin-core'], function() {
+gulp.task('javascript:plugins', ['javascript:plugin-core'], function () {
   return gulp.src(['js/entries/plugins/*.js', '!js/entries/plugins/foundation.core.js'])
     .pipe(named())
-    .pipe(webpackStream({externals: pluginsAsExternals, module: moduleConfig}, webpack2))
+    .pipe(webpackStream(Object.assign({ externals: pluginsAsExternals }, webpackConfig), webpack2))
     .pipe(gulp.dest('_build/assets/js/plugins'));
 });
 
 gulp.task('javascript:foundation', ['javascript:plugins'], function() {
   return gulp.src('js/entries/foundation.js')
     .pipe(named())
-    .pipe(webpackStream({externals: {jquery: 'jQuery'}, module: moduleConfig}, webpack2))
+    .pipe(webpackStream(webpackConfig, webpack2))
     .pipe(gulp.dest('_build/assets/js'));
 });
 //gulp.task('javascript:foundation', function() {
index f921902b739f9e93e188ae605a6ddd3a18e63c28..ee757c57f45e9c4c924efc0083b7ad12a05594f8 100644 (file)
@@ -1,3 +1,14 @@
+import { Foundation as Core } from '../foundation.core';
+import * as CoreUtils from '../foundation.util.core';
+import { Box } from '../foundation.util.box'
+import { onImagesLoaded } from '../foundation.util.imageLoader';
+import { Keyboard } from '../foundation.util.keyboard';
+import { MediaQuery } from '../foundation.util.mediaQuery';
+import { Motion, Move } from '../foundation.util.motion';
+import { Nest } from '../foundation.util.nest';
+import { Timer } from '../foundation.util.timer';
+import { Touch } from '../foundation.util.touch';
+import { Triggers } from '../foundation.util.triggers';
 import { Abide } from '../foundation.abide';
 import { Accordion } from '../foundation.accordion';
 import { AccordionMenu } from '../foundation.accordionMenu';
@@ -21,5 +32,36 @@ import { Tooltip } from '../foundation.tooltip';
 import { ResponsiveAccordionTabs } from '../foundation.responsiveAccordionTabs';
 
 export {
-  Abide, Accordion, AccordionMenu, Drilldown, Dropdown, DropdownMenu, Equalizer, Interchange, Magellan, OffCanvas, Orbit, ResponsiveMenu, ResponsiveToggle, Reveal, Slider, SmoothScroll, Sticky, Tabs, Toggler, Tooltip, ResponsiveAccordionTabs
+  Core,
+  CoreUtils,
+  Box,
+  onImagesLoaded,
+  Keyboard,
+  MediaQuery,
+  Motion,
+  Nest,
+  Timer,
+  Touch,
+  Triggers,
+  Abide,
+  Accordion,
+  AccordionMenu,
+  Drilldown,
+  Dropdown,
+  DropdownMenu,
+  Equalizer,
+  Interchange,
+  Magellan,
+  OffCanvas,
+  Orbit,
+  ResponsiveMenu,
+  ResponsiveToggle,
+  Reveal,
+  Slider,
+  SmoothScroll,
+  Sticky,
+  Tabs,
+  Toggler,
+  Tooltip,
+  ResponsiveAccordionTabs
 }
index e844645bbd98e5ee2d85e41243132549a532ac9f..2d0bdb5582fdc12ebda5189afc2beb54b348eec2 100644 (file)
@@ -1,17 +1,7 @@
 import $ from 'jquery';
 
 import { Foundation } from '../foundation.core';
-Foundation.addToJquery($);
-
-// Add Foundation Utils to Foundation global namespace for backwards
-// compatibility.
-
-import { rtl, GetYoDigits, transitionend, RegExpEscape } from '../foundation.util.core';
-Foundation.rtl = rtl;
-Foundation.GetYoDigits = GetYoDigits;
-Foundation.transitionend = transitionend;
-Foundation.RegExpEscape = RegExpEscape;
-
+import * as CoreUtils from '../foundation.util.core';
 import { Box } from '../foundation.util.box'
 import { onImagesLoaded } from '../foundation.util.imageLoader';
 import { Keyboard } from '../foundation.util.keyboard';
@@ -19,6 +9,38 @@ import { MediaQuery } from '../foundation.util.mediaQuery';
 import { Motion, Move } from '../foundation.util.motion';
 import { Nest } from '../foundation.util.nest';
 import { Timer } from '../foundation.util.timer';
+import { Touch } from '../foundation.util.touch';
+import { Triggers } from '../foundation.util.triggers';
+import { Abide } from '../foundation.abide';
+import { Accordion } from '../foundation.accordion';
+import { AccordionMenu } from '../foundation.accordionMenu';
+import { Drilldown } from '../foundation.drilldown';
+import { Dropdown } from '../foundation.dropdown';
+import { DropdownMenu } from '../foundation.dropdownMenu';
+import { Equalizer } from '../foundation.equalizer';
+import { Interchange } from '../foundation.interchange';
+import { Magellan } from '../foundation.magellan';
+import { OffCanvas } from '../foundation.offcanvas';
+import { Orbit } from '../foundation.orbit';
+import { ResponsiveMenu } from '../foundation.responsiveMenu';
+import { ResponsiveToggle } from '../foundation.responsiveToggle';
+import { Reveal } from '../foundation.reveal';
+import { Slider } from '../foundation.slider';
+import { SmoothScroll } from '../foundation.smoothScroll';
+import { Sticky } from '../foundation.sticky';
+import { Tabs } from '../foundation.tabs';
+import { Toggler } from '../foundation.toggler';
+import { Tooltip } from '../foundation.tooltip';
+import { ResponsiveAccordionTabs } from '../foundation.responsiveAccordionTabs';
+
+Foundation.addToJquery($);
+
+// Add Foundation Utils to Foundation global namespace for backwards
+// compatibility.
+Foundation.rtl = CoreUtils.rtl;
+Foundation.GetYoDigits = CoreUtils.GetYoDigits;
+Foundation.transitionend = CoreUtils.transitionend;
+Foundation.transitionend = RegExpEscape;
 
 Foundation.Box = Box;
 Foundation.onImagesLoaded = onImagesLoaded;
@@ -30,73 +52,66 @@ Foundation.Nest = Nest;
 Foundation.Timer = Timer;
 
 // Touch and Triggers previously were almost purely sede effect driven,
-// so no // need to add it to Foundation, just init them.
-
-import { Touch } from '../foundation.util.touch';
+// so no need to add it to Foundation, just init them.
 Touch.init($);
-
-import { Triggers } from '../foundation.util.triggers';
 Triggers.init($, Foundation);
 
-import { Abide } from '../foundation.abide';
 Foundation.plugin(Abide, 'Abide');
-
-import { Accordion } from '../foundation.accordion';
 Foundation.plugin(Accordion, 'Accordion');
-
-import { AccordionMenu } from '../foundation.accordionMenu';
 Foundation.plugin(AccordionMenu, 'AccordionMenu');
-
-import { Drilldown } from '../foundation.drilldown';
 Foundation.plugin(Drilldown, 'Drilldown');
-
-import { Dropdown } from '../foundation.dropdown';
 Foundation.plugin(Dropdown, 'Dropdown');
-
-import { DropdownMenu } from '../foundation.dropdownMenu';
 Foundation.plugin(DropdownMenu, 'DropdownMenu');
-
-import { Equalizer } from '../foundation.equalizer';
 Foundation.plugin(Equalizer, 'Equalizer');
-
-import { Interchange } from '../foundation.interchange';
 Foundation.plugin(Interchange, 'Interchange');
-
-import { Magellan } from '../foundation.magellan';
 Foundation.plugin(Magellan, 'Magellan');
-
-import { OffCanvas } from '../foundation.offcanvas';
 Foundation.plugin(OffCanvas, 'OffCanvas');
-
-import { Orbit } from '../foundation.orbit';
 Foundation.plugin(Orbit, 'Orbit');
-
-import { ResponsiveMenu } from '../foundation.responsiveMenu';
 Foundation.plugin(ResponsiveMenu, 'ResponsiveMenu');
-
-import { ResponsiveToggle } from '../foundation.responsiveToggle';
 Foundation.plugin(ResponsiveToggle, 'ResponsiveToggle');
-
-import { Reveal } from '../foundation.reveal';
 Foundation.plugin(Reveal, 'Reveal');
-
-import { Slider } from '../foundation.slider';
 Foundation.plugin(Slider, 'Slider');
-
-import { SmoothScroll } from '../foundation.smoothScroll';
 Foundation.plugin(SmoothScroll, 'SmoothScroll');
-
-import { Sticky } from '../foundation.sticky';
 Foundation.plugin(Sticky, 'Sticky');
-
-import { Tabs } from '../foundation.tabs';
 Foundation.plugin(Tabs, 'Tabs');
-
-import { Toggler } from '../foundation.toggler';
 Foundation.plugin(Toggler, 'Toggler');
-
-import { Tooltip } from '../foundation.tooltip';
 Foundation.plugin(Tooltip, 'Tooltip');
-
-import { ResponsiveAccordionTabs } from '../foundation.responsiveAccordionTabs';
 Foundation.plugin(ResponsiveAccordionTabs, 'ResponsiveAccordionTabs');
+
+export {
+  Foundation,
+  CoreUtils,
+  Box,
+  onImagesLoaded,
+  Keyboard,
+  MediaQuery,
+  Motion,
+  Nest,
+  Timer,
+  Touch,
+  Triggers,
+  Abide,
+  Accordion,
+  AccordionMenu,
+  Drilldown,
+  Dropdown,
+  DropdownMenu,
+  Equalizer,
+  Interchange,
+  Magellan,
+  OffCanvas,
+  Orbit,
+  ResponsiveMenu,
+  ResponsiveToggle,
+  Reveal,
+  Slider,
+  SmoothScroll,
+  Sticky,
+  Tabs,
+  Toggler,
+  Tooltip,
+  ResponsiveAccordionTabs
+}
+
+export default Foundation;
+
index 91fae7aea38879f479c8ad9fca26451824d1350f..9dd311b7aa096ae3402f1878af0ddd2c01e69bdf 100644 (file)
@@ -1,7 +1,10 @@
 {
   "name": "foundation-sites",
   "version": "6.4.3",
-  "main": "dist/js/npm.js",
+  "main": "dist/js/foundation.js",
+  "browser": "dist/js/foundation.js",
+  "module": "js/entries/foundation.js",
+  "jsnext:main": "js/entries/foundation.js",
   "typings": "dist/js/foundation.d.ts",
   "description": "The most advanced responsive front-end framework in the world.",
   "author": "ZURB <foundation@zurb.com> (http://foundation.zurb.com)",
index 6c12efdf0fc6c57a0af0ac6f47c216b05ec25a36..1d3a3627fa301c84e43b8a24be4ae32ace446beb 100644 (file)
@@ -1,8 +1,9 @@
 module.exports = {
-  entry: './js/entries/all.js',
+  entry: './js/entries/foundation.js',
   output: {
-      path: './_build/assets/js/',
-      filename: 'foundation.js'
+    path: './_build/assets/js/',
+    filename: 'foundation.js',
+    libraryTarget: 'umd'
   },
   externals: {
     jquery: 'jQuery'