├── docs
├── .nojekyll
├── api.md
├── _navbar.md
├── guide.md
├── components
│ ├── Spin.md
│ ├── CellGroup.md
│ ├── Button.md
│ ├── Badge.md
│ └── Touchable.md
├── README.md
├── _sidebar.md
└── index.html
├── .gitignore
├── packages
├── playground
│ ├── .watchmanconfig
│ ├── app.json
│ ├── babel.config.js
│ ├── android
│ │ ├── app
│ │ │ ├── src
│ │ │ │ ├── main
│ │ │ │ │ ├── res
│ │ │ │ │ │ ├── values
│ │ │ │ │ │ │ ├── strings.xml
│ │ │ │ │ │ │ └── styles.xml
│ │ │ │ │ │ ├── mipmap-hdpi
│ │ │ │ │ │ │ ├── ic_launcher.png
│ │ │ │ │ │ │ └── ic_launcher_round.png
│ │ │ │ │ │ ├── mipmap-mdpi
│ │ │ │ │ │ │ ├── ic_launcher.png
│ │ │ │ │ │ │ └── ic_launcher_round.png
│ │ │ │ │ │ ├── mipmap-xhdpi
│ │ │ │ │ │ │ ├── ic_launcher.png
│ │ │ │ │ │ │ └── ic_launcher_round.png
│ │ │ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ │ │ │ ├── ic_launcher.png
│ │ │ │ │ │ │ └── ic_launcher_round.png
│ │ │ │ │ │ └── mipmap-xxxhdpi
│ │ │ │ │ │ │ ├── ic_launcher.png
│ │ │ │ │ │ │ └── ic_launcher_round.png
│ │ │ │ │ ├── java
│ │ │ │ │ │ └── com
│ │ │ │ │ │ │ └── reactnativeui
│ │ │ │ │ │ │ └── MainActivity.java
│ │ │ │ │ └── AndroidManifest.xml
│ │ │ │ └── debug
│ │ │ │ │ └── AndroidManifest.xml
│ │ │ ├── debug.keystore
│ │ │ ├── proguard-rules.pro
│ │ │ └── build_defs.bzl
│ │ ├── gradle
│ │ │ └── wrapper
│ │ │ │ ├── gradle-wrapper.jar
│ │ │ │ └── gradle-wrapper.properties
│ │ ├── settings.gradle
│ │ └── build.gradle
│ ├── ios
│ │ ├── ReactNativeUi
│ │ │ ├── Images.xcassets
│ │ │ │ ├── Contents.json
│ │ │ │ └── AppIcon.appiconset
│ │ │ │ │ └── Contents.json
│ │ │ ├── AppDelegate.h
│ │ │ └── main.m
│ │ ├── ReactNativeUi.xcworkspace
│ │ │ └── contents.xcworkspacedata
│ │ ├── ReactNativeUiTests
│ │ │ └── Info.plist
│ │ └── Podfile
│ ├── src
│ │ ├── images
│ │ │ └── tabbar
│ │ │ │ ├── comp.png
│ │ │ │ ├── tool.png
│ │ │ │ ├── comp-selected.png
│ │ │ │ └── tool-selected.png
│ │ ├── shim.d.ts
│ │ ├── core
│ │ │ ├── constants.ts
│ │ │ └── router.tsx
│ │ ├── pages
│ │ │ ├── Home
│ │ │ │ └── tabs
│ │ │ │ │ └── tools.tsx
│ │ │ └── Button
│ │ │ │ └── index.tsx
│ │ └── index.tsx
│ ├── .buckconfig
│ ├── .gitattributes
│ ├── CHANGELOG.md
│ ├── .prettierrc.js
│ ├── __tests__
│ │ └── App-test.tsx
│ ├── public
│ │ └── index.html
│ ├── index.js
│ ├── .gitignore
│ └── metro.config.js
└── ui-view
│ ├── .gitignore
│ ├── .watchmanconfig
│ ├── babel.config.js
│ ├── CHANGELOG.md
│ ├── .vscode
│ └── settings.json
│ ├── src
│ ├── assets
│ │ └── svg
│ │ │ ├── dash.svg
│ │ │ ├── minus.svg
│ │ │ ├── small-dash.svg
│ │ │ ├── line.svg
│ │ │ ├── ellipsis.svg
│ │ │ ├── filter-filling.svg
│ │ │ ├── up.svg
│ │ │ ├── down.svg
│ │ │ ├── left.svg
│ │ │ ├── minus-circle-fill.svg
│ │ │ ├── check.svg
│ │ │ ├── right.svg
│ │ │ ├── detail-more.svg
│ │ │ ├── arrow-up.svg
│ │ │ ├── arrow-left.svg
│ │ │ ├── arrow-down.svg
│ │ │ ├── arrow-right.svg
│ │ │ ├── filter.svg
│ │ │ ├── send.svg
│ │ │ ├── vertical-left.svg
│ │ │ ├── minus-square.svg
│ │ │ ├── vertical-right.svg
│ │ │ ├── sort-menu.svg
│ │ │ ├── add-circle-fill.svg
│ │ │ ├── vertical-align-bottom.svg
│ │ │ ├── vertical-align-top.svg
│ │ │ ├── add.svg
│ │ │ ├── minus-circle.svg
│ │ │ ├── select.svg
│ │ │ ├── upload.svg
│ │ │ ├── arrow-up-filling.svg
│ │ │ ├── download.svg
│ │ │ ├── bell-fill.svg
│ │ │ ├── arrow-down-filling.svg
│ │ │ ├── database.svg
│ │ │ ├── swap.svg
│ │ │ ├── drag.svg
│ │ │ ├── add-square.svg
│ │ │ ├── align-left.svg
│ │ │ ├── align-right.svg
│ │ │ ├── align-center.svg
│ │ │ ├── arrow-left-filling.svg
│ │ │ ├── arrow-right-filling.svg
│ │ │ ├── close-circle-fill.svg
│ │ │ ├── double-left.svg
│ │ │ ├── text.svg
│ │ │ ├── double-right.svg
│ │ │ ├── layout-filling.svg
│ │ │ ├── intermediate-filling.svg
│ │ │ ├── colum-height.svg
│ │ │ ├── sever.svg
│ │ │ ├── qq.svg
│ │ │ ├── zoom-out.svg
│ │ │ ├── bell.svg
│ │ │ ├── vertical-align-middle.svg
│ │ │ ├── google.svg
│ │ │ ├── top.svg
│ │ │ ├── apple-fill.svg
│ │ │ ├── eye.svg
│ │ │ ├── news-filling.svg
│ │ │ ├── rotate-left.svg
│ │ │ ├── bottom.svg
│ │ │ ├── close-circle.svg
│ │ │ ├── qq-circle-fill.svg
│ │ │ ├── safetycertificate.svg
│ │ │ ├── clock-filling.svg
│ │ │ ├── search.svg
│ │ │ ├── alipay.svg
│ │ │ ├── video.svg
│ │ │ ├── google-circle-fill.svg
│ │ │ ├── prompt-filling.svg
│ │ │ ├── folder-filling.svg
│ │ │ ├── column-horizontal.svg
│ │ │ ├── dingtalk.svg
│ │ │ ├── column-vertical.svg
│ │ │ ├── question-circle-fill.svg
│ │ │ ├── cut.svg
│ │ │ ├── stop.svg
│ │ │ ├── twitter.svg
│ │ │ ├── user-circle-filling.svg
│ │ │ ├── prompt.svg
│ │ │ ├── close.svg
│ │ │ ├── electronics.svg
│ │ │ ├── layout.svg
│ │ │ ├── notification-filling.svg
│ │ │ ├── success-filling.svg
│ │ │ ├── twitter-circle-fill.svg
│ │ │ ├── column-3.svg
│ │ │ ├── dingtalk-circle-fill.svg
│ │ │ ├── pad.svg
│ │ │ ├── navigation.svg
│ │ │ ├── check-item-filling.svg
│ │ │ ├── sorting.svg
│ │ │ ├── warning-filling.svg
│ │ │ ├── back.svg
│ │ │ ├── key.svg
│ │ │ ├── question.svg
│ │ │ ├── alipay-circle-fill.svg
│ │ │ ├── time.svg
│ │ │ ├── more.svg
│ │ │ ├── success.svg
│ │ │ ├── add-circle.svg
│ │ │ ├── column-4.svg
│ │ │ ├── forward.svg
│ │ │ ├── github-fill.svg
│ │ │ ├── print.svg
│ │ │ ├── question-circle.svg
│ │ │ ├── comment-filling.svg
│ │ │ ├── email.svg
│ │ │ ├── caps-unlock-filling.svg
│ │ │ ├── toggle-left.svg
│ │ │ ├── undo.svg
│ │ │ ├── work-filling.svg
│ │ │ ├── map-filling.svg
│ │ │ ├── toggle-right.svg
│ │ │ ├── edit-filling.svg
│ │ │ ├── user.svg
│ │ │ ├── code.svg
│ │ │ ├── rise-filling.svg
│ │ │ ├── arrow-up-circle.svg
│ │ │ ├── picture-filling.svg
│ │ │ ├── wifi.svg
│ │ │ ├── delete-filling.svg
│ │ │ ├── favorite-filling.svg
│ │ │ ├── zoom-in.svg
│ │ │ ├── arrow-right-circle.svg
│ │ │ ├── sort-down.svg
│ │ │ ├── decline-filling.svg
│ │ │ ├── logout.svg
│ │ │ ├── zhihu-circle-fill.svg
│ │ │ ├── arrow-left-circle.svg
│ │ │ ├── home-filling.svg
│ │ │ ├── mobile-phone.svg
│ │ │ ├── complete.svg
│ │ │ ├── switchuser.svg
│ │ │ ├── folder-close.svg
│ │ │ ├── login.svg
│ │ │ ├── share.svg
│ │ │ ├── error.svg
│ │ │ ├── sync.svg
│ │ │ ├── file-common-filling.svg
│ │ │ ├── security.svg
│ │ │ ├── deleteuser.svg
│ │ │ ├── arrow-down-circle.svg
│ │ │ ├── menu.svg
│ │ │ ├── check-item.svg
│ │ │ ├── meh-filling.svg
│ │ │ ├── play.svg
│ │ │ ├── map.svg
│ │ │ ├── refresh.svg
│ │ │ ├── arrow-double-left.svg
│ │ │ ├── arrow-double-right.svg
│ │ │ ├── fabulous.svg
│ │ │ ├── file-common.svg
│ │ │ ├── lock.svg
│ │ │ ├── file-open.svg
│ │ │ ├── meh.svg
│ │ │ ├── skip.svg
│ │ │ ├── user-circle.svg
│ │ │ ├── warning.svg
│ │ │ ├── adduser.svg
│ │ │ ├── discount.svg
│ │ │ ├── task-filling.svg
│ │ │ ├── help.svg
│ │ │ ├── mic.svg
│ │ │ ├── zhihu.svg
│ │ │ ├── explain.svg
│ │ │ ├── taobao.svg
│ │ │ ├── unlock.svg
│ │ │ ├── chart-pie.svg
│ │ │ ├── message.svg
│ │ │ ├── save.svg
│ │ │ ├── run-in.svg
│ │ │ ├── image-text.svg
│ │ │ ├── file-add.svg
│ │ │ └── android-fill.svg
│ ├── components
│ │ ├── Portal
│ │ │ └── index.tsx
│ │ ├── Swiper
│ │ │ └── swiperItem.tsx
│ │ ├── ImageCropper
│ │ │ └── index.web.tsx
│ │ └── Cell
│ │ │ └── cellGroup.tsx
│ ├── lib
│ │ └── react-native-svg-uri
│ │ │ └── utils.ts
│ └── utils
│ │ └── index.tsx
│ └── LICENSE
├── .editorconfig
├── .gitattributes
├── .prettierrc.js
├── .eslintrc.js
├── .changeset
├── config.json
└── README.md
├── package.json
└── LICENSE
/docs/.nojekyll:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | .DS_Store
--------------------------------------------------------------------------------
/docs/api.md:
--------------------------------------------------------------------------------
1 | # API
2 |
3 | 暂未提供
4 |
--------------------------------------------------------------------------------
/packages/playground/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {}
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | # Windows files
2 | [*.bat]
3 | end_of_line = crlf
4 |
--------------------------------------------------------------------------------
/packages/playground/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "appName": "ReactNativeUi"
3 | }
--------------------------------------------------------------------------------
/packages/ui-view/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | dist
3 | esm
4 | .DS_Store
5 | yarn.lock
6 |
--------------------------------------------------------------------------------
/packages/ui-view/.watchmanconfig:
--------------------------------------------------------------------------------
1 | {
2 | "ignore_dirs": [
3 | "node_modules"
4 | ]
5 | }
6 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | packages/playground/android/java_pid75013.hprof filter=lfs diff=lfs merge=lfs -text
2 |
--------------------------------------------------------------------------------
/docs/_navbar.md:
--------------------------------------------------------------------------------
1 | - [主页](/)
2 | - [指南](guide.md)
3 | - [组件](components/button.md)
4 | - [API](api.md)
5 |
--------------------------------------------------------------------------------
/packages/ui-view/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: ['module:metro-react-native-babel-preset'],
3 | };
4 |
--------------------------------------------------------------------------------
/packages/playground/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: ['module:metro-react-native-babel-preset'],
3 | };
4 |
--------------------------------------------------------------------------------
/packages/ui-view/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # react-native-ui-view
2 |
3 | ## 0.0.10
4 |
5 | ### Minor Changes
6 |
7 | - update button components
8 |
--------------------------------------------------------------------------------
/packages/playground/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ReactNativeUi
3 |
4 |
--------------------------------------------------------------------------------
/packages/playground/android/app/debug.keystore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/android/app/debug.keystore
--------------------------------------------------------------------------------
/packages/playground/ios/ReactNativeUi/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/packages/playground/src/images/tabbar/comp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/src/images/tabbar/comp.png
--------------------------------------------------------------------------------
/packages/playground/src/images/tabbar/tool.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/src/images/tabbar/tool.png
--------------------------------------------------------------------------------
/packages/playground/.buckconfig:
--------------------------------------------------------------------------------
1 |
2 | [android]
3 | target = Google Inc.:Google APIs:23
4 |
5 | [maven_repositories]
6 | central = https://repo1.maven.org/maven2
7 |
--------------------------------------------------------------------------------
/packages/playground/.gitattributes:
--------------------------------------------------------------------------------
1 | # Windows files should use crlf line endings
2 | # https://help.github.com/articles/dealing-with-line-endings/
3 | *.bat text eol=crlf
4 |
--------------------------------------------------------------------------------
/packages/playground/src/images/tabbar/comp-selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/src/images/tabbar/comp-selected.png
--------------------------------------------------------------------------------
/packages/playground/src/images/tabbar/tool-selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/src/images/tabbar/tool-selected.png
--------------------------------------------------------------------------------
/packages/playground/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # react-native-ui-view-playground
2 |
3 | ## 0.0.2
4 |
5 | ### Patch Changes
6 |
7 | - Updated dependencies
8 | - react-native-ui-view@0.1.0
9 |
--------------------------------------------------------------------------------
/packages/playground/android/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/android/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/packages/playground/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/packages/playground/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/packages/playground/src/shim.d.ts:
--------------------------------------------------------------------------------
1 | declare module '*.json' {
2 | const value: any;
3 | export default value;
4 | }
5 | declare module '*.png' {
6 | const img: number;
7 | export default img;
8 | }
9 |
--------------------------------------------------------------------------------
/packages/playground/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/packages/playground/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/packages/playground/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/packages/playground/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/packages/playground/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/packages/playground/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/packages/playground/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/packages/playground/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/guyue88/react-native-ui-view/HEAD/packages/playground/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/.prettierrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | bracketSpacing: true,
3 | jsxBracketSameLine: false,
4 | singleQuote: true,
5 | trailingComma: 'all',
6 | arrowParens: 'avoid',
7 | printWidth: 120,
8 | semi: true,
9 | };
10 |
--------------------------------------------------------------------------------
/packages/playground/android/settings.gradle:
--------------------------------------------------------------------------------
1 | rootProject.name = 'ReactNativeUi'
2 | apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings)
3 | include ':app'
4 |
--------------------------------------------------------------------------------
/packages/playground/.prettierrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | bracketSpacing: true,
3 | jsxBracketSameLine: false,
4 | singleQuote: true,
5 | trailingComma: 'all',
6 | arrowParens: 'avoid',
7 | printWidth: 120,
8 | semi: true,
9 | };
10 |
--------------------------------------------------------------------------------
/.eslintrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | root: true,
3 | extends: '@react-native-community',
4 | plugins: ['react-hooks'],
5 | rules: {
6 | 'react-hooks/rules-of-hooks': 'error',
7 | 'react-hooks/exhaustive-deps': 'warn',
8 | },
9 | };
10 |
--------------------------------------------------------------------------------
/packages/playground/ios/ReactNativeUi/AppDelegate.h:
--------------------------------------------------------------------------------
1 | #import
2 | #import
3 |
4 | @interface AppDelegate : UIResponder
5 |
6 | @property (nonatomic, strong) UIWindow *window;
7 |
8 | @end
9 |
--------------------------------------------------------------------------------
/packages/playground/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 |
--------------------------------------------------------------------------------
/packages/ui-view/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "editor.formatOnSave": true,
3 | "editor.codeActionsOnSave": {
4 | "source.fixAll.eslint": false
5 | },
6 | "eslint.nodePath": null,
7 | "eslint.options": {
8 | "resolvePluginsRelativeTo": null
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/packages/playground/ios/ReactNativeUi/main.m:
--------------------------------------------------------------------------------
1 | #import
2 |
3 | #import "AppDelegate.h"
4 |
5 | int main(int argc, char * argv[]) {
6 | @autoreleasepool {
7 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/packages/playground/src/core/constants.ts:
--------------------------------------------------------------------------------
1 | export const MODULES = {
2 | HOME: 'HOME',
3 | ICON: 'ICON',
4 | COLORS: 'COLORS',
5 | MODAL: 'MODAL',
6 | TOAST: 'TOAST',
7 | BADGE: 'BADGE',
8 | SEARCH: 'SEARCH',
9 | INDEX_LIST: 'INDEX_LIST',
10 | BUTTON: 'BUTTON',
11 | };
12 |
--------------------------------------------------------------------------------
/.changeset/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://unpkg.com/@changesets/config@2.0.0/schema.json",
3 | "changelog": "@changesets/cli/changelog",
4 | "commit": false,
5 | "fixed": [],
6 | "linked": [],
7 | "access": "restricted",
8 | "baseBranch": "master",
9 | "updateInternalDependencies": "patch",
10 | "ignore": []
11 | }
--------------------------------------------------------------------------------
/packages/playground/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/packages/playground/ios/ReactNativeUi.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/packages/playground/__tests__/App-test.tsx:
--------------------------------------------------------------------------------
1 | /**
2 | * @format
3 | */
4 |
5 | import 'react-native';
6 | import React from 'react';
7 | import App from '../App';
8 |
9 | // Note: test renderer must be required after react-native.
10 | import renderer from 'react-test-renderer';
11 |
12 | it('renders correctly', () => {
13 | renderer.create();
14 | });
15 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/dash.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/playground/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Component Demo
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/minus.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/playground/index.js:
--------------------------------------------------------------------------------
1 | import 'react-native-gesture-handler';
2 | import { AppRegistry } from 'react-native';
3 | import App from './src';
4 | import { appName } from './app.json';
5 |
6 | AppRegistry.registerComponent(appName, () => App);
7 |
8 | if (typeof document !== 'undefined') {
9 | const rootTag = document.getElementById('root');
10 | AppRegistry.runApplication(appName, { rootTag });
11 | }
12 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/small-dash.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/line.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/packages/playground/src/pages/Home/tabs/tools.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { StyleSheet, View, Text } from 'react-native';
3 |
4 | const Tools = () => {
5 | return (
6 |
7 | Tools
8 |
9 | );
10 | };
11 |
12 | const styles = StyleSheet.create({
13 | title: {
14 | fontSize: 18,
15 | textAlign: 'center',
16 | marginTop: 30,
17 | },
18 | });
19 |
20 | export default Tools;
21 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/ellipsis.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/components/Portal/index.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { PortalGuard, PortalHost } from './host';
3 |
4 | export const portal = new PortalGuard();
5 |
6 | export default class Portal extends React.Component {
7 | static add = portal.add;
8 | static remove = portal.remove;
9 |
10 | render() {
11 | return (
12 | <>
13 | {this.props.children}
14 |
15 | >
16 | );
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/filter-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/up.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/down.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/minus-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/check.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/detail-more.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/playground/android/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # By default, the flags in this file are appended to flags specified
3 | # in /usr/local/Cellar/android-sdk/24.3.3/tools/proguard/proguard-android.txt
4 | # You can edit the include path and order by changing the proguardFiles
5 | # directive in build.gradle.
6 | #
7 | # For more details, see
8 | # http://developer.android.com/guide/developing/tools/proguard.html
9 |
10 | # Add any project specific keep options here:
11 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/arrow-up.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.changeset/README.md:
--------------------------------------------------------------------------------
1 | # Changesets
2 |
3 | Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works
4 | with multi-package repos, or single-package repos to help you version and publish your code. You can
5 | find the full documentation for it [in our repository](https://github.com/changesets/changesets)
6 |
7 | We have a quick list of common questions to get you started engaging with this project in
8 | [our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md)
9 |
--------------------------------------------------------------------------------
/packages/playground/src/index.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { Portal } from 'react-native-ui-view';
3 | import { Router } from './core/router';
4 |
5 | import './pages/Home';
6 | import './pages/Icon';
7 | import './pages/Modal';
8 | import './pages/Toast';
9 | import './pages/Badge';
10 | import './pages/Search';
11 | import './pages/IndexList';
12 | import './pages/Button';
13 |
14 | const App = () => {
15 | return (
16 |
17 |
18 |
19 | );
20 | };
21 |
22 | export default App;
23 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/arrow-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/arrow-down.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/arrow-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/filter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/send.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/vertical-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/minus-square.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/vertical-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/sort-menu.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/add-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/vertical-align-bottom.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/vertical-align-top.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/playground/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/add.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/minus-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/select.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/components/Swiper/swiperItem.tsx:
--------------------------------------------------------------------------------
1 | import React, { PropsWithChildren } from 'react';
2 | import { View } from 'react-native';
3 |
4 | export type SwiperItemProps = {
5 | // 宽度
6 | width?: number;
7 | // 圆角值
8 | borderRadius?: number;
9 | };
10 |
11 | const SwiperItem: React.FC> = props => {
12 | const { width, borderRadius = 8, children } = props;
13 |
14 | // eslint-disable-next-line react-native/no-inline-styles
15 | return {children};
16 | };
17 |
18 | export default SwiperItem;
19 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/upload.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/arrow-up-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/download.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/bell-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/arrow-down-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/playground/android/app/src/main/java/com/reactnativeui/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.reactnativeui;
2 |
3 | import com.facebook.react.ReactActivity;
4 | import android.os.Bundle;
5 |
6 | public class MainActivity extends ReactActivity {
7 |
8 | @Override
9 | protected void onCreate(Bundle savedInstanceState) {
10 | super.onCreate(null);
11 | }
12 |
13 | /**
14 | * Returns the name of the main component registered from JavaScript. This is used to schedule
15 | * rendering of the component.
16 | */
17 | @Override
18 | protected String getMainComponentName() {
19 | return "ReactNativeUi";
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/database.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/swap.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/drag.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/add-square.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/align-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/align-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/align-center.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/arrow-left-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/arrow-right-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/close-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/double-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/text.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/components/ImageCropper/index.web.tsx:
--------------------------------------------------------------------------------
1 | import React, { PropsWithChildren } from 'react';
2 | import { View } from 'react-native';
3 |
4 | export type ImageCropperProps = {
5 | // 需要裁剪的图标地址,仅接受链接地址
6 | uri: string;
7 | // 是否可见
8 | visible: boolean;
9 | // 裁剪目标大小
10 | destSize?: { width: number; height: number };
11 | // 取消文案,默认“取消”
12 | cancelText?: string;
13 | // 确认文案,默认“确定”
14 | okText?: string;
15 | // 确认回调
16 | onConfirm: (uri: string) => void;
17 | // 关闭回调
18 | onClose: () => void;
19 | };
20 |
21 | const ImageCropper: React.FC> = () => {
22 | return ;
23 | };
24 |
25 | export default ImageCropper;
26 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/double-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/layout-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/intermediate-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/colum-height.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/sever.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/playground/android/app/build_defs.bzl:
--------------------------------------------------------------------------------
1 | """Helper definitions to glob .aar and .jar targets"""
2 |
3 | def create_aar_targets(aarfiles):
4 | for aarfile in aarfiles:
5 | name = "aars__" + aarfile[aarfile.rindex("/") + 1:aarfile.rindex(".aar")]
6 | lib_deps.append(":" + name)
7 | android_prebuilt_aar(
8 | name = name,
9 | aar = aarfile,
10 | )
11 |
12 | def create_jar_targets(jarfiles):
13 | for jarfile in jarfiles:
14 | name = "jars__" + jarfile[jarfile.rindex("/") + 1:jarfile.rindex(".jar")]
15 | lib_deps.append(":" + name)
16 | prebuilt_jar(
17 | name = name,
18 | binary_jar = jarfile,
19 | )
20 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/qq.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/zoom-out.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/bell.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/vertical-align-middle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/google.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/top.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/apple-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/eye.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/news-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/guide.md:
--------------------------------------------------------------------------------
1 | # 快速开始
2 |
3 | ### 安装
4 |
5 | ```shell
6 | npm i react-native-ui-view --save
7 | ```
8 |
9 | ### 初始化
10 |
11 | ```javascript
12 | import React from 'react';
13 | import { AppRegistry } from 'react-native';
14 | import { Portal } from 'react-native-ui-view';
15 |
16 | const App: React.FC<{}> = () => {
17 | // Modal/Toast的函数调用方式需要使用 Portal 包裹整个应用
18 | return {/* xxx */};
19 | };
20 | AppRegistry.registerComponent('appName', () => app);
21 | ```
22 |
23 | ### 使用
24 |
25 | ```javascript
26 | import React from 'react';
27 | import { View } from 'react-native';
28 | import { Button } from 'react-native-ui-view';
29 |
30 | const App: React.FC<{}> = () => {
31 | return (
32 |
33 |
34 |
35 | );
36 | };
37 | ```
38 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/rotate-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/bottom.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/close-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/components/Spin.md:
--------------------------------------------------------------------------------
1 | # Spin 加载动画
2 |
3 | 此组件为一个小动画,一般用于正在加载的动画。
4 |
5 | ## 平台差异性说明
6 |
7 | | ReactNative | WEB |
8 | | ----------- | --- |
9 | | √ | √ |
10 |
11 | ## 基本使用
12 |
13 | ```typescript
14 | import React from 'react';
15 | import { Spin } from 'react-native-ui-view';
16 |
17 | const Demo: React.FC<{}> = () => {
18 | return ;
19 | };
20 | ```
21 |
22 | ## Props
23 |
24 | | 参数 | 说明 | 类型 | 必填 | 默认值 |
25 | | -------- | ------------ | -------------------- | ---- | ------- |
26 | | style | 自定义样式 | StyleProp | × | - |
27 | | color | 颜色 | string | × | #108ee9 |
28 | | size | 大小 | number | × | 30 |
29 | | spinning | 是否在动画中 | boolean | × | #true |
30 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/qq-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/safetycertificate.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/clock-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/playground/ios/ReactNativeUi/Images.xcassets/AppIcon.appiconset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "iphone",
5 | "size" : "29x29",
6 | "scale" : "2x"
7 | },
8 | {
9 | "idiom" : "iphone",
10 | "size" : "29x29",
11 | "scale" : "3x"
12 | },
13 | {
14 | "idiom" : "iphone",
15 | "size" : "40x40",
16 | "scale" : "2x"
17 | },
18 | {
19 | "idiom" : "iphone",
20 | "size" : "40x40",
21 | "scale" : "3x"
22 | },
23 | {
24 | "idiom" : "iphone",
25 | "size" : "60x60",
26 | "scale" : "2x"
27 | },
28 | {
29 | "idiom" : "iphone",
30 | "size" : "60x60",
31 | "scale" : "3x"
32 | }
33 | ],
34 | "info" : {
35 | "version" : 1,
36 | "author" : "xcode"
37 | }
38 | }
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/search.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/alipay.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/video.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/google-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/prompt-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/components/CellGroup.md:
--------------------------------------------------------------------------------
1 | # CellGroup 单元格组
2 |
3 | CellGroup 单元格组用于带有标题的一组列表的情况,比如个人中心页,设置页等,需要与 Cell 组件配合使用
4 |
5 | ## 平台差异性说明
6 |
7 | | ReactNative | WEB |
8 | | ----------- | --- |
9 | | √ | √ |
10 |
11 | ## 基本使用
12 |
13 | ```typescript
14 | import React from 'react';
15 | import { Cell, CellGroup } from 'react-native-ui-view';
16 |
17 | const Demo: React.FC<{}> = () => {
18 | return (
19 |
20 | |
21 | |
22 | |
23 |
24 | );
25 | };
26 | ```
27 |
28 | ## Props
29 |
30 | | 参数 | 说明 | 类型 | 必填 | 默认值 |
31 | | --------------- | ------ | ------ | ---- | ------ |
32 | | title | 标题 | string | × | - |
33 | | backgroundColor | 背景色 | string | × | - |
34 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/folder-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/column-horizontal.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/dingtalk.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/column-vertical.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/question-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/playground/ios/ReactNativeUiTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/cut.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/stop.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/playground/ios/Podfile:
--------------------------------------------------------------------------------
1 | require_relative '../node_modules/react-native/scripts/react_native_pods'
2 | require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
3 |
4 | platform :ios, '10.0'
5 |
6 | target 'ReactNativeUi' do
7 | config = use_native_modules!
8 |
9 | use_react_native!(
10 | :path => config[:reactNativePath],
11 | # to enable hermes on iOS, change `false` to `true` and then install pods
12 | :hermes_enabled => false
13 | )
14 |
15 | target 'ReactNativeUiTests' do
16 | inherit! :complete
17 | # Pods for testing
18 | end
19 |
20 | # Enables Flipper.
21 | #
22 | # Note that if you have use_frameworks! enabled, Flipper will not work and
23 | # you should disable the next line.
24 | use_flipper!()
25 |
26 | post_install do |installer|
27 | react_native_post_install(installer)
28 | end
29 | end
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/twitter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/user-circle-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/prompt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/close.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/electronics.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/layout.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/notification-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/success-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/twitter-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/column-3.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/dingtalk-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/pad.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/navigation.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/check-item-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/sorting.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/warning-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/back.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/key.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/question.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/alipay-circle-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/time.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/more.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/success.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/add-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/column-4.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/forward.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/github-fill.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/print.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/question-circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/playground/src/pages/Button/index.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { StyleSheet, SafeAreaView, View } from 'react-native';
3 | import { useNavigation } from '@react-navigation/native';
4 | import { Theme, Navbar, Button } from 'react-native-ui-view';
5 | import { MODULES } from '../../core/constants';
6 | import { PageContainer } from '../../core/router';
7 |
8 | const ButtonPage = () => {
9 | const navigation = useNavigation();
10 |
11 | return (
12 |
13 | navigation.goBack()} />
14 |
15 |
16 |
17 |
18 | );
19 | };
20 |
21 | const styles = StyleSheet.create({
22 | container: {
23 | flex: 1,
24 | backgroundColor: Theme.fillBase,
25 | },
26 | page: {
27 | padding: 15,
28 | },
29 | });
30 |
31 | PageContainer(MODULES.BUTTON, ButtonPage);
32 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/comment-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/email.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/caps-unlock-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/toggle-left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/undo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/work-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/map-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/toggle-right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/edit-filling.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/README.md:
--------------------------------------------------------------------------------
1 | # React Native Ui View
2 |
3 | 
4 | 
5 |
6 | React Native Ui View 是一个 react native 组件库,全面兼容 react native 生态框架,全面的组件和便捷的工具会让您信手拈来,如鱼得水。
7 |
8 | ## 组件列表
9 |
10 | - [x] ActionSheet
11 | - [x] Badge
12 | - [x] Button
13 | - [x] Cell
14 | - [x] CellGroup
15 | - [x] Icon
16 | - [x] ImageCropper
17 | - [x] IndexList
18 | - [x] Modal
19 | - [x] Navbar
20 | - [x] Picker
21 | - [x] Popup
22 | - [x] Portal
23 | - [x] Search
24 | - [x] Spin
25 | - [x] Swiper
26 | - [x] Tabbar
27 | - [x] Toast
28 | - [x] Touchable
29 |
30 | ## 适用领域
31 |
32 | React Native Ui View 是 react native 生态专用的 UI 框架,目前仅支持在 react native 中使用,部分组件可以支持在 react-native-web 中使用。
33 |
34 | ## 版权信息
35 |
36 | React Native Ui View 遵循 MIT (opens new window)开源协议,意味着您无需支付任何费用,也无需授权,即可将 React Native Ui View 应用到您的产品中。
37 |
38 | 注意:这并不意味着您可以将 React Native Ui View 应用到非法的领域,比如涉及赌博,暴力等方面。如因此产生纠纷或法律问题,React Native Ui View 不承担任何责任。
39 |
--------------------------------------------------------------------------------
/packages/ui-view/src/assets/svg/user.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/components/Button.md:
--------------------------------------------------------------------------------
1 | # Button 按钮
2 |
3 | 按钮
4 |
5 | ## 平台差异性说明
6 |
7 | | ReactNative | WEB |
8 | | ----------- | --- |
9 | | √ | √ |
10 |
11 | ## 基本使用
12 |
13 | ```typescript
14 | import React from 'react';
15 | import { Button } from 'react-native-ui-view';
16 |
17 | const Demo: React.FC<{}> = () => {
18 | return