corrections found while writing documentation
This commit is contained in:
parent
5485eb9260
commit
ab22ebc967
17 changed files with 127 additions and 42 deletions
|
|
@ -14,3 +14,4 @@ notices-for-facebook-graph-api-2
|
||||||
1.4.0-remove-old-dev-bundle-link
|
1.4.0-remove-old-dev-bundle-link
|
||||||
1.4.1-add-shell-server-package
|
1.4.1-add-shell-server-package
|
||||||
1.4.3-split-account-service-packages
|
1.4.3-split-account-service-packages
|
||||||
|
1.5-add-dynamic-import-package
|
||||||
|
|
|
||||||
|
|
@ -4,31 +4,32 @@
|
||||||
# 'meteor add' and 'meteor remove' will edit this file for you,
|
# 'meteor add' and 'meteor remove' will edit this file for you,
|
||||||
# but you can also edit it by hand.
|
# but you can also edit it by hand.
|
||||||
|
|
||||||
meteor-base@1.0.4 # Packages every Meteor app needs to have
|
meteor-base@1.1.0 # Packages every Meteor app needs to have
|
||||||
mobile-experience@1.0.4 # Packages for a great mobile UX
|
mobile-experience@1.0.4 # Packages for a great mobile UX
|
||||||
mongo@1.1.17 # The database Meteor supports right now
|
mongo@1.1.18 # The database Meteor supports right now
|
||||||
blaze-html-templates@1.0.4 # Compile .html files into Meteor Blaze views
|
|
||||||
reactive-var@1.0.11 # Reactive variable for tracker
|
reactive-var@1.0.11 # Reactive variable for tracker
|
||||||
tracker@1.1.3 # Meteor's client-side reactive programming library
|
tracker@1.1.3 # Meteor's client-side reactive programming library
|
||||||
|
|
||||||
standard-minifier-css@1.3.4 # CSS minifier run for production mode
|
standard-minifier-css@1.3.4 # CSS minifier run for production mode
|
||||||
standard-minifier-js@2.0.0 # JS minifier run for production mode
|
standard-minifier-js@2.1.0 # JS minifier run for production mode
|
||||||
es5-shim@4.6.15 # ECMAScript 5 compatibility for older browsers.
|
es5-shim@4.6.15 # ECMAScript 5 compatibility for older browsers.
|
||||||
ecmascript@0.7.3 # Enable ECMAScript2015+ syntax in app code
|
ecmascript@0.8.0 # Enable ECMAScript2015+ syntax in app code
|
||||||
shell-server@0.2.3 # Server-side component of the `meteor shell` command
|
shell-server@0.2.3 # Server-side component of the `meteor shell` command
|
||||||
|
|
||||||
react-meteor-data
|
react-meteor-data
|
||||||
alanning:roles
|
alanning:roles
|
||||||
fourseven:scss
|
fourseven:scss
|
||||||
twbs:bootstrap
|
twbs:bootstrap
|
||||||
accounts-base@1.2.17
|
accounts-base@1.3.0
|
||||||
accounts-password@1.3.6
|
accounts-password@1.3.6
|
||||||
service-configuration@1.0.11
|
service-configuration@1.0.11
|
||||||
accounts-facebook@1.1.1
|
accounts-facebook@1.2.0
|
||||||
accounts-github@1.2.1
|
accounts-github@1.3.0
|
||||||
accounts-google@1.1.2
|
accounts-google@1.2.0
|
||||||
themeteorchef:bert
|
themeteorchef:bert
|
||||||
fortawesome:fontawesome
|
fortawesome:fontawesome
|
||||||
aldeed:collection2-core@2.0.0
|
aldeed:collection2-core@2.0.0
|
||||||
audit-argument-checks@1.0.7
|
audit-argument-checks@1.0.7
|
||||||
ddp-rate-limiter@1.0.7
|
ddp-rate-limiter@1.0.7
|
||||||
|
dynamic-import
|
||||||
|
static-html
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
METEOR@1.4.4.3
|
METEOR@1.5
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
accounts-base@1.2.17
|
accounts-base@1.3.0
|
||||||
accounts-facebook@1.1.1
|
accounts-facebook@1.2.0
|
||||||
accounts-github@1.2.1
|
accounts-github@1.3.0
|
||||||
accounts-google@1.1.2
|
accounts-google@1.2.0
|
||||||
accounts-oauth@1.1.15
|
accounts-oauth@1.1.15
|
||||||
accounts-password@1.3.6
|
accounts-password@1.3.6
|
||||||
alanning:roles@1.2.16
|
alanning:roles@1.2.16
|
||||||
|
|
@ -9,14 +9,13 @@ aldeed:collection2-core@2.0.1
|
||||||
allow-deny@1.0.5
|
allow-deny@1.0.5
|
||||||
audit-argument-checks@1.0.7
|
audit-argument-checks@1.0.7
|
||||||
autoupdate@1.3.12
|
autoupdate@1.3.12
|
||||||
babel-compiler@6.18.2
|
babel-compiler@6.19.1
|
||||||
babel-runtime@1.0.1
|
babel-runtime@1.0.1
|
||||||
base64@1.0.10
|
base64@1.0.10
|
||||||
binary-heap@1.0.10
|
binary-heap@1.0.10
|
||||||
blaze@2.3.2
|
blaze@2.3.2
|
||||||
blaze-html-templates@1.1.2
|
|
||||||
blaze-tools@1.0.10
|
blaze-tools@1.0.10
|
||||||
boilerplate-generator@1.0.11
|
boilerplate-generator@1.1.0
|
||||||
caching-compiler@1.1.9
|
caching-compiler@1.1.9
|
||||||
caching-html-compiler@1.1.2
|
caching-html-compiler@1.1.2
|
||||||
callback-hook@1.0.10
|
callback-hook@1.0.10
|
||||||
|
|
@ -28,12 +27,15 @@ ddp-rate-limiter@1.0.7
|
||||||
ddp-server@1.3.14
|
ddp-server@1.3.14
|
||||||
deps@1.0.12
|
deps@1.0.12
|
||||||
diff-sequence@1.0.7
|
diff-sequence@1.0.7
|
||||||
ecmascript@0.7.3
|
dynamic-import@0.1.0
|
||||||
ecmascript-runtime@0.3.15
|
ecmascript@0.8.0
|
||||||
|
ecmascript-runtime@0.4.1
|
||||||
|
ecmascript-runtime-client@0.4.1
|
||||||
|
ecmascript-runtime-server@0.4.1
|
||||||
ejson@1.0.13
|
ejson@1.0.13
|
||||||
email@1.2.1
|
email@1.2.1
|
||||||
es5-shim@4.6.15
|
es5-shim@4.6.15
|
||||||
facebook-oauth@1.3.0
|
facebook-oauth@1.3.1
|
||||||
fastclick@1.0.13
|
fastclick@1.0.13
|
||||||
fortawesome:fontawesome@4.7.0
|
fortawesome:fontawesome@4.7.0
|
||||||
fourseven:scss@4.5.0
|
fourseven:scss@4.5.0
|
||||||
|
|
@ -48,18 +50,18 @@ id-map@1.0.9
|
||||||
jquery@1.11.10
|
jquery@1.11.10
|
||||||
launch-screen@1.1.1
|
launch-screen@1.1.1
|
||||||
livedata@1.0.18
|
livedata@1.0.18
|
||||||
localstorage@1.0.12
|
localstorage@1.1.0
|
||||||
logging@1.1.17
|
logging@1.1.17
|
||||||
meteor@1.6.1
|
meteor@1.6.1
|
||||||
meteor-base@1.0.4
|
meteor-base@1.1.0
|
||||||
minifier-css@1.2.16
|
minifier-css@1.2.16
|
||||||
minifier-js@2.0.0
|
minifier-js@2.1.0
|
||||||
minimongo@1.0.23
|
minimongo@1.2.0
|
||||||
mobile-experience@1.0.4
|
mobile-experience@1.0.4
|
||||||
mobile-status-bar@1.0.14
|
mobile-status-bar@1.0.14
|
||||||
modules@0.8.2
|
modules@0.9.0
|
||||||
modules-runtime@0.7.10
|
modules-runtime@0.8.0
|
||||||
mongo@1.1.17
|
mongo@1.1.18
|
||||||
mongo-id@1.0.6
|
mongo-id@1.0.6
|
||||||
npm-bcrypt@0.9.2
|
npm-bcrypt@0.9.2
|
||||||
npm-mongo@2.2.24
|
npm-mongo@2.2.24
|
||||||
|
|
@ -67,12 +69,12 @@ oauth@1.1.13
|
||||||
oauth2@1.1.11
|
oauth2@1.1.11
|
||||||
observe-sequence@1.0.16
|
observe-sequence@1.0.16
|
||||||
ordered-dict@1.0.9
|
ordered-dict@1.0.9
|
||||||
promise@0.8.8
|
promise@0.8.9
|
||||||
raix:eventemitter@0.1.3
|
raix:eventemitter@0.1.3
|
||||||
random@1.0.10
|
random@1.0.10
|
||||||
rate-limit@1.0.8
|
rate-limit@1.0.8
|
||||||
react-meteor-data@0.2.11
|
react-meteor-data@0.2.11
|
||||||
reactive-dict@1.1.8
|
reactive-dict@1.1.9
|
||||||
reactive-var@1.0.11
|
reactive-var@1.0.11
|
||||||
reload@1.1.11
|
reload@1.1.11
|
||||||
retry@1.0.9
|
retry@1.0.9
|
||||||
|
|
@ -85,7 +87,8 @@ spacebars@1.0.15
|
||||||
spacebars-compiler@1.1.2
|
spacebars-compiler@1.1.2
|
||||||
srp@1.0.10
|
srp@1.0.10
|
||||||
standard-minifier-css@1.3.4
|
standard-minifier-css@1.3.4
|
||||||
standard-minifier-js@2.0.0
|
standard-minifier-js@2.1.0
|
||||||
|
static-html@1.2.2
|
||||||
templating@1.3.2
|
templating@1.3.2
|
||||||
templating-compiler@1.3.2
|
templating-compiler@1.3.2
|
||||||
templating-runtime@1.3.2
|
templating-runtime@1.3.2
|
||||||
|
|
@ -97,5 +100,5 @@ twbs:bootstrap@3.3.6
|
||||||
ui@1.0.13
|
ui@1.0.13
|
||||||
underscore@1.0.10
|
underscore@1.0.10
|
||||||
url@1.1.0
|
url@1.1.0
|
||||||
webapp@1.3.15
|
webapp@1.3.16
|
||||||
webapp-hashing@1.0.9
|
webapp-hashing@1.0.9
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,30 @@
|
||||||
import { Meteor } from 'meteor/meteor';
|
import { Meteor } from 'meteor/meteor';
|
||||||
import { check } from 'meteor/check';
|
import { check } from 'meteor/check';
|
||||||
import { ServiceConfiguration } from 'meteor/service-configuration';
|
import { ServiceConfiguration } from 'meteor/service-configuration';
|
||||||
|
import rateLimit from '../../../modules/rate-limit';
|
||||||
|
|
||||||
Meteor.methods({
|
Meteor.methods({
|
||||||
'oauth.verifyConfiguration': function oauthVerifyConfiguration(services) {
|
'oauth.verifyConfiguration': function oauthVerifyConfiguration(services) {
|
||||||
check(services, Array);
|
check(services, Array);
|
||||||
|
|
||||||
|
try {
|
||||||
const verifiedServices = [];
|
const verifiedServices = [];
|
||||||
services.forEach((service) => {
|
services.forEach((service) => {
|
||||||
if (ServiceConfiguration.configurations.findOne({ service })) verifiedServices.push(service);
|
if (ServiceConfiguration.configurations.findOne({ service })) {
|
||||||
|
verifiedServices.push(service);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
return verifiedServices.sort();
|
return verifiedServices.sort();
|
||||||
|
} catch (exception) {
|
||||||
|
throw new Meteor.Error('500', exception);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
rateLimit({
|
||||||
|
methods: [
|
||||||
|
'oauth.verifyConfiguration',
|
||||||
|
],
|
||||||
|
limit: 5,
|
||||||
|
timeRange: 1000,
|
||||||
|
});
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import { Meteor } from 'meteor/meteor';
|
import { Meteor } from 'meteor/meteor';
|
||||||
import { check, Match } from 'meteor/check';
|
import { check, Match } from 'meteor/check';
|
||||||
import editProfile from '../../../modules/server/edit-profile';
|
import editProfile from './edit-profile';
|
||||||
import rateLimit from '../../../modules/rate-limit';
|
import rateLimit from '../../../modules/rate-limit';
|
||||||
|
|
||||||
Meteor.methods({
|
Meteor.methods({
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ import getPrivateFile from '../../../modules/server/get-private-file';
|
||||||
import parseMarkdown from '../../../modules/parse-markdown';
|
import parseMarkdown from '../../../modules/parse-markdown';
|
||||||
|
|
||||||
Meteor.methods({
|
Meteor.methods({
|
||||||
'utility.getPage': function utilityReadFileAsText(fileName) {
|
'utility.getPage': function utilityGetPage(fileName) {
|
||||||
check(fileName, String);
|
check(fileName, String);
|
||||||
return parseMarkdown(getPrivateFile(`pages/${fileName}.md`));
|
return parseMarkdown(getPrivateFile(`pages/${fileName}.md`));
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
|
|
||||||
import './InputHint.scss';
|
import './InputHint.css';
|
||||||
|
|
||||||
const InputHint = ({ children }) => (
|
const InputHint = ({ children }) => (
|
||||||
<div className="InputHint">
|
<div className="InputHint">
|
||||||
|
|
|
||||||
56
imports/ui/components/Loading/Loading.js
Normal file
56
imports/ui/components/Loading/Loading.js
Normal file
|
|
@ -0,0 +1,56 @@
|
||||||
|
import React from 'react';
|
||||||
|
|
||||||
|
const Loading = () => (
|
||||||
|
<div className="Loading">
|
||||||
|
<svg width="44" height="44" viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg" stroke="#4285F4">
|
||||||
|
<g fill="none" fillRule="evenodd" strokeWidth="2">
|
||||||
|
<circle cx="22" cy="22" r="1">
|
||||||
|
<animate
|
||||||
|
attributeName="r"
|
||||||
|
begin="0s"
|
||||||
|
dur="1.8s"
|
||||||
|
values="1; 20"
|
||||||
|
calcMode="spline"
|
||||||
|
keyTimes="0; 1"
|
||||||
|
keySplines="0.165, 0.84, 0.44, 1"
|
||||||
|
repeatCount="indefinite"
|
||||||
|
/>
|
||||||
|
<animate
|
||||||
|
attributeName="stroke-opacity"
|
||||||
|
begin="0s"
|
||||||
|
dur="1.8s"
|
||||||
|
values="1; 0"
|
||||||
|
calcMode="spline"
|
||||||
|
keyTimes="0; 1"
|
||||||
|
keySplines="0.3, 0.61, 0.355, 1"
|
||||||
|
repeatCount="indefinite"
|
||||||
|
/>
|
||||||
|
</circle>
|
||||||
|
<circle cx="22" cy="22" r="1">
|
||||||
|
<animate
|
||||||
|
attributeName="r"
|
||||||
|
begin="-0.9s"
|
||||||
|
dur="1.8s"
|
||||||
|
values="1; 20"
|
||||||
|
calcMode="spline"
|
||||||
|
keyTimes="0; 1"
|
||||||
|
keySplines="0.165, 0.84, 0.44, 1"
|
||||||
|
repeatCount="indefinite"
|
||||||
|
/>
|
||||||
|
<animate
|
||||||
|
attributeName="stroke-opacity"
|
||||||
|
begin="-0.9s"
|
||||||
|
dur="1.8s"
|
||||||
|
values="1; 0"
|
||||||
|
calcMode="spline"
|
||||||
|
keyTimes="0; 1"
|
||||||
|
keySplines="0.3, 0.61, 0.355, 1"
|
||||||
|
repeatCount="indefinite"
|
||||||
|
/>
|
||||||
|
</circle>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
|
||||||
|
export default Loading;
|
||||||
|
|
@ -7,6 +7,7 @@ import { Meteor } from 'meteor/meteor';
|
||||||
import { createContainer } from 'meteor/react-meteor-data';
|
import { createContainer } from 'meteor/react-meteor-data';
|
||||||
import { Bert } from 'meteor/themeteorchef:bert';
|
import { Bert } from 'meteor/themeteorchef:bert';
|
||||||
import DocumentsCollection from '../../../api/Documents/Documents';
|
import DocumentsCollection from '../../../api/Documents/Documents';
|
||||||
|
import Loading from '../../components/Loading/Loading';
|
||||||
|
|
||||||
import './Documents.scss';
|
import './Documents.scss';
|
||||||
|
|
||||||
|
|
@ -22,7 +23,7 @@ const handleRemove = (documentId) => {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const Documents = ({ documents, match, history }) => (
|
const Documents = ({ loading, documents, match, history }) => (!loading ? (
|
||||||
<div className="Documents">
|
<div className="Documents">
|
||||||
<div className="page-header clearfix">
|
<div className="page-header clearfix">
|
||||||
<h4 className="pull-left">Documents</h4>
|
<h4 className="pull-left">Documents</h4>
|
||||||
|
|
@ -63,9 +64,10 @@ const Documents = ({ documents, match, history }) => (
|
||||||
</tbody>
|
</tbody>
|
||||||
</Table> : <Alert bsStyle="warning">No documents yet!</Alert>}
|
</Table> : <Alert bsStyle="warning">No documents yet!</Alert>}
|
||||||
</div>
|
</div>
|
||||||
);
|
) : <Loading />);
|
||||||
|
|
||||||
Documents.propTypes = {
|
Documents.propTypes = {
|
||||||
|
loading: PropTypes.bool.isRequired,
|
||||||
documents: PropTypes.arrayOf(PropTypes.object).isRequired,
|
documents: PropTypes.arrayOf(PropTypes.object).isRequired,
|
||||||
match: PropTypes.object.isRequired,
|
match: PropTypes.object.isRequired,
|
||||||
history: PropTypes.object.isRequired,
|
history: PropTypes.object.isRequired,
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@ import { Meteor } from 'meteor/meteor';
|
||||||
import { Bert } from 'meteor/themeteorchef:bert';
|
import { Bert } from 'meteor/themeteorchef:bert';
|
||||||
import Documents from '../../../api/Documents/Documents';
|
import Documents from '../../../api/Documents/Documents';
|
||||||
import NotFound from '../NotFound/NotFound';
|
import NotFound from '../NotFound/NotFound';
|
||||||
|
import Loading from '../../components/Loading/Loading';
|
||||||
|
|
||||||
const handleRemove = (documentId, history) => {
|
const handleRemove = (documentId, history) => {
|
||||||
if (confirm('Are you sure? This is permanent!')) {
|
if (confirm('Are you sure? This is permanent!')) {
|
||||||
|
|
@ -20,7 +21,7 @@ const handleRemove = (documentId, history) => {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const ViewDocument = ({ doc, match, history }) => (doc ? (
|
const renderDocument = (doc, match, history) => (doc ? (
|
||||||
<div className="ViewDocument">
|
<div className="ViewDocument">
|
||||||
<div className="page-header clearfix">
|
<div className="page-header clearfix">
|
||||||
<h4 className="pull-left">{ doc && doc.title }</h4>
|
<h4 className="pull-left">{ doc && doc.title }</h4>
|
||||||
|
|
@ -37,7 +38,12 @@ const ViewDocument = ({ doc, match, history }) => (doc ? (
|
||||||
</div>
|
</div>
|
||||||
) : <NotFound />);
|
) : <NotFound />);
|
||||||
|
|
||||||
|
const ViewDocument = ({ loading, doc, match, history }) => (
|
||||||
|
!loading ? renderDocument(doc, match, history) : <Loading />
|
||||||
|
);
|
||||||
|
|
||||||
ViewDocument.propTypes = {
|
ViewDocument.propTypes = {
|
||||||
|
loading: PropTypes.bool.isRequired,
|
||||||
doc: PropTypes.object.isRequired,
|
doc: PropTypes.object.isRequired,
|
||||||
match: PropTypes.object.isRequired,
|
match: PropTypes.object.isRequired,
|
||||||
history: PropTypes.object.isRequired,
|
history: PropTypes.object.isRequired,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue