brew-js-react 0.2.0 → 0.2.1

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.
@@ -225,6 +225,7 @@ var external_commonjs_zeta_dom_commonjs2_zeta_dom_amd_zeta_dom_root_zeta_ = __we
225
225
 
226
226
  var _lib$util = external_commonjs_zeta_dom_commonjs2_zeta_dom_amd_zeta_dom_root_zeta_.util,
227
227
  noop = _lib$util.noop,
228
+ pipe = _lib$util.pipe,
228
229
  either = _lib$util.either,
229
230
  is = _lib$util.is,
230
231
  isUndefinedOrNull = _lib$util.isUndefinedOrNull,
@@ -480,6 +481,17 @@ install('react', function (app_) {
480
481
  app_app = app_;
481
482
  });
482
483
  brew_js_defaults.react = true;
484
+ ;// CONCATENATED MODULE: ./tmp/zeta-dom/domLock.js
485
+
486
+ var domLock_lib$dom = external_commonjs_zeta_dom_commonjs2_zeta_dom_amd_zeta_dom_root_zeta_.dom,
487
+ lock = domLock_lib$dom.lock,
488
+ locked = domLock_lib$dom.locked,
489
+ cancelLock = domLock_lib$dom.cancelLock,
490
+ notifyAsync = domLock_lib$dom.notifyAsync,
491
+ preventLeave = domLock_lib$dom.preventLeave;
492
+
493
+ ;// CONCATENATED MODULE: ./src/include/zeta-dom/domLock.js
494
+
483
495
  ;// CONCATENATED MODULE: ./tmp/brew-js/anim.js
484
496
 
485
497
  var animateIn = external_commonjs_brew_js_commonjs2_brew_js_amd_brew_js_root_brew_.animateIn,
@@ -497,6 +509,8 @@ var animateIn = external_commonjs_brew_js_commonjs2_brew_js_amd_brew_js_root_bre
497
509
 
498
510
 
499
511
 
512
+
513
+ var view_root = zeta_dom_dom.root;
500
514
  var routeMap = new Map();
501
515
  var usedParams = {};
502
516
  var StateContext = /*#__PURE__*/external_commonjs_react_commonjs2_react_amd_react_root_React_.createContext(Object.freeze({
@@ -529,13 +543,17 @@ definePrototype(ViewContainer, external_commonjs_react_commonjs2_react_amd_react
529
543
  this.mounted = true;
530
544
  },
531
545
  componentDidCatch: function componentDidCatch(error) {
532
- zeta_dom_dom.emit('error', this.parentElement || zeta_dom_dom.root, {
546
+ zeta_dom_dom.emit('error', this.parentElement || view_root, {
533
547
  error: error
534
548
  }, true);
535
549
  },
536
550
  render: function render() {
537
551
  /** @type {any} */
538
552
  var self = this;
553
+ var resolve;
554
+ var promise = new Promise(function (_resolve) {
555
+ resolve = _resolve;
556
+ });
539
557
  var V = self.getViewComponent();
540
558
 
541
559
  if (V && V !== self.currentViewComponent) {
@@ -562,6 +580,7 @@ definePrototype(ViewContainer, external_commonjs_react_commonjs2_react_amd_react
562
580
  self.currentElement = element;
563
581
  self.parentElement = element.parentElement;
564
582
  util_setImmediate(function () {
583
+ resolve();
565
584
  return animateIn(element, 'show');
566
585
  });
567
586
  }
@@ -570,8 +589,11 @@ definePrototype(ViewContainer, external_commonjs_react_commonjs2_react_amd_react
570
589
  return self.currentView === view;
571
590
  });
572
591
  self.currentView = view;
592
+ } else {
593
+ resolve();
573
594
  }
574
595
 
596
+ notifyAsync(self.parentElement || view_root, promise);
575
597
  return /*#__PURE__*/external_commonjs_react_commonjs2_react_amd_react_root_React_.createElement(external_commonjs_react_commonjs2_react_amd_react_root_React_.Fragment, null, self.prevView, self.currentView);
576
598
  },
577
599
  getViewComponent: function getViewComponent() {
@@ -591,14 +613,16 @@ function isViewMatched(view) {
591
613
  }
592
614
  function registerView(factory, routeParams) {
593
615
  var Component = function Component(props) {
594
- var Component = (0,external_zeta_dom_react_.useAsync)(factory)[0];
616
+ var state = (0,external_zeta_dom_react_.useAsync)(factory);
617
+ var ref = (0,external_commonjs_react_commonjs2_react_amd_react_root_React_.useRef)();
618
+
619
+ if (state[0] || state[1].error) {
620
+ (props.onComponentLoaded || noop)(ref.current);
621
+ }
622
+
595
623
  return /*#__PURE__*/external_commonjs_react_commonjs2_react_amd_react_root_React_.createElement('div', extend({}, props.rootProps, {
596
- ref: function ref(element) {
597
- if (element && Component) {
598
- (props.onComponentLoaded || noop)(element);
599
- }
600
- },
601
- children: Component && /*#__PURE__*/external_commonjs_react_commonjs2_react_amd_react_root_React_.createElement(Component["default"])
624
+ ref: ref,
625
+ children: state[0] && /*#__PURE__*/external_commonjs_react_commonjs2_react_amd_react_root_React_.createElement(state[0]["default"])
602
626
  }));
603
627
  };
604
628
 
@@ -770,7 +794,8 @@ if (toPrimitive) {
770
794
 
771
795
  function createCallback(translate) {
772
796
  var callback = function callback(key, data) {
773
- return translate(key, data, true);
797
+ var result = translate(key, data, true);
798
+ return result !== undefined ? result : key;
774
799
  };
775
800
 
776
801
  return extend(callback, {
@@ -792,31 +817,38 @@ function makeTranslation(resources, defaultLang) {
792
817
  var re = new RegExp('^(' + Object.keys(resources[defaultLang]).join('|') + ')\\.');
793
818
  var cache = {};
794
819
 
795
- function getTranslation(prefix, name, data, noEncode) {
796
- var str = ((resources[app_app.language] || empty)[prefix] || empty)[name] || ((resources[defaultLang] || empty)[prefix] || empty)[name] || '';
820
+ function getTranslation(prefix, name, data, noEncode, lang) {
821
+ var str = ((resources[lang] || empty)[prefix] || empty)[name];
797
822
 
798
- if (str && (!noEncode || data !== undefined)) {
799
- return waterpipe(str, data, {
800
- noEncode: noEncode
801
- });
823
+ if (typeof str === 'string') {
824
+ if (str && (!noEncode || data !== undefined)) {
825
+ return waterpipe(str, data, {
826
+ noEncode: noEncode
827
+ });
828
+ }
829
+
830
+ return str;
802
831
  }
803
832
 
804
- return str;
833
+ if (lang !== defaultLang) {
834
+ return getTranslation(prefix, name, data, noEncode, defaultLang);
835
+ }
805
836
  }
806
837
 
807
838
  function translate(key, data, noEncode) {
808
839
  var prefix = re.test(key) ? RegExp.$1 : '';
809
840
  var name = prefix ? key.slice(RegExp.lastMatch.length) : key;
810
- return getTranslation(prefix, name, data, noEncode) || key;
841
+ return getTranslation(prefix, name, data, noEncode, app_app.language);
811
842
  }
812
843
 
813
844
  function getTranslationCallback() {
814
845
  var prefix = makeArray(arguments);
815
846
  var key = prefix.join(' ');
816
847
  return cache[key] || (cache[key] = createCallback(function (key, data, noEncode) {
848
+ var lang = app_app.language;
817
849
  return single(prefix, function (v) {
818
- return getTranslation(v, key, data, noEncode);
819
- }) || key;
850
+ return getTranslation(v, key, data, noEncode, lang);
851
+ });
820
852
  }));
821
853
  }
822
854