pythonnative 0.40.0__cp313-cp313-win_amd64.whl
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.
- pythonnative/__init__.py +411 -0
- pythonnative/_ios_log.py +92 -0
- pythonnative/_yoga.cp313-win_amd64.pyd +0 -0
- pythonnative/alerts.py +236 -0
- pythonnative/animated.py +1687 -0
- pythonnative/animation_graph.py +78 -0
- pythonnative/appearance.py +124 -0
- pythonnative/bootstrap.py +100 -0
- pythonnative/bridge/__init__.py +302 -0
- pythonnative/bridge/android.py +78 -0
- pythonnative/bridge/codec.py +170 -0
- pythonnative/bridge/commits.py +114 -0
- pythonnative/bridge/fake.py +243 -0
- pythonnative/bridge/ios.py +138 -0
- pythonnative/bridge/web.py +489 -0
- pythonnative/cli/__init__.py +7 -0
- pythonnative/cli/pn.py +1214 -0
- pythonnative/component.py +271 -0
- pythonnative/components/__init__.py +111 -0
- pythonnative/components/_base.py +166 -0
- pythonnative/components/controls.py +521 -0
- pythonnative/components/layout.py +518 -0
- pythonnative/components/lists.py +785 -0
- pythonnative/components/media.py +204 -0
- pythonnative/components/overlays.py +107 -0
- pythonnative/components/pressable.py +252 -0
- pythonnative/components/structural.py +167 -0
- pythonnative/components/text.py +291 -0
- pythonnative/devclient.py +824 -0
- pythonnative/devserver/__init__.py +34 -0
- pythonnative/devserver/server.py +718 -0
- pythonnative/devserver/static/animation_graph.js +82 -0
- pythonnative/devserver/static/bridge.js +147 -0
- pythonnative/devserver/static/colors.js +70 -0
- pythonnative/devserver/static/host.js +552 -0
- pythonnative/devserver/static/index.html +60 -0
- pythonnative/devserver/static/layout.js +85 -0
- pythonnative/devserver/static/preview.css +415 -0
- pythonnative/devserver/static/renderer.js +1994 -0
- pythonnative/devserver/static/shell.js +345 -0
- pythonnative/devserver/static/yoga/LICENSE +21 -0
- pythonnative/devserver/static/yoga/binaries/yoga-wasm-base64-esm.js +75 -0
- pythonnative/devserver/static/yoga/src/generated/YGEnums.d.ts +189 -0
- pythonnative/devserver/static/yoga/src/generated/YGEnums.js +211 -0
- pythonnative/devserver/static/yoga/src/generated/YGEnums.js.map +1 -0
- pythonnative/devserver/static/yoga/src/index.d.ts +12 -0
- pythonnative/devserver/static/yoga/src/index.js +16 -0
- pythonnative/devserver/static/yoga/src/index.js.map +1 -0
- pythonnative/devserver/static/yoga/src/load.d.ts +11 -0
- pythonnative/devserver/static/yoga/src/load.js +17 -0
- pythonnative/devserver/static/yoga/src/load.js.map +1 -0
- pythonnative/devserver/static/yoga/src/wrapAssembly.d.ts +155 -0
- pythonnative/devserver/static/yoga/src/wrapAssembly.js +125 -0
- pythonnative/devserver/static/yoga/src/wrapAssembly.js.map +1 -0
- pythonnative/devserver/watcher.py +267 -0
- pythonnative/devserver/ws.py +421 -0
- pythonnative/diagnostics.py +241 -0
- pythonnative/element.py +159 -0
- pythonnative/equality.py +19 -0
- pythonnative/events.py +231 -0
- pythonnative/gestures.py +1333 -0
- pythonnative/hooks.py +1621 -0
- pythonnative/hosts/__init__.py +63 -0
- pythonnative/hosts/base.py +596 -0
- pythonnative/hosts/native.py +302 -0
- pythonnative/hot_reload.py +585 -0
- pythonnative/layout.py +328 -0
- pythonnative/mutations.py +142 -0
- pythonnative/native/android/build.gradle +52 -0
- pythonnative/native/android/gradle.properties +3 -0
- pythonnative/native/android/settings.gradle +12 -0
- pythonnative/native/android/src/main/AndroidManifest.xml +11 -0
- pythonnative/native/android/src/main/cpp/CMakeLists.txt +9 -0
- pythonnative/native/android/src/main/cpp/yoga_jni.cpp +52 -0
- pythonnative/native/android/src/main/java/com/pythonnative/generated/NativeModules.kt +5 -0
- pythonnative/native/android/src/main/java/com/pythonnative/generated/NativeProps.kt +3705 -0
- pythonnative/native/android/src/main/java/com/pythonnative/generated/PNContracts.kt +129 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/PNBridge.kt +261 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/PythonHost.kt +20 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/animation/AnimationGraph.kt +108 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/animation/AnimationSpecs.kt +141 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/animation/PNAnimator.kt +257 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/bridge/CommitState.kt +106 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/bridge/JsonUtil.kt +175 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/bridge/MainThread.kt +40 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/bridge/PNLog.kt +33 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/bridge/PNRegistry.kt +82 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/bridge/PNTransaction.kt +80 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/bridge/TransactionApplier.kt +117 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/bridge/ViewRegistry.kt +74 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/BuiltinComponents.kt +37 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/ButtonManager.kt +32 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/ComponentManager.kt +213 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/ContainerManagers.kt +69 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/ControlManagers.kt +186 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/DatePickerManager.kt +123 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/ImageLoader.kt +141 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/ImageManager.kt +162 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/ModalManager.kt +134 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/PNColor.kt +201 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/PickerManager.kt +86 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/PortalManager.kt +55 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/PressableManager.kt +122 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/ScreenStackManager.kt +110 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/ScrollViewManager.kt +214 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/SegmentedControlManager.kt +113 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/StatusBarManager.kt +52 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/TabBarManager.kt +131 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/TextInputManager.kt +250 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/TextManager.kt +233 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/ViewStyler.kt +355 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/VirtualListManager.kt +159 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/components/WebViewManager.kt +149 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/gestures/GestureArbiter.kt +233 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/gestures/GestureCoordinator.kt +127 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/gestures/GestureRecognizers.kt +527 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/layout/NativeLayout.kt +145 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/layout/YogaNode.kt +29 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/modules/BuiltinModules.kt +73 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/modules/DeviceModules.kt +316 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/modules/HostModule.kt +61 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/modules/MediaModules.kt +200 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/modules/NativeModule.kt +158 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/modules/NotificationsModule.kt +100 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/modules/PermissionsModule.kt +99 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/modules/StorageModules.kt +89 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/modules/SystemModules.kt +178 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/plugins/GeneratedPlugins.kt +16 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/screens/PNScreenFragment.kt +188 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/screens/ScreenRegistry.kt +80 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/views/PNAccessibilityDelegate.kt +48 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/views/PNBorderDrawable.kt +76 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/views/PNEditText.kt +18 -0
- pythonnative/native/android/src/main/java/com/pythonnative/runtime/views/PNFrameLayout.kt +49 -0
- pythonnative/native/android/src/test/java/com/pythonnative/runtime/AnimationSpecsTest.kt +75 -0
- pythonnative/native/android/src/test/java/com/pythonnative/runtime/GestureArbiterTest.kt +197 -0
- pythonnative/native/android/src/test/java/com/pythonnative/runtime/PNColorTest.kt +47 -0
- pythonnative/native/android/src/test/java/com/pythonnative/runtime/PNTransactionTest.kt +78 -0
- pythonnative/native/android/src/test/java/com/pythonnative/runtime/PromiseTest.kt +89 -0
- pythonnative/native/ios/Package.swift +23 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Animation/PNAnimationGraph.swift +199 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Animation/PNAnimator.swift +312 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Bridge/PNBridge.swift +255 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Bridge/PNCommit.swift +104 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Bridge/PNRegistry.swift +142 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Bridge/PNTransaction.swift +166 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Bridge/PNViewRegistry.swift +53 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNButtonManagers.swift +207 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNColor.swift +173 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNComponentManager.swift +183 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNContainerView.swift +56 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNControlManagers.swift +281 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNImageManager.swift +222 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNOverlayManagers.swift +243 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNPressableManager.swift +114 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNScreenStackManager.swift +107 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNScrollViewManager.swift +197 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNTabBarManager.swift +106 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNTextInputManager.swift +297 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNTextManager.swift +230 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNTransform.swift +82 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNViewManager.swift +86 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNViewState.swift +87 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNViewStyler.swift +340 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNVirtualListManager.swift +155 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Components/PNWebViewManager.swift +124 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Generated/NativeModules.swift +1 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Generated/NativeProps.swift +3775 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Generated/PNContracts.swift +46 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Gestures/PNGestureCoordinator.swift +260 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Layout/PNLayout.swift +173 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Modules/AlertModule.swift +92 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Modules/HostModule.swift +80 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Modules/LifecycleModules.swift +174 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Modules/MediaModules.swift +177 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Modules/PNNativeModule.swift +168 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Modules/PermissionModules.swift +266 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Modules/SystemModules.swift +251 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Plugins/PNPluginRegistration.swift +8 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Screens/PNScreenRegistry.swift +46 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Screens/PNViewController.swift +237 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Support/PNCompat.swift +46 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Support/PNJSON.swift +173 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Support/PNLog.swift +47 -0
- pythonnative/native/ios/Sources/PythonNativeKit/Support/PNWindow.swift +51 -0
- pythonnative/native/ios/Tests/PythonNativeKitTests/PNAnimationGraphTests.swift +26 -0
- pythonnative/native/ios/Tests/PythonNativeKitTests/PNColorTests.swift +50 -0
- pythonnative/native/ios/Tests/PythonNativeKitTests/PNCommitTests.swift +86 -0
- pythonnative/native/ios/Tests/PythonNativeKitTests/PNGestureTests.swift +101 -0
- pythonnative/native/ios/Tests/PythonNativeKitTests/PNManagerTests.swift +126 -0
- pythonnative/native/ios/Tests/PythonNativeKitTests/PNModuleTests.swift +111 -0
- pythonnative/native/ios/Tests/PythonNativeKitTests/PNTransactionTests.swift +91 -0
- pythonnative/native/yoga/LICENSE +21 -0
- pythonnative/native/yoga/Package.swift +9 -0
- pythonnative/native/yoga/VENDORED.md +2 -0
- pythonnative/native/yoga/include/PNStyle.h +10 -0
- pythonnative/native/yoga/include/module.modulemap +5 -0
- pythonnative/native/yoga/include/yoga/YGConfig.h +158 -0
- pythonnative/native/yoga/include/yoga/YGEnums.h +142 -0
- pythonnative/native/yoga/include/yoga/YGMacros.h +99 -0
- pythonnative/native/yoga/include/yoga/YGNode.h +304 -0
- pythonnative/native/yoga/include/yoga/YGNodeLayout.h +35 -0
- pythonnative/native/yoga/include/yoga/YGNodeStyle.h +130 -0
- pythonnative/native/yoga/include/yoga/YGPixelGrid.h +29 -0
- pythonnative/native/yoga/include/yoga/YGValue.h +84 -0
- pythonnative/native/yoga/include/yoga/Yoga.h +21 -0
- pythonnative/native/yoga/python.cpp +16 -0
- pythonnative/native/yoga/style.cpp +272 -0
- pythonnative/native/yoga/yoga/CMakeLists.txt +41 -0
- pythonnative/native/yoga/yoga/YGConfig.cpp +92 -0
- pythonnative/native/yoga/yoga/YGConfig.h +158 -0
- pythonnative/native/yoga/yoga/YGEnums.cpp +262 -0
- pythonnative/native/yoga/yoga/YGEnums.h +142 -0
- pythonnative/native/yoga/yoga/YGMacros.h +99 -0
- pythonnative/native/yoga/yoga/YGNode.cpp +366 -0
- pythonnative/native/yoga/yoga/YGNode.h +304 -0
- pythonnative/native/yoga/yoga/YGNodeLayout.cpp +92 -0
- pythonnative/native/yoga/yoga/YGNodeLayout.h +35 -0
- pythonnative/native/yoga/yoga/YGNodeStyle.cpp +405 -0
- pythonnative/native/yoga/yoga/YGNodeStyle.h +130 -0
- pythonnative/native/yoga/yoga/YGPixelGrid.cpp +22 -0
- pythonnative/native/yoga/yoga/YGPixelGrid.h +29 -0
- pythonnative/native/yoga/yoga/YGValue.cpp +20 -0
- pythonnative/native/yoga/yoga/YGValue.h +84 -0
- pythonnative/native/yoga/yoga/Yoga.h +21 -0
- pythonnative/native/yoga/yoga/algorithm/AbsoluteLayout.cpp +563 -0
- pythonnative/native/yoga/yoga/algorithm/AbsoluteLayout.h +41 -0
- pythonnative/native/yoga/yoga/algorithm/Align.h +72 -0
- pythonnative/native/yoga/yoga/algorithm/Baseline.cpp +78 -0
- pythonnative/native/yoga/yoga/algorithm/Baseline.h +21 -0
- pythonnative/native/yoga/yoga/algorithm/BoundAxis.h +79 -0
- pythonnative/native/yoga/yoga/algorithm/Cache.cpp +121 -0
- pythonnative/native/yoga/yoga/algorithm/Cache.h +30 -0
- pythonnative/native/yoga/yoga/algorithm/CalculateLayout.cpp +2428 -0
- pythonnative/native/yoga/yoga/algorithm/CalculateLayout.h +38 -0
- pythonnative/native/yoga/yoga/algorithm/FlexDirection.h +120 -0
- pythonnative/native/yoga/yoga/algorithm/FlexLine.cpp +124 -0
- pythonnative/native/yoga/yoga/algorithm/FlexLine.h +75 -0
- pythonnative/native/yoga/yoga/algorithm/PixelGrid.cpp +132 -0
- pythonnative/native/yoga/yoga/algorithm/PixelGrid.h +29 -0
- pythonnative/native/yoga/yoga/algorithm/SizingMode.h +73 -0
- pythonnative/native/yoga/yoga/algorithm/TrailingPosition.h +44 -0
- pythonnative/native/yoga/yoga/config/Config.cpp +135 -0
- pythonnative/native/yoga/yoga/config/Config.h +92 -0
- pythonnative/native/yoga/yoga/debug/AssertFatal.cpp +53 -0
- pythonnative/native/yoga/yoga/debug/AssertFatal.h +29 -0
- pythonnative/native/yoga/yoga/debug/Log.cpp +107 -0
- pythonnative/native/yoga/yoga/debug/Log.h +34 -0
- pythonnative/native/yoga/yoga/enums/Align.h +47 -0
- pythonnative/native/yoga/yoga/enums/BoxSizing.h +40 -0
- pythonnative/native/yoga/yoga/enums/Dimension.h +40 -0
- pythonnative/native/yoga/yoga/enums/Direction.h +41 -0
- pythonnative/native/yoga/yoga/enums/Display.h +41 -0
- pythonnative/native/yoga/yoga/enums/Edge.h +47 -0
- pythonnative/native/yoga/yoga/enums/Errata.h +41 -0
- pythonnative/native/yoga/yoga/enums/ExperimentalFeature.h +39 -0
- pythonnative/native/yoga/yoga/enums/FlexDirection.h +42 -0
- pythonnative/native/yoga/yoga/enums/Gutter.h +41 -0
- pythonnative/native/yoga/yoga/enums/Justify.h +44 -0
- pythonnative/native/yoga/yoga/enums/LogLevel.h +44 -0
- pythonnative/native/yoga/yoga/enums/MeasureMode.h +41 -0
- pythonnative/native/yoga/yoga/enums/NodeType.h +40 -0
- pythonnative/native/yoga/yoga/enums/Overflow.h +41 -0
- pythonnative/native/yoga/yoga/enums/PhysicalEdge.h +21 -0
- pythonnative/native/yoga/yoga/enums/PositionType.h +41 -0
- pythonnative/native/yoga/yoga/enums/Unit.h +42 -0
- pythonnative/native/yoga/yoga/enums/Wrap.h +41 -0
- pythonnative/native/yoga/yoga/enums/YogaEnums.h +85 -0
- pythonnative/native/yoga/yoga/event/event.cpp +87 -0
- pythonnative/native/yoga/yoga/event/event.h +130 -0
- pythonnative/native/yoga/yoga/module.modulemap +21 -0
- pythonnative/native/yoga/yoga/node/CachedMeasurement.h +53 -0
- pythonnative/native/yoga/yoga/node/LayoutResults.cpp +48 -0
- pythonnative/native/yoga/yoga/node/LayoutResults.h +122 -0
- pythonnative/native/yoga/yoga/node/LayoutableChildren.h +148 -0
- pythonnative/native/yoga/yoga/node/Node.cpp +443 -0
- pythonnative/native/yoga/yoga/node/Node.h +337 -0
- pythonnative/native/yoga/yoga/numeric/Comparison.h +81 -0
- pythonnative/native/yoga/yoga/numeric/FloatOptional.h +93 -0
- pythonnative/native/yoga/yoga/style/SmallValueBuffer.h +133 -0
- pythonnative/native/yoga/yoga/style/Style.h +757 -0
- pythonnative/native/yoga/yoga/style/StyleLength.h +107 -0
- pythonnative/native/yoga/yoga/style/StyleValueHandle.h +98 -0
- pythonnative/native/yoga/yoga/style/StyleValuePool.h +127 -0
- pythonnative/native_modules/__init__.py +124 -0
- pythonnative/native_modules/app_state.py +99 -0
- pythonnative/native_modules/battery.py +75 -0
- pythonnative/native_modules/biometrics.py +42 -0
- pythonnative/native_modules/camera.py +65 -0
- pythonnative/native_modules/clipboard.py +46 -0
- pythonnative/native_modules/fallback.py +324 -0
- pythonnative/native_modules/file_system.py +145 -0
- pythonnative/native_modules/haptics.py +75 -0
- pythonnative/native_modules/linking.py +123 -0
- pythonnative/native_modules/location.py +75 -0
- pythonnative/native_modules/net_info.py +112 -0
- pythonnative/native_modules/notifications.py +129 -0
- pythonnative/native_modules/permissions.py +108 -0
- pythonnative/native_modules/registry.py +526 -0
- pythonnative/native_modules/secure_store.py +52 -0
- pythonnative/native_modules/share.py +51 -0
- pythonnative/native_views/__init__.py +375 -0
- pythonnative/native_views/base.py +316 -0
- pythonnative/native_views/bridge_backend.py +277 -0
- pythonnative/navigation/__init__.py +103 -0
- pythonnative/navigation/container.py +154 -0
- pythonnative/navigation/handle.py +540 -0
- pythonnative/navigation/hooks.py +133 -0
- pythonnative/navigation/host.py +58 -0
- pythonnative/navigation/linking.py +200 -0
- pythonnative/navigation/navigators.py +659 -0
- pythonnative/navigation/screen.py +149 -0
- pythonnative/navigation/state.py +269 -0
- pythonnative/net.py +248 -0
- pythonnative/platform.py +166 -0
- pythonnative/platform_metrics.py +252 -0
- pythonnative/preview.py +287 -0
- pythonnative/profiling.py +101 -0
- pythonnative/project/__init__.py +68 -0
- pythonnative/project/android.py +557 -0
- pythonnative/project/builder.py +817 -0
- pythonnative/project/config.py +773 -0
- pythonnative/project/deps.py +719 -0
- pythonnative/project/devices.py +304 -0
- pythonnative/project/doctor.py +283 -0
- pythonnative/project/fingerprint.py +171 -0
- pythonnative/project/icons.py +247 -0
- pythonnative/project/ios.py +325 -0
- pythonnative/project/lockfile.py +100 -0
- pythonnative/project/permissions.py +361 -0
- pythonnative/project/plugins.py +519 -0
- pythonnative/project/runtime_assets.py +183 -0
- pythonnative/py.typed +0 -0
- pythonnative/query.py +153 -0
- pythonnative/reconciler/__init__.py +29 -0
- pythonnative/reconciler/boundaries.py +375 -0
- pythonnative/reconciler/children.py +88 -0
- pythonnative/reconciler/core.py +1165 -0
- pythonnative/reconciler/layout_pass.py +393 -0
- pythonnative/reconciler/vnode.py +266 -0
- pythonnative/refresh.py +55 -0
- pythonnative/runtime.py +306 -0
- pythonnative/scheduler.py +159 -0
- pythonnative/sdk/__init__.py +153 -0
- pythonnative/sdk/_components.py +427 -0
- pythonnative/sdk/builtins.py +91 -0
- pythonnative/sdk/codegen.py +149 -0
- pythonnative/sdk/module_codegen.py +184 -0
- pythonnative/sdk/schema.py +224 -0
- pythonnative/sdk/templates/contracts.kt +46 -0
- pythonnative/sdk/templates/contracts.swift +46 -0
- pythonnative/storage.py +184 -0
- pythonnative/style.py +841 -0
- pythonnative/suspense.py +183 -0
- pythonnative/templates/android_template/app/build.gradle +75 -0
- pythonnative/templates/android_template/app/proguard-rules.pro +21 -0
- pythonnative/templates/android_template/app/src/androidTest/java/com/pythonnative/android_template/ExampleInstrumentedTest.kt +24 -0
- pythonnative/templates/android_template/app/src/debug/AndroidManifest.xml +7 -0
- pythonnative/templates/android_template/app/src/main/AndroidManifest.xml +32 -0
- pythonnative/templates/android_template/app/src/main/java/com/pythonnative/android_template/MainActivity.kt +130 -0
- pythonnative/templates/android_template/app/src/main/java/com/pythonnative/android_template/ScreenFragment.kt +13 -0
- pythonnative/templates/android_template/app/src/main/res/drawable/ic_launcher_background.xml +170 -0
- pythonnative/templates/android_template/app/src/main/res/drawable-v24/ic_launcher_foreground.xml +30 -0
- pythonnative/templates/android_template/app/src/main/res/layout/activity_main.xml +10 -0
- pythonnative/templates/android_template/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +6 -0
- pythonnative/templates/android_template/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +6 -0
- pythonnative/templates/android_template/app/src/main/res/mipmap-hdpi/ic_launcher.webp +0 -0
- pythonnative/templates/android_template/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp +0 -0
- pythonnative/templates/android_template/app/src/main/res/mipmap-mdpi/ic_launcher.webp +0 -0
- pythonnative/templates/android_template/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp +0 -0
- pythonnative/templates/android_template/app/src/main/res/mipmap-xhdpi/ic_launcher.webp +0 -0
- pythonnative/templates/android_template/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp +0 -0
- pythonnative/templates/android_template/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp +0 -0
- pythonnative/templates/android_template/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp +0 -0
- pythonnative/templates/android_template/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp +0 -0
- pythonnative/templates/android_template/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp +0 -0
- pythonnative/templates/android_template/app/src/main/res/navigation/nav_graph.xml +22 -0
- pythonnative/templates/android_template/app/src/main/res/values/colors.xml +5 -0
- pythonnative/templates/android_template/app/src/main/res/values/strings.xml +5 -0
- pythonnative/templates/android_template/app/src/main/res/values/themes.xml +9 -0
- pythonnative/templates/android_template/app/src/main/res/values-night/themes.xml +7 -0
- pythonnative/templates/android_template/app/src/main/res/xml/backup_rules.xml +13 -0
- pythonnative/templates/android_template/app/src/main/res/xml/data_extraction_rules.xml +19 -0
- pythonnative/templates/android_template/app/src/test/java/com/pythonnative/android_template/ExampleUnitTest.kt +17 -0
- pythonnative/templates/android_template/build.gradle +10 -0
- pythonnative/templates/android_template/gradle/wrapper/gradle-wrapper.jar +0 -0
- pythonnative/templates/android_template/gradle/wrapper/gradle-wrapper.properties +6 -0
- pythonnative/templates/android_template/gradle.properties +23 -0
- pythonnative/templates/android_template/gradlew +185 -0
- pythonnative/templates/android_template/gradlew.bat +89 -0
- pythonnative/templates/android_template/settings.gradle +17 -0
- pythonnative/templates/ios_template/ios_template/AppDelegate.swift +51 -0
- pythonnative/templates/ios_template/ios_template/Assets.xcassets/AccentColor.colorset/Contents.json +11 -0
- pythonnative/templates/ios_template/ios_template/Assets.xcassets/AppIcon.appiconset/Contents.json +13 -0
- pythonnative/templates/ios_template/ios_template/Assets.xcassets/Contents.json +6 -0
- pythonnative/templates/ios_template/ios_template/Base.lproj/LaunchScreen.storyboard +25 -0
- pythonnative/templates/ios_template/ios_template/BridgingHeader.h +14 -0
- pythonnative/templates/ios_template/ios_template/Info.plist +28 -0
- pythonnative/templates/ios_template/ios_template/PythonRuntime.swift +390 -0
- pythonnative/templates/ios_template/ios_template/SceneDelegate.swift +61 -0
- pythonnative/templates/ios_template/ios_template/ViewController.swift +23 -0
- pythonnative/templates/ios_template/ios_template.xcodeproj/project.pbxproj +745 -0
- pythonnative/templates/ios_template/ios_template.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
- pythonnative/templates/ios_template/ios_templateTests/ios_templateTests.swift +36 -0
- pythonnative/templates/ios_template/ios_templateUITests/ios_templateUITests.swift +41 -0
- pythonnative/templates/ios_template/ios_templateUITests/ios_templateUITestsLaunchTests.swift +32 -0
- pythonnative/testing/__init__.py +53 -0
- pythonnative/testing/backend.py +276 -0
- pythonnative/testing/harness.py +369 -0
- pythonnative/utils.py +145 -0
- pythonnative-0.40.0.dist-info/DELVEWHEEL +2 -0
- pythonnative-0.40.0.dist-info/METADATA +150 -0
- pythonnative-0.40.0.dist-info/RECORD +418 -0
- pythonnative-0.40.0.dist-info/WHEEL +5 -0
- pythonnative-0.40.0.dist-info/entry_points.txt +2 -0
- pythonnative-0.40.0.dist-info/licenses/LICENSE +21 -0
- pythonnative-0.40.0.dist-info/top_level.txt +1 -0
- pythonnative.libs/msvcp140-a4c2229bdc2a2a630acdc095b4d86008.dll +0 -0
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// @generated by enums.py
|
|
9
|
+
// clang-format off
|
|
10
|
+
#pragma once
|
|
11
|
+
|
|
12
|
+
#include <cstdint>
|
|
13
|
+
#include <yoga/YGEnums.h>
|
|
14
|
+
#include <yoga/enums/YogaEnums.h>
|
|
15
|
+
|
|
16
|
+
namespace facebook::yoga {
|
|
17
|
+
|
|
18
|
+
enum class Errata : uint32_t {
|
|
19
|
+
None = YGErrataNone,
|
|
20
|
+
StretchFlexBasis = YGErrataStretchFlexBasis,
|
|
21
|
+
AbsolutePositionWithoutInsetsExcludesPadding = YGErrataAbsolutePositionWithoutInsetsExcludesPadding,
|
|
22
|
+
AbsolutePercentAgainstInnerSize = YGErrataAbsolutePercentAgainstInnerSize,
|
|
23
|
+
All = YGErrataAll,
|
|
24
|
+
Classic = YGErrataClassic,
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
YG_DEFINE_ENUM_FLAG_OPERATORS(Errata)
|
|
28
|
+
|
|
29
|
+
constexpr Errata scopedEnum(YGErrata unscoped) {
|
|
30
|
+
return static_cast<Errata>(unscoped);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
constexpr YGErrata unscopedEnum(Errata scoped) {
|
|
34
|
+
return static_cast<YGErrata>(scoped);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
inline const char* toString(Errata e) {
|
|
38
|
+
return YGErrataToString(unscopedEnum(e));
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// @generated by enums.py
|
|
9
|
+
// clang-format off
|
|
10
|
+
#pragma once
|
|
11
|
+
|
|
12
|
+
#include <cstdint>
|
|
13
|
+
#include <yoga/YGEnums.h>
|
|
14
|
+
#include <yoga/enums/YogaEnums.h>
|
|
15
|
+
|
|
16
|
+
namespace facebook::yoga {
|
|
17
|
+
|
|
18
|
+
enum class ExperimentalFeature : uint8_t {
|
|
19
|
+
WebFlexBasis = YGExperimentalFeatureWebFlexBasis,
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
template <>
|
|
23
|
+
constexpr int32_t ordinalCount<ExperimentalFeature>() {
|
|
24
|
+
return 1;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
constexpr ExperimentalFeature scopedEnum(YGExperimentalFeature unscoped) {
|
|
28
|
+
return static_cast<ExperimentalFeature>(unscoped);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
constexpr YGExperimentalFeature unscopedEnum(ExperimentalFeature scoped) {
|
|
32
|
+
return static_cast<YGExperimentalFeature>(scoped);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
inline const char* toString(ExperimentalFeature e) {
|
|
36
|
+
return YGExperimentalFeatureToString(unscopedEnum(e));
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// @generated by enums.py
|
|
9
|
+
// clang-format off
|
|
10
|
+
#pragma once
|
|
11
|
+
|
|
12
|
+
#include <cstdint>
|
|
13
|
+
#include <yoga/YGEnums.h>
|
|
14
|
+
#include <yoga/enums/YogaEnums.h>
|
|
15
|
+
|
|
16
|
+
namespace facebook::yoga {
|
|
17
|
+
|
|
18
|
+
enum class FlexDirection : uint8_t {
|
|
19
|
+
Column = YGFlexDirectionColumn,
|
|
20
|
+
ColumnReverse = YGFlexDirectionColumnReverse,
|
|
21
|
+
Row = YGFlexDirectionRow,
|
|
22
|
+
RowReverse = YGFlexDirectionRowReverse,
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
template <>
|
|
26
|
+
constexpr int32_t ordinalCount<FlexDirection>() {
|
|
27
|
+
return 4;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
constexpr FlexDirection scopedEnum(YGFlexDirection unscoped) {
|
|
31
|
+
return static_cast<FlexDirection>(unscoped);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
constexpr YGFlexDirection unscopedEnum(FlexDirection scoped) {
|
|
35
|
+
return static_cast<YGFlexDirection>(scoped);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
inline const char* toString(FlexDirection e) {
|
|
39
|
+
return YGFlexDirectionToString(unscopedEnum(e));
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// @generated by enums.py
|
|
9
|
+
// clang-format off
|
|
10
|
+
#pragma once
|
|
11
|
+
|
|
12
|
+
#include <cstdint>
|
|
13
|
+
#include <yoga/YGEnums.h>
|
|
14
|
+
#include <yoga/enums/YogaEnums.h>
|
|
15
|
+
|
|
16
|
+
namespace facebook::yoga {
|
|
17
|
+
|
|
18
|
+
enum class Gutter : uint8_t {
|
|
19
|
+
Column = YGGutterColumn,
|
|
20
|
+
Row = YGGutterRow,
|
|
21
|
+
All = YGGutterAll,
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
template <>
|
|
25
|
+
constexpr int32_t ordinalCount<Gutter>() {
|
|
26
|
+
return 3;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
constexpr Gutter scopedEnum(YGGutter unscoped) {
|
|
30
|
+
return static_cast<Gutter>(unscoped);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
constexpr YGGutter unscopedEnum(Gutter scoped) {
|
|
34
|
+
return static_cast<YGGutter>(scoped);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
inline const char* toString(Gutter e) {
|
|
38
|
+
return YGGutterToString(unscopedEnum(e));
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// @generated by enums.py
|
|
9
|
+
// clang-format off
|
|
10
|
+
#pragma once
|
|
11
|
+
|
|
12
|
+
#include <cstdint>
|
|
13
|
+
#include <yoga/YGEnums.h>
|
|
14
|
+
#include <yoga/enums/YogaEnums.h>
|
|
15
|
+
|
|
16
|
+
namespace facebook::yoga {
|
|
17
|
+
|
|
18
|
+
enum class Justify : uint8_t {
|
|
19
|
+
FlexStart = YGJustifyFlexStart,
|
|
20
|
+
Center = YGJustifyCenter,
|
|
21
|
+
FlexEnd = YGJustifyFlexEnd,
|
|
22
|
+
SpaceBetween = YGJustifySpaceBetween,
|
|
23
|
+
SpaceAround = YGJustifySpaceAround,
|
|
24
|
+
SpaceEvenly = YGJustifySpaceEvenly,
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
template <>
|
|
28
|
+
constexpr int32_t ordinalCount<Justify>() {
|
|
29
|
+
return 6;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
constexpr Justify scopedEnum(YGJustify unscoped) {
|
|
33
|
+
return static_cast<Justify>(unscoped);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
constexpr YGJustify unscopedEnum(Justify scoped) {
|
|
37
|
+
return static_cast<YGJustify>(scoped);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
inline const char* toString(Justify e) {
|
|
41
|
+
return YGJustifyToString(unscopedEnum(e));
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// @generated by enums.py
|
|
9
|
+
// clang-format off
|
|
10
|
+
#pragma once
|
|
11
|
+
|
|
12
|
+
#include <cstdint>
|
|
13
|
+
#include <yoga/YGEnums.h>
|
|
14
|
+
#include <yoga/enums/YogaEnums.h>
|
|
15
|
+
|
|
16
|
+
namespace facebook::yoga {
|
|
17
|
+
|
|
18
|
+
enum class LogLevel : uint8_t {
|
|
19
|
+
Error = YGLogLevelError,
|
|
20
|
+
Warn = YGLogLevelWarn,
|
|
21
|
+
Info = YGLogLevelInfo,
|
|
22
|
+
Debug = YGLogLevelDebug,
|
|
23
|
+
Verbose = YGLogLevelVerbose,
|
|
24
|
+
Fatal = YGLogLevelFatal,
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
template <>
|
|
28
|
+
constexpr int32_t ordinalCount<LogLevel>() {
|
|
29
|
+
return 6;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
constexpr LogLevel scopedEnum(YGLogLevel unscoped) {
|
|
33
|
+
return static_cast<LogLevel>(unscoped);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
constexpr YGLogLevel unscopedEnum(LogLevel scoped) {
|
|
37
|
+
return static_cast<YGLogLevel>(scoped);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
inline const char* toString(LogLevel e) {
|
|
41
|
+
return YGLogLevelToString(unscopedEnum(e));
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// @generated by enums.py
|
|
9
|
+
// clang-format off
|
|
10
|
+
#pragma once
|
|
11
|
+
|
|
12
|
+
#include <cstdint>
|
|
13
|
+
#include <yoga/YGEnums.h>
|
|
14
|
+
#include <yoga/enums/YogaEnums.h>
|
|
15
|
+
|
|
16
|
+
namespace facebook::yoga {
|
|
17
|
+
|
|
18
|
+
enum class MeasureMode : uint8_t {
|
|
19
|
+
Undefined = YGMeasureModeUndefined,
|
|
20
|
+
Exactly = YGMeasureModeExactly,
|
|
21
|
+
AtMost = YGMeasureModeAtMost,
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
template <>
|
|
25
|
+
constexpr int32_t ordinalCount<MeasureMode>() {
|
|
26
|
+
return 3;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
constexpr MeasureMode scopedEnum(YGMeasureMode unscoped) {
|
|
30
|
+
return static_cast<MeasureMode>(unscoped);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
constexpr YGMeasureMode unscopedEnum(MeasureMode scoped) {
|
|
34
|
+
return static_cast<YGMeasureMode>(scoped);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
inline const char* toString(MeasureMode e) {
|
|
38
|
+
return YGMeasureModeToString(unscopedEnum(e));
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// @generated by enums.py
|
|
9
|
+
// clang-format off
|
|
10
|
+
#pragma once
|
|
11
|
+
|
|
12
|
+
#include <cstdint>
|
|
13
|
+
#include <yoga/YGEnums.h>
|
|
14
|
+
#include <yoga/enums/YogaEnums.h>
|
|
15
|
+
|
|
16
|
+
namespace facebook::yoga {
|
|
17
|
+
|
|
18
|
+
enum class NodeType : uint8_t {
|
|
19
|
+
Default = YGNodeTypeDefault,
|
|
20
|
+
Text = YGNodeTypeText,
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
template <>
|
|
24
|
+
constexpr int32_t ordinalCount<NodeType>() {
|
|
25
|
+
return 2;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
constexpr NodeType scopedEnum(YGNodeType unscoped) {
|
|
29
|
+
return static_cast<NodeType>(unscoped);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
constexpr YGNodeType unscopedEnum(NodeType scoped) {
|
|
33
|
+
return static_cast<YGNodeType>(scoped);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
inline const char* toString(NodeType e) {
|
|
37
|
+
return YGNodeTypeToString(unscopedEnum(e));
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// @generated by enums.py
|
|
9
|
+
// clang-format off
|
|
10
|
+
#pragma once
|
|
11
|
+
|
|
12
|
+
#include <cstdint>
|
|
13
|
+
#include <yoga/YGEnums.h>
|
|
14
|
+
#include <yoga/enums/YogaEnums.h>
|
|
15
|
+
|
|
16
|
+
namespace facebook::yoga {
|
|
17
|
+
|
|
18
|
+
enum class Overflow : uint8_t {
|
|
19
|
+
Visible = YGOverflowVisible,
|
|
20
|
+
Hidden = YGOverflowHidden,
|
|
21
|
+
Scroll = YGOverflowScroll,
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
template <>
|
|
25
|
+
constexpr int32_t ordinalCount<Overflow>() {
|
|
26
|
+
return 3;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
constexpr Overflow scopedEnum(YGOverflow unscoped) {
|
|
30
|
+
return static_cast<Overflow>(unscoped);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
constexpr YGOverflow unscopedEnum(Overflow scoped) {
|
|
34
|
+
return static_cast<YGOverflow>(scoped);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
inline const char* toString(Overflow e) {
|
|
38
|
+
return YGOverflowToString(unscopedEnum(e));
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include <yoga/enums/Edge.h>
|
|
11
|
+
|
|
12
|
+
namespace facebook::yoga {
|
|
13
|
+
|
|
14
|
+
enum class PhysicalEdge : uint32_t {
|
|
15
|
+
Left = yoga::to_underlying(Edge::Left),
|
|
16
|
+
Top = yoga::to_underlying(Edge::Top),
|
|
17
|
+
Right = yoga::to_underlying(Edge::Right),
|
|
18
|
+
Bottom = yoga::to_underlying(Edge::Bottom),
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// @generated by enums.py
|
|
9
|
+
// clang-format off
|
|
10
|
+
#pragma once
|
|
11
|
+
|
|
12
|
+
#include <cstdint>
|
|
13
|
+
#include <yoga/YGEnums.h>
|
|
14
|
+
#include <yoga/enums/YogaEnums.h>
|
|
15
|
+
|
|
16
|
+
namespace facebook::yoga {
|
|
17
|
+
|
|
18
|
+
enum class PositionType : uint8_t {
|
|
19
|
+
Static = YGPositionTypeStatic,
|
|
20
|
+
Relative = YGPositionTypeRelative,
|
|
21
|
+
Absolute = YGPositionTypeAbsolute,
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
template <>
|
|
25
|
+
constexpr int32_t ordinalCount<PositionType>() {
|
|
26
|
+
return 3;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
constexpr PositionType scopedEnum(YGPositionType unscoped) {
|
|
30
|
+
return static_cast<PositionType>(unscoped);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
constexpr YGPositionType unscopedEnum(PositionType scoped) {
|
|
34
|
+
return static_cast<YGPositionType>(scoped);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
inline const char* toString(PositionType e) {
|
|
38
|
+
return YGPositionTypeToString(unscopedEnum(e));
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// @generated by enums.py
|
|
9
|
+
// clang-format off
|
|
10
|
+
#pragma once
|
|
11
|
+
|
|
12
|
+
#include <cstdint>
|
|
13
|
+
#include <yoga/YGEnums.h>
|
|
14
|
+
#include <yoga/enums/YogaEnums.h>
|
|
15
|
+
|
|
16
|
+
namespace facebook::yoga {
|
|
17
|
+
|
|
18
|
+
enum class Unit : uint8_t {
|
|
19
|
+
Undefined = YGUnitUndefined,
|
|
20
|
+
Point = YGUnitPoint,
|
|
21
|
+
Percent = YGUnitPercent,
|
|
22
|
+
Auto = YGUnitAuto,
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
template <>
|
|
26
|
+
constexpr int32_t ordinalCount<Unit>() {
|
|
27
|
+
return 4;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
constexpr Unit scopedEnum(YGUnit unscoped) {
|
|
31
|
+
return static_cast<Unit>(unscoped);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
constexpr YGUnit unscopedEnum(Unit scoped) {
|
|
35
|
+
return static_cast<YGUnit>(scoped);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
inline const char* toString(Unit e) {
|
|
39
|
+
return YGUnitToString(unscopedEnum(e));
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// @generated by enums.py
|
|
9
|
+
// clang-format off
|
|
10
|
+
#pragma once
|
|
11
|
+
|
|
12
|
+
#include <cstdint>
|
|
13
|
+
#include <yoga/YGEnums.h>
|
|
14
|
+
#include <yoga/enums/YogaEnums.h>
|
|
15
|
+
|
|
16
|
+
namespace facebook::yoga {
|
|
17
|
+
|
|
18
|
+
enum class Wrap : uint8_t {
|
|
19
|
+
NoWrap = YGWrapNoWrap,
|
|
20
|
+
Wrap = YGWrapWrap,
|
|
21
|
+
WrapReverse = YGWrapWrapReverse,
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
template <>
|
|
25
|
+
constexpr int32_t ordinalCount<Wrap>() {
|
|
26
|
+
return 3;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
constexpr Wrap scopedEnum(YGWrap unscoped) {
|
|
30
|
+
return static_cast<Wrap>(unscoped);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
constexpr YGWrap unscopedEnum(Wrap scoped) {
|
|
34
|
+
return static_cast<YGWrap>(scoped);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
inline const char* toString(Wrap e) {
|
|
38
|
+
return YGWrapToString(unscopedEnum(e));
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include <bit>
|
|
11
|
+
#include <iterator>
|
|
12
|
+
#include <type_traits>
|
|
13
|
+
|
|
14
|
+
namespace facebook::yoga {
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Concept for any enum/enum class
|
|
18
|
+
*/
|
|
19
|
+
template <typename EnumT>
|
|
20
|
+
concept Enumeration = std::is_enum_v<EnumT>;
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Count of ordinals in a Yoga enum which is sequential
|
|
24
|
+
*/
|
|
25
|
+
template <Enumeration EnumT>
|
|
26
|
+
constexpr int32_t ordinalCount();
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Concept for a yoga enum which is sequential
|
|
30
|
+
*/
|
|
31
|
+
template <typename EnumT>
|
|
32
|
+
concept HasOrdinality = (ordinalCount<EnumT>() > 0);
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Count of bits needed to represent every ordinal
|
|
36
|
+
*/
|
|
37
|
+
template <HasOrdinality EnumT>
|
|
38
|
+
constexpr int32_t bitCount() {
|
|
39
|
+
return std::bit_width(
|
|
40
|
+
static_cast<std::underlying_type_t<EnumT>>(ordinalCount<EnumT>() - 1));
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Polyfill of C++ 23 to_underlying()
|
|
45
|
+
* https://en.cppreference.com/w/cpp/utility/to_underlying
|
|
46
|
+
*/
|
|
47
|
+
constexpr auto to_underlying(Enumeration auto e) noexcept {
|
|
48
|
+
return static_cast<std::underlying_type_t<decltype(e)>>(e);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Convenience function to iterate through every value in a Yoga enum as part of
|
|
53
|
+
* a range-based for loop.
|
|
54
|
+
*/
|
|
55
|
+
template <HasOrdinality EnumT>
|
|
56
|
+
auto ordinals() {
|
|
57
|
+
struct Iterator {
|
|
58
|
+
EnumT e{};
|
|
59
|
+
|
|
60
|
+
EnumT operator*() const {
|
|
61
|
+
return e;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
Iterator& operator++() {
|
|
65
|
+
e = static_cast<EnumT>(to_underlying(e) + 1);
|
|
66
|
+
return *this;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
bool operator==(const Iterator& other) const = default;
|
|
70
|
+
bool operator!=(const Iterator& other) const = default;
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
struct Range {
|
|
74
|
+
Iterator begin() const {
|
|
75
|
+
return Iterator{};
|
|
76
|
+
}
|
|
77
|
+
Iterator end() const {
|
|
78
|
+
return Iterator{static_cast<EnumT>(ordinalCount<EnumT>())};
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
return Range{};
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
} // namespace facebook::yoga
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#include "event.h"
|
|
9
|
+
#include <atomic>
|
|
10
|
+
#include <memory>
|
|
11
|
+
|
|
12
|
+
namespace facebook::yoga {
|
|
13
|
+
|
|
14
|
+
const char* LayoutPassReasonToString(const LayoutPassReason value) {
|
|
15
|
+
switch (value) {
|
|
16
|
+
case LayoutPassReason::kInitial:
|
|
17
|
+
return "initial";
|
|
18
|
+
case LayoutPassReason::kAbsLayout:
|
|
19
|
+
return "abs_layout";
|
|
20
|
+
case LayoutPassReason::kStretch:
|
|
21
|
+
return "stretch";
|
|
22
|
+
case LayoutPassReason::kMultilineStretch:
|
|
23
|
+
return "multiline_stretch";
|
|
24
|
+
case LayoutPassReason::kFlexLayout:
|
|
25
|
+
return "flex_layout";
|
|
26
|
+
case LayoutPassReason::kMeasureChild:
|
|
27
|
+
return "measure";
|
|
28
|
+
case LayoutPassReason::kAbsMeasureChild:
|
|
29
|
+
return "abs_measure";
|
|
30
|
+
case LayoutPassReason::kFlexMeasure:
|
|
31
|
+
return "flex_measure";
|
|
32
|
+
default:
|
|
33
|
+
return "unknown";
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
namespace {
|
|
38
|
+
|
|
39
|
+
struct Node {
|
|
40
|
+
std::function<Event::Subscriber> subscriber = nullptr;
|
|
41
|
+
Node* next = nullptr;
|
|
42
|
+
|
|
43
|
+
explicit Node(std::function<Event::Subscriber>&& subscriber)
|
|
44
|
+
: subscriber{std::move(subscriber)} {}
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
std::atomic<Node*> subscribers{nullptr};
|
|
48
|
+
|
|
49
|
+
Node* push(Node* newHead) {
|
|
50
|
+
Node* oldHead = nullptr;
|
|
51
|
+
do {
|
|
52
|
+
oldHead = subscribers.load(std::memory_order_relaxed);
|
|
53
|
+
if (newHead != nullptr) {
|
|
54
|
+
newHead->next = oldHead;
|
|
55
|
+
}
|
|
56
|
+
} while (!subscribers.compare_exchange_weak(
|
|
57
|
+
oldHead, newHead, std::memory_order_release, std::memory_order_relaxed));
|
|
58
|
+
return oldHead;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
} // namespace
|
|
62
|
+
|
|
63
|
+
void Event::reset() {
|
|
64
|
+
auto head = push(nullptr);
|
|
65
|
+
while (head != nullptr) {
|
|
66
|
+
auto current = head;
|
|
67
|
+
head = head->next;
|
|
68
|
+
delete current;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
void Event::subscribe(std::function<Subscriber>&& subscriber) {
|
|
73
|
+
push(new Node{std::move(subscriber)});
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
void Event::publish(
|
|
77
|
+
YGNodeConstRef node,
|
|
78
|
+
Type eventType,
|
|
79
|
+
const Data& eventData) {
|
|
80
|
+
for (auto subscriber = subscribers.load(std::memory_order_relaxed);
|
|
81
|
+
subscriber != nullptr;
|
|
82
|
+
subscriber = subscriber->next) {
|
|
83
|
+
subscriber->subscriber(node, eventType, eventData);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
} // namespace facebook::yoga
|