* [MM-31133]: participants screen component (#5116) * Fixed imports * Misc fixes * Added i18n string * Moved '(you)' after the name * [MM-30386][MM-30387] Client and redux changes for collapsed reply threads (#5175) * [MM-30386][MM-30387] Client and redux changes for collapsed reply threads * fix tests * add and use flat shim * use test helper function * use test helper function * revert crt changes to unused client and action functions * use toEqual * incorporate code review feedback * don't assume server success * batch actions * clearer code * WIP in changes, websockets and more redux changes * Added mark thread as read and mark all as read in a team * Added isCollapsedThreadEnabled entity * Fixed loading global screens on load if it's the last visited screen * Added root count and websocker and redux events related to threads * Fixed Message, Mention count root count on init and decrement actions * Moved old client to new client/rest * Misc fix * Misc fix * Misc. * Old redux test cases fix * Added polyfill back for array flat * Fixes mark as unread and pariticipants error in thread * Fixed initial load when CRT not enabled * Handling CRT preference change * Get threads fallsback to search in posts in case of unfollowed or unloaded threads * Gets threads on reconnect * DM, Channel counter fix * Added threads redux tests * Fixed channel dot issue when child post is arrived channel not active * Cleaning up threads on load, not letting posts included in threads getting deleted which can trigger many posts to be loaded at once * Fixed crash on team switch, partly fixed enable/disable from webapp * Fix when viewing a post from notification, to prevent from navigating back to global threads * Fixed when preferences are changed before app is launched * Fixed issue of NO THREADS appearing on reconnect * Excludes CRT handling for newly logged in users * Fixed unread dot showing even when all messages are read * Update app/mm-redux/selectors/entities/threads.ts Co-authored-by: Elias Nahum <nahumhbl@gmail.com> * Not viewing threads action is pushed only when suer is in Global Threads * Fixed cleanup to exclude current team when cleanup starts on app going to background * Dispatch is not passed as param, misc code fixes * Preferences check and handling code refactored * added redux-mock-store * Preference change fix * Removed user login dispatch when handling crt change * Fixed fallback thread support * Return getThread * Added threads to sidebar, moved teamId logic to action * [MM-29106, MM-34847, MM-34843, MM-34846] Collapsed reply threads, Global Threads & In Channel experience UI implementation (#5376) * feat: global threads screen * Refactored global thread menu and misc design fixes * Added empty states for threads, unread. Removing markdown from thread messages. * Added friendly date, fixed long usernames & channel names in threads view. * Mark thread as read * Added intl, refactored code, seperated thread footer from thread item * Added intl to global threads, added global threads to android * Added Follow button to thread view * Added thread badges * In Channel experience .. WIP * Clean posts in channel incase CRT is enabled. * Added follow button, deleted messages doesnot have footer and design is now according to figma * Removed old post and post header * Added for follow/unfollow thread and fixed old one * MISC design & code fixes * Added options-follow/unfollow to the post's long press menu * Shows ORIGINAL MESSAGE DELETED in thread when root post gets deleted * Post list ts fix * Old testcases fix * Eslint fix * Added custom status emoji in at mention autocomplete * Fixed the width of the displayname and username * Changed the max width for the full name and username in the autocomplete item * Review fixes Changed the behaviour of ellipses for long names * Removed safearea bottom * Fixes Mark and unread and thread header theme * Fixes mark as unread and pariticipants error in thread * Unfollowing post fix and misc * Merge with master fix * Added fallback to get thread from posts in case of not following/unloaded threads * Refactored code and added tests for screens * Loads threads from global threads screen, marks thread as marked on new thread posts * Fixed tabs render on no threads, threads footer items styling and tests * Loads threads based on tab and items according to constant * Added infinite loading, unreads based on redux and not active thread list * Fixed the username cutting off after truncating display name issue * Changed avatars to touchableOpacity and added prop for parent component to style * Fixed infinite loading, tab switching scroll to top, misc styles, team switching, scroll indicator insets * Added follow button to DMs, moved follow button further right only on ios * Snapshot updated * Moved from useSelector to connect HOC * Scrolls to top on team change, changed thread constant from mm-redux * Fix merge issue * Test case fix * Fixed participants list * Update app/components/global_threads/global_threads.tsx Co-authored-by: Elias Nahum <nahumhbl@gmail.com> * Update app/components/global_threads/thread_footer/thread_footer.tsx Co-authored-by: Elias Nahum <nahumhbl@gmail.com> * Update app/components/sidebars/main/channels_list/channel_item/index.js Co-authored-by: Elias Nahum <nahumhbl@gmail.com> * Update app/screens/thread/index.js Co-authored-by: Elias Nahum <nahumhbl@gmail.com> * Moved date numbers to constants * Fixed global threads component issues * Thread item display logic moved to redux * Misc fixes * Reverted to TouchableWithFeedback with opacity * Removed obselete snapshots * Removing currentTeamId as we aregetting it in action * Moved to connect component from useSelect for sidebar * Thread read issue fix * Removed react-native-navigation mock Co-authored-by: Anurag Shivarathri <anurag6713@gmail.com> Co-authored-by: Mattermod <mattermod@users.noreply.github.com> Co-authored-by: Manoj <manoj@brightscout.com> Co-authored-by: Elias Nahum <nahumhbl@gmail.com> Co-authored-by: Anurag Shivarathri <anurag6713@gmail.com> Co-authored-by: Mattermod <mattermod@users.noreply.github.com> Co-authored-by: Elias Nahum <nahumhbl@gmail.com> Co-authored-by: Manoj <manoj@brightscout.com> Co-authored-by: Ashish Bhate <bhate.ashish@gmail.com> Co-authored-by: Ashish Bhate <ashish.bhate@mattermost.com> Co-authored-by: Mattermod <mattermod@users.noreply.github.com> Co-authored-by: Elias Nahum <nahumhbl@gmail.com> Co-authored-by: Manoj <manoj@brightscout.com>
208 lines
7.6 KiB
JSON
208 lines
7.6 KiB
JSON
{
|
|
"name": "mattermost-mobile",
|
|
"version": "1.45.1",
|
|
"description": "Mattermost Mobile with React Native",
|
|
"repository": "git@github.com:mattermost/mattermost-mobile.git",
|
|
"author": "Mattermost, Inc.",
|
|
"license": "Apache 2.0",
|
|
"private": true,
|
|
"dependencies": {
|
|
"@babel/runtime": "7.14.6",
|
|
"@react-native-community/async-storage": "1.12.1",
|
|
"@react-native-community/cameraroll": "4.0.4",
|
|
"@react-native-community/clipboard": "1.5.1",
|
|
"@react-native-community/masked-view": "0.1.11",
|
|
"@react-native-community/netinfo": "6.0.0",
|
|
"@react-native-cookies/cookies": "6.0.8",
|
|
"@react-navigation/native": "5.9.4",
|
|
"@react-navigation/stack": "5.14.5",
|
|
"@rudderstack/rudder-sdk-react-native": "1.0.12",
|
|
"@sentry/react-native": "2.6.0",
|
|
"@types/redux-mock-store": "1.0.3",
|
|
"analytics-react-native": "1.2.0",
|
|
"array.prototype.flat": "1.2.4",
|
|
"base-64": "1.0.0",
|
|
"commonmark": "0.30.0",
|
|
"commonmark-react-renderer": "4.3.5",
|
|
"deep-equal": "2.0.5",
|
|
"deepmerge": "4.2.2",
|
|
"emoji-regex": "9.2.2",
|
|
"form-data": "4.0.0",
|
|
"fuse.js": "6.4.6",
|
|
"intl": "1.2.5",
|
|
"jail-monkey": "2.5.0",
|
|
"mime-db": "1.48.0",
|
|
"moment-timezone": "0.5.33",
|
|
"prop-types": "15.7.2",
|
|
"react": "17.0.2",
|
|
"react-intl": "2.8.0",
|
|
"react-native": "0.64.2",
|
|
"react-native-android-open-settings": "1.3.0",
|
|
"react-native-animatable": "1.3.3",
|
|
"react-native-button": "3.0.1",
|
|
"react-native-calendars": "1.1264.0",
|
|
"react-native-device-info": "8.1.3",
|
|
"react-native-document-picker": "5.2.0",
|
|
"react-native-elements": "3.4.2",
|
|
"react-native-exception-handler": "2.10.10",
|
|
"react-native-fast-image": "8.3.5",
|
|
"react-native-file-viewer": "2.1.4",
|
|
"react-native-gesture-handler": "1.10.3",
|
|
"react-native-haptic-feedback": "1.11.0",
|
|
"react-native-hw-keyboard-event": "0.0.4",
|
|
"react-native-image-picker": "4.0.4",
|
|
"react-native-keyboard-aware-scrollview": "2.1.0",
|
|
"react-native-keyboard-tracking-view": "5.7.0",
|
|
"react-native-keychain": "7.0.0",
|
|
"react-native-linear-gradient": "2.5.6",
|
|
"react-native-local-auth": "1.6.0",
|
|
"react-native-localize": "2.1.1",
|
|
"react-native-mmkv-storage": "0.6.0",
|
|
"react-native-navigation": "7.17.1",
|
|
"react-native-notifications": "3.5.0",
|
|
"react-native-passcode-status": "1.1.2",
|
|
"react-native-permissions": "3.0.5",
|
|
"react-native-reanimated": "2.2.0",
|
|
"react-native-redash": "16.1.1",
|
|
"react-native-safe-area": "0.5.1",
|
|
"react-native-safe-area-context": "3.2.0",
|
|
"react-native-screens": "3.4.0",
|
|
"react-native-section-list-get-item-layout": "2.2.3",
|
|
"react-native-share": "6.2.2",
|
|
"react-native-slider": "0.11.0",
|
|
"react-native-startup-time": "2.0.0",
|
|
"react-native-svg": "12.1.1",
|
|
"react-native-vector-icons": "8.1.0",
|
|
"react-native-video": "5.1.1",
|
|
"react-native-webview": "11.6.5",
|
|
"react-native-youtube": "2.0.2",
|
|
"react-redux": "7.2.4",
|
|
"redux": "4.1.0",
|
|
"redux-action-buffer": "1.2.0",
|
|
"redux-batched-actions": "0.5.0",
|
|
"redux-persist": "6.0.0",
|
|
"redux-persist-transform-filter": "0.0.20",
|
|
"redux-thunk": "2.3.0",
|
|
"reselect": "4.0.0",
|
|
"rn-fetch-blob": "0.12.0",
|
|
"rn-placeholder": "3.0.3",
|
|
"semver": "7.3.5",
|
|
"serialize-error": "8.1.0",
|
|
"shallow-equals": "1.0.0",
|
|
"tinycolor2": "1.4.2",
|
|
"url-parse": "1.5.1"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/cli": "7.14.5",
|
|
"@babel/core": "7.14.6",
|
|
"@babel/plugin-transform-runtime": "7.14.5",
|
|
"@babel/preset-env": "7.14.7",
|
|
"@babel/register": "7.14.5",
|
|
"@react-native-community/eslint-config": "3.0.0",
|
|
"@storybook/addon-knobs": "6.2.9",
|
|
"@storybook/addon-ondevice-knobs": "5.3.25",
|
|
"@storybook/react-native": "5.3.25",
|
|
"@storybook/react-native-server": "5.3.23",
|
|
"@testing-library/react-native": "7.2.0",
|
|
"@types/base-64": "1.0.0",
|
|
"@types/enzyme": "3.10.9",
|
|
"@types/enzyme-adapter-react-16": "1.0.6",
|
|
"@types/jest": "26.0.24",
|
|
"@types/moment-timezone": "0.5.30",
|
|
"@types/react": "17.0.14",
|
|
"@types/react-native": "0.64.11",
|
|
"@types/react-native-share": "3.3.3",
|
|
"@types/react-native-video": "5.0.8",
|
|
"@types/react-redux": "7.1.17",
|
|
"@types/react-test-renderer": "17.0.1",
|
|
"@types/shallow-equals": "1.0.0",
|
|
"@types/tinycolor2": "1.4.3",
|
|
"@types/url-parse": "1.4.3",
|
|
"@typescript-eslint/eslint-plugin": "4.28.2",
|
|
"@typescript-eslint/parser": "4.28.2",
|
|
"babel-eslint": "10.1.0",
|
|
"babel-jest": "27.0.6",
|
|
"babel-loader": "8.2.2",
|
|
"babel-plugin-module-resolver": "4.1.0",
|
|
"babel-plugin-transform-remove-console": "6.9.4",
|
|
"deep-freeze": "0.0.1",
|
|
"detox": "18.18.1",
|
|
"enzyme": "3.11.0",
|
|
"enzyme-adapter-react-16": "1.15.6",
|
|
"enzyme-to-json": "3.6.2",
|
|
"eslint": "7.30.0",
|
|
"eslint-plugin-header": "3.1.1",
|
|
"eslint-plugin-jest": "24.3.6",
|
|
"eslint-plugin-mattermost": "github:mattermost/eslint-plugin-mattermost#070ce792d105482ffb2b27cfc0b7e78b3d20acee",
|
|
"eslint-plugin-react": "7.24.0",
|
|
"expect": "27.0.6",
|
|
"harmony-reflect": "1.6.2",
|
|
"husky": "7.0.1",
|
|
"isomorphic-fetch": "3.0.0",
|
|
"jest": "26.6.3",
|
|
"jest-cli": "26.6.3",
|
|
"jest-enzyme": "7.1.2",
|
|
"jetifier": "2.0.0",
|
|
"jsdom-global": "3.0.2",
|
|
"metro-react-native-babel-preset": "0.66.1",
|
|
"mmjstool": "github:mattermost/mattermost-utilities#3faa6075089a541d8c90ed85114e644c7a23fedf",
|
|
"mock-async-storage": "2.2.0",
|
|
"mock-socket": "9.0.3",
|
|
"nock": "13.1.1",
|
|
"nyc": "15.1.0",
|
|
"patch-package": "6.4.7",
|
|
"react-dom": "17.0.2",
|
|
"react-native-dev-menu": "4.0.2",
|
|
"react-native-dotenv": "3.0.0",
|
|
"react-native-storybook-loader": "2.0.4",
|
|
"react-test-renderer": "17.0.2",
|
|
"redux-mock-store": "1.5.4",
|
|
"redux-persist-node-storage": "2.0.0",
|
|
"socketcluster": "16.0.2",
|
|
"ts-jest": "27.0.3",
|
|
"typescript": "4.3.5",
|
|
"underscore": "1.13.1",
|
|
"util": "0.12.4"
|
|
},
|
|
"scripts": {
|
|
"android": "react-native run-android",
|
|
"ios": "react-native run-ios",
|
|
"start": "react-native start",
|
|
"start:reset-cache": "react-native start -- --reset-cache",
|
|
"check": "npm run lint && npm run tsc",
|
|
"clean": "./scripts/clean.sh",
|
|
"ios-gems": "cd ios && bundle install",
|
|
"fix": "npm run lint -- --fix",
|
|
"lint": "eslint --ignore-path .gitignore --ignore-pattern node_modules --quiet .",
|
|
"pod-install": "cd ios && bundle exec pod install",
|
|
"postinstall": "patch-package && ./scripts/postinstall.sh",
|
|
"tsc": "NODE_OPTIONS=--max_old_space_size=12000 tsc --noEmit",
|
|
"test": "jest --forceExit --runInBand --detectOpenHandles",
|
|
"test:watch": "npm test -- --watch",
|
|
"test:coverage": "jest --coverage",
|
|
"updatesnapshot": "jest --updateSnapshot",
|
|
"mmjstool": "mmjstool",
|
|
"i18n-extract": "npm run mmjstool -- i18n extract-mobile",
|
|
"i18n-clean-empty": "npm run mmjstool -- i18n clean-empty --mobile-dir .",
|
|
"e2e:android": "cd detox && npm run e2e:android-build && npm run e2e:android-test && cd ..",
|
|
"e2e:ios": "cd detox && npm run e2e:ios-test && cd ..",
|
|
"build:ios": "./scripts/build.sh ipa",
|
|
"build:ios-unsigned": "./scripts/build.sh ipa unsigned",
|
|
"build:ios-sim": "./scripts/build.sh ipa simulator",
|
|
"build:android": "./scripts/build.sh apk",
|
|
"build:android-unsigned": "./scripts/build.sh apk unsigned",
|
|
"build-storybook": "build-storybook",
|
|
"prestorybook": "rnstl",
|
|
"storybook": "start-storybook -p 7007",
|
|
"prepare": "husky install"
|
|
},
|
|
"config": {
|
|
"react-native-storybook-loader": {
|
|
"searchDir": [
|
|
"./app/components"
|
|
],
|
|
"pattern": "**/*.stories.@(js|jsx|ts|tsx)",
|
|
"outputFile": "./storybook/storyLoader.js"
|
|
}
|
|
}
|
|
}
|