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.
- package/dist/brew-js-react.js +51 -19
- package/dist/brew-js-react.js.map +1 -1
- package/dist/brew-js-react.min.js +1 -1
- package/dist/brew-js-react.min.js.map +1 -1
- package/i18n.js +16 -9
- package/include/zeta-dom/domLock.js +1 -0
- package/package.json +2 -2
- package/view.js +19 -9
package/dist/brew-js-react.js
CHANGED
|
@@ -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 ||
|
|
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
|
|
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:
|
|
597
|
-
|
|
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
|
-
|
|
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[
|
|
820
|
+
function getTranslation(prefix, name, data, noEncode, lang) {
|
|
821
|
+
var str = ((resources[lang] || empty)[prefix] || empty)[name];
|
|
797
822
|
|
|
798
|
-
if (str
|
|
799
|
-
|
|
800
|
-
|
|
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
|
-
|
|
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)
|
|
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
|
-
})
|
|
850
|
+
return getTranslation(v, key, data, noEncode, lang);
|
|
851
|
+
});
|
|
820
852
|
}));
|
|
821
853
|
}
|
|
822
854
|
|