Unverified Commit d1264b44 authored by MNAth_'s avatar MNAth_ Committed by GitHub
Browse files

Feature/shop-mobile-expo (#1482)

* fix: add key prop to mapped screens

* refactor: call drawer navigation into stack navigation

* fix: add key prop

* fix: remove NavigationContainer

* refactor: remove useless code

* refactor: update drawer navigation component name

* refactor: update custom drawer content name

* refactor: update custom drawer content name

* feat: add drawe header height

* feat: design drawer header

* refactor: reduce radius size

* refactor: set header drawer as absolute

* feat: implement header & manage links section

* feat: use translation

* refactor: udapte drawer routing modules logic to solve translation issue

* refactor: udapte drawer routing modules logic to solve translation issue

* refactor: update types name

* fix: set corrent type for onPress prop

* refactor: update icon types

* refactor: update touchableCard behavior

* refactor: update seconday to gray color

* refactor: add secure to img prop of TouchableCard

* refactor: design custom drawer items

* refactor: minor

* refactor: impove ui

* feat: add item focus check

* refactor: update icon style

* feat: Implement DrawerNavigator

* refactor: remove indicator icon

* feat: add fonts

* chore: init react-native configs with fonts

* feat: add font props into the style

* chore(deps): add expo-font

* chore(deps): add expo-app-loading

* feat: async load fonts

* refactor: use custom Icon as default app icon

* feat: set stack navigation gruops

* refactor: update drawer home name

* refactor: improve ui

* refactor: update side_menu title

* feat: add indicator style on relative screen focused

* refactor: update title font size

* chore: remove react-native.config file

* chore: manage app background

* refactor: update default screen bg

* refactor: update default paper colors setting

* feat: add dark color

* refactor: update accent color

* feat: add screens custom header

* feat: implement custom header

* refactor: udpate drawer scrolling behavior

* feat: add translation

* feat: implement Translation screen

* feat: navigation with drawer

* refactor: remove useless codes

* refactor: decrease back btn inner space

* refactor: decrease back btn inner space

* fix: focus on correct drawer list item

* refactor: update header btns ui

* refactor: update translation store for languages compatibility

* refactor: disable title switch

* perf: disable reduxserialization check

* feat: set translations feature

* feat: HEBREW display support

* feat: use ionic package theme

* chore: expo types support

* chore: ignore *.lock files

* refactor: import registerRootComponent from expo

* refactor: convert metro file from TS to JS

* feat: add registration routes group

* feat: implement registrations screens

* chore: expo metro file support

* fix: add spanish translation

* feat: add & implement french translation from ba56fdff4e7ea41fce8c04b9c53d764a5fbabba1

* fix: temporary fix to run app in separete project folder

* fix: Signup screen module path

* chore(deps): remove @babel/runtime from dependencies and upgrade @babel/runtime devDependency

* chore: update paths name

* chore(deps): add @apollo/client & graphql

* refactor: export default enviroment instead of simple export

* feat: implement apollo client to communicate with GQL using env endpoint

* fix: resole cjs files in metro builder

* fix: add key prop to lang item to prevent Child key warn

* fix: add french to sopported lang object

* refactor: update ever app anme

* fix: add french missing prop

* refactor: capitalize translation texts

* refactor: move app screens to the dedicate folder

* refactor: use correct path for imports

* style: format code

* refactor: display registration screen before

* refactor: use FocusAwareStatusBar

* refactor: move commons custom components to didicate folder

* feat: minor design applayed

* refactor: update import path to commons components

* refactor: update import path to commons components

* refactor: update import path to commons components

* refactor: update import path to commons components

* refactor: update default paper roundness

* feat: add facebook & google colors

* feat: design signUp screen

* refactor: update GeoScreen to GetUserAddressScreen

* refactor: update registration by address route name

* style: format code for following linters rules

* style: format code for following linters rules

* chore: use correct linters configuration

* style: update entiere react native app format's codes to match with EverDemand linters rules

* style: update of entire expo app code's format to match with EverDemand's linters

* refactor: minor ui update

* chore: fix quotes rules

* refactor: minor ui update

* refactor: update of sign up by address screen file

* fix: match jsx-quotes eslint with EverDemand linters rules

* fix: watch setNavGroup

* feat: done signup by address ui

* refactor: update side_menu ever prop value

* refactor: use native alert

* chore: overrides spaced-comment rules & launch error for jsx-quotes

* refactor: use paper activity indicator

* chore: remove @type/expo. expo provides its own type definitions

* fix: config expo for lerna mono repo support

* style: reordered codes

* fix: add .browserslistrc to solve this Invalid version: 15.2-15.3

see: https://github.com/angular/angular-cli/issues/22606



* refactor: move rules from .browserslistrc file to package.json

* chore: add watchman default config

* fix: use expo monorepos config to resolve expo package in EverDemand. Experimental, need tests :)

* feat: define external drawer links

* feat: add Orderhistory screen

* feat: add Orderhistory screen

* fix: use metro monorepo config

* style: add useful comments

* feat: get all users for demo

* refactor: update user store

* feat: store first user data from graph api

* refactor: use correct Appolo client uri end point

* feat: get products data

* feat: add & implement product item

* feat: design product item

* feat: design product item

* refactor: display diffrente images

* refactor: update product item ui and add demo images

* feat: add order history item

* feat: implement order history component

* refactor: minor ui update

* chore(deps): add useful deps

* chore(deps): add expo-location

* chore(deps): fix  @react-native-async-storage/async-storage version to macth with expo

* refactor: remove apollo query hook

* feat: setup flash messages

* refactor: retrieve user location

* feat: add apollo client in separate folder logic

* refactor: update to add get location logic

* feat: add location helper module and init it with getFormattedAddress

* refactor: update location retrieve logic

* feat: implement form logic

* chore(deps): add validate.js

* chore(deps): use correct version of react-native types

* feat: add rule validation constants for validate.js

* refactor: decrease default roundness

* refactor: update default theme

* chore: disable no-mixed-spaces-and-tabs rule

* refactor: design & add some logic in SignUpByAddress screen

* fix: update structure of rules

* refactor: update rule name

* refactor: update error behavior

* refactor: improve ux

* style: add todo comment

* refactor: update RegisterUser mutation

* refactor: update mudation name

* refactor: add return props and update defs names

* refactor: update ruturn props

* refactor: rename argument interface file

* style: add useful comments

* refactor: update default theme surfaces

* fix: use correct longitude

* feat: user signup integration

* fix: update path of mutation constant

* refactor: update client folder structure and copy

some types from @ever-demand/shop-web-gatsby package

* refactor: minor update

* feat: add global types

* refactor: update type props to match with current graphQl types

* refactor: sign-up invite instead of a user

* refactor: improve ui for invites

* feat: add product apollo GraphQl base

* refactor: update production query argument interface

* refactor: update spaces size

* refactor: minor update

* refactor: make some props optional

* fix: fast end load

* fix: resolve action prop of user reducer action

* fix: set correct user info

* fix: set correct user info

* refactor: get data from api

* refactor: update data structure

* refactor: update Environment interface structure

* refactor: update environment file created and Env type

* refactor: update environment file created and Env type

* chore(deps): add script config dev dependencies

* chore(deps): add script config dev dependencies

* fix: resolve import and var def

* feat: ignore logs in prod mode

* refactor: update graphQl url

* refactor: minor

* refactor: udpate default language type

* refactor: update user store and add isLoggedIn prop on it

* feat: add action to set user store

* refactor: modules app providers

* feat: add custom provideer modules

* refactor: add eslint rule to sesolve Lints conflicts

* refactor: disable logs if reac-native __DEV__ false

* feat: add ProductItem slide support

* refactor: move FlashMessage component to app provider

* refactor: move FlashMessage component to app provider

* refactor: minnor

* fix: resolve infinite splash screen loading

* refactor: add useful comment

* refactor: move router group logic to App provider component

* refactor: set default route group of the current user

* refactor: set default route group of the current user

* feat: add action who's triggered when user success signUp by address

* refactor: use onUserSignUpByAddressSuccess action

* refactor: design products for slide view

* refactor: add productView type in user store and use it in products home

* style: add comment

* feat: translaton store to local storage and set user selected lang on open

* feat: add account screen

* refactor: update code following the linters rules

* fix: update style type and resolve tslints warns

* refactor: set default ripple color

* feat: design account screen

* refactor: minor update

* feat: add action to update product view type

* feat: implement account ui

* feat: create custom dialog common component

* fix: resolve local storage for user store

* chore(deps): add redux-logger

* feat: add logger

* feat: add MerchantsSearch screen

* refactor: reorder code and update default param of search

* feat: add MerchantsSearch route

* refactor: minor update

* chore(deps): add lodash.debounce

* refactor: ui Marchant search screen

* refactor: minor

* feat: add readme file

* Update package.json

* Update app.json

Co-authored-by: default avatarRuslan Konviser <evereq@gmail.com>
parent 7eb8bc73
Loading
Loading
Loading
Loading

.husky/commit-msg

0 → 100644
+4 −0
Original line number Original line Diff line number Diff line
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"

npx --no-install commitlint --edit $1

.husky/pre-commit

0 → 100644
+2 −0
Original line number Original line Diff line number Diff line
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
+2 −1
Original line number Original line Diff line number Diff line
@@ -36,6 +36,7 @@
		"run:admin": "yarn --cwd ./packages/admin-web-angular start",
		"run:admin": "yarn --cwd ./packages/admin-web-angular start",
		"run:merchant": "yarn --cwd ./packages/merchant-tablet-ionic start",
		"run:merchant": "yarn --cwd ./packages/merchant-tablet-ionic start",
		"run:shopmobile": "yarn --cwd ./packages/shop-mobile-ionic start",
		"run:shopmobile": "yarn --cwd ./packages/shop-mobile-ionic start",
		"run:shopexpo": "yarn --cwd ./packages/shop-mobile-expo start",
		"run:shopweb": "yarn --cwd ./packages/shop-web-angular start",
		"run:shopweb": "yarn --cwd ./packages/shop-web-angular start",
		"run:carrier": "yarn --cwd ./packages/carrier-mobile-ionic start",
		"run:carrier": "yarn --cwd ./packages/carrier-mobile-ionic start",
		"build:server": "yarn run build:common && yarn lerna run build --scope @ever-platform/core",
		"build:server": "yarn run build:common && yarn lerna run build --scope @ever-platform/core",
+78 −0
Original line number Original line Diff line number Diff line
# NOTE: do NOT ever put here any secure settings! (e.g. Secret Keys)
# We are using dotenv (.env) for consistency with other Platform projects
# This is expo app and all settings will be loaded into the client browser!

# Don't forget to update scripts/*.ts and src/environments/*.ts on changes!

VERSION=1.0.0

# 'slides' | 'list'
PRODUCTS_VIEW_TYPE=slides

# 'popup' or 'page'
ORDER_INFO_TYPE=page

API_FILE_UPLOAD_URL=https://api.cloudinary.com/v1_1/evereq/upload

INVITE_BY_CODE_LOGO=assets/imgs/ever-logo.svg
NO_INTERNET_LOGO=assets/imgs/logo.png

COMPANY_NAME=Ever Co. LTD

GOOGLE_MAPS_API_KEY=

GOOGLE_ANALYTICS_API_KEY=
FAKE_UUID=

# Not secret MixPanel Token
MIXPANEL_API_KEY=

DEFAULT_LANGUAGE=en-US
DEFAULT_LOCALE=en-US

DELIVERY_TIME_MIN=30
DELIVERY_TIME_MAX=60

SUPPORT_NUMBER=0888888888

STRIPE_PUBLISHABLE_KEY=

# TODO: replace logo with recent one!
STRIPE_POP_UP_LOGO=https://bitbucket-assetroot.s3.amazonaws.com/c/photos/2016/Jan/30/1263967991-1-everbie-avatar.png

MAP_MERCHANT_ICON_LINK=http://maps.google.com/mapfiles/kml/pal3/icon21.png
MAP_USER_ICON_LINK=http://maps.google.com/mapfiles/kml/pal3/icon48.png
MAP_CARRIER_ICON_LINK=http://maps.google.com/mapfiles/kml/pal4/icon54.png

DEFAULT_LATITUDE=42.6459136
DEFAULT_LONGITUDE=23.3332736

# Graphql endpoints for apollo services
GQL_ENDPOINT=http://localhost:8443/graphql
GQL_SUBSCRIPTIONS_ENDPOINT=ws://localhost:2086/subscriptions
SERVICES_ENDPOINT=http://localhost:5500
HTTPS_SERVICES_ENDPOINT=https://localhost:2087

FAKE_INVITE_ID=1ae9d04f9010d834f8906881
FAKE_INVITE_CITY=Ashdod
FAKE_INVITE_POSTCODE=77452
FAKE_INVITE_ADDRESS=HaAtsmaut
FAKE_INVITE_HOUSE=126
FAKE_INVITE_CREATED_AT=2018-05-02T14:50:55.658Z
FAKE_INVITE_UPDATED_AT=2018-05-02T14:50:55.658Z
FAKE_INVITE_APARTMENT=3
FAKE_INVITE_CODE=8321
FAKE_INVITE_COUNTRY_ID=102

# For maintenance micro service. Ever maintanance API URL: https://maintenance.ever.co/status
SETTINGS_APP_TYPE=shop-mobile
SETTINGS_MAINTENANCE_API_URL=

# For "single" merchant (multiple branches)
MERCHANT_IDS=[]

PORT=4201
WEB_MEMORY=4096
WEB_CONCURRENCY=1

SHOPPING_CART=false
+26 −0
Original line number Original line Diff line number Diff line
{
	"root": true,
	"extends": "@react-native-community",
	"parser": "@typescript-eslint/parser",
	"plugins": ["@typescript-eslint"],
	"overrides": [
		{
			"files": ["*.ts", "*.tsx"],
			"rules": {
				"@typescript-eslint/no-shadow": ["error"],
				"no-shadow": "off",
				"no-undef": "off",
				"jsx-quotes": ["error", "prefer-single"],
				"no-spaced-func": "off",
				"spaced-comment": [
					"error",
					"always",
					{ "block": { "balanced": true } }
				],
				"no-mixed-spaces-and-tabs": ["off", "smart-tabs"],
				"no-extra-semi": "error",
				"semi": "off"
			}
		}
	]
}
Loading