Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 6.0.0 #1071

Merged
merged 73 commits into from
Oct 19, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
5281aff
remove existing setup screen entirely
jthrilly Jul 31, 2020
3a815d9
add diagnostic reports to .gitignore
jthrilly Jul 31, 2020
479e48f
make DragPreview portal to <body> for better z-index management
jthrilly Jul 31, 2020
8c93c15
Fix CardList causing app crash when window height is greater than win…
jthrilly Jul 31, 2020
75c7082
Add ProtocoLCard component
jthrilly Jul 31, 2020
b5219ae
upgrade framer-motion
jthrilly Aug 3, 2020
3cf9bf1
welcome and interview panel
jthrilly Aug 5, 2020
b228855
add wrapped card components
jthrilly Aug 5, 2020
3db1743
implement welcome animation
jthrilly Aug 6, 2020
febedda
implement <Section> component
jthrilly Aug 6, 2020
a5221a7
correctly stagger welcome animation
jthrilly Aug 6, 2020
0928a26
connect settings menu
jthrilly Aug 6, 2020
5fb14da
better conditional rendering for sessions and protocols
jthrilly Aug 6, 2020
bcab47d
begin implementation of server section
jthrilly Aug 10, 2020
c660acb
update references to codaco
jthrilly Aug 14, 2020
4934772
Merge branch 'master' into feature/better-start-screen-2
jthrilly Aug 14, 2020
421defd
update submodule references
jthrilly Aug 14, 2020
6da80d3
update app schema version and mdns service name
jthrilly Aug 17, 2020
48f0d66
WIP server pairing card
jthrilly Aug 18, 2020
edcbd0d
add in app browser plugin for ExternalLink
jthrilly Aug 18, 2020
2a068e6
implement welcome card setting toggle
jthrilly Aug 18, 2020
bf4863f
add getting started image
jthrilly Aug 18, 2020
a053e1c
update webpack config for jszip
jthrilly Aug 18, 2020
06fef30
make validations take message parameter ad update import protocol fro…
jthrilly Aug 19, 2020
3967d34
WIP pairing refactor
jthrilly Aug 19, 2020
f5b87c4
implement StackButton component
jthrilly Aug 21, 2020
48621a0
WIP start session overlay
jthrilly Aug 21, 2020
325c661
wip filterable list wrapper
jthrilly Aug 24, 2020
028e5be
functioning session overlay
jthrilly Aug 25, 2020
31b0f07
replace obsolete router system
jthrilly Aug 25, 2020
42e43d5
remove use of useinvertedscale
jthrilly Aug 25, 2020
abbbd5d
implement onlineStatus hook
jthrilly Aug 27, 2020
1717adb
discovered server list implemented
jthrilly Aug 27, 2020
4a51b1d
update server status message
jthrilly Sep 2, 2020
a88c081
update serveraddressform to correctly accept server prop
jthrilly Sep 2, 2020
f72b49e
implement manage protocols view
jthrilly Sep 3, 2020
03d8933
add editor role for .netcanvas files
jthrilly Sep 10, 2020
25a2d90
implement toasts for protocol import
jthrilly Sep 15, 2020
793217b
work in progress final sections
jthrilly Sep 17, 2020
b760f8e
UI finished for data export section
jthrilly Sep 21, 2020
bc0ae38
functioning export to server and files
jthrilly Sep 21, 2020
821babe
implement getLastActiveProtocol selector
jthrilly Sep 22, 2020
fd07740
fix crashes relating to returning too early
jthrilly Sep 22, 2020
e7c76b7
restyle dyad census
jthrilly Sep 22, 2020
f94cc32
fix several small bugs
jthrilly Sep 22, 2020
706b9de
fix start screen staggered animation
jthrilly Sep 23, 2020
d29c04c
fix menu animation issues
jthrilly Sep 23, 2020
708c9fc
last attempt at selectable
jthrilly Sep 29, 2020
ed3f277
remove selectable again
jthrilly Sep 29, 2020
27ece74
fix session back navigation animation
jthrilly Sep 29, 2020
c716678
fix drag source effect
jthrilly Sep 29, 2020
c6450e0
increase sociiogram responsiveness
jthrilly Sep 29, 2020
91b44d2
separate sass components
jthrilly Sep 29, 2020
3171c36
fix welcome section animation
jthrilly Sep 29, 2020
b8586ad
tweak form styles
jthrilly Sep 29, 2020
df601c6
sass linting
jthrilly Sep 29, 2020
e44f21b
fix tests
jthrilly Sep 30, 2020
b5d85fd
merge with master
jthrilly Sep 30, 2020
49f4064
complete merge
jthrilly Sep 30, 2020
c17a9aa
fix linting error in test
jthrilly Sep 30, 2020
b7e0886
attempt to update browserslist
jthrilly Sep 30, 2020
21e3598
update travis task
jthrilly Sep 30, 2020
75bb0c5
fix date picker rendering
jthrilly Oct 14, 2020
ed89c87
update box shadow to match architect
jthrilly Oct 16, 2020
ab62f65
update timeline images
jthrilly Oct 16, 2020
1299302
update protocol validation reference
jthrilly Oct 16, 2020
59bc88e
fix header linear gradient on ios
jthrilly Oct 16, 2020
c56c093
fix progress bar height on iOS
jthrilly Oct 16, 2020
733d527
temporary fix for ios issues
jthrilly Oct 16, 2020
bd75455
add service description for zeroconf and fix toast manager css issue
jthrilly Oct 19, 2020
c1d9bba
request MDNS permission on iOS 14
jthrilly Oct 19, 2020
a339432
fix start screen animation
jthrilly Oct 19, 2020
1ad894e
verify file import is working correctly
jthrilly Oct 19, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,8 @@
"scrollable",
"draggable",
"dyad",
"Dyad"
"Dyad",
"hostname"
],
"skipIfMatch": [
"http(s)?://[^s]*",
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,6 @@ IDEWorkspaceChecks.plist

# Ignore protocol template used for schema generation
src/schemas/abstract-protocol.json

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
3 changes: 0 additions & 3 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,6 @@
[submodule "src/utils/protocol/protocol-validation"]
path = src/utils/protocol/protocol-validation
url = https://github.com/complexdatacollective/protocol-validation.git
[submodule "development-protocol"]
path = development-protocol
url = https://github.com/complexdatacollective/development-protocol.git
[submodule "src/utils/network-exporters"]
path = src/utils/network-exporters
url = https://github.com/complexdatacollective/network-exporters
1 change: 1 addition & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ cache:

install:
- npm install
- npx browserslist@latest --update-db # update browserslist browser versions
jobs:
include:
- stage: lint
Expand Down
Binary file added build-resources/file.icns
Binary file not shown.
Binary file added build-resources/file.ico
Binary file not shown.
31 changes: 22 additions & 9 deletions config.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version='1.0' encoding='utf-8'?>
<widget android-versionCode="50002" id="org.codaco.networkCanvas" ios-CFBundleIdentifier="networkCanvas" ios-CFBundleVersion="50002" version="5.2.0" xmlns="http://www.w3.org/ns/widgets" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>NetworkCanvas</name>
<widget android-versionCode="6000" id="org.codaco.networkCanvas6" ios-CFBundleIdentifier="networkCanvas6" ios-CFBundleVersion="6000" version="6.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>Network Canvas</name>
<description>
Simplifying complex network data collection.
</description>
Expand Down Expand Up @@ -33,9 +33,19 @@
</edit-config>
</platform>
<platform name="ios">
<allow-navigation href="*" />
<allow-navigation href="*" />
<allow-navigation href="*" />
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
<config-file parent="NSBonjourServices" target="*-Info.plist">
<array>
<string>_nc-server-6._tcp.</string>
</array>
</config-file>
<config-file parent="NSLocalNetworkUsageDescription" target="*-Info.plist">
<string>Network Canvas uses this feature to enable automatic discovery of computers running Server on your network.</string>
</config-file>
<icon height="40" src="www/icons/ios/NC-Square-40.png" width="40" />
<icon height="50" src="www/icons/ios/NC-Square-50.png" width="50" />
<icon height="72" src="www/icons/ios/NC-Square-72.png" width="72" />
Expand All @@ -54,28 +64,31 @@
<preference name="Orientation" value="landscape" />
<preference name="target-device" value="tablet" />
<preference name="DisallowOverscroll" value="true" />
<preference name="Fullscreen" value="false" />
<preference name="Fullscreen" value="true" />
<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
<preference name="BackupWebStorage" value="none" />
<preference name="AndroidPersistentFileLocation" value="Internal" />
<preference name="iosPersistentFileLocation" value="Library" />
<preference name="AllowInlineMediaPlayback" value="true" />
<preference name="android-minSdkVersion" value="25" />
<preference name="android-targetSdkVersion" value="28" />
<plugin name="cordova-plugin-app-version" spec="^0.1.9" />
<plugin name="cordova-plugin-file" spec="^5.0.0" />
<plugin name="cordova-plugin-file-transfer" spec="^1.7.1" />
<plugin name="cordova-plugin-whitelist" spec="^1.3.3" />
<plugin name="cordova-plugin-wkwebview-engine" spec="^1.1.4" />
<plugin name="cordova-plugin-device" spec="^2.0.2" />
<plugin name="cordova-plugin-network-canvas-client" spec="./cordova-plugin-network-canvas-client" />
<plugin name="cordova-plugin-keyboard" spec="^1.2.0" />
<plugin name="cordova-plugin-x-socialsharing" spec="^5.6.4">
<variable name="ANDROID_SUPPORT_V4_VERSION" value="24.1.1+" />
<variable name="PHOTO_LIBRARY_ADD_USAGE_DESCRIPTION" value="This app requires photo library access to function properly." />
<variable name="PHOTO_LIBRARY_USAGE_DESCRIPTION" value="This app requires photo library access to function properly." />
<variable name="ANDROID_SUPPORT_V4_VERSION" value="24.1.1+" />
<variable name="PHOTO_LIBRARY_ADD_USAGE_DESCRIPTION" value="This app requires photo library access to function properly." />
<variable name="PHOTO_LIBRARY_USAGE_DESCRIPTION" value="This app requires photo library access to function properly." />
</plugin>
<plugin name="cordova-plugin-zeroconf" spec="^1.4.1" />
<plugin name="cordova-plugin-inappbrowser" spec="~4.0.0" />
<plugin name="cordova-plugin-app-version" spec="^0.1.9" />
<plugin name="cordova-plugin-network-information" spec="~2.0.2" />
<plugin name="cordova-plugin-chooser" spec="~1.3.1" />
<plugin name="cordova-plugin-wkwebview-engine" spec="^1.2.1" />
<engine name="android" spec="^8.0.0" />
<engine name="ios" spec="^5.0.1" />
<engine name="ios" spec="^5.1.1" />
</widget>
14 changes: 9 additions & 5 deletions config/webpack.config.dev.js
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,19 @@ const resolveAlias = {
// Use the UMD version of React Markdown, so that we can keep building for
// electron-renderer and running other browsers
'react-markdown': require.resolve('react-markdown/umd/react-markdown.js'),
// TODO: Track this issue
// https://github.com/mapbox/concaveman/issues/18
tinyqueue: '../tinyqueue/tinyqueue.js',
};
if (!isTargetingElectron) {
resolveAlias.electron = `${paths.appSrc}/utils/electron-shim`;
}

if (isTargetingElectron) {
// Force node version of jszip for electron target
resolveAlias.jszip = require.resolve('jszip/lib/index.js');
}

// This is the development configuration.
// It is focused on developer experience and fast rebuilds.
// The production configuration is different and lives in a separate file.
Expand Down Expand Up @@ -99,11 +107,7 @@ module.exports = {
// `web` extension prefixes have been added for better support
// for React Native Web.
extensions: ['.web.js', '.js', '.json', '.web.jsx', '.jsx'],
alias: {
// Support React Native Web
// https://www.smashingmagazine.com/2016/08/a-glimpse-into-the-future-with-react-native-for-web/
'react-native': 'react-native-web',
},
alias: resolveAlias,
plugins: [
// Prevents users from importing files from outside of src/ (or node_modules/).
// This often causes confusion because we only process files within src/ with babel.
Expand Down
28 changes: 19 additions & 9 deletions config/webpack.config.prod.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ const ModuleScopePlugin = require('react-dev-utils/ModuleScopePlugin');

const paths = require('./paths');
const getClientEnvironment = require('./env');
const { reactBundleTarget } = require('./nc-dev-utils');
const { reactBundleTarget, isTargetingElectron } = require('./nc-dev-utils');

// Webpack uses `publicPath` to determine where the app is being served from.
// It requires a trailing slash, or the file assets will get an incorrect path.
Expand Down Expand Up @@ -82,6 +82,23 @@ const getStyleLoaders = (preProcessor) => {
return loaders;
};

const resolveAlias = {
// Use the UMD version of React Markdown, so that we can keep building for
// electron-renderer and running other browsers
'react-markdown': require.resolve('react-markdown/umd/react-markdown.js'),
// TODO: Track this issue
// https://github.com/mapbox/concaveman/issues/18
tinyqueue: '../tinyqueue/tinyqueue.js',
};
if (!isTargetingElectron) {
resolveAlias.electron = `${paths.appSrc}/utils/electron-shim`;
}

if (isTargetingElectron) {
// Force node version of jszip for electron target
resolveAlias.jszip = require.resolve('jszip/lib/index.js');
}

// This is the production configuration.
// It compiles slowly and is focused on producing a fast and minimal bundle.
// The development configuration is different and lives in a separate file.
Expand Down Expand Up @@ -122,14 +139,7 @@ module.exports = {
// `web` extension prefixes have been added for better support
// for React Native Web.
extensions: ['.web.js', '.js', '.json', '.web.jsx', '.jsx'],
alias: {
// Use the UMD version of React Markdown, so that we can keep building for
// electron-renderer and running other browsers
'react-markdown': require.resolve('react-markdown/umd/react-markdown.js'),
// Support React Native Web
// https://www.smashingmagazine.com/2016/08/a-glimpse-into-the-future-with-react-native-for-web/
'react-native': 'react-native-web',
},
alias: resolveAlias,
plugins: [
// Prevents users from importing files from outside of src/ (or node_modules/).
// This often causes confusion because we only process files within src/ with babel.
Expand Down
2 changes: 1 addition & 1 deletion cordova-plugin-network-canvas-client/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# Network Canvas Client

An API client for an instance of [Network Canvas](https://github.com/codaco/Network-Canvas) communicating with paired instances of [Server](https://github.com/codaco/Server).
An API client for an instance of [Network Canvas](https://github.com/complexdatacollective/Network-Canvas) communicating with paired instances of [Server](https://github.com/complexdatacollective/Server).
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// NetworkCanvasClient.h
// NetworkCanvas
//
// See LICENSE file at project root or https://github.com/codaco/Network-Canvas/blob/master/LICENSE
// See LICENSE file at project root or https://github.com/complexdatacollective/Network-Canvas/blob/master/LICENSE
//

#import <Cordova/CDV.h>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
// This plugin requires the Cordova File Plugin:
// https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-file/
//
// See LICENSE file at project root or https://github.com/codaco/Network-Canvas/blob/master/LICENSE
// See LICENSE file at project root or https://github.com/complexdatacollective/Network-Canvas/blob/master/LICENSE
//

#import "NetworkCanvasClient.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// NetworkCanvasClientPluginTests.m
// NetworkCanvasClientPluginTests
//
// See LICENSE file at project root or https://github.com/codaco/Network-Canvas/blob/master/LICENSE
// See LICENSE file at project root or https://github.com/complexdatacollective/Network-Canvas/blob/master/LICENSE
//

#import <XCTest/XCTest.h>
Expand Down
2 changes: 1 addition & 1 deletion integration-tests/__tests__/dyad-census.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,6 @@ describe('Dyad Census Interface', () => {
await timelinePrevious(app);
await app.client.pause(timing.long);
await app.client.waitForExist('//div[@class="progress-bar__filler" and style="width: 100%;"]', 500, true);
await app.client.waitForExist('//div[@class="dyad-interface__no"]//input[@class="form-field-togglebutton__input" and value="true" and checked]', 500, true);
await app.client.waitForExist('//div[@class="dyad-census__no"]//input[@class="form-field-togglebutton__input" and value="true" and checked]', 500, true);
});
});
4 changes: 2 additions & 2 deletions integration-tests/__tests__/ego-form.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ describe('EgoForm Interface', () => {

it('Allows leaving via Timeline if not changed', async () => {
await goToStage(app, 'dyadcensus');
await app.client.waitForVisible('.dyad-interface__introduction');
await app.client.waitForVisible('.dyad-census__introduction');
});

it('Disallows leaving via Next if invalid', async () => {
Expand All @@ -54,6 +54,6 @@ describe('EgoForm Interface', () => {
await goToStage(app, 'dyadcensus');
await app.client.waitForVisible('.dialog--confirm');
await app.client.click('span=Discard changes');
await app.client.waitForVisible('.dyad-interface__introduction');
await app.client.waitForVisible('.dyad-census__introduction');
});
});
Loading