Skip to content

Commit b67c35d

Browse files
author
Emily Stark
committed
Rename packages to Meteor Developer Accounts
1 parent 8ec472d commit b67c35d

18 files changed

+114
-89
lines changed

packages/accounts-meteorid/meteorid_login_button.css packages/accounts-meteor-developer/meteor-developer-login-button.css

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
Accounts.oauth.registerService("meteor-developer");
2+
3+
if (Meteor.isClient) {
4+
Meteor.loginWithMeteorDeveloperAccounts = function (options, callback) {
5+
var credentialRequestCompleteCallback =
6+
Accounts.oauth.credentialRequestCompleteHandler(callback);
7+
MeteorDeveloperAccounts.requestCredential(credentialRequestCompleteCallback);
8+
};
9+
} else {
10+
Accounts.addAutopublishFields({
11+
// publish all fields including access token, which can legitimately be used
12+
// from the client (if transmitted over ssl or on localhost).
13+
forLoggedInUser: ['services.meteor-developer'],
14+
forOtherUsers: [
15+
'services.meteor-developer.username',
16+
'services.meteor-developer.profile',
17+
'services.meteor-developer.id'
18+
]
19+
});
20+
}
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Package.describe({
2-
summary: "Login service for MeteorId accounts",
2+
summary: "Login service for Meteor Developer Accounts",
33
internal: true // XXX for now
44
});
55

@@ -9,8 +9,8 @@ Package.on_use(function (api) {
99
// Export Accounts (etc) to packages using this one.
1010
api.imply('accounts-base', ['client', 'server']);
1111
api.use('accounts-oauth', ['client', 'server']);
12-
api.use('meteorid', ['client', 'server']);
12+
api.use('meteor-developer', ['client', 'server']);
1313

14-
api.add_files("meteorid.js");
15-
api.add_files("meteorid_login_button.css", "client");
14+
api.add_files("meteor-developer.js");
15+
api.add_files("meteor-developer-login-button.css", "client");
1616
});

packages/accounts-meteorid/meteorid.js

-20
This file was deleted.

packages/accounts-ui-unstyled/login_buttons_dialogs.js

+6-1
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,12 @@ var updateSaveDisabled = function () {
208208
// template should be defined in the service's package
209209
var configureLoginServiceDialogTemplateForService = function () {
210210
var serviceName = loginButtonsSession.get('configureLoginServiceDialogServiceName');
211-
return Template['configureLoginServiceDialogFor' + capitalize(serviceName)];
211+
// XXX Service providers should be able to specify their configuration
212+
// template name.
213+
return Template['configureLoginServiceDialogFor' +
214+
(serviceName === 'meteor-developer' ?
215+
'MeteorDeveloper' :
216+
capitalize(serviceName))];
212217
};
213218

214219
var configurationFields = function () {

packages/accounts-ui-unstyled/login_buttons_single.js

+8-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,12 @@ Template._loginButtonsLoggedOutSingleLoginButton.events({
1717
}
1818
};
1919

20-
var loginWithService = Meteor["loginWith" + capitalize(serviceName)];
20+
// XXX Service providers should be able to specify their
21+
// `Meteor.loginWithX` method name.
22+
var loginWithService = Meteor["loginWith" +
23+
(serviceName === 'meteor-developer' ?
24+
'MeteorDeveloperAccounts' :
25+
capitalize(serviceName))];
2126

2227
var options = {}; // use default scope unless specified
2328
if (Accounts.ui._options.requestPermissions[serviceName])
@@ -37,6 +42,8 @@ Template._loginButtonsLoggedOutSingleLoginButton.capitalizedName = function () {
3742
if (this.name === 'github')
3843
// XXX we should allow service packages to set their capitalized name
3944
return 'GitHub';
45+
else if (this.name === 'meteor-developer')
46+
return 'Meteor Developer Accounts';
4047
else
4148
return capitalize(this.name);
4249
};
File renamed without changes.

packages/meteorid/meteorid_client.js packages/meteor-developer/meteor_developer_client.js

+10-6
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
1-
MeteorId = {};
1+
MeteorDeveloperAccounts = {};
22

3-
// Request MeteorId credentials for the user
3+
// Request Meteor Developer Accounts credentials for the user
44
// @param credentialRequestCompleteCallback {Function} Callback function to call on
55
// completion. Takes one argument, credentialToken on success, or Error on
66
// error.
7-
MeteorId.requestCredential = function (credentialRequestCompleteCallback) {
8-
var config = ServiceConfiguration.configurations.findOne({service: 'meteorId'});
7+
var requestCredential = function (credentialRequestCompleteCallback) {
8+
var config = ServiceConfiguration.configurations.findOne({
9+
service: 'meteor-developer'
10+
});
911
if (!config) {
1012
credentialRequestCompleteCallback &&
1113
credentialRequestCompleteCallback(
@@ -17,11 +19,11 @@ MeteorId.requestCredential = function (credentialRequestCompleteCallback) {
1719
var credentialToken = Random.id();
1820

1921
var loginUrl =
20-
METEORID_URL + "/oauth2/authorize?" +
22+
METEOR_DEVELOPER_URL + "/oauth2/authorize?" +
2123
"state=" + credentialToken +
2224
"&response_type=code&" +
2325
"client_id=" + config.clientId +
24-
"&redirect_uri=" + Meteor.absoluteUrl("_oauth/meteorId?close");
26+
"&redirect_uri=" + Meteor.absoluteUrl("_oauth/meteor-developer?close");
2527

2628
Oauth.showPopup(
2729
loginUrl,
@@ -32,3 +34,5 @@ MeteorId.requestCredential = function (credentialRequestCompleteCallback) {
3234
}
3335
);
3436
};
37+
38+
MeteorDeveloperAccounts.requestCredential = requestCredential;
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
METEOR_DEVELOPER_URL = "https://www.meteor.com";
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<template name="configureLoginServiceDialogForMeteorDeveloper">
2+
<p>
3+
First, you'll need to get a Meteor Developer Accounts Client ID.
4+
Set Authorized Redirect URIs to:
5+
<span class="url">
6+
{{siteUrl}}_oauth/meteor-developer?close
7+
</span>
8+
</p>
9+
</template>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
Template.configureLoginServiceDialogForMeteorDeveloper.siteUrl = function () {
2+
return Meteor.absoluteUrl();
3+
};
4+
5+
Template.configureLoginServiceDialogForMeteorDeveloper.fields = function () {
6+
return [
7+
{property: 'clientId', label: 'Client ID'},
8+
{property: 'secret', label: 'Client secret'}
9+
];
10+
};

packages/meteorid/meteorid_server.js packages/meteor-developer/meteor_developer_server.js

+26-15
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
MeteorId = {};
1+
MeteorDeveloperAccounts = {};
22

3-
Oauth.registerService("meteorId", 2, null, function (query) {
3+
Oauth.registerService("meteor-developer", 2, null, function (query) {
44
var response = getTokens(query);
55
var accessToken = response.accessToken;
66
var identity = getIdentity(accessToken);
@@ -31,34 +31,42 @@ Oauth.registerService("meteorId", 2, null, function (query) {
3131
// - refreshToken, if this is the first authorization request and we got a
3232
// refresh token from the server
3333
var getTokens = function (query) {
34-
var config = ServiceConfiguration.configurations.findOne({service: 'meteorId'});
34+
var config = ServiceConfiguration.configurations.findOne({
35+
service: 'meteor-developer'
36+
});
3537
if (!config)
3638
throw new ServiceConfiguration.ConfigError("Service not configured");
3739

3840
var response;
3941
try {
4042
response = HTTP.post(
41-
METEORID_URL + "/oauth2/token", {
43+
METEOR_DEVELOPER_URL + "/oauth2/token", {
4244
params: {
4345
grant_type: "authorization_code",
4446
code: query.code,
4547
client_id: config.clientId,
4648
client_secret: config.secret,
47-
redirect_uri: Meteor.absoluteUrl("_oauth/meteorId?close")
49+
redirect_uri: Meteor.absoluteUrl("_oauth/meteor-developer?close")
4850
}
4951
}
5052
);
5153
} catch (err) {
52-
throw _.extend(new Error("Failed to complete OAuth handshake with MeteorId. "
53-
+ err.message),
54-
{response: err.response});
54+
throw _.extend(
55+
new Error(
56+
"Failed to complete OAuth handshake with Meteor Developer Accounts. "
57+
+ err.message
58+
),
59+
{response: err.response}
60+
);
5561
}
5662

5763
if (! response.data || response.data.error) {
5864
// if the http response was a json object with an error attribute
59-
throw new Error("Failed to complete OAuth handshake with MeteorId. " +
60-
(response.data ? response.data.error :
61-
"No response data"));
65+
throw new Error(
66+
"Failed to complete OAuth handshake with Meteor Developer Accounts. " +
67+
(response.data ? response.data.error :
68+
"No response data")
69+
);
6270
} else {
6371
return {
6472
accessToken: response.data.access_token,
@@ -71,14 +79,17 @@ var getTokens = function (query) {
7179
var getIdentity = function (accessToken) {
7280
try {
7381
return HTTP.get(
74-
METEORID_URL + "/api/v1/identity",
82+
METEOR_DEVELOPER_URL + "/api/v1/identity",
7583
{params: {access_token: accessToken}}).data;
7684
} catch (err) {
77-
throw _.extend(new Error("Failed to fetch identity from MeteorId. " + err.message),
78-
{response: err.response});
85+
throw _.extend(
86+
new Error("Failed to fetch identity from Meteor Developer Accounts. " +
87+
err.message),
88+
{response: err.response}
89+
);
7990
}
8091
};
8192

82-
MeteorId.retrieveCredential = function(credentialToken) {
93+
MeteorDeveloperAccounts.retrieveCredential = function (credentialToken) {
8394
return Oauth.retrieveCredential(credentialToken);
8495
};

packages/meteor-developer/package.js

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
Package.describe({
2+
summary: "Meteor Developer Accounts OAuth flow"
3+
});
4+
5+
Package.on_use(function (api) {
6+
api.use('oauth2', ['client', 'server']);
7+
api.use('oauth', ['client', 'server']);
8+
api.use('http', ['server']);
9+
api.use(['underscore', 'service-configuration'], ['client', 'server']);
10+
api.use(['random', 'templating'], 'client');
11+
12+
api.export('MeteorDeveloperAccounts');
13+
14+
api.add_files('meteor_developer_common.js');
15+
api.add_files(['meteor_developer_configure.html',
16+
'meteor_developer_configure.js'], 'client');
17+
api.add_files('meteor_developer_server.js', 'server');
18+
api.add_files('meteor_developer_client.js', 'client');
19+
});

packages/meteorid/meteorid_common.js

-2
This file was deleted.

packages/meteorid/meteorid_configure.html

-9
This file was deleted.

packages/meteorid/meteorid_configure.js

-10
This file was deleted.

packages/meteorid/package.js

-20
This file was deleted.

0 commit comments

Comments
 (0)