@tamagui/react-native-web-lite
Version:
React Native for Web
45 lines (44 loc) • 1.95 kB
JavaScript
import _createForOfIteratorHelperLoose from "@babel/runtime/helpers/createForOfIteratorHelperLoose";
import AnimatedNode from "./AnimatedNode";
import NativeAnimatedHelper from "../NativeAnimatedHelper";
class AnimatedWithChildren extends AnimatedNode {
constructor() {
super(), this._children = [];
}
__makeNative(platformConfig) {
if (!this.__isNative) {
this.__isNative = !0;
for (var _iterator = _createForOfIteratorHelperLoose(this._children), _step; !(_step = _iterator()).done; ) {
var child = _step.value;
child.__makeNative(platformConfig), NativeAnimatedHelper.API.connectAnimatedNodes(this.__getNativeTag(), child.__getNativeTag());
}
}
super.__makeNative(platformConfig);
}
__addChild(child) {
this._children.length === 0 && this.__attach(), this._children.push(child), this.__isNative && (child.__makeNative(this.__getPlatformConfig()), NativeAnimatedHelper.API.connectAnimatedNodes(this.__getNativeTag(), child.__getNativeTag()));
}
__removeChild(child) {
var index = this._children.indexOf(child);
if (index === -1) {
console.warn("Trying to remove a child that doesn't exist");
return;
}
this.__isNative && child.__isNative && NativeAnimatedHelper.API.disconnectAnimatedNodes(this.__getNativeTag(), child.__getNativeTag()), this._children.splice(index, 1), this._children.length === 0 && this.__detach();
}
__getChildren() {
return this._children;
}
__callListeners(value) {
if (super.__callListeners(value), !this.__isNative)
for (var _iterator2 = _createForOfIteratorHelperLoose(this._children), _step2; !(_step2 = _iterator2()).done; ) {
var child = _step2.value;
child.__getValue && child.__callListeners(child.__getValue());
}
}
}
var AnimatedWithChildren_default = AnimatedWithChildren;
export {
AnimatedWithChildren_default as default
};
//# sourceMappingURL=AnimatedWithChildren.js.map