UNPKG

@tamagui/react-native-web-lite

Version:
348 lines 13.5 kB
var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default")); var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( // If the importer is in node compatibility mode or this is not an ESM // file that has been converted to a CommonJS file using a Babel- // compatible transform (i.e. "__esModule" has not been set), then set // "default" to the CommonJS "module.exports" for node compatibility. isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod)); var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var without_animated_exports = {}; __export(without_animated_exports, { AccessibilityInfo: () => import_AccessibilityInfo.AccessibilityInfo, AccessibilityUtil: () => import_react_native_web_internals.AccessibilityUtil, ActivityIndicator: () => import_ActivityIndicator.ActivityIndicator, Alert: () => import_Alert.Alert, Animated: () => Animated, AppRegistry: () => import_AppRegistry.AppRegistry, AppState: () => import_AppState.AppState, Appearance: () => import_Appearance.Appearance, BackHandler: () => import_BackHandler.BackHandler, Clipboard: () => import_Clipboard.Clipboard, DeviceEmitter: () => import_DeviceEmitter.DeviceEmitter, DeviceEventEmitter: () => import_DeviceEmitter2.DeviceEmitter, DeviceInfo: () => import_DeviceInfo.DeviceInfo, Dimensions: () => import_Dimensions.Dimensions, DrawerLayoutAndroid: () => import_UnimplementedView.UnimplementedView, Easing: () => Easing, FlatList: () => import_UnimplementedView4.UnimplementedView, I18nManager: () => import_I18nManager.I18nManager, Image: () => import_Image.Image, ImageBackground: () => import_ImageBackground.ImageBackground, ImageLoader: () => import_react_native_web_internals.ImageLoader, InteractionManager: () => import_react_native_web_internals.InteractionManager, Keyboard: () => import_Keyboard.Keyboard, KeyboardAvoidingView: () => import_KeyboardAvoidingView.KeyboardAvoidingView, Linking: () => import_Linking.Linking, LocaleProvider: () => import_react_native_web_internals.LocaleProvider, LogBox: () => import_LogBox.LogBox, Modal: () => import_Modal.Modal, NativeEventEmitter: () => import_NativeEventEmitter.default, NativeModules: () => import_NativeModules.NativeModules, PanResponder: () => import_PanResponder.PanResponder, PixelRatio: () => import_PixelRatio.PixelRatio, Platform: () => import_react_native_web_internals.Platform, Pressable: () => import_Pressable.Pressable, RefreshControl: () => import_RefreshControl.RefreshControl, RootTagContext: () => RootTagContext, SafeAreaView: () => import_SafeAreaView.SafeAreaView, ScrollView: () => import_ScrollView.ScrollView, SectionList: () => import_UnimplementedView7.UnimplementedView, Share: () => import_Share.Share, StatusBar: () => import_StatusBar.StatusBar, StyleSheet: () => import_react_native_web_internals.StyleSheet, Switch: () => import_UnimplementedView2.UnimplementedView, Text: () => import_Text.Text, TextAncestorContext: () => import_react_native_web_internals.TextAncestorContext, TextInput: () => import_TextInput.TextInput, Touchable: () => import_TouchableOpacity.TouchableOpacity, TouchableHighlight: () => import_UnimplementedView5.UnimplementedView, TouchableNativeFeedback: () => import_UnimplementedView6.UnimplementedView, TouchableOpacity: () => import_TouchableOpacity.TouchableOpacity, TouchableWithoutFeedback: () => import_TouchableWithoutFeedback.TouchableWithoutFeedback, UIManager: () => import_react_native_web_internals.UIManager, Vibration: () => import_Vibration.Vibration, View: () => import_View.View, VirtualizedList: () => import_UnimplementedView3.UnimplementedView, canUseDOM: () => import_react_native_web_internals.canUseDOM, clickProps: () => import_react_native_web_internals.clickProps, createDOMProps: () => import_react_native_web_internals.createDOMProps, dismissKeyboard: () => import_react_native_web_internals.dismissKeyboard, findNodeHandle: () => findNodeHandle, flattenStyle: () => import_react_native_web_internals.flattenStyle, isWebColor: () => import_react_native_web_internals.isWebColor, mergeRefs: () => import_react_native_web_internals.mergeRefs, normalizeColor: () => import_react_native_web_internals.normalizeColor, processColor: () => import_react_native_web_internals.processColor, processStyle: () => import_react_native_web_internals.processStyle, render: () => import_render.render, requireNativeComponent: () => requireNativeComponent, unstable_batchedUpdates: () => import_react_dom.unstable_batchedUpdates, unstable_createElement: () => import_createElement.createElement, useColorScheme: () => import_useColorScheme.useColorScheme, useEvent: () => import_react_native_web_internals.useEvent, useHover: () => import_react_native_web_internals.useHover, useLayoutEffect: () => import_react_native_web_internals.useLayoutEffect, useLocaleContext: () => import_useLocaleContext.useLocaleContext, useMergeRefs: () => import_react_native_web_internals.useMergeRefs, usePlatformMethods: () => import_react_native_web_internals.usePlatformMethods, useWindowDimensions: () => import_useWindowDimensions.useWindowDimensions }); module.exports = __toCommonJS(without_animated_exports); var import_react = require("react"); var import_createElement = require("./createElement/index.cjs"); var import_react_native_web_internals = require("@tamagui/react-native-web-internals"); var import_render = require("./render/index.cjs"); var import_NativeModules = require("./NativeModules/index.cjs"); var import_NativeEventEmitter = __toESM(require("./vendor/react-native/EventEmitter/NativeEventEmitter.cjs"), 1); var import_AccessibilityInfo = require("./AccessibilityInfo/index.cjs"); var import_Alert = require("./Alert/index.cjs"); var import_Appearance = require("./Appearance/index.cjs"); var import_AppRegistry = require("./AppRegistry/index.cjs"); var import_AppState = require("./AppState/index.cjs"); var import_BackHandler = require("./BackHandler/index.cjs"); var import_Clipboard = require("./Clipboard/index.cjs"); var import_DeviceInfo = require("./DeviceInfo/index.cjs"); var import_DeviceEmitter = require("./DeviceEmitter.cjs"); var import_DeviceEmitter2 = require("./DeviceEmitter.cjs"); var import_Dimensions = require("./Dimensions/index.cjs"); var import_I18nManager = require("./I18nManager/index.cjs"); var import_Keyboard = require("./Keyboard/index.cjs"); var import_Linking = require("./Linking/index.cjs"); var import_PanResponder = require("./PanResponder/index.cjs"); var import_PixelRatio = require("./PixelRatio/index.cjs"); var import_Share = require("./Share/index.cjs"); var import_Vibration = require("./Vibration/index.cjs"); var import_UnimplementedView = require("./UnimplementedView.cjs"); var import_UnimplementedView2 = require("./UnimplementedView.cjs"); var import_UnimplementedView3 = require("./UnimplementedView.cjs"); var import_UnimplementedView4 = require("./UnimplementedView.cjs"); var import_UnimplementedView5 = require("./UnimplementedView.cjs"); var import_UnimplementedView6 = require("./UnimplementedView.cjs"); var import_UnimplementedView7 = require("./UnimplementedView.cjs"); var import_TouchableOpacity = require("./TouchableOpacity.cjs"); var import_TouchableWithoutFeedback = require("./TouchableWithoutFeedback.cjs"); var import_ActivityIndicator = require("./ActivityIndicator/index.cjs"); var import_Image = require("./Image/index.cjs"); var import_ImageBackground = require("./ImageBackground/index.cjs"); var import_KeyboardAvoidingView = require("./KeyboardAvoidingView/index.cjs"); var import_Modal = require("./Modal/index.cjs"); var import_Pressable = require("./Pressable/index.cjs"); var import_RefreshControl = require("./RefreshControl/index.cjs"); var import_SafeAreaView = require("./SafeAreaView/index.cjs"); var import_ScrollView = require("./ScrollView/index.cjs"); var import_StatusBar = require("./StatusBar/index.cjs"); var import_Text = require("./Text/index.cjs"); var import_TextInput = require("./TextInput/index.cjs"); var import_View = require("./View/index.cjs"); var import_LogBox = require("./LogBox/index.cjs"); var import_useColorScheme = require("./useColorScheme/index.cjs"); var import_useLocaleContext = require("./useLocaleContext/index.cjs"); var import_useWindowDimensions = require("./useWindowDimensions/index.cjs"); __reExport(without_animated_exports, require("@tamagui/react-native-web-internals"), module.exports); var import_View2 = require("./View/index.cjs"); var import_Text2 = require("./Text/index.cjs"); var import_Image2 = require("./Image/index.cjs"); var import_ScrollView2 = require("./ScrollView/index.cjs"); var import_react_dom = require("react-dom"); function requireNativeComponent(name) { return function FakeComponent() { return null; }; } class AnimatedValue { _value; _offset; _listeners; _nextId; constructor(value = 0) { this._value = value; this._offset = 0; this._listeners = {}; this._nextId = 0; } setValue(value) { this._value = value; this._notifyListeners(); } setOffset(offset) { this._offset = offset; } flattenOffset() { this._value += this._offset; this._offset = 0; } extractOffset() { this._offset = this._value; this._value = 0; } addListener(callback) { const id = String(this._nextId++); this._listeners[id] = callback; return id; } removeListener(id) { delete this._listeners[id]; } removeAllListeners() { this._listeners = {}; } stopAnimation(callback) { callback?.(this._value); } resetAnimation(callback) { callback?.(this._value); } interpolate(config) { return new AnimatedValue(this._value); } _notifyListeners() { for (const key in this._listeners) { this._listeners[key]({ value: this._value }); } } __getValue() { return this._value + this._offset; } } class AnimatedValueXY { x; y; constructor(value) { this.x = new AnimatedValue(value?.x ?? 0); this.y = new AnimatedValue(value?.y ?? 0); } setValue(value) { this.x.setValue(value.x); this.y.setValue(value.y); } setOffset(offset) { this.x.setOffset(offset.x); this.y.setOffset(offset.y); } flattenOffset() { this.x.flattenOffset(); this.y.flattenOffset(); } stopAnimation(callback) { callback?.({ x: this.x._value, y: this.y._value }); } addListener(callback) { const xId = this.x.addListener(() => { callback({ x: this.x._value, y: this.y._value }); }); this.y.addListener(() => { callback({ x: this.x._value, y: this.y._value }); }); return xId; } removeAllListeners() { this.x.removeAllListeners(); this.y.removeAllListeners(); } getLayout() { return { left: this.x, top: this.y }; } getTranslateTransform() { return [{ translateX: this.x }, { translateY: this.y }]; } } const noopAnim = { start: cb => cb?.({ finished: true }), stop: () => {}, reset: () => {} }; const Animated = { View: import_View2.View, Text: import_Text2.Text, Image: import_Image2.Image, ScrollView: import_ScrollView2.ScrollView, FlatList: import_View2.View, SectionList: import_View2.View, Value: AnimatedValue, ValueXY: AnimatedValueXY, timing: () => noopAnim, spring: () => noopAnim, decay: () => noopAnim, sequence: () => noopAnim, parallel: () => noopAnim, stagger: () => noopAnim, loop: () => noopAnim, event: () => () => {}, add: (a, b) => new AnimatedValue(0), subtract: (a, b) => new AnimatedValue(0), multiply: (a, b) => new AnimatedValue(0), divide: (a, b) => new AnimatedValue(0), modulo: (a, b) => new AnimatedValue(0), diffClamp: (a, min, max) => new AnimatedValue(0), delay: () => noopAnim, createAnimatedComponent: c => c }; const Easing = { step0: () => 0, step1: () => 1, linear: t => t, ease: t => t, quad: t => t * t, cubic: t => t * t * t, poly: () => t => t, sin: t => t, circle: t => t, exp: t => t, elastic: () => t => t, back: () => t => t, bounce: t => t, bezier: () => t => t, in: fn => fn, out: fn => fn, inOut: fn => fn }; const findNodeHandle = component => { throw new Error("not supported - use ref instead"); }; const RootTagContext = (0, import_react.createContext)(null);