summaryrefslogtreecommitdiffstats
path: root/devtools/client/debugger/src/vendors.js
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
commit43a97878ce14b72f0981164f87f2e35e14151312 (patch)
tree620249daf56c0258faa40cbdcf9cfba06de2a846 /devtools/client/debugger/src/vendors.js
parentInitial commit. (diff)
downloadfirefox-upstream.tar.xz
firefox-upstream.zip
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'devtools/client/debugger/src/vendors.js')
-rw-r--r--devtools/client/debugger/src/vendors.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/devtools/client/debugger/src/vendors.js b/devtools/client/debugger/src/vendors.js
new file mode 100644
index 0000000000..519f662cfa
--- /dev/null
+++ b/devtools/client/debugger/src/vendors.js
@@ -0,0 +1,33 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at <http://mozilla.org/MPL/2.0/>. */
+
+/**
+ * Vendors.js is a file used to bundle and expose all dependencies needed to run
+ * the transpiled debugger modules when running in Firefox.
+ *
+ * To make transpilation easier, a vendored module should always be imported in
+ * same way:
+ * - always with destructuring (import { a } from "modA";)
+ * - always without destructuring (import modB from "modB")
+ *
+ * Both are fine, but cannot be mixed for the same module.
+ */
+
+import * as fuzzaldrinPlus from "fuzzaldrin-plus";
+import * as transition from "react-transition-group/Transition";
+import * as reactAriaComponentsTabs from "react-aria-components/src/tabs";
+
+// Modules imported without destructuring
+import classnames from "classnames";
+
+// We cannot directly export literals containing special characters
+// (eg. "my-module/Test") which is why they are nested in "vendored".
+// The keys of the vendored object should match the module names
+// !!! Should remain synchronized with .babel/transform-mc.js !!!
+export const vendored = {
+ classnames,
+ "fuzzaldrin-plus": fuzzaldrinPlus,
+ "react-aria-components/src/tabs": reactAriaComponentsTabs,
+ "react-transition-group/Transition": transition,
+};