]> git.ipfire.org Git - thirdparty/foundation/foundation-sites.git/commitdiff
chore: prevent `core.utils` and `core.plugin` duplication across plugin entries
authorNicolas Coden <nicolas@ncoden.fr>
Mon, 26 Feb 2018 06:25:27 +0000 (07:25 +0100)
committerNicolas Coden <nicolas@ncoden.fr>
Mon, 26 Feb 2018 06:25:27 +0000 (07:25 +0100)
Export all `foundation.core.*` files in the `foundation.core` entry to prevent duplication across plugin entries without adding new entries.

gulp/tasks/javascript.js
js/entries/plugins/foundation.core.js

index 3593daa805244b553a7768ec098a925bac316a72..aad073bd82b1eaad9b156829190b0ec5f67a6c6e 100644 (file)
@@ -40,21 +40,24 @@ var pluginsAsExternals = Object.assign(
     'jquery': 'jQuery',
   }),
   umdExternals({
-    './foundation.core': 'foundation.core',
-    './foundation.util.imageLoader': 'foundation.util.imageLoader',
-    './foundation.util.keyboard': 'foundation.util.keyboard',
-    './foundation.util.mediaQuery': 'foundation.util.mediaQuery',
-    './foundation.util.motion': 'foundation.util.motion',
-    './foundation.util.nest': 'foundation.util.nest',
-    './foundation.util.timer': 'foundation.util.timer',
-    './foundation.util.touch': 'foundation.util.touch',
-    './foundation.util.box': 'foundation.util.box',
-    './foundation.dropdownMenu': 'foundation.dropdownMenu',
-    './foundation.drilldown': 'foundation.drilldown',
-    './foundation.accordionMenu': 'foundation.accordionMenu',
-    './foundation.accordion': 'foundation.accordion',
-    './foundation.tabs': 'foundation.tabs',
-    './foundation.smoothScroll': 'foundation.smoothScroll',
+    // Import path                    | Exported file
+    './foundation.core':              'foundation.core',
+    './foundation.core.utils':        'foundation.core',
+    './foundation.core.plugin':       'foundation.core',
+    './foundation.util.imageLoader':  'foundation.util.imageLoader',
+    './foundation.util.keyboard':     'foundation.util.keyboard',
+    './foundation.util.mediaQuery':   'foundation.util.mediaQuery',
+    './foundation.util.motion':       'foundation.util.motion',
+    './foundation.util.nest':         'foundation.util.nest',
+    './foundation.util.timer':        'foundation.util.timer',
+    './foundation.util.touch':        'foundation.util.touch',
+    './foundation.util.box':          'foundation.util.box',
+    './foundation.dropdownMenu':      'foundation.dropdownMenu',
+    './foundation.drilldown':         'foundation.drilldown',
+    './foundation.accordionMenu':     'foundation.accordionMenu',
+    './foundation.accordion':         'foundation.accordion',
+    './foundation.tabs':              'foundation.tabs',
+    './foundation.smoothScroll':      'foundation.smoothScroll',
   }, { namespace: CONFIG.JS_BUNDLE_NAMESPACE })
 );
 
index 23d806b3f202154c66489c00f02bbf9713f1c923..7c1d639a4dbb98114e6b1eb4751bb269334cc0bd 100644 (file)
@@ -1,23 +1,31 @@
+// --- Foundation Core API ---
+// Initialize Foundation and add some utilities to its public API for backward compatibility.
+// Please note that every utility do not have to be added to the core API.
 import $ from 'jquery';
-
 import { Foundation } from '../../foundation.core';
+import { Plugin } from '../../foundation.core.plugin';
+import { rtl, GetYoDigits, transitionend, RegExpEscape } from '../../foundation.core.utils';
+
 Foundation.addToJquery($);
 
+// Every plugin depends on plugin now, we can include that on the core for the
+// script inclusion path.
+Foundation.Plugin = Plugin;
+
 // These are now separated out, but historically were a part of this module,
 // and since this is here for backwards compatibility we include them in
 // this entry.
-import { rtl, GetYoDigits, transitionend, RegExpEscape } from '../../foundation.core.utils';
 Foundation.rtl = rtl;
 Foundation.GetYoDigits = GetYoDigits;
 Foundation.transitionend = transitionend;
 Foundation.RegExpEscape = RegExpEscape;
 
-// Every plugin depends on plugin now, we can include that on the core for the
-// script inclusion path.
-import { Plugin } from '../../foundation.core.plugin';
-Foundation.Plugin = Plugin;
-
-
 window.Foundation = Foundation;
 
+// --- Foundation Core exports ---
+// Export "Plugin" and all core utilities, since the `foundation.core` entry plays the role of
+// all core source files.
+
 export { Foundation };
+export * from '../../foundation.core.plugin';
+export * from '../../foundation.core.utils';