@trops/dash-core 0.1.26 → 0.1.27

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.
package/dist/index.js CHANGED
@@ -23,7 +23,6 @@ var _getPrototypeOf = require('@babel/runtime/helpers/getPrototypeOf');
23
23
  var _inherits = require('@babel/runtime/helpers/inherits');
24
24
  var colors = require('tailwindcss/colors');
25
25
  var ReactDOM = require('react-dom');
26
- var dashCore = require('@trops/dash-core');
27
26
  var fontawesomeSvgCore = require('@fortawesome/fontawesome-svg-core');
28
27
  var algoliasearch = require('algoliasearch');
29
28
  var reactInstantsearchHooksWeb = require('react-instantsearch-hooks-web');
@@ -50,7 +49,6 @@ var DashReact__namespace = /*#__PURE__*/_interopNamespaceDefault(DashReact);
50
49
  var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
51
50
  var jsxRuntime__namespace = /*#__PURE__*/_interopNamespaceDefault(jsxRuntime);
52
51
  var ReactDOM__namespace = /*#__PURE__*/_interopNamespaceDefault(ReactDOM);
53
- var dashCore__namespace = /*#__PURE__*/_interopNamespaceDefault(dashCore);
54
52
 
55
53
  function ownKeys$w(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
56
54
  function _objectSpread$w(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$w(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$w(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -21353,14 +21351,26 @@ var PropTypes = /*@__PURE__*/getDefaultExportFromCjs(propTypesExports);
21353
21351
  function ownKeys$b(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
21354
21352
  function _objectSpread$b(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$b(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$b(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21355
21353
 
21356
- // Map of package names to the host app's module instances.
21357
- // When the CJS bundle calls require("react"), it receives the
21358
- // exact same React singleton the host app uses.
21359
- var MODULE_MAP = {
21354
+ // Host-injected module references (e.g., "@trops/dash-core").
21355
+ // Set by the host app via setHostModules() after all modules are fully loaded,
21356
+ // avoiding the self-referential import that breaks under webpack scope hoisting.
21357
+ var _hostModules = {};
21358
+
21359
+ /**
21360
+ * Allow the host app to inject module references for the require shim.
21361
+ * Called from Dash.js after importing dash-core, so the full namespace is available.
21362
+ *
21363
+ * @param {object} modules - Map of package names to module namespaces
21364
+ */
21365
+ function setHostModules(modules) {
21366
+ _hostModules = modules;
21367
+ }
21368
+
21369
+ // Base modules that can be statically imported without circular issues.
21370
+ var BASE_MODULE_MAP = {
21360
21371
  react: React__namespace,
21361
21372
  "react-dom": ReactDOM__namespace,
21362
21373
  "@trops/dash-react": DashReact__namespace,
21363
- "@trops/dash-core": dashCore__namespace,
21364
21374
  "react/jsx-runtime": jsxRuntime__namespace,
21365
21375
  "prop-types": PropTypes
21366
21376
  };
@@ -21373,13 +21383,16 @@ var MODULE_MAP = {
21373
21383
  * @returns {object} The module.exports from the evaluated bundle
21374
21384
  */
21375
21385
  function evaluateBundle(source, widgetName) {
21386
+ // Merge base modules with host-provided modules (e.g., "@trops/dash-core")
21387
+ // at call time so _hostModules is populated by the time widgets load.
21388
+ var moduleMap = _objectSpread$b(_objectSpread$b({}, BASE_MODULE_MAP), _hostModules);
21376
21389
  var module = {
21377
21390
  exports: {}
21378
21391
  };
21379
21392
  var exports = module.exports;
21380
21393
  var require = function require(name) {
21381
- if (MODULE_MAP[name]) {
21382
- var mod = MODULE_MAP[name];
21394
+ if (moduleMap[name]) {
21395
+ var mod = moduleMap[name];
21383
21396
  // CJS interop: `import * as X` creates an ES module namespace where
21384
21397
  // named exports may live under `.default` (e.g. @trops/dash-react).
21385
21398
  // CJS bundles expect `require("pkg").Widget` to work, so merge
@@ -32666,6 +32679,7 @@ exports.renderLayout = _renderLayout;
32666
32679
  exports.renderLayoutMenu = renderLayoutMenu;
32667
32680
  exports.replaceItemInLayout = replaceItemInLayout;
32668
32681
  exports.resolveIcon = resolveIcon;
32682
+ exports.setHostModules = setHostModules;
32669
32683
  exports.traverseParentTree = traverseParentTree;
32670
32684
  exports.updateLayoutItem = updateLayoutItem;
32671
32685
  exports.updateParentForItem = updateParentForItem;