Upgrade to latest Ember, etc.

This commit is contained in:
2020-05-09 16:27:06 +02:00
parent 67e3c9a7c3
commit 065c635580
28 changed files with 8718 additions and 2653 deletions
-1
View File
@@ -4,7 +4,6 @@
root = true
[*]
end_of_line = lf
charset = utf-8
+9 -3
View File
@@ -1,8 +1,14 @@
'use strict';
module.exports = {
root: true,
parser: 'babel-eslint',
parserOptions: {
ecmaVersion: 2018,
sourceType: 'module'
sourceType: 'module',
ecmaFeatures: {
legacyDecorators: true
}
},
globals: {
console: true
@@ -20,6 +26,7 @@ module.exports = {
rules: {
'ember/avoid-leaking-state-in-ember-objects': 'warn',
'no-console': 'off'
'ember/no-jquery': 'error'
},
overrides: [
// node files
@@ -35,8 +42,7 @@ module.exports = {
'server/**/*.js'
],
parserOptions: {
sourceType: 'script',
ecmaVersion: 2015
sourceType: 'script'
},
env: {
browser: false,
+1 -1
View File
@@ -1,7 +1,7 @@
'use strict';
module.exports = {
extends: 'recommended',
extends: 'octane',
rules: {
'simple-unless': false,
+4 -2
View File
@@ -23,7 +23,9 @@ env:
# See https://git.io/vdao3 for details.
- JOBS=1
branches:
only:
- master
script:
- npm run lint:hbs
- npm run lint:js
- npm test
+6 -8
View File
@@ -1,14 +1,12 @@
import Application from '@ember/application';
import Resolver from './resolver';
import Resolver from 'ember-resolver';
import loadInitializers from 'ember-load-initializers';
import config from './config/environment';
const App = Application.extend({
modulePrefix: config.modulePrefix,
podModulePrefix: config.podModulePrefix,
Resolver
});
export default class App extends Application {
modulePrefix = config.modulePrefix;
podModulePrefix = config.podModulePrefix;
Resolver = Resolver;
}
loadInitializers(App, config.modulePrefix);
export default App;
-3
View File
@@ -1,3 +0,0 @@
import Resolver from 'ember-resolver';
export default Resolver;
+4 -6
View File
@@ -1,10 +1,10 @@
import EmberRouter from '@ember/routing/router';
import config from './config/environment';
const Router = EmberRouter.extend({
location: config.locationType,
rootURL: config.rootURL
});
export default class Router extends EmberRouter {
location = config.locationType;
rootURL = config.rootURL;
}
Router.map(function() {
this.route('dashboard', function() {
@@ -33,5 +33,3 @@ Router.map(function() {
this.route('complete');
});
});
export default Router;
+1 -1
View File
@@ -1 +1 @@
{{loading-spinner}}
<LoadingSpinner />
+2 -2
View File
@@ -1,6 +1,6 @@
<header id="topbar">
<h1>{{link-to "Kosmos Kredits" "dashboard"}}</h1>
{{topbar-account-panel}}
<h1><LinkTo @route="dashboard">Kosmos Kredits</LinkTo></h1>
<TopbarAccountPanel />
</header>
{{outlet}}
View File
+1 -3
View File
@@ -6,9 +6,7 @@
</header>
<div class="content">
{{add-contribution contributors=sortedContributors
attributes=model.params
save=(action "save")}}
<AddContribution @contributors={{sortedContributors}} @attributes={{model.params}} @save={{action "save"}} />
</div>
</section>
+1 -1
View File
@@ -6,7 +6,7 @@
</header>
<div class="content">
{{add-contribution attributes=attributes contributors=sortedContributors save=(action "save")}}
<AddContribution @attributes={{attributes}} @contributors={{sortedContributors}} @save={{action "save"}} />
</div>
</section>
+1 -1
View File
@@ -6,7 +6,7 @@
</header>
<div class="content">
{{add-contributor attributes=attributes save=(action "save")}}
<AddContributor @attributes={{attributes}} @save={{action "save"}} />
</div>
</section>
+1 -1
View File
@@ -6,7 +6,7 @@
</header>
<div class="content">
{{add-contributor save=(action "save")}}
<AddContributor @save={{action "save"}} />
</div>
</section>
+8 -17
View File
@@ -9,7 +9,7 @@
check out the
<a href="https://wiki.kosmos.org/Kredits" target="_blank" rel="noopener">Kredits documentation</a>.
If you want to start earning kredits for your contributions,
{{link-to "create a contributor profile" "signup"}}.
<LinkTo @route="signup">create a contributor profile</LinkTo>.
</p>
</div>
{{/if}}
@@ -22,21 +22,19 @@
<h2>Contributors</h2>
{{#if kredits.hasAccounts}}
<nav>
{{link-to "add" "contributors.new" title="Add contributor profile" class="button small green"}}
<LinkTo @route="contributors.new" @title="Add contributor profile" class="button small green">add</LinkTo>
</nav>
{{/if}}
</header>
<div class="content">
{{contributor-list contributorList=kreditsToplist
showUnconfirmedKredits=showUnconfirmedKredits
selectedContributorId=selectedContributorId}}
<ContributorList @contributorList={{kreditsToplist}} @showUnconfirmedKredits={{showUnconfirmedKredits}} @selectedContributorId={{selectedContributorId}} />
<p class="stats">
<span class="number">{{await kredits.totalKreditsEarned}}</span> kredits confirmed and issued to
<span class="number">{{contributorsWithKredits.length}}</span> contributors
</p>
<p class="stats">
{{input type="checkbox" id="hide-unnconfirmed-kredits" checked=showUnconfirmedKredits}}
<Input @type="checkbox" @id="hide-unnconfirmed-kredits" @checked={{showUnconfirmedKredits}} />
<label for="hide-unnconfirmed-kredits">Show unconfirmed kredits in toplist</label>
</p>
</div>
@@ -47,7 +45,7 @@
<h2>Contributions by type</h2>
</header>
<div class="content">
{{chart-contributions-by-type contributions=contributions}}
<ChartContributionsByType @contributions={{contributions}} />
</div>
</section>
</div>
@@ -60,17 +58,13 @@
<nav>
<button {{action "toggleQuickFilterUnconfirmed"}} class="small {{if showQuickFilterUnconfirmed "active"}}">filter</button>
{{#if kredits.hasAccounts}}
{{link-to "add" "contributions.new" title="Submit a contribution" class="button small green"}}
<LinkTo @route="contributions.new" @title="Submit a contribution" class="button small green">add</LinkTo>
{{/if}}
</nav>
</header>
<div class="content">
{{!-- TODO: We need a better naming for kredits.hasAccounts --}}
{{contribution-list contributions=contributionsUnconfirmedSorted
vetoContribution=(action "vetoContribution")
contractInteractionEnabled=kredits.hasAccounts
selectedContributionId=selectedContributionId
showQuickFilter=showQuickFilterUnconfirmed}}
<ContributionList @contributions={{contributionsUnconfirmedSorted}} @vetoContribution={{action "vetoContribution"}} @contractInteractionEnabled={{kredits.hasAccounts}} @selectedContributionId={{selectedContributionId}} @showQuickFilter={{showQuickFilterUnconfirmed}} />
</div>
</section>
{{/if}}
@@ -83,10 +77,7 @@
</nav>
</header>
<div class="content">
{{contribution-list contributions=contributionsConfirmedSorted
vetoContribution=(action "vetoContribution")
selectedContributionId=selectedContributionId
showQuickFilter=showQuickFilterConfirmed}}
<ContributionList @contributions={{contributionsConfirmedSorted}} @vetoContribution={{action "vetoContribution"}} @selectedContributionId={{selectedContributionId}} @showQuickFilter={{showQuickFilterConfirmed}} />
</div>
</section>
</div>
@@ -10,8 +10,8 @@
<div class="content">
<p class="who-what-when">
<span class="contributor">
{{user-avatar contributor=model.contributor}}
{{link-to model.contributor.name "dashboard.contributors.show" model.contributor}}
<UserAvatar @contributor={{model.contributor}} />
<LinkTo @route="dashboard.contributors.show" @model={{model.contributor}}>{{model.contributor.name}}</LinkTo>
</span>
contributed
<span class="date" title={{model.iso8601Date}}>{{moment-from model.iso8601Date}}</span>:
@@ -35,14 +35,14 @@
{{#if model.vetoed}}
<div class="hint vetoed">
<div class="icon">
{{icon-warning}}
<IconWarning />
</div>
<p>
This contribution has been vetoed, meaning no
kredits will be issued.
</p>
<p>
{{link-to "Re-submit contribution …" "contributions.resubmit" model class="button small green"}}
<LinkTo @route="contributions.resubmit" @model={{model}} class="button small green">Re-submit contribution …</LinkTo>
</p>
</div>
{{/if}}
@@ -50,7 +50,7 @@
<div class="actions">
<p>
{{link-to "Copy & edit as new" "contributions.resubmit" model class="button small"}}
<LinkTo @route="contributions.resubmit" @model={{model}} class="button small">Copy & edit as new</LinkTo>
{{#if model.ipfsHash}}
<a href="{{ipfsGatewayUrl}}/{{model.ipfsHash}}"
class="button small" target="_blank" rel="noopener">
@@ -1,6 +1,6 @@
<section id="contributor-profile">
<header>
{{user-avatar contributor=model size="medium"}}
<UserAvatar @contributor={{model}} @size="medium" />
</header>
<div class="content">
@@ -10,23 +10,21 @@
<ul class="external-accounts">
{{#each model.accounts as |account|}}
<li>
{{external-account-link account=account}}
<ExternalAccountLink @account={{account}} />
</li>
{{/each}}
{{#if model.url}}
<li>
<a href={{model.url}} target="_blank" rel="noopener" title="Website">
<span class="site">Web</span>
{{icon-web-globe}}
<IconWebGlobe />
</a>
</li>
{{/if}}
</ul>
<div class="actions">
<p>
{{link-to "♥ Give kredits" "contributions.new"
(query-params contributorId=model.id)
class="button green"}}
<LinkTo @route="contributions.new" @query={{hash contributorId=model.id}} class="button green">♥ Give kredits</LinkTo>
</p>
</div>
</div>
@@ -37,7 +35,7 @@
{{#if model.ipfsHash}}
<a href="{{ipfsGatewayUrl}}/{{model.ipfsHash}}" class="button small" target="_blank" rel="noopener">Inspect IPFS profile</a>
{{/if}}
{{link-to "Edit profile" "contributors.edit" model class="button small"}}
<LinkTo @route="contributors.edit" @model={{model}} class="button small">Edit profile</LinkTo>
</p>
</div>
</section>
+1 -1
View File
@@ -4,7 +4,7 @@
</header>
<div class="content">
{{add-proposal contributors=minedContributors save=(action "save")}}
<AddProposal @contributors={{minedContributors}} @save={{action "save"}} />
</div>
</section>
+1 -1
View File
@@ -10,6 +10,6 @@
<a href="https://wiki.kosmos.org/Main_Page#Community_.2F_Getting_in_touch_.2F_Getting_involved">in one of our chat rooms</a>?.
</p>
<p class="actions">
{{#link-to "dashboard" class="button small"}}Return to dashboard{{/link-to}}
<LinkTo @route="dashboard" class="button small">Return to dashboard</LinkTo>
</p>
</div>
+1 -3
View File
@@ -10,9 +10,7 @@
<p>
<label>
Ethereum account:<br>
{{input type="text" value=ethAddress
placeholder="0xF18E631Ea191aE4ebE70046Fcb01a436554421BA4"
class=(if isValidEthAccount "valid" "")}}
<Input @type="text" @value={{ethAddress}} placeholder="0xF18E631Ea191aE4ebE70046Fcb01a436554421BA4" class={{if isValidEthAccount "valid" ""}} />
</label>
</p>
</form>
+1 -1
View File
@@ -13,7 +13,7 @@
</p>
<p class="actions">
<button {{action "connectGithub"}} class="icon">
{{icon-account-github-com}}
<IconAccountGithubCom />
Connect GitHub
</button>
</p>
+4
View File
@@ -0,0 +1,4 @@
2020-05-09T13:41:58.543Z [warn] WARNING: {{await}} was not converted as it has positional parameters which can't be automatically converted. Source: app/templates/dashboard.hbs
2020-05-09T13:41:58.919Z [warn] WARNING: {{contribution-status}} was not converted as it has positional parameters which can't be automatically converted. Source: app/templates/dashboard/contributions/show.hbs
2020-05-09T14:59:55.142Z [warn] WARNING: {{contribution-status}} was not converted as it has positional parameters which can't be automatically converted. Source: app/templates/dashboard/contributions/show.hbs
2020-05-09T14:59:56.285Z [warn] WARNING: {{await}} was not converted as it has positional parameters which can't be automatically converted. Source: app/templates/dashboard.hbs
+20
View File
@@ -0,0 +1,20 @@
{
"schemaVersion": "1.0.0",
"packages": [
{
"name": "ember-cli",
"version": "3.18.0",
"blueprints": [
{
"name": "app",
"outputRepo": "https://github.com/ember-cli/ember-new-output",
"codemodsSource": "ember-app-codemods-manifest@1",
"isBaseBlueprint": true,
"options": [
"--no-welcome"
]
}
]
}
]
}
+4 -1
View File
@@ -1,3 +1,6 @@
{
"jquery-integration": true
"application-template-wrapper": false,
"default-async-observers": true,
"jquery-integration": false,
"template-only-glimmer-components": true
}
+8595 -2552
View File
File diff suppressed because it is too large Load Diff
+38 -30
View File
@@ -11,12 +11,14 @@
"test": "tests"
},
"scripts": {
"lint": "npm-run-all --aggregate-output --continue-on-error --parallel lint:*",
"lint:hbs": "ember-template-lint .",
"lint:js": "eslint .",
"test": "ember test",
"start": "ember serve",
"test": "npm-run-all lint:* test:*",
"test:ember": "ember test",
"start:local": "WEB3_PROVIDER_URL=http://localhost:7545 ember serve",
"build": "ember build",
"build": "ember build --environment=production",
"build-prod": "rm -rf release/* && ember build -prod --output-path release",
"preversion": "npm test",
"version": "npm run build-prod && git add release/",
@@ -24,53 +26,59 @@
"deploy": "git push 5apps master"
},
"devDependencies": {
"@ember/jquery": "^0.6.0",
"@ember/optional-features": "^0.7.0",
"@ember/optional-features": "^1.3.0",
"@glimmer/component": "^1.0.0",
"@glimmer/tracking": "^1.0.0",
"babel-eslint": "^10.1.0",
"babel-preset-es2015": "^6.22.0",
"babelify": "^7.3.0",
"brfs": "^2.0.2",
"broccoli-asset-rev": "^3.0.0",
"ember-ajax": "^5.0.0",
"ember-auto-import": "^1.5.3",
"ember-awesome-macros": "0.41.0",
"ember-cli": "~3.10.1",
"ember-cli": "~3.18.0",
"ember-cli-app-version": "^3.2.0",
"ember-cli-babel": "^7.7.3",
"ember-cli-chart": "^3.4.0",
"ember-cli-dependency-checker": "^3.1.0",
"ember-cli-eslint": "^5.1.0",
"ember-cli-htmlbars": "^3.0.1",
"ember-cli-htmlbars-inline-precompile": "^2.1.0",
"ember-cli-inject-live-reload": "^1.8.2",
"ember-cli-babel": "^7.19.0",
"ember-cli-chart": "^3.6.0",
"ember-cli-dependency-checker": "^3.2.0",
"ember-cli-htmlbars": "^4.3.1",
"ember-cli-inject-live-reload": "^2.0.2",
"ember-cli-moment-shim": "^3.7.1",
"ember-cli-sass": "^7.2.0",
"ember-cli-sass": "^10.0.1",
"ember-cli-sri": "^2.1.1",
"ember-cli-template-lint": "^1.0.0-beta.1",
"ember-cli-uglify": "^2.1.0",
"ember-export-application-global": "^2.0.0",
"ember-flatpickr": "^2.14.0",
"ember-load-initializers": "^2.0.0",
"ember-cli-uglify": "^3.0.0",
"ember-export-application-global": "^2.0.1",
"ember-fetch": "^8.0.1",
"ember-flatpickr": "^2.16.2",
"ember-load-initializers": "^2.1.1",
"ember-macro-helpers": "0.17.0",
"ember-maybe-import-regenerator": "^0.1.6",
"ember-moment": "^7.8.1",
"ember-promise-helpers": "1.0.6",
"ember-qunit": "^4.4.1",
"ember-resolver": "^5.0.1",
"ember-source": "~3.10.0",
"ember-promise-helpers": "^1.0.9",
"ember-qunit": "^4.6.0",
"ember-resolver": "^8.0.0",
"ember-source": "~3.18.0",
"ember-template-lint": "^2.6.0",
"ember-truth-helpers": "github:jmurphyau/ember-truth-helpers#31a14373a31f1f82c77537720549b47a95c28e5f",
"eslint-plugin-ember": "^6.2.0",
"eslint-plugin-node": "^9.0.1",
"ethers": "^4.0.27",
"kosmos-schemas": "^2.0.0",
"eslint": "^7.0.0",
"eslint-plugin-ember": "^8.4.0",
"eslint-plugin-node": "^11.1.0",
"ethers": "^4.0.47",
"kosmos-schemas": "^2.1.0",
"kredits-contracts": "^5.5.0",
"loader.js": "^4.7.0",
"ndjson": "github:hugomrdias/ndjson#feat/readable-stream3",
"qunit-dom": "^0.8.4",
"npm-run-all": "^4.1.5",
"qunit-dom": "^1.2.0",
"sass": "^1.26.5",
"transform-loader": "^0.2.4",
"tv4": "^1.3.0",
"web3-utils": "^1.0.0"
"web3-utils": "^1.2.7"
},
"engines": {
"node": "8.* || >= 10.*"
"node": "10.* || >= 12"
},
"ember": {
"edition": "octane"
}
}
+3 -1
View File
@@ -1,3 +1,5 @@
'use strict';
module.exports = {
test_page: 'tests/index.html?hidepassed',
disable_watching: true,
@@ -7,13 +9,13 @@ module.exports = {
launch_in_dev: [
'Chrome'
],
browser_start_timeout: 120,
browser_args: {
Chrome: {
ci: [
// --no-sandbox is needed when running Chrome inside a container
process.env.CI ? '--no-sandbox' : null,
'--headless',
'--disable-gpu',
'--disable-dev-shm-usage',
'--disable-software-rasterizer',
'--mute-audio',
@@ -29,7 +29,7 @@ module('Integration | Component | topbar-account-panel', function(hooks) {
});
await render(hbs`<TopbarAccountPanel />`);
assert.equal(this.element.textContent.trim(), 'Dorian Nakamoto');
assert.dom(this.element).hasText('Dorian Nakamoto');
service.set('currentUser.isCore', true);
await render(hbs`<TopbarAccountPanel />`);