Skip to content

Commit 60ecfc4

Browse files
authored
Merge pull request #8 from ivanvanderbyl/added-stripe-element-and-event-to-actions
Added stripe element and event to actions
2 parents f715078 + 5e9478b commit 60ecfc4

10 files changed

+5968
-29
lines changed

.eslintrc.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
module.exports = {
22
root: true,
33
parserOptions: {
4-
ecmaVersion: 6,
4+
ecmaVersion: 2017,
55
sourceType: 'module'
66
},
77
extends: 'eslint:recommended',

.gitignore

+2
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,5 @@ npm-debug.log*
1717
testem.log
1818

1919
.env
20+
21+
.DS_Store

.travis.yml

+23-14
Original file line numberDiff line numberDiff line change
@@ -4,35 +4,44 @@ node_js:
44
- "6"
55

66
sudo: false
7+
dist: trusty
78

89
cache:
10+
yarn: true
911
directories:
10-
- $HOME/.npm
1112
- $HOME/.cache # includes bowers cache
1213

14+
addons:
15+
chrome: stable
16+
1317
env:
14-
# we recommend testing LTS's and latest stable release (bonus points to beta/canary)
15-
- EMBER_TRY_SCENARIO=ember-lts-2.4
16-
- EMBER_TRY_SCENARIO=ember-lts-2.8
17-
- EMBER_TRY_SCENARIO=ember-release
18-
- EMBER_TRY_SCENARIO=ember-beta
19-
- EMBER_TRY_SCENARIO=ember-canary
20-
- EMBER_TRY_SCENARIO=ember-default
18+
global:
19+
# See https://git.io/vdao3 for details.
20+
- JOBS=1
21+
matrix:
22+
# we recommend testing LTS's and latest stable release (bonus points to beta/canary)
23+
- EMBER_TRY_SCENARIO=ember-lts-2.4
24+
- EMBER_TRY_SCENARIO=ember-lts-2.8
25+
- EMBER_TRY_SCENARIO=ember-lts-2.12
26+
- EMBER_TRY_SCENARIO=ember-release
27+
- EMBER_TRY_SCENARIO=ember-beta
28+
- EMBER_TRY_SCENARIO=ember-canary
29+
- EMBER_TRY_SCENARIO=ember-default
2130

2231
matrix:
2332
fast_finish: true
2433
allow_failures:
2534
- env: EMBER_TRY_SCENARIO=ember-canary
2635

2736
before_install:
28-
- npm config set spin false
29-
- npm install -g bower phantomjs-prebuilt
30-
- bower --version
31-
- phantomjs --version
37+
- curl -o- -L https://yarnpkg.com/install.sh | bash
38+
- export PATH=$HOME/.yarn/bin:$PATH
39+
- if [[ $(npm -v | cut -d '.' -f 1) -lt 3 ]]; then npm i -g npm@^3; fi
40+
- yarn global add bower
41+
- bower install
3242

3343
install:
34-
- npm install
35-
- bower install
44+
- yarn install --no-lockfile --non-interactive
3645

3746
script:
3847
# Usually, it's ok to finish the test scenario without reverting

addon/components/stripe-element.js

+12-6
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ const {
55
get,
66
inject: { service },
77
set,
8-
computed,
8+
computed
99
} = Ember;
1010

1111
export default Component.extend({
@@ -25,7 +25,7 @@ export default Component.extend({
2525
didInsertElement() {
2626
this._super(...arguments);
2727

28-
let elements = get(this, 'elements');
28+
let elements = get(this, 'stripev3.elements')();
2929

3030
// Fetch user options
3131
let options = get(this, 'options');
@@ -70,12 +70,18 @@ export default Component.extend({
7070

7171
setEventListeners() {
7272
let stripeElement = get(this, 'stripeElement');
73-
stripeElement.on('blur', () => this.sendAction('blur'));
74-
stripeElement.on('focus', () => this.sendAction('focus'));
73+
stripeElement.on('blur', (event) => this.sendAction('blur', stripeElement, event));
74+
stripeElement.on('focus', (event) => this.sendAction('focus', stripeElement, event));
7575
stripeElement.on('change', (...args) => {
76-
let { error } = args[0];
76+
let { error, complete } = args[0];
7777
set(this, 'error', error);
78-
this.sendAction('change', ...args);
78+
this.sendAction('change', stripeElement, ...args);
79+
80+
if (complete) {
81+
this.sendAction('complete', stripeElement);
82+
} else if (error) {
83+
this.sendAction('error', error);
84+
}
7985
});
8086
}
8187
});

bower.json

-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
{
22
"name": "ember-stripe-elements",
33
"dependencies": {
4-
"sinonjs": "^1.17.1"
54
}
65
}

config/ember-try.js

+9
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
/* eslint-env node */
22
module.exports = {
3+
useYarn: true,
34
scenarios: [
45
{
56
name: 'ember-lts-2.4',
@@ -33,6 +34,14 @@ module.exports = {
3334
}
3435
}
3536
},
37+
{
38+
name: 'ember-lts-2.12',
39+
npm: {
40+
devDependencies: {
41+
'ember-source': '~2.12.0'
42+
}
43+
}
44+
},
3645
{
3746
name: 'ember-release',
3847
bower: {

index.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ module.exports = {
55
name: 'ember-stripe-elements',
66

77
contentFor(type) {
8-
if (type === 'head') {
9-
return '<script type="text/javascript" src="https://js.stripe.com/v3/"></script>';
8+
if (type === 'head') {
9+
return '<script type="text/javascript" src="https://js.stripe.com/v3/"></script>';
1010
}
1111
}
1212
};

package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"ember-cli": "2.12.0",
3333
"ember-cli-code-coverage": "0.3.11",
3434
"ember-cli-dependency-checker": "^1.3.0",
35-
"ember-cli-eslint": "^3.0.0",
35+
"ember-cli-eslint": "^4.2.2",
3636
"ember-cli-inject-live-reload": "^1.4.1",
3737
"ember-cli-qunit": "^3.1.0",
3838
"ember-cli-shims": "^1.0.2",
@@ -42,7 +42,7 @@
4242
"ember-export-application-global": "^1.0.5",
4343
"ember-load-initializers": "^0.6.0",
4444
"ember-resolver": "^2.0.3",
45-
"ember-sinon": "0.2.1",
45+
"ember-sinon": "^1.0.1",
4646
"ember-sinon-qunit": "1.4.1",
4747
"ember-source": "~2.12.0",
4848
"loader.js": "^4.2.3"

testem.js

+13-3
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,20 @@ module.exports = {
33
"test_page": "tests/index.html?hidepassed",
44
"disable_watching": true,
55
"launch_in_ci": [
6-
"PhantomJS"
6+
"Chrome"
77
],
88
"launch_in_dev": [
9-
"PhantomJS",
109
"Chrome"
11-
]
10+
],
11+
browser_args: {
12+
Chrome: {
13+
mode: 'ci',
14+
args: [
15+
'--disable-gpu',
16+
'--headless',
17+
'--remote-debugging-port=9222',
18+
'--window-size=1440,900'
19+
]
20+
},
21+
}
1222
};

0 commit comments

Comments
 (0)