Compare commits
84 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d1950b4598 | ||
|
|
af20eb4f3c | ||
|
|
be0283a342 | ||
|
|
e05561dcf9 | ||
|
|
3c776ed018 | ||
|
|
ebecb46935 | ||
|
|
d83fe917d0 | ||
|
|
f526de88a7 | ||
|
|
55adca36d5 | ||
|
|
be6f54e53a | ||
|
|
d41c27c86d | ||
|
|
f4397e65ab | ||
|
|
c00c69a0c7 | ||
|
|
6737983782 | ||
|
|
78441439c3 | ||
|
|
9b72e1aea2 | ||
|
|
684eca8603 | ||
|
|
868e5f96a4 | ||
|
|
6fe368cde7 | ||
|
|
2ffacb88e0 | ||
|
|
af3af0e550 | ||
|
|
81f50d94c1 | ||
|
|
49e6d51b95 | ||
|
|
1e4e1a3b11 | ||
|
|
4440c88417 | ||
|
|
98047ca806 | ||
|
|
051cabc712 | ||
|
|
636fa504f1 | ||
|
|
ff9fc916f6 | ||
|
|
2206a607b2 | ||
|
|
ce224301b2 | ||
|
|
e6a9911dfc | ||
|
|
8a1871ee18 | ||
|
|
402f885f85 | ||
|
|
d07c118d47 | ||
|
|
103d44eeec | ||
|
|
33196c6771 | ||
|
|
80dc862047 | ||
|
|
314da14ad1 | ||
|
|
e5dbe81ac1 | ||
|
|
7e68ef64cc | ||
|
|
c9d71cad52 | ||
|
|
d79a808c81 | ||
|
|
1016c39bdf | ||
|
|
5f4923e049 | ||
|
|
e83237a728 | ||
|
|
9f323738bf | ||
|
|
1fc76fa50d | ||
|
|
36d5ff0a88 | ||
|
|
d05874ed13 | ||
|
|
df2521e69c | ||
|
|
3c6a685fe8 | ||
|
|
a77e560284 | ||
|
|
4cec83918f | ||
|
|
fec95c51c6 | ||
|
|
425c42d049 | ||
|
|
ab6f0c4f5b | ||
|
|
5d6e57b896 | ||
|
|
7c0a8125f2 | ||
|
|
7481ef08a8 | ||
|
|
b578dd5fb0 | ||
|
|
5d6f934d88 | ||
|
|
337f0bfa8a | ||
|
|
c62784894b | ||
|
|
75fff43d7d | ||
|
|
a9eeeac0df | ||
|
|
c8af0ff0a9 | ||
|
|
9e200db7b9 | ||
|
|
c08cf83096 | ||
|
|
d9368b06d0 | ||
|
|
2703367681 | ||
|
|
d419442549 | ||
|
|
99df01c950 | ||
|
|
d76349b3bb | ||
|
|
39c061f4e8 | ||
|
|
6d167ddb22 | ||
|
|
037acbd459 | ||
|
|
4d3fc3bb09 | ||
|
|
4b984d4fac | ||
|
|
58843613ba | ||
|
|
39b549b24b | ||
|
|
c79177de72 | ||
|
|
11d09b1487 | ||
|
|
85b63f152f |
65
README.md
65
README.md
@@ -1,58 +1,13 @@
|
|||||||
TODO
|
RPG Docs
|
||||||
====
|
========
|
||||||
|
|
||||||
* Get Polymer installed using bower.
|
This is the repo for [DiceCloud](dicecloud.com). The currently deployed version should always be the latest release of the master branch.
|
||||||
* Install Vulcanize package listed below
|
|
||||||
* Copy the differential polymer demo to get polymer implemented nicely
|
|
||||||
* Update Meteor
|
|
||||||
* Install and use LESS
|
|
||||||
|
|
||||||
Packages used
|
Getting started
|
||||||
=============
|
---------------
|
||||||
|
|
||||||
* meteor-platform
|
`git clone https://github.com/ThaumRystra/RPG-Docs RPG-Docs`
|
||||||
* Base Meteor.
|
`cd RPG-Docs`
|
||||||
* [Docs](http://docs.meteor.com/#/full/)
|
`cd rpg-docs`
|
||||||
* autopublish
|
`bower install`
|
||||||
* Publishes everything to the client.
|
`meteor`
|
||||||
* Must be removed before release
|
|
||||||
* insecure
|
|
||||||
* Allows the client the freedom to modify any colleciton.
|
|
||||||
* Must be removed before release
|
|
||||||
* iron:router
|
|
||||||
* Enables pagination and URL's to direct to specific templates.
|
|
||||||
* [Tutorial](http://www.manuel-schoebel.com/blog/iron-router-tutorial)
|
|
||||||
* accounts-password
|
|
||||||
* Lets users create accounts with a simple password
|
|
||||||
* accounts-ui
|
|
||||||
* Adds simple UI for logging in
|
|
||||||
* random
|
|
||||||
* Somewhat decent cryptographically strong psuedo random number generation.
|
|
||||||
* [readme](https://atmospherejs.com/meteor/random)
|
|
||||||
* dburles:collection-helpers
|
|
||||||
* Adds template-style helpers to collections. [github page](https://github.com/dburles/meteor-collection-helpers)
|
|
||||||
* reactive-var
|
|
||||||
* Friendly reactive variables
|
|
||||||
* [Meteor Docs](http://docs.meteor.com/#/full/reactivevar_pkg)
|
|
||||||
* cw4gn3r:jquery-event-drag
|
|
||||||
* Adds jquery drag events
|
|
||||||
* underscore
|
|
||||||
* Handy javascript utilities
|
|
||||||
* [Docs](http://underscorejs.org/)
|
|
||||||
* aldeed:collection2
|
|
||||||
* Extends collections with Schemas
|
|
||||||
* [(gitHub page)](https://github.com/aldeed/meteor-collection2)
|
|
||||||
* uses [SimpleSchema](https://github.com/aldeed/meteor-simple-schema)
|
|
||||||
* aldeed:autoform
|
|
||||||
* Automatically generates bootstrap forms for collection2 Schemas.
|
|
||||||
* [github](https://github.com/aldeed/meteor-autoform)
|
|
||||||
* differential:vulcanize
|
|
||||||
* Bakes all the polymer imports into one file
|
|
||||||
* [github](https://github.com/Differential/meteor-vulcanize)
|
|
||||||
|
|
||||||
************
|
|
||||||
|
|
||||||
Resources
|
|
||||||
=========
|
|
||||||
|
|
||||||
[differential's polymer demo](https://github.com/Differential/polymer-demo)
|
|
||||||
|
|||||||
5
rpg-docs/.gitignore
vendored
5
rpg-docs/.gitignore
vendored
@@ -1,5 +1,8 @@
|
|||||||
.meteor/local
|
.meteor/local
|
||||||
.meteor/meteorite
|
.meteor/meteorite
|
||||||
|
.demeteorized
|
||||||
|
settings.json
|
||||||
public/components
|
public/components
|
||||||
nohup.out
|
nohup.out
|
||||||
dump
|
node_modules
|
||||||
|
dump
|
||||||
|
|||||||
@@ -6,3 +6,8 @@ notices-for-0.9.0
|
|||||||
notices-for-0.9.1
|
notices-for-0.9.1
|
||||||
0.9.4-platform-file
|
0.9.4-platform-file
|
||||||
notices-for-facebook-graph-api-2
|
notices-for-facebook-graph-api-2
|
||||||
|
1.2.0-standard-minifiers-package
|
||||||
|
1.2.0-meteor-platform-split
|
||||||
|
1.2.0-cordova-changes
|
||||||
|
1.2.0-breaking-changes
|
||||||
|
1.3.0-split-minifiers-package
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
# '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-platform
|
thaum:vulcanize@0.0.5
|
||||||
iron:router
|
iron:router
|
||||||
accounts-password
|
accounts-password
|
||||||
accounts-ui
|
accounts-ui
|
||||||
@@ -12,7 +12,6 @@ dburles:collection-helpers
|
|||||||
reactive-var
|
reactive-var
|
||||||
underscore
|
underscore
|
||||||
aldeed:collection2
|
aldeed:collection2
|
||||||
differential:vulcanize
|
|
||||||
matb33:collection-hooks
|
matb33:collection-hooks
|
||||||
zimme:collection-softremovable
|
zimme:collection-softremovable
|
||||||
momentjs:moment
|
momentjs:moment
|
||||||
@@ -23,8 +22,26 @@ useraccounts:polymer
|
|||||||
accounts-google
|
accounts-google
|
||||||
splendido:accounts-meld
|
splendido:accounts-meld
|
||||||
email
|
email
|
||||||
fourseven:scss@2.1.1
|
|
||||||
wolves:bourbon
|
|
||||||
meteorhacks:subs-manager
|
meteorhacks:subs-manager
|
||||||
meteorhacks:kadira
|
meteorhacks:kadira
|
||||||
chuangbo:marked
|
chuangbo:marked
|
||||||
|
reywood:iron-router-ga
|
||||||
|
meteor-base
|
||||||
|
mobile-experience
|
||||||
|
mongo
|
||||||
|
blaze-html-templates
|
||||||
|
session
|
||||||
|
jquery
|
||||||
|
tracker
|
||||||
|
logging
|
||||||
|
reload
|
||||||
|
ejson
|
||||||
|
spacebars
|
||||||
|
check
|
||||||
|
useraccounts:iron-routing
|
||||||
|
wizonesolutions:canonical
|
||||||
|
meteorhacks:fast-render
|
||||||
|
fourseven:scss
|
||||||
|
wolves:bourbon
|
||||||
|
standard-minifier-css
|
||||||
|
standard-minifier-js
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
METEOR@1.1.0.2
|
METEOR@1.3.2.4
|
||||||
|
|||||||
@@ -1,95 +1,131 @@
|
|||||||
accounts-base@1.2.0
|
accounts-base@1.2.7
|
||||||
accounts-google@1.0.4
|
accounts-google@1.0.9
|
||||||
accounts-oauth@1.1.5
|
accounts-oauth@1.1.12
|
||||||
accounts-password@1.1.1
|
accounts-password@1.1.8
|
||||||
accounts-ui@1.1.5
|
accounts-ui@1.1.9
|
||||||
accounts-ui-unstyled@1.1.7
|
accounts-ui-unstyled@1.1.12
|
||||||
aldeed:collection2@2.3.3
|
aldeed:collection2@2.9.1
|
||||||
aldeed:simple-schema@1.3.3
|
aldeed:collection2-core@1.1.1
|
||||||
autoupdate@1.2.1
|
aldeed:schema-deny@1.0.1
|
||||||
base64@1.0.3
|
aldeed:schema-index@1.0.1
|
||||||
binary-heap@1.0.3
|
aldeed:simple-schema@1.5.3
|
||||||
blaze@2.1.2
|
allow-deny@1.0.4
|
||||||
blaze-tools@1.0.3
|
autoupdate@1.2.9
|
||||||
boilerplate-generator@1.0.3
|
babel-compiler@6.6.4
|
||||||
callback-hook@1.0.3
|
babel-runtime@0.1.8
|
||||||
check@1.0.5
|
base64@1.0.8
|
||||||
chuangbo:marked@0.3.5
|
binary-heap@1.0.8
|
||||||
coffeescript@1.0.6
|
blaze@2.1.7
|
||||||
dburles:collection-helpers@1.0.3
|
blaze-html-templates@1.0.4
|
||||||
dburles:mongo-collection-instances@0.3.3
|
blaze-tools@1.0.8
|
||||||
ddp@1.1.0
|
boilerplate-generator@1.0.8
|
||||||
deps@1.0.7
|
caching-compiler@1.0.4
|
||||||
differential:vulcanize@0.0.5
|
caching-html-compiler@1.0.6
|
||||||
|
callback-hook@1.0.8
|
||||||
|
check@1.2.1
|
||||||
|
chuangbo:cookie@1.1.0
|
||||||
|
chuangbo:marked@0.3.5_1
|
||||||
|
coffeescript@1.0.17
|
||||||
|
dburles:collection-helpers@1.0.4
|
||||||
|
dburles:mongo-collection-instances@0.3.5
|
||||||
|
ddp@1.2.5
|
||||||
|
ddp-client@1.2.7
|
||||||
|
ddp-common@1.2.5
|
||||||
|
ddp-rate-limiter@1.0.4
|
||||||
|
ddp-server@1.2.6
|
||||||
|
deps@1.0.12
|
||||||
|
diff-sequence@1.0.5
|
||||||
|
ecmascript@0.4.3
|
||||||
|
ecmascript-runtime@0.2.10
|
||||||
ecwyne:mathjs@0.25.0
|
ecwyne:mathjs@0.25.0
|
||||||
ejson@1.0.6
|
ejson@1.0.11
|
||||||
email@1.0.6
|
email@1.0.12
|
||||||
fastclick@1.0.3
|
fastclick@1.0.11
|
||||||
fourseven:scss@2.1.1
|
fourseven:scss@3.4.3
|
||||||
geojson-utils@1.0.3
|
geojson-utils@1.0.8
|
||||||
google@1.1.5
|
google@1.1.11
|
||||||
html-tools@1.0.4
|
hot-code-push@1.0.4
|
||||||
htmljs@1.0.4
|
html-tools@1.0.9
|
||||||
http@1.1.0
|
htmljs@1.0.9
|
||||||
id-map@1.0.3
|
http@1.1.5
|
||||||
iron:controller@1.0.7
|
id-map@1.0.7
|
||||||
iron:core@1.0.7
|
iron:controller@1.0.12
|
||||||
iron:dynamic-template@1.0.7
|
iron:core@1.0.11
|
||||||
iron:layout@1.0.7
|
iron:dynamic-template@1.0.12
|
||||||
iron:location@1.0.7
|
iron:layout@1.0.12
|
||||||
iron:middleware-stack@1.0.7
|
iron:location@1.0.11
|
||||||
iron:router@1.0.7
|
iron:middleware-stack@1.1.0
|
||||||
iron:url@1.0.7
|
iron:router@1.0.12
|
||||||
jquery@1.11.3_2
|
iron:url@1.0.11
|
||||||
json@1.0.3
|
jquery@1.11.8
|
||||||
lai:collection-extensions@0.1.3
|
lai:collection-extensions@0.2.1_1
|
||||||
launch-screen@1.0.2
|
launch-screen@1.0.11
|
||||||
less@1.0.14
|
less@2.6.0
|
||||||
livedata@1.0.13
|
livedata@1.0.18
|
||||||
localstorage@1.0.3
|
localstorage@1.0.9
|
||||||
logging@1.0.7
|
logging@1.0.12
|
||||||
matb33:collection-hooks@0.7.13
|
matb33:collection-hooks@0.8.1
|
||||||
meteor@1.1.6
|
mdg:validation-error@0.2.0
|
||||||
meteor-platform@1.2.2
|
meteor@1.1.14
|
||||||
meteorhacks:kadira@2.21.0
|
meteor-base@1.0.4
|
||||||
meteorhacks:meteorx@1.3.1
|
meteorhacks:fast-render@2.14.0
|
||||||
meteorhacks:subs-manager@1.3.0
|
meteorhacks:inject-data@2.0.0
|
||||||
minifiers@1.1.5
|
meteorhacks:kadira@2.28.7
|
||||||
minimongo@1.0.8
|
meteorhacks:meteorx@1.4.1
|
||||||
mobile-status-bar@1.0.3
|
meteorhacks:picker@1.0.3
|
||||||
momentjs:moment@2.10.3
|
meteorhacks:subs-manager@1.6.4
|
||||||
mongo@1.1.0
|
minifier-css@1.1.11
|
||||||
mongo-livedata@1.0.8
|
minifier-js@1.1.11
|
||||||
npm-bcrypt@0.7.8_2
|
minimongo@1.0.16
|
||||||
oauth@1.1.4
|
mobile-experience@1.0.4
|
||||||
oauth2@1.1.3
|
mobile-status-bar@1.0.12
|
||||||
observe-sequence@1.0.6
|
modules@0.6.1
|
||||||
ordered-dict@1.0.3
|
modules-runtime@0.6.3
|
||||||
percolate:migrations@0.7.5
|
momentjs:moment@2.13.1
|
||||||
random@1.0.3
|
mongo@1.1.7
|
||||||
reactive-dict@1.1.0
|
mongo-id@1.0.4
|
||||||
reactive-var@1.0.5
|
mongo-livedata@1.0.12
|
||||||
reload@1.1.3
|
npm-bcrypt@0.8.5
|
||||||
retry@1.0.3
|
npm-mongo@1.4.43
|
||||||
routepolicy@1.0.5
|
oauth@1.1.10
|
||||||
service-configuration@1.0.4
|
oauth2@1.1.9
|
||||||
session@1.1.0
|
observe-sequence@1.0.11
|
||||||
sha@1.0.3
|
ordered-dict@1.0.7
|
||||||
softwarerero:accounts-t9n@1.0.9
|
percolate:migrations@0.9.8
|
||||||
spacebars@1.0.6
|
promise@0.6.7
|
||||||
spacebars-compiler@1.0.6
|
raix:eventemitter@0.1.3
|
||||||
|
random@1.0.9
|
||||||
|
rate-limit@1.0.4
|
||||||
|
reactive-dict@1.1.7
|
||||||
|
reactive-var@1.0.9
|
||||||
|
reload@1.1.8
|
||||||
|
retry@1.0.7
|
||||||
|
reywood:iron-router-ga@0.7.1
|
||||||
|
routepolicy@1.0.10
|
||||||
|
service-configuration@1.0.9
|
||||||
|
session@1.1.5
|
||||||
|
sha@1.0.7
|
||||||
|
softwarerero:accounts-t9n@1.3.4
|
||||||
|
spacebars@1.0.11
|
||||||
|
spacebars-compiler@1.0.11
|
||||||
splendido:accounts-emails-field@1.2.0
|
splendido:accounts-emails-field@1.2.0
|
||||||
splendido:accounts-meld@1.3.0
|
splendido:accounts-meld@1.3.1
|
||||||
srp@1.0.3
|
srp@1.0.8
|
||||||
templating@1.1.1
|
standard-minifier-css@1.0.6
|
||||||
tracker@1.0.7
|
standard-minifier-js@1.0.6
|
||||||
ui@1.0.6
|
templating@1.1.9
|
||||||
underscore@1.0.3
|
templating-tools@1.0.4
|
||||||
url@1.0.4
|
thaum:vulcanize@0.0.5
|
||||||
useraccounts:core@1.9.1
|
tracker@1.0.13
|
||||||
useraccounts:polymer@1.9.1
|
ui@1.0.11
|
||||||
webapp@1.2.0
|
underscore@1.0.8
|
||||||
webapp-hashing@1.0.3
|
url@1.0.9
|
||||||
wolves:bourbon@1.0.0
|
useraccounts:core@1.14.2
|
||||||
zimme:collection-behaviours@1.0.4
|
useraccounts:iron-routing@1.14.2
|
||||||
zimme:collection-softremovable@1.0.4
|
useraccounts:polymer@1.12.3
|
||||||
|
webapp@1.2.8
|
||||||
|
webapp-hashing@1.0.9
|
||||||
|
wizonesolutions:canonical@0.0.5
|
||||||
|
wolves:bourbon@3.1.0
|
||||||
|
zimme:collection-behaviours@1.1.3
|
||||||
|
zimme:collection-softremovable@1.0.5
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ Schemas.Action = new SimpleSchema({
|
|||||||
charId: {
|
charId: {
|
||||||
type: String,
|
type: String,
|
||||||
regEx: SimpleSchema.RegEx.Id,
|
regEx: SimpleSchema.RegEx.Id,
|
||||||
|
index: 1,
|
||||||
},
|
},
|
||||||
name: {
|
name: {
|
||||||
type: String,
|
type: String,
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ Schemas.Attack = new SimpleSchema({
|
|||||||
charId: {
|
charId: {
|
||||||
type: String,
|
type: String,
|
||||||
regEx: SimpleSchema.RegEx.Id,
|
regEx: SimpleSchema.RegEx.Id,
|
||||||
|
index: 1,
|
||||||
},
|
},
|
||||||
name: {
|
name: {
|
||||||
type: String,
|
type: String,
|
||||||
@@ -69,5 +70,17 @@ Attacks.attachSchema(Schemas.Attack);
|
|||||||
Attacks.attachBehaviour("softRemovable");
|
Attacks.attachBehaviour("softRemovable");
|
||||||
makeChild(Attacks, ["name", "enabled"]); //children of lots of things
|
makeChild(Attacks, ["name", "enabled"]); //children of lots of things
|
||||||
|
|
||||||
|
Attacks.after.insert(function (userId, attack) {
|
||||||
|
//Check to see if this attack's parent is a spell, if so, mirror prepared state to enabled
|
||||||
|
if (attack.parent.collection === "Spells") {
|
||||||
|
var parentSpell = Spells.findOne(attack.parent.id);
|
||||||
|
if (parentSpell.prepared === "unprepared") {
|
||||||
|
Attacks.update(attack._id, {$set: {enabled: false}});
|
||||||
|
} else if (parentSpell.prepared === "prepared" || "always") {
|
||||||
|
Attacks.update(attack._id, {$set: {enabled: true}});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
Attacks.allow(CHARACTER_SUBSCHEMA_ALLOW);
|
Attacks.allow(CHARACTER_SUBSCHEMA_ALLOW);
|
||||||
Attacks.deny(CHARACTER_SUBSCHEMA_DENY);
|
Attacks.deny(CHARACTER_SUBSCHEMA_DENY);
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ Schemas.Buff = new SimpleSchema({
|
|||||||
charId: {
|
charId: {
|
||||||
type: String,
|
type: String,
|
||||||
regEx: SimpleSchema.RegEx.Id,
|
regEx: SimpleSchema.RegEx.Id,
|
||||||
|
index: 1,
|
||||||
},
|
},
|
||||||
name: {
|
name: {
|
||||||
type: String,
|
type: String,
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ Schemas.Character = new SimpleSchema({
|
|||||||
age: {type: Schemas.Attribute},
|
age: {type: Schemas.Attribute},
|
||||||
ageRate: {type: Schemas.Attribute},
|
ageRate: {type: Schemas.Attribute},
|
||||||
armor: {type: Schemas.Attribute},
|
armor: {type: Schemas.Attribute},
|
||||||
|
carryMultiplier: {type: Schemas.Attribute},
|
||||||
|
|
||||||
//resources
|
//resources
|
||||||
level1SpellSlots: {type: Schemas.Attribute},
|
level1SpellSlots: {type: Schemas.Attribute},
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
Classes = new Mongo.Collection("classes");
|
Classes = new Mongo.Collection("classes");
|
||||||
|
|
||||||
Schemas.Class = new SimpleSchema({
|
Schemas.Class = new SimpleSchema({
|
||||||
charId: {type: String, regEx: SimpleSchema.RegEx.Id},
|
charId: {type: String, regEx: SimpleSchema.RegEx.Id, index: 1},
|
||||||
name: {type: String, trim: false},
|
name: {type: String, trim: false},
|
||||||
level: {type: Number},
|
level: {type: Number},
|
||||||
createdAt: {
|
createdAt: {
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ Schemas.Effect = new SimpleSchema({
|
|||||||
charId: {
|
charId: {
|
||||||
type: String,
|
type: String,
|
||||||
regEx: SimpleSchema.RegEx.Id,
|
regEx: SimpleSchema.RegEx.Id,
|
||||||
|
index: 1,
|
||||||
},
|
},
|
||||||
name: {
|
name: {
|
||||||
type: String,
|
type: String,
|
||||||
@@ -58,59 +59,74 @@ Schemas.Effect = new SimpleSchema({
|
|||||||
|
|
||||||
Effects.attachSchema(Schemas.Effect);
|
Effects.attachSchema(Schemas.Effect);
|
||||||
|
|
||||||
if (Meteor.isServer) Characters.after.insert(function(userId, char) {
|
|
||||||
Effects.insert({
|
|
||||||
charId: char._id,
|
|
||||||
name: "Constitution modifier for each level",
|
|
||||||
stat: "hitPoints",
|
|
||||||
operation: "add",
|
|
||||||
calculation: "level * constitutionMod",
|
|
||||||
parent: {
|
|
||||||
id: char._id,
|
|
||||||
collection: "Characters",
|
|
||||||
group: "Inate",
|
|
||||||
},
|
|
||||||
});
|
|
||||||
Effects.insert({
|
|
||||||
charId: char._id,
|
|
||||||
name: "Proficiency bonus by level",
|
|
||||||
stat: "proficiencyBonus",
|
|
||||||
operation: "add",
|
|
||||||
calculation: "floor(level / 4 + 1.75)",
|
|
||||||
parent: {
|
|
||||||
id: char._id,
|
|
||||||
collection: "Characters",
|
|
||||||
group: "Inate",
|
|
||||||
},
|
|
||||||
});
|
|
||||||
Effects.insert({
|
|
||||||
charId: char._id,
|
|
||||||
name: "Dexterity Armor Bonus",
|
|
||||||
stat: "armor",
|
|
||||||
operation: "add",
|
|
||||||
calculation: "dexterityArmor",
|
|
||||||
parent: {
|
|
||||||
id: char._id,
|
|
||||||
collection: "Characters",
|
|
||||||
group: "Inate",
|
|
||||||
},
|
|
||||||
});
|
|
||||||
Effects.insert({
|
|
||||||
charId: char._id,
|
|
||||||
name: "Natural Armor",
|
|
||||||
stat: "armor",
|
|
||||||
operation: "base",
|
|
||||||
value: 10,
|
|
||||||
parent: {
|
|
||||||
id: char._id,
|
|
||||||
collection: "Characters",
|
|
||||||
group: "Inate",
|
|
||||||
},
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
Effects.attachBehaviour("softRemovable");
|
Effects.attachBehaviour("softRemovable");
|
||||||
makeChild(Effects, ["enabled"]); //children of lots of things
|
makeChild(Effects, ["enabled"]); //children of lots of things
|
||||||
|
|
||||||
Effects.allow(CHARACTER_SUBSCHEMA_ALLOW);
|
Effects.allow(CHARACTER_SUBSCHEMA_ALLOW);
|
||||||
Effects.deny(CHARACTER_SUBSCHEMA_DENY);
|
Effects.deny(CHARACTER_SUBSCHEMA_DENY);
|
||||||
|
|
||||||
|
//give characters default character effects
|
||||||
|
Characters.after.insert(function(userId, char) {
|
||||||
|
if (Meteor.isServer) {
|
||||||
|
Effects.insert({
|
||||||
|
charId: char._id,
|
||||||
|
name: "Constitution modifier for each level",
|
||||||
|
stat: "hitPoints",
|
||||||
|
operation: "add",
|
||||||
|
calculation: "level * constitutionMod",
|
||||||
|
parent: {
|
||||||
|
id: char._id,
|
||||||
|
collection: "Characters",
|
||||||
|
group: "Inate",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
Effects.insert({
|
||||||
|
charId: char._id,
|
||||||
|
name: "Proficiency bonus by level",
|
||||||
|
stat: "proficiencyBonus",
|
||||||
|
operation: "add",
|
||||||
|
calculation: "floor(level / 4 + 1.75)",
|
||||||
|
parent: {
|
||||||
|
id: char._id,
|
||||||
|
collection: "Characters",
|
||||||
|
group: "Inate",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
Effects.insert({
|
||||||
|
charId: char._id,
|
||||||
|
name: "Dexterity Armor Bonus",
|
||||||
|
stat: "armor",
|
||||||
|
operation: "add",
|
||||||
|
calculation: "dexterityArmor",
|
||||||
|
parent: {
|
||||||
|
id: char._id,
|
||||||
|
collection: "Characters",
|
||||||
|
group: "Inate",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
Effects.insert({
|
||||||
|
charId: char._id,
|
||||||
|
name: "Natural Armor",
|
||||||
|
stat: "armor",
|
||||||
|
operation: "base",
|
||||||
|
value: 10,
|
||||||
|
parent: {
|
||||||
|
id: char._id,
|
||||||
|
collection: "Characters",
|
||||||
|
group: "Inate",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
Effects.insert({
|
||||||
|
charId: char._id,
|
||||||
|
name: "Natural Carrying Capacity",
|
||||||
|
stat: "carryMultiplier",
|
||||||
|
operation: "base",
|
||||||
|
value: "1",
|
||||||
|
parent: {
|
||||||
|
id: char._id,
|
||||||
|
collection: "Characters",
|
||||||
|
group: "Inate",
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
Experiences = new Mongo.Collection("experience");
|
Experiences = new Mongo.Collection("experience");
|
||||||
|
|
||||||
Schemas.Experience = new SimpleSchema({
|
Schemas.Experience = new SimpleSchema({
|
||||||
charId: {type: String, regEx: SimpleSchema.RegEx.Id},
|
charId: {type: String, regEx: SimpleSchema.RegEx.Id, index: 1},
|
||||||
name: {type: String, defaultValue: "New Experience", trim: false},
|
name: {type: String, defaultValue: "New Experience", trim: false},
|
||||||
description: {type: String, optional: true, trim: false},
|
description: {type: String, optional: true, trim: false},
|
||||||
value: {type: Number, defaultValue: 0},
|
value: {type: Number, defaultValue: 0},
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
Features = new Mongo.Collection("features");
|
Features = new Mongo.Collection("features");
|
||||||
|
|
||||||
Schemas.Feature = new SimpleSchema({
|
Schemas.Feature = new SimpleSchema({
|
||||||
charId: {type: String, regEx: SimpleSchema.RegEx.Id},
|
charId: {type: String, regEx: SimpleSchema.RegEx.Id, index: 1},
|
||||||
name: {type: String, trim: false},
|
name: {type: String, trim: false},
|
||||||
description: {type: String, optional: true, trim: false},
|
description: {type: String, optional: true, trim: false},
|
||||||
uses: {type: String, optional: true, trim: false},
|
uses: {type: String, optional: true, trim: false},
|
||||||
@@ -35,3 +35,81 @@ makeParent(Features, ["name", "enabled"]); //parents of effects and attacks
|
|||||||
|
|
||||||
Features.allow(CHARACTER_SUBSCHEMA_ALLOW);
|
Features.allow(CHARACTER_SUBSCHEMA_ALLOW);
|
||||||
Features.deny(CHARACTER_SUBSCHEMA_DENY);
|
Features.deny(CHARACTER_SUBSCHEMA_DENY);
|
||||||
|
|
||||||
|
//give characters default feature of base ability scores of 10
|
||||||
|
Characters.after.insert(function(userId, char) {
|
||||||
|
if (Meteor.isServer){
|
||||||
|
var featureId = Features.insert({
|
||||||
|
name: "Base Ability Scores",
|
||||||
|
charId: char._id,
|
||||||
|
enabled: true,
|
||||||
|
alwaysEnabled: true,
|
||||||
|
});
|
||||||
|
Effects.insert({
|
||||||
|
stat: "strength",
|
||||||
|
charId: char._id,
|
||||||
|
parent: {
|
||||||
|
id: featureId,
|
||||||
|
collection: "Features",
|
||||||
|
},
|
||||||
|
operation: "base",
|
||||||
|
value: 10,
|
||||||
|
enabled: true,
|
||||||
|
});
|
||||||
|
Effects.insert({
|
||||||
|
stat: "dexterity",
|
||||||
|
charId: char._id,
|
||||||
|
parent: {
|
||||||
|
id: featureId,
|
||||||
|
collection: "Features",
|
||||||
|
},
|
||||||
|
operation: "base",
|
||||||
|
value: 10,
|
||||||
|
enabled: true,
|
||||||
|
});
|
||||||
|
Effects.insert({
|
||||||
|
stat: "constitution",
|
||||||
|
charId: char._id,
|
||||||
|
parent: {
|
||||||
|
id: featureId,
|
||||||
|
collection: "Features",
|
||||||
|
},
|
||||||
|
operation: "base",
|
||||||
|
value: 10,
|
||||||
|
enabled: true,
|
||||||
|
});
|
||||||
|
Effects.insert({
|
||||||
|
stat: "intelligence",
|
||||||
|
charId: char._id,
|
||||||
|
parent: {
|
||||||
|
id: featureId,
|
||||||
|
collection: "Features",
|
||||||
|
},
|
||||||
|
operation: "base",
|
||||||
|
value: 10,
|
||||||
|
enabled: true,
|
||||||
|
});
|
||||||
|
Effects.insert({
|
||||||
|
stat: "wisdom",
|
||||||
|
charId: char._id,
|
||||||
|
parent: {
|
||||||
|
id: featureId,
|
||||||
|
collection: "Features",
|
||||||
|
},
|
||||||
|
operation: "base",
|
||||||
|
value: 10,
|
||||||
|
enabled: true,
|
||||||
|
});
|
||||||
|
Effects.insert({
|
||||||
|
stat: "charisma",
|
||||||
|
charId: char._id,
|
||||||
|
parent: {
|
||||||
|
id: featureId,
|
||||||
|
collection: "Features",
|
||||||
|
},
|
||||||
|
operation: "base",
|
||||||
|
value: 10,
|
||||||
|
enabled: true,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
Notes = new Mongo.Collection("notes");
|
Notes = new Mongo.Collection("notes");
|
||||||
|
|
||||||
Schemas.Note = new SimpleSchema({
|
Schemas.Note = new SimpleSchema({
|
||||||
charId: {type: String, regEx: SimpleSchema.RegEx.Id},
|
charId: {type: String, regEx: SimpleSchema.RegEx.Id, index: 1},
|
||||||
name: {type: String, trim: false},
|
name: {type: String, trim: false},
|
||||||
description: {type: String, optional: true, trim: false},
|
description: {type: String, optional: true, trim: false},
|
||||||
color: {
|
color: {
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ Schemas.Proficiency = new SimpleSchema({
|
|||||||
charId: {
|
charId: {
|
||||||
type: String,
|
type: String,
|
||||||
regEx: SimpleSchema.RegEx.Id,
|
regEx: SimpleSchema.RegEx.Id,
|
||||||
|
index: 1,
|
||||||
},
|
},
|
||||||
name: {
|
name: {
|
||||||
type: String,
|
type: String,
|
||||||
@@ -30,7 +31,7 @@ Schemas.Proficiency = new SimpleSchema({
|
|||||||
Proficiencies.attachSchema(Schemas.Proficiency);
|
Proficiencies.attachSchema(Schemas.Proficiency);
|
||||||
|
|
||||||
Proficiencies.attachBehaviour("softRemovable");
|
Proficiencies.attachBehaviour("softRemovable");
|
||||||
makeChild(Proficiencies);
|
makeChild(Proficiencies, ["enabled"]);
|
||||||
|
|
||||||
Proficiencies.allow(CHARACTER_SUBSCHEMA_ALLOW);
|
Proficiencies.allow(CHARACTER_SUBSCHEMA_ALLOW);
|
||||||
Proficiencies.deny(CHARACTER_SUBSCHEMA_DENY);
|
Proficiencies.deny(CHARACTER_SUBSCHEMA_DENY);
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
SpellLists = new Mongo.Collection("spellLists");
|
SpellLists = new Mongo.Collection("spellLists");
|
||||||
|
|
||||||
Schemas.SpellLists = new SimpleSchema({
|
Schemas.SpellLists = new SimpleSchema({
|
||||||
charId: {type: String, regEx: SimpleSchema.RegEx.Id},
|
charId: {type: String, regEx: SimpleSchema.RegEx.Id, index: 1},
|
||||||
name: {type: String, trim: false},
|
name: {type: String, trim: false},
|
||||||
description: {type: String, optional: true, trim: false},
|
description: {type: String, optional: true, trim: false},
|
||||||
saveDC: {type: String, optional: true, trim: false},
|
saveDC: {type: String, optional: true, trim: false},
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
Spells = new Mongo.Collection("spells");
|
Spells = new Mongo.Collection("spells");
|
||||||
|
|
||||||
Schemas.Spell = new SimpleSchema({
|
Schemas.Spell = new SimpleSchema({
|
||||||
charId: {type: String, regEx: SimpleSchema.RegEx.Id},
|
charId: {type: String, regEx: SimpleSchema.RegEx.Id, index: 1},
|
||||||
prepared: {
|
prepared: {
|
||||||
type: String,
|
type: String,
|
||||||
defaultValue: "prepared",
|
defaultValue: "prepared",
|
||||||
@@ -64,5 +64,21 @@ Spells.attachBehaviour("softRemovable");
|
|||||||
makeChild(Spells); //children of spell lists
|
makeChild(Spells); //children of spell lists
|
||||||
makeParent(Spells, ["name", "enabled"]); //parents of attacks
|
makeParent(Spells, ["name", "enabled"]); //parents of attacks
|
||||||
|
|
||||||
|
Spells.after.update(function (userId, spell, fieldNames) {
|
||||||
|
//Update prepared state of spell and child attacks to be enabled or not
|
||||||
|
if (_.contains(fieldNames, "prepared")) {
|
||||||
|
var childAttacks = Attacks.find({"parent.id": spell._id}).fetch();
|
||||||
|
if (spell.prepared === "unprepared") {
|
||||||
|
_.each(childAttacks, function(attack){
|
||||||
|
Attacks.update(attack._id, {$set: {enabled: false}});
|
||||||
|
});
|
||||||
|
} else if (spell.prepared === "prepared" || "always") {
|
||||||
|
_.each(childAttacks, function(attack){
|
||||||
|
Attacks.update(attack._id, {$set: {enabled: true}});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
Spells.allow(CHARACTER_SUBSCHEMA_ALLOW);
|
Spells.allow(CHARACTER_SUBSCHEMA_ALLOW);
|
||||||
Spells.deny(CHARACTER_SUBSCHEMA_DENY);
|
Spells.deny(CHARACTER_SUBSCHEMA_DENY);
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
TemporaryHitPoints = new Mongo.Collection("temporaryHitPoints");
|
TemporaryHitPoints = new Mongo.Collection("temporaryHitPoints");
|
||||||
|
|
||||||
Schemas.TemporaryHitPoints = new SimpleSchema({
|
Schemas.TemporaryHitPoints = new SimpleSchema({
|
||||||
charId: {type: String, regEx: SimpleSchema.RegEx.Id},
|
charId: {type: String, regEx: SimpleSchema.RegEx.Id, index: 1},
|
||||||
name: {type: String, optional: true},
|
name: {type: String, optional: true},
|
||||||
maximum: {type: Number, defaultValue: 0},
|
maximum: {type: Number, defaultValue: 0, min: 0, max: 500},
|
||||||
used: {type: Number, defaultValue: 0},
|
used: {type: Number, defaultValue: 0, min: 0, max: 500},
|
||||||
deleteOnZero:{type: Boolean, defaultValue: false},
|
deleteOnZero:{type: Boolean, defaultValue: false},
|
||||||
dateAdded: {
|
dateAdded: {
|
||||||
type: Date,
|
type: Date,
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ Containers = new Mongo.Collection("containers");
|
|||||||
|
|
||||||
Schemas.Container = new SimpleSchema({
|
Schemas.Container = new SimpleSchema({
|
||||||
name: {type: String, trim: false},
|
name: {type: String, trim: false},
|
||||||
charId: {type: String, regEx: SimpleSchema.RegEx.Id},
|
charId: {type: String, regEx: SimpleSchema.RegEx.Id, index: 1},
|
||||||
isCarried: {type: Boolean},
|
isCarried: {type: Boolean},
|
||||||
weight: {type: Number, min: 0, defaultValue: 0, decimal: true},
|
weight: {type: Number, min: 0, defaultValue: 0, decimal: true},
|
||||||
value: {type: Number, min: 0, defaultValue: 0, decimal: true},
|
value: {type: Number, min: 0, defaultValue: 0, decimal: true},
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ Schemas.Item = new SimpleSchema({
|
|||||||
name: {type: String, defaultValue: "New Item", trim: false},
|
name: {type: String, defaultValue: "New Item", trim: false},
|
||||||
plural: {type: String, optional: true, trim: false},
|
plural: {type: String, optional: true, trim: false},
|
||||||
description:{type: String, optional: true, trim: false},
|
description:{type: String, optional: true, trim: false},
|
||||||
charId: {type: String, regEx: SimpleSchema.RegEx.Id}, //id of owner
|
charId: {type: String, regEx: SimpleSchema.RegEx.Id, index: 1}, //id of owner
|
||||||
quantity: {type: Number, min: 0, defaultValue: 1},
|
quantity: {type: Number, min: 0, defaultValue: 1},
|
||||||
weight: {type: Number, min: 0, defaultValue: 0, decimal: true},
|
weight: {type: Number, min: 0, defaultValue: 0, decimal: true},
|
||||||
value: {type: Number, min: 0, defaultValue: 0, decimal: true},
|
value: {type: Number, min: 0, defaultValue: 0, decimal: true},
|
||||||
@@ -228,6 +228,9 @@ Characters.after.insert(function(userId, char) {
|
|||||||
id: containerId,
|
id: containerId,
|
||||||
collection: "Containers",
|
collection: "Containers",
|
||||||
},
|
},
|
||||||
|
settings: {
|
||||||
|
showIncrement: true,
|
||||||
|
},
|
||||||
});
|
});
|
||||||
Items.insert({
|
Items.insert({
|
||||||
name: "Silver piece",
|
name: "Silver piece",
|
||||||
@@ -241,6 +244,9 @@ Characters.after.insert(function(userId, char) {
|
|||||||
id: containerId,
|
id: containerId,
|
||||||
collection: "Containers",
|
collection: "Containers",
|
||||||
},
|
},
|
||||||
|
settings: {
|
||||||
|
showIncrement: true,
|
||||||
|
},
|
||||||
});
|
});
|
||||||
Items.insert({
|
Items.insert({
|
||||||
name: "Copper piece",
|
name: "Copper piece",
|
||||||
@@ -254,6 +260,9 @@ Characters.after.insert(function(userId, char) {
|
|||||||
id: containerId,
|
id: containerId,
|
||||||
collection: "Containers",
|
collection: "Containers",
|
||||||
},
|
},
|
||||||
|
settings: {
|
||||||
|
showIncrement: true,
|
||||||
|
},
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
Router.configure({
|
Router.configure({
|
||||||
loadingTemplate: "loading",
|
loadingTemplate: "loading",
|
||||||
layoutTemplate: "layout",
|
layoutTemplate: "layout",
|
||||||
|
trackPageView: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
Router.plugin("ensureSignedIn", {
|
Router.plugin("ensureSignedIn", {
|
||||||
@@ -33,6 +34,7 @@ Router.map(function() {
|
|||||||
onAfterAction: function() {
|
onAfterAction: function() {
|
||||||
document.title = appName;
|
document.title = appName;
|
||||||
},
|
},
|
||||||
|
fastRender: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
this.route("characterSheet", {
|
this.route("characterSheet", {
|
||||||
@@ -56,6 +58,13 @@ Router.map(function() {
|
|||||||
document.title = name;
|
document.title = name;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
//analytics
|
||||||
|
trackPageView: false,
|
||||||
|
onRun: function() {
|
||||||
|
window.ga && window.ga("send", "pageview", "/character");
|
||||||
|
this.next();
|
||||||
|
},
|
||||||
|
fastRender: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
this.route("loading", {
|
this.route("loading", {
|
||||||
@@ -84,6 +93,7 @@ Router.map(function() {
|
|||||||
onAfterAction: function() {
|
onAfterAction: function() {
|
||||||
document.title = appName;
|
document.title = appName;
|
||||||
},
|
},
|
||||||
|
fastRender: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
this.route("/guide", {
|
this.route("/guide", {
|
||||||
|
|||||||
@@ -2,7 +2,9 @@
|
|||||||
"name": "RPG Docs",
|
"name": "RPG Docs",
|
||||||
"version": "0.0.0",
|
"version": "0.0.0",
|
||||||
"homepage": "",
|
"homepage": "",
|
||||||
"authors": ["Stefan Zermatten"],
|
"authors": [
|
||||||
|
"Stefan Zermatten"
|
||||||
|
],
|
||||||
"license": "none",
|
"license": "none",
|
||||||
"private": true,
|
"private": true,
|
||||||
"ignore": [
|
"ignore": [
|
||||||
@@ -15,11 +17,10 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"polymer": "Polymer/polymer#~0.5.5",
|
"polymer": "Polymer/polymer#~0.5.5",
|
||||||
"core-elements": "Polymer/core-elements#~0.5.5",
|
"core-elements": "Polymer/core-elements#~0.5.5",
|
||||||
"paper-elements": "Polymer/paper-elements#~0.5.5"
|
"paper-elements": "Polymer/paper-elements#~0.5.5",
|
||||||
|
"paper-fab-menu": "cwdoh/paper-fab-menu#~0.4.0"
|
||||||
},
|
},
|
||||||
"resolutions": {
|
"resolutions": {
|
||||||
"core-component-page": "^0.5.0",
|
"webcomponentsjs": "0.7.23"
|
||||||
"polymer": "^0.5.0",
|
|
||||||
"webcomponentsjs": "^0.5.0"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,10 +77,10 @@ this.GlobalUI = (function() {
|
|||||||
|
|
||||||
var throttleBack = _.throttle(function() {
|
var throttleBack = _.throttle(function() {
|
||||||
history.back();
|
history.back();
|
||||||
}, 800, {trailing: false});
|
}, 100, {trailing: false});
|
||||||
|
|
||||||
GlobalUI.closeDetail = function() {
|
GlobalUI.closeDetail = function() {
|
||||||
if (!!(window.history && window.history.pushState)) {
|
if (window.history && history.pushState && history.state.detail === "opened") {
|
||||||
throttleBack();
|
throttleBack();
|
||||||
} else {
|
} else {
|
||||||
Session.set("global.ui.detailShow", false);
|
Session.set("global.ui.detailShow", false);
|
||||||
|
|||||||
@@ -1,19 +1,26 @@
|
|||||||
@import "bourbon/bourbon";
|
@import "{wolves:bourbon}/bourbon";
|
||||||
|
|
||||||
$thickColumnWidth: 304px;
|
$thickColumnWidth: 304px;
|
||||||
$thinColumnWidth: 240px;
|
$thinColumnWidth: 240px;
|
||||||
|
|
||||||
//Column layouts of cards
|
//Column layout
|
||||||
.column-container {
|
.column-container {
|
||||||
@include column-fill(balance);
|
@include column-fill(balance);
|
||||||
@include column-gap(8px);
|
@include column-gap(0px);
|
||||||
@include column-width($thickColumnWidth);
|
@include column-width($thickColumnWidth);
|
||||||
padding: 8px;
|
padding: 4px;
|
||||||
|
|
||||||
&.thin-columns {
|
&.thin-columns {
|
||||||
@include column-count(4);
|
@include column-count(4);
|
||||||
@include column-width($thinColumnWidth);
|
@include column-width($thinColumnWidth);
|
||||||
}
|
}
|
||||||
|
& > div {
|
||||||
|
padding: 4px;
|
||||||
|
//stop divs breaking over multiple columns
|
||||||
|
-webkit-column-break-inside: avoid;
|
||||||
|
page-break-inside: avoid;
|
||||||
|
break-inside: avoid;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//Cards
|
//Cards
|
||||||
@@ -21,20 +28,6 @@ $thinColumnWidth: 240px;
|
|||||||
background: white;
|
background: white;
|
||||||
border-radius: 2px;
|
border-radius: 2px;
|
||||||
|
|
||||||
.column-container & {
|
|
||||||
margin-bottom: 8px;
|
|
||||||
width: 100%;
|
|
||||||
//hack to stop flickering
|
|
||||||
-webkit-backface-visibility: hidden;
|
|
||||||
-webkit-transform: translateX(0);
|
|
||||||
//stop breaking over column divide
|
|
||||||
-webkit-column-break-inside: avoid;
|
|
||||||
page-break-inside: avoid;
|
|
||||||
break-inside: avoid;
|
|
||||||
//Fixes extra margin at top of columns
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.top {
|
.top {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
padding: 16px;
|
padding: 16px;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
@import "bourbon/bourbon";
|
@import "{wolves:bourbon}/bourbon";
|
||||||
@import "colors";
|
@import "colors";
|
||||||
|
|
||||||
//apply a natural box layout model to all elements
|
//apply a natural box layout model to all elements
|
||||||
@@ -48,7 +48,7 @@ hr {
|
|||||||
|
|
||||||
//FABs
|
//FABs
|
||||||
.floatyButton {
|
.floatyButton {
|
||||||
position: absolute;
|
position: fixed;
|
||||||
bottom: 24px;
|
bottom: 24px;
|
||||||
right: 24px;
|
right: 24px;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,3 +18,7 @@
|
|||||||
body /deep/ core-menu {
|
body /deep/ core-menu {
|
||||||
overflow-x: hidden !important;
|
overflow-x: hidden !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
html /deep/ paper-dropdown {
|
||||||
|
box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.37);
|
||||||
|
}
|
||||||
|
|||||||
@@ -44,7 +44,8 @@
|
|||||||
label="Value"
|
label="Value"
|
||||||
floatinglabel
|
floatinglabel
|
||||||
value={{effectValue}}
|
value={{effectValue}}
|
||||||
flex>
|
flex
|
||||||
|
style="flex-basis: 100px;">
|
||||||
</paper-input>
|
</paper-input>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ var stats = [
|
|||||||
{stat: "rageDamage", name: "Rage Damage", group: "Stats"},
|
{stat: "rageDamage", name: "Rage Damage", group: "Stats"},
|
||||||
{stat: "expertiseDice", name: "Expertise Dice", group: "Stats"},
|
{stat: "expertiseDice", name: "Expertise Dice", group: "Stats"},
|
||||||
{stat: "superiorityDice", name: "Superiority Dice", group: "Stats"},
|
{stat: "superiorityDice", name: "Superiority Dice", group: "Stats"},
|
||||||
|
{stat: "carryMultiplier", name: "Carry Capacity Multiplier", group: "Stats"},
|
||||||
{stat: "level1SpellSlots", name: "level 1", group: "Spell Slots"},
|
{stat: "level1SpellSlots", name: "level 1", group: "Spell Slots"},
|
||||||
{stat: "level2SpellSlots", name: "level 2", group: "Spell Slots"},
|
{stat: "level2SpellSlots", name: "level 2", group: "Spell Slots"},
|
||||||
{stat: "level3SpellSlots", name: "level 3", group: "Spell Slots"},
|
{stat: "level3SpellSlots", name: "level 3", group: "Spell Slots"},
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ var stats = {
|
|||||||
"rageDamage":{"name":"Rage Damage"},
|
"rageDamage":{"name":"Rage Damage"},
|
||||||
"expertiseDice":{"name":"Expertise Dice"},
|
"expertiseDice":{"name":"Expertise Dice"},
|
||||||
"superiorityDice":{"name":"Superiority Dice"},
|
"superiorityDice":{"name":"Superiority Dice"},
|
||||||
|
"carryMultiplier": {"name": "Carry Capacity Multiplier"},
|
||||||
"level1SpellSlots":{"name":"level 1 Spell Slots"},
|
"level1SpellSlots":{"name":"level 1 Spell Slots"},
|
||||||
"level2SpellSlots":{"name":"level 2 Spell Slots"},
|
"level2SpellSlots":{"name":"level 2 Spell Slots"},
|
||||||
"level3SpellSlots":{"name":"level 3 Spell Slots"},
|
"level3SpellSlots":{"name":"level 3 Spell Slots"},
|
||||||
@@ -98,7 +99,7 @@ var operations = {
|
|||||||
base: {name: "Base Value: "},
|
base: {name: "Base Value: "},
|
||||||
proficiency: {name: "Proficiency"},
|
proficiency: {name: "Proficiency"},
|
||||||
add: {name: "+"},
|
add: {name: "+"},
|
||||||
mul: {name: "x"},
|
mul: {name: "×"},
|
||||||
min: {name: "Min: "},
|
min: {name: "Min: "},
|
||||||
max: {name: "Max: "},
|
max: {name: "Max: "},
|
||||||
advantage: {name: "Advantage"},
|
advantage: {name: "Advantage"},
|
||||||
|
|||||||
@@ -12,8 +12,9 @@
|
|||||||
{{>resource name="sorceryPoints" title="Sorcery Points" color="teal" char=this}}
|
{{>resource name="sorceryPoints" title="Sorcery Points" color="teal" char=this}}
|
||||||
<!--superiorityDice-->
|
<!--superiorityDice-->
|
||||||
{{>resource name="superiorityDice" title="Superiority Dice" color="teal" char=this}}
|
{{>resource name="superiorityDice" title="Superiority Dice" color="teal" char=this}}
|
||||||
|
|
||||||
<!--Attacks-->
|
<!--Attacks-->
|
||||||
|
<div>
|
||||||
<paper-shadow class="card">
|
<paper-shadow class="card">
|
||||||
<div class="top white">
|
<div class="top white">
|
||||||
Attacks
|
Attacks
|
||||||
@@ -48,8 +49,10 @@
|
|||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
|
|
||||||
<!--Proficiencies-->
|
<!--Proficiencies-->
|
||||||
|
<div>
|
||||||
<paper-shadow class="card">
|
<paper-shadow class="card">
|
||||||
<div class="white top">
|
<div class="white top">
|
||||||
Proficiencies
|
Proficiencies
|
||||||
@@ -75,13 +78,15 @@
|
|||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
|
|
||||||
<!--features-->
|
<!--features-->
|
||||||
{{#each features}}
|
{{#each features}}
|
||||||
|
<div>
|
||||||
<paper-shadow class="card featureCard"
|
<paper-shadow class="card featureCard"
|
||||||
hero-id="main" {{detailHero}}>
|
hero-id="main" {{detailHero}}>
|
||||||
<div class="top {{colorClass}} subhead"
|
<div class="top {{colorClass}} subhead"
|
||||||
layout horizontal
|
layout horizontal
|
||||||
hero-id="toolbar" {{detailHero}}>
|
hero-id="toolbar" {{detailHero}}>
|
||||||
<div flex hero-id="title" {{detailHero}}>
|
<div flex hero-id="title" {{detailHero}}>
|
||||||
{{name}}
|
{{name}}
|
||||||
@@ -94,7 +99,7 @@
|
|||||||
{{#if canEnable}}
|
{{#if canEnable}}
|
||||||
<core-tooltip label="Feature enabled"
|
<core-tooltip label="Feature enabled"
|
||||||
position="left">
|
position="left">
|
||||||
<paper-checkbox class="enabledCheckbox"
|
<paper-checkbox class="enabledCheckbox"
|
||||||
checked={{enabled}}
|
checked={{enabled}}
|
||||||
disabled={{#unless canEditCharacter charId}}true{{/unless}}>
|
disabled={{#unless canEditCharacter charId}}true{{/unless}}>
|
||||||
</paper-checkbox>
|
</paper-checkbox>
|
||||||
@@ -108,29 +113,30 @@
|
|||||||
{{/if}}
|
{{/if}}
|
||||||
{{#if hasUses}}
|
{{#if hasUses}}
|
||||||
<div layout horizontal center end-justified>
|
<div layout horizontal center end-justified>
|
||||||
<paper-button class="useFeature"
|
<paper-button class="useFeature"
|
||||||
disabled={{noUsesLeft}}>
|
disabled={{noUsesLeft}}>
|
||||||
Use
|
Use
|
||||||
</paper-button>
|
</paper-button>
|
||||||
<paper-button class="resetFeature"
|
<paper-button class="resetFeature"
|
||||||
disabled={{usesFull}}>
|
disabled={{usesFull}}>
|
||||||
Reset
|
Reset
|
||||||
</paper-button>
|
</paper-button>
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
<div class="fab-buffer"></div>
|
<div class="fab-buffer"></div>
|
||||||
</div>
|
</div>
|
||||||
{{#if canEditCharacter _id}}
|
{{#if canEditCharacter _id}}
|
||||||
<paper-fab id="addFeature"
|
<paper-fab id="addFeature"
|
||||||
class="floatyButton"
|
class="floatyButton"
|
||||||
icon="add"
|
icon="add"
|
||||||
title="Add"
|
title="Add"
|
||||||
role="button"
|
role="button"
|
||||||
tabindex="0"
|
tabindex="0"
|
||||||
aria-label="Add"
|
aria-label="Add"
|
||||||
hero-id="main"></paper-fab>
|
hero-id="main"></paper-fab>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
@@ -138,15 +144,16 @@
|
|||||||
|
|
||||||
<template name="resource">
|
<template name="resource">
|
||||||
{{#if characterCalculate "attributeBase" char._id name}}
|
{{#if characterCalculate "attributeBase" char._id name}}
|
||||||
<paper-shadow class="card"
|
<div>
|
||||||
|
<paper-shadow class="card"
|
||||||
hero-id="main" {{detailHero name char._id}}
|
hero-id="main" {{detailHero name char._id}}
|
||||||
layout horizontal>
|
layout horizontal>
|
||||||
<div class="left {{getColor}} display1 white-text"
|
<div class="left {{getColor}} display1 white-text"
|
||||||
hero-id="toolbar" {{detailHero name char._id}}
|
hero-id="toolbar" {{detailHero name char._id}}
|
||||||
layout horizontal center>
|
layout horizontal center>
|
||||||
<div style="margin-right: 8px;">
|
<div style="margin-right: 8px;">
|
||||||
<paper-icon-button class="resourceUp"
|
<paper-icon-button class="resourceUp"
|
||||||
icon="arrow-drop-up"
|
icon="arrow-drop-up"
|
||||||
disabled={{cantIncrement}}>
|
disabled={{cantIncrement}}>
|
||||||
</paper-icon-button>
|
</paper-icon-button>
|
||||||
<paper-icon-button class="resourceDown"
|
<paper-icon-button class="resourceDown"
|
||||||
@@ -157,10 +164,11 @@
|
|||||||
<div>{{characterCalculate "attributeValue" char._id name}}</div>
|
<div>{{characterCalculate "attributeValue" char._id name}}</div>
|
||||||
<!--<div>/{{char.attributeBase name}}</div>-->
|
<!--<div>/{{char.attributeBase name}}</div>-->
|
||||||
</div>
|
</div>
|
||||||
<div class="right clickable"
|
<div class="right clickable"
|
||||||
flex layout horizontal center>
|
flex layout horizontal center>
|
||||||
{{title}}
|
{{title}}
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -14,7 +14,9 @@ var getFractionCarried = function(char) {
|
|||||||
});
|
});
|
||||||
//get strength
|
//get strength
|
||||||
var strength = Characters.calculate.attributeValue(char._id, "strength");
|
var strength = Characters.calculate.attributeValue(char._id, "strength");
|
||||||
var capacity = strength * 15;
|
var carryMultiplier = Characters.calculate
|
||||||
|
.attributeValue(char._id, "carryMultiplier");
|
||||||
|
var capacity = strength * 15 * carryMultiplier;
|
||||||
return weight / capacity;
|
return weight / capacity;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -22,7 +24,7 @@ Template.carryCapacityBar.onCreated(function() {
|
|||||||
var self = this;
|
var self = this;
|
||||||
self.carriedFraction = new ReactiveVar(0);
|
self.carriedFraction = new ReactiveVar(0);
|
||||||
self.autorun(function() {
|
self.autorun(function() {
|
||||||
self.carriedFraction.set(getFractionCarried(self.data));
|
self.carriedFraction.set(getFractionCarried(Template.currentData()));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
<div id="inventory" class="scroll-y" fit>
|
<div id="inventory" class="scroll-y" fit>
|
||||||
<div class="column-container">
|
<div class="column-container">
|
||||||
<!--Net Worth-->
|
<!--Net Worth-->
|
||||||
|
<div>
|
||||||
<paper-shadow class="card">
|
<paper-shadow class="card">
|
||||||
<div class="white top" layout horizontal center>
|
<div class="white top" layout horizontal center>
|
||||||
<div class="subhead" flex>
|
<div class="subhead" flex>
|
||||||
@@ -13,7 +14,9 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
<!--Weight Carried-->
|
<!--Weight Carried-->
|
||||||
|
<div>
|
||||||
<paper-shadow class="card"
|
<paper-shadow class="card"
|
||||||
hero-id="main" {{detailHero "weightCarried" _id}}>
|
hero-id="main" {{detailHero "weightCarried" _id}}>
|
||||||
<div class="top green white-text weightCarried"
|
<div class="top green white-text weightCarried"
|
||||||
@@ -48,7 +51,9 @@
|
|||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
<!--Equipment-->
|
<!--Equipment-->
|
||||||
|
<div>
|
||||||
<paper-shadow class="card equipmentContainer">
|
<paper-shadow class="card equipmentContainer">
|
||||||
<div class="white top" layout horizontal center>
|
<div class="white top" layout horizontal center>
|
||||||
<div class="subhead" flex>
|
<div class="subhead" flex>
|
||||||
@@ -76,7 +81,9 @@
|
|||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
<!--Carried Items-->
|
<!--Carried Items-->
|
||||||
|
<div>
|
||||||
<paper-shadow class="card carriedContainer">
|
<paper-shadow class="card carriedContainer">
|
||||||
<div class="white top" layout horizontal center>
|
<div class="white top" layout horizontal center>
|
||||||
<div class="subhead" flex>
|
<div class="subhead" flex>
|
||||||
@@ -95,8 +102,10 @@
|
|||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
{{#each containers}}
|
{{#each containers}}
|
||||||
<paper-shadow class="card itemContainer"
|
<div>
|
||||||
|
<paper-shadow class="card itemContainer"
|
||||||
hero-id="main" {{detailHero}}>
|
hero-id="main" {{detailHero}}>
|
||||||
<div class="top {{colorClass}}"
|
<div class="top {{colorClass}}"
|
||||||
hero-id="toolbar" {{detailHero}}
|
hero-id="toolbar" {{detailHero}}
|
||||||
@@ -124,6 +133,7 @@
|
|||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
<div class="fab-buffer"></div>
|
<div class="fab-buffer"></div>
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
<div id="journal" class="scroll-y" fit>
|
<div id="journal" class="scroll-y" fit>
|
||||||
<div class="column-container">
|
<div class="column-container">
|
||||||
<!--Experience Table-->
|
<!--Experience Table-->
|
||||||
<paper-shadow class="card experiencesCard"
|
<div><paper-shadow class="card experiencesCard"
|
||||||
hero-id="main" {{detailHero}}>
|
hero-id="main" {{detailHero}}>
|
||||||
<div class="top white subhead"
|
<div class="top white subhead"
|
||||||
hero-id="toolbar" {{detailHero}}
|
hero-id="toolbar" {{detailHero}}
|
||||||
@@ -37,9 +37,9 @@
|
|||||||
</paper-button>
|
</paper-button>
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</paper-shadow>
|
</paper-shadow></div>
|
||||||
<!--Class Table-->
|
<!--Class Table-->
|
||||||
<paper-shadow class="card"
|
<div><paper-shadow class="card"
|
||||||
hero-id="main" {{detailHero}}>
|
hero-id="main" {{detailHero}}>
|
||||||
<div class="white top"
|
<div class="white top"
|
||||||
hero-id="toolbar" {{detailHero}}
|
hero-id="toolbar" {{detailHero}}
|
||||||
@@ -78,9 +78,10 @@
|
|||||||
</div>
|
</div>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow></div>
|
||||||
<!--Notes-->
|
<!--Notes-->
|
||||||
{{#each notes}}
|
{{#each notes}}
|
||||||
|
<div>
|
||||||
<paper-shadow class="card" hero-id="main" {{detailHero}}>
|
<paper-shadow class="card" hero-id="main" {{detailHero}}>
|
||||||
<div class="top {{colorClass}} noteTop subhead"
|
<div class="top {{colorClass}} noteTop subhead"
|
||||||
hero-id="toolbar" {{detailHero}}
|
hero-id="toolbar" {{detailHero}}
|
||||||
@@ -89,18 +90,19 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="bottom">{{#markdown}}{{description}}{{/markdown}}</div>
|
<div class="bottom">{{#markdown}}{{description}}{{/markdown}}</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
<div class="fab-buffer"></div>
|
<div class="fab-buffer"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{#if canEditCharacter _id}}
|
{{#if canEditCharacter _id}}
|
||||||
<paper-fab id="addNote"
|
<paper-fab id="addNote"
|
||||||
class="floatyButton"
|
class="floatyButton"
|
||||||
icon="add"
|
icon="add"
|
||||||
title="Add"
|
title="Add"
|
||||||
role="button"
|
role="button"
|
||||||
tabindex="0"
|
tabindex="0"
|
||||||
hero-id="main"></paper-fab>
|
hero-id="main"></paper-fab>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
<div id="persona" class="scroll-y" fit>
|
<div id="persona" class="scroll-y" fit>
|
||||||
<div class="column-container">
|
<div class="column-container">
|
||||||
{{#with characterDetails}}
|
{{#with characterDetails}}
|
||||||
|
<div>
|
||||||
<paper-shadow class="card"
|
<paper-shadow class="card"
|
||||||
hero-id="main" {{detailHero "details" _id}}>
|
hero-id="main" {{detailHero "details" _id}}>
|
||||||
{{#unless picture}}
|
{{#unless picture}}
|
||||||
@@ -32,13 +33,15 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
{{/with}}
|
{{/with}}
|
||||||
{{> containerCard characterField "description" "Description"}}
|
<div>{{> containerCard characterField "description" "Description"}}</div>
|
||||||
{{> containerCard characterField "personality" "Personality Traits"}}
|
<div>{{> containerCard characterField "personality" "Personality Traits"}}</div>
|
||||||
{{> containerCard characterField "ideals" "Ideals"}}
|
<div>{{> containerCard characterField "ideals" "Ideals"}}</div>
|
||||||
{{> containerCard characterField "bonds" "Bonds"}}
|
<div>{{> containerCard characterField "bonds" "Bonds"}}</div>
|
||||||
{{> containerCard characterField "flaws" "Flaws"}}
|
<div>{{> containerCard characterField "flaws" "Flaws"}}</div>
|
||||||
{{> containerCard characterField "backstory" "Background"}}
|
<div>{{> containerCard characterField "backstory" "Background"}}</div>
|
||||||
|
<div>
|
||||||
<paper-shadow class="card">
|
<paper-shadow class="card">
|
||||||
<div class="white top subhead">
|
<div class="white top subhead">
|
||||||
Languages
|
Languages
|
||||||
@@ -49,6 +52,7 @@
|
|||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -70,4 +74,4 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="bottom">{{#markdown}}{{> UI.contentBlock}}{{/markdown}}</div>
|
<div class="bottom">{{#markdown}}{{> UI.contentBlock}}{{/markdown}}</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
<template name="spellDetails">
|
<template name="spellDetails">
|
||||||
<div class="body2">
|
<div class="body2">
|
||||||
Level {{level}} {{school}}, {{preparedString}}
|
Level {{level}} {{school}} {{#if ritual}}ritual{{/if}}, {{preparedString}}
|
||||||
</div>
|
</div>
|
||||||
<div style="margin: 16px 0 16px 0;">
|
<div style="margin: 16px 0 16px 0;">
|
||||||
{{#if castingTime}}
|
{{#if castingTime}}
|
||||||
@@ -136,4 +136,4 @@
|
|||||||
</paper-autogrow-textarea>
|
</paper-autogrow-textarea>
|
||||||
</paper-input-decorator>
|
</paper-input-decorator>
|
||||||
{{> attackEditList parentId=_id parentCollection="Spells" charId=charId enabled=true name=name}}
|
{{> attackEditList parentId=_id parentCollection="Spells" charId=charId enabled=true name=name}}
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<template name="spells">
|
<template name="spells">
|
||||||
<div fit>
|
<div fit>
|
||||||
<div id="spells" class="scroll-y" fit>
|
<div id="spells" class="scroll-y" fit>
|
||||||
<div style="padding: 4px;"
|
<div style="padding: 4px;"
|
||||||
layout horizontal start wrap>
|
layout horizontal start wrap>
|
||||||
{{#if hasSlots}}
|
{{#if hasSlots}}
|
||||||
<paper-shadow class="card"
|
<paper-shadow class="card"
|
||||||
@@ -92,7 +92,7 @@
|
|||||||
<div class="tall spell item"
|
<div class="tall spell item"
|
||||||
hero-id="main" {{detailHero}}
|
hero-id="main" {{detailHero}}
|
||||||
layout horizontal center>
|
layout horizontal center>
|
||||||
<core-icon icon="social:whatshot"
|
<core-icon icon="social:whatshot"
|
||||||
style="color: {{hexColor color}};
|
style="color: {{hexColor color}};
|
||||||
margin-right: 16px;"
|
margin-right: 16px;"
|
||||||
></core-icon>
|
></core-icon>
|
||||||
@@ -144,4 +144,4 @@
|
|||||||
</core-tooltip>
|
</core-tooltip>
|
||||||
{{/fabMenu}}
|
{{/fabMenu}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
<template name="abilityMiniCard">
|
<template name="abilityMiniCard">
|
||||||
<paper-shadow class="card abilityMiniCard clickable"
|
<div>
|
||||||
|
<paper-shadow class="card abilityMiniCard clickable"
|
||||||
hero-id="main" {{detailHero ability ../_id}}
|
hero-id="main" {{detailHero ability ../_id}}
|
||||||
layout horizontal>
|
layout horizontal>
|
||||||
<div class="left white-text {{color}}"
|
<div class="left white-text {{color}}"
|
||||||
@@ -11,4 +12,5 @@
|
|||||||
{{title}}
|
{{title}}
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -1,9 +1,11 @@
|
|||||||
Template.addTHPDialog.events({
|
Template.addTHPDialog.events({
|
||||||
"tap #addButton": function(event, instance){
|
"tap #addButton": function(event, instance){
|
||||||
|
var max = +instance.find("#quantityInput").value;
|
||||||
|
if (!max || max < 0) max = 0;
|
||||||
TemporaryHitPoints.insert({
|
TemporaryHitPoints.insert({
|
||||||
charId: this.charId,
|
charId: this.charId,
|
||||||
name: instance.find("#nameInput").value,
|
name: instance.find("#nameInput").value,
|
||||||
maximum: +instance.find("#quantityInput").value,
|
maximum: max,
|
||||||
deleteOnZero: !!instance.find("#deleteWhenZeroCheckbox").checked,
|
deleteOnZero: !!instance.find("#deleteWhenZeroCheckbox").checked,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,27 +2,27 @@
|
|||||||
<table class="carryCapacityTable strengthTable">
|
<table class="carryCapacityTable strengthTable">
|
||||||
<tr>
|
<tr>
|
||||||
<td>Encumbered</td>
|
<td>Encumbered</td>
|
||||||
<td>>{{evaluate charId "strength * 5"}}lbs</td>
|
<td>>{{evaluate charId "strength * 5 * carryMultiplier"}}lbs</td>
|
||||||
<td class="caption">Variant rule, encumbered characters move 10 feet slower</td>
|
<td class="caption">Variant rule, encumbered characters move 10 feet slower</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Heavily encumbered</td>
|
<td>Heavily encumbered</td>
|
||||||
<td>>{{evaluate charId "strength * 10"}}lbs</td>
|
<td>>{{evaluate charId "strength * 10 * carryMultiplier"}}lbs</td>
|
||||||
<td class="caption">
|
<td class="caption">
|
||||||
Variant rule, heavily encumbered characters move 20 feet slower and have disadvantage on ability checks, attack rolls, and saving thows that use Strength, Dexterity, or Constitution
|
Variant rule, heavily encumbered characters move 20 feet slower and have disadvantage on ability checks, attack rolls, and saving thows that use Strength, Dexterity, or Constitution
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Over Encumbered</td>
|
<td>Over Encumbered</td>
|
||||||
<td>>{{evaluate charId "strength * 15"}}lbs</td>
|
<td>>{{evaluate charId "strength * 15 * carryMultiplier"}}lbs</td>
|
||||||
<td class="caption">
|
<td class="caption">
|
||||||
Characters that can only just lift, push or drag their current load can only move at 5 feet.
|
Characters that can only just lift, push or drag their current load can only move at 5 feet.
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Push, drag or lift maximum</td>
|
<td>Push, drag or lift maximum</td>
|
||||||
<td>{{evaluate charId "strength * 30"}}lbs</td>
|
<td>{{evaluate charId "strength * 30 * carryMultiplier"}}lbs</td>
|
||||||
<td class="caption"></td>
|
<td class="caption"></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
<template name="healthCard">
|
<template name="healthCard">
|
||||||
<paper-shadow class="card container healthCard"
|
<paper-shadow class="card container healthCard"
|
||||||
hero-id="main" {{detailHero "hitPoints" _id}}
|
hero-id="main" {{detailHero "hitPoints" _id}}
|
||||||
layout horizontal wrap>
|
layout horizontal wrap>
|
||||||
<div class="green white-text subhead left"
|
<div class="green white-text subhead left"
|
||||||
hero-id="toolbar" {{detailHero "hitPoints" _id}}
|
hero-id="toolbar" {{detailHero "hitPoints" _id}}
|
||||||
layout vertical center center-justified>
|
layout vertical center center-justified>
|
||||||
<div class="hitPointTitle clickable">Hit Points</div>
|
<div class="hitPointTitle clickable">Hit Points</div>
|
||||||
<paper-icon-button class="white54"
|
<paper-icon-button class="white54"
|
||||||
id="addTempHP"
|
id="addTempHP"
|
||||||
icon="add"
|
icon="add"
|
||||||
disabled={{#unless canEditCharacter _id}}true{{/unless}}>
|
disabled={{#unless canEditCharacter _id}}true{{/unless}}>
|
||||||
</paper-icon-button>
|
</paper-icon-button>
|
||||||
</div>
|
</div>
|
||||||
@@ -33,14 +33,14 @@
|
|||||||
role="slider"
|
role="slider"
|
||||||
flex
|
flex
|
||||||
></paper-diff-slider>
|
></paper-diff-slider>
|
||||||
{{#unless left}}{{#unless deleteOnZero}}
|
{{#unless left}}
|
||||||
<paper-icon-button class="deleteTHP" icon="delete"></paper-icon-button>
|
<paper-icon-button class="deleteTHP" icon="delete"></paper-icon-button>
|
||||||
{{/unless}}{{/unless}}
|
{{/unless}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
<div class="caption">
|
<div class="caption">
|
||||||
{{#if multipliers.immunities.length}}
|
{{#if multipliers.immunities.length}}
|
||||||
<div>
|
<div>
|
||||||
Immune: {{#each multipliers.immunities}} {{name}} {{/each}}
|
Immune: {{#each multipliers.immunities}} {{name}} {{/each}}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,14 +1,15 @@
|
|||||||
<template name="hitDice">
|
<template name="hitDice">
|
||||||
{{#if characterCalculate "attributeBase" ../_id name}}
|
{{#if characterCalculate "attributeBase" ../_id name}}
|
||||||
<paper-shadow class="card hit-dice" hero-id="main"
|
<div>
|
||||||
{{detailHero name ../_id}}
|
<paper-shadow class="card hit-dice" hero-id="main"
|
||||||
|
{{detailHero name ../_id}}
|
||||||
layout horizontal>
|
layout horizontal>
|
||||||
<div class="left green display1 white-text"
|
<div class="left green display1 white-text"
|
||||||
hero-id="toolbar" {{detailHero name ../_id}}
|
hero-id="toolbar" {{detailHero name ../_id}}
|
||||||
layout horizontal>
|
layout horizontal>
|
||||||
<div>
|
<div>
|
||||||
<paper-icon-button class="resourceUp"
|
<paper-icon-button class="resourceUp"
|
||||||
icon="arrow-drop-up"
|
icon="arrow-drop-up"
|
||||||
disabled={{cantIncrement}}>
|
disabled={{cantIncrement}}>
|
||||||
</paper-icon-button>
|
</paper-icon-button>
|
||||||
<paper-icon-button class="resourceDown"
|
<paper-icon-button class="resourceDown"
|
||||||
@@ -29,5 +30,6 @@
|
|||||||
Hit Dice
|
Hit Dice
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -27,6 +27,7 @@
|
|||||||
{{>hitDice name="d10HitDice" diceNum="10" char=this}}
|
{{>hitDice name="d10HitDice" diceNum="10" char=this}}
|
||||||
{{>hitDice name="d12HitDice" diceNum="12" char=this}}
|
{{>hitDice name="d12HitDice" diceNum="12" char=this}}
|
||||||
<!--Saving Throws-->
|
<!--Saving Throws-->
|
||||||
|
<div>
|
||||||
<paper-shadow class="card">
|
<paper-shadow class="card">
|
||||||
<div class="top white subhead">
|
<div class="top white subhead">
|
||||||
Saving Throws
|
Saving Throws
|
||||||
@@ -40,7 +41,9 @@
|
|||||||
{{> skillRow name="Charisma" skill="charismaSave"}}
|
{{> skillRow name="Charisma" skill="charismaSave"}}
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
<!--Skills-->
|
<!--Skills-->
|
||||||
|
<div>
|
||||||
<paper-shadow class="card">
|
<paper-shadow class="card">
|
||||||
<div class="top white subhead">
|
<div class="top white subhead">
|
||||||
Skills
|
Skills
|
||||||
@@ -66,11 +69,13 @@
|
|||||||
{{> skillRow name="Survival" skill="survival"}}
|
{{> skillRow name="Survival" skill="survival"}}
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<template name="statCard">
|
<template name="statCard">
|
||||||
|
<div>
|
||||||
<paper-shadow class="card statCard clickable" hero-id="main" {{detailHero stat ../_id}} layout horizontal>
|
<paper-shadow class="card statCard clickable" hero-id="main" {{detailHero stat ../_id}} layout horizontal>
|
||||||
<div class="left display1 white-text {{color}}"
|
<div class="left display1 white-text {{color}}"
|
||||||
hero-id="toolbar" {{detailHero stat ../_id}}>
|
hero-id="toolbar" {{detailHero stat ../_id}}>
|
||||||
@@ -84,4 +89,5 @@
|
|||||||
{{name}}
|
{{name}}
|
||||||
</div>
|
</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
padding: 8px 0 8px 16px;
|
padding: 8px 0 8px 16px;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.singleLineItem core-icon {
|
.singleLineItem core-icon {
|
||||||
@@ -19,4 +20,4 @@
|
|||||||
/* Required for text-overflow to do anything */
|
/* Required for text-overflow to do anything */
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,11 +3,12 @@
|
|||||||
{{#if characters.count}}
|
{{#if characters.count}}
|
||||||
<div>
|
<div>
|
||||||
{{#each characters}}
|
{{#each characters}}
|
||||||
<div class="singleLineItem characterRepresentative"
|
<a href={{pathFor route="characterSheet" data=this}}
|
||||||
|
class="singleLineItem characterRepresentative"
|
||||||
layout horizontal center>
|
layout horizontal center>
|
||||||
<core-icon icon="image:brightness-1"></core-icon>
|
<core-icon icon="image:brightness-1"></core-icon>
|
||||||
<div>{{name}}</div>
|
<div>{{name}}</div>
|
||||||
</div>
|
</a>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ Template.characterSideList.helpers({
|
|||||||
|
|
||||||
Template.characterSideList.events({
|
Template.characterSideList.events({
|
||||||
"tap .singleLineItem": function(event, instance) {
|
"tap .singleLineItem": function(event, instance) {
|
||||||
Router.go("characterSheet", {_id: this._id});
|
//Router.go("characterSheet", {_id: this._id});
|
||||||
$("core-drawer-panel").get(0).closeDrawer();
|
$("core-drawer-panel").get(0).closeDrawer();
|
||||||
},
|
},
|
||||||
"tap core-item": function() {
|
"tap core-item": function() {
|
||||||
|
|||||||
@@ -45,6 +45,15 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="bottom text">Lawful Good Human</div>
|
<div class="bottom text">Lawful Good Human</div>
|
||||||
</paper-shadow>
|
</paper-shadow>
|
||||||
|
<paper-shadow class="card characterCard ssWizard clickable"
|
||||||
|
z="2">
|
||||||
|
<div class="top subhead deep-purple white-text">
|
||||||
|
<div class="subhead" flex>
|
||||||
|
Starter Set Wizard
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="bottom text">Chaotic Good High Elf</div>
|
||||||
|
</paper-shadow>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -8,6 +8,9 @@ Template.intro.events({
|
|||||||
"tap .ssArcher": function() {
|
"tap .ssArcher": function() {
|
||||||
Router.go("/character/yBWwt5XQTTHZiRQxq");
|
Router.go("/character/yBWwt5XQTTHZiRQxq");
|
||||||
},
|
},
|
||||||
|
"tap .ssWizard": function() {
|
||||||
|
Router.go("/character/KxHKskm22fS2Xogah");
|
||||||
|
},
|
||||||
"tap .guideButton": function() {
|
"tap .guideButton": function() {
|
||||||
Router.go("/guide");
|
Router.go("/guide");
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -15,3 +15,11 @@
|
|||||||
#navPanel {
|
#navPanel {
|
||||||
padding: 16px;
|
padding: 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.layout > core-header-panel {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layout > core-animated-pages {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<template name="layout">
|
<template name="layout">
|
||||||
<core-drawer-panel responsiveWidth="905px">
|
<core-drawer-panel class="layout" responsiveWidth="905px">
|
||||||
<core-header-panel drawer navigation flex mode="seamed" class="white">
|
<core-header-panel drawer navigation flex mode="seamed" class="white">
|
||||||
<div id="accountSummary">
|
<div id="accountSummary">
|
||||||
{{#if currentUser}}
|
{{#if currentUser}}
|
||||||
@@ -19,9 +19,9 @@
|
|||||||
<core-item id="changeLog" icon="list" label="Change Log"></core-item>
|
<core-item id="changeLog" icon="list" label="Change Log"></core-item>
|
||||||
</div>
|
</div>
|
||||||
</core-header-panel>
|
</core-header-panel>
|
||||||
<core-animated-pages main
|
<core-animated-pages main
|
||||||
navigation
|
navigation
|
||||||
detail-pages
|
detail-pages
|
||||||
transitions="hero-transition cross-fade"
|
transitions="hero-transition cross-fade"
|
||||||
selected={{globalDetailSelected}}>
|
selected={{globalDetailSelected}}>
|
||||||
<section id="mainContentSection" class={{notSelected}}>
|
<section id="mainContentSection" class={{notSelected}}>
|
||||||
@@ -66,4 +66,4 @@
|
|||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</paper-toast>
|
</paper-toast>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -20,7 +20,6 @@
|
|||||||
<link rel="import" href="/components/paper-dialog/paper-action-dialog.html">
|
<link rel="import" href="/components/paper-dialog/paper-action-dialog.html">
|
||||||
<link rel="import" href="/components/paper-dialog/paper-dialog.html">
|
<link rel="import" href="/components/paper-dialog/paper-dialog.html">
|
||||||
<link rel="import" href="/components/paper-dialog/paper-dialog-transition.html">
|
<link rel="import" href="/components/paper-dialog/paper-dialog-transition.html">
|
||||||
<link rel="import" href="/components/paper-dropdown/paper-dropdown.html">
|
|
||||||
<link rel="import" href="/components/paper-fab/paper-fab.html">
|
<link rel="import" href="/components/paper-fab/paper-fab.html">
|
||||||
<link rel="import" href="/components/paper-fab-menu/paper-fab-menu.html">
|
<link rel="import" href="/components/paper-fab-menu/paper-fab-menu.html">
|
||||||
<link rel="import" href="/components/paper-icon-button/paper-icon-button.html">
|
<link rel="import" href="/components/paper-icon-button/paper-icon-button.html">
|
||||||
@@ -40,5 +39,5 @@
|
|||||||
|
|
||||||
<!--custom components-->
|
<!--custom components-->
|
||||||
<link rel="import" href="/custom_components/paper-dropdown-menu/paper-dropdown-menu.html">
|
<link rel="import" href="/custom_components/paper-dropdown-menu/paper-dropdown-menu.html">
|
||||||
|
<link rel="import" href="/custom_components/paper-dropdown/paper-dropdown.html">
|
||||||
<link rel="import" href="/custom_components/paper-diff-slider/paper-diff-slider.html">
|
<link rel="import" href="/custom_components/paper-diff-slider/paper-diff-slider.html">
|
||||||
<link rel="import" href="/custom_components/swipe-detect/swipe-detect.html">
|
|
||||||
@@ -4,6 +4,9 @@
|
|||||||
</core-toolbar>
|
</core-toolbar>
|
||||||
<div fit layout vertical center center-justified>
|
<div fit layout vertical center center-justified>
|
||||||
<paper-spinner class="bigSpinner" active></paper-spinner>
|
<paper-spinner class="bigSpinner" active></paper-spinner>
|
||||||
<div class="subhead">{{randomHint}}</div>
|
<div class="subhead"
|
||||||
|
style="margin-left: 16px;
|
||||||
|
margin-right: 16px;
|
||||||
|
text-align: center;">{{randomHint}}</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -1,10 +1,14 @@
|
|||||||
<template name="notFound">
|
<template name="notFound">
|
||||||
<div layout vertical center center-justified fit>
|
<core-toolbar class="app-grey white-text">
|
||||||
<h2>The data for the page you requested could not be found.</h2>
|
<core-icon-button icon="menu" core-drawer-toggle></core-icon-button>
|
||||||
|
</core-toolbar>
|
||||||
|
<div layout vertical center center-justified fit
|
||||||
|
style="padding: 16px; text-align: center;">
|
||||||
|
<h2 style="margin-bottom: 12px;">The data for the page you requested could not be found.</h2>
|
||||||
{{#if currentUser}}
|
{{#if currentUser}}
|
||||||
<h2>It might not exist, or you might not have permission to view it.</h2>
|
<h3>It might not exist, or you might not have permission to view it.</h3>
|
||||||
{{else}}
|
{{else}}
|
||||||
<h2>Perhaps you need to sign in first:</h2>
|
<h3>Perhaps you need to sign in first:</h3>
|
||||||
{{atForm}}
|
{{atForm}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
@import "bourbon/bourbon";
|
@import "{wolves:bourbon}/bourbon";
|
||||||
|
|
||||||
.mini-holder {
|
.mini-holder {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
@@ -43,4 +43,3 @@
|
|||||||
@include transform(rotate(405deg));
|
@include transform(rotate(405deg));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
45
rpg-docs/config.vulcanize
Normal file
45
rpg-docs/config.vulcanize
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
{
|
||||||
|
"imports": [
|
||||||
|
"/custom_components/paper-dropdown/paper-dropdown.html",
|
||||||
|
"/custom_components/paper-dropdown-menu/paper-dropdown-menu.html",
|
||||||
|
"/custom_components/paper-diff-slider/paper-diff-slider.html",
|
||||||
|
"/custom_components/swipe-detect/swipe-detect.html",
|
||||||
|
|
||||||
|
"/components/core-animated-pages/core-animated-pages.html",
|
||||||
|
"/components/core-animated-pages/transitions/cross-fade.html",
|
||||||
|
"/components/core-animated-pages/transitions/hero-transition.html",
|
||||||
|
"/components/core-animated-pages/transitions/slide-from-right.html",
|
||||||
|
"/components/core-icons/av-icons.html",
|
||||||
|
"/components/core-icons/core-icons.html",
|
||||||
|
"/components/core-icons/editor-icons.html",
|
||||||
|
"/components/core-icons/image-icons.html",
|
||||||
|
"/components/core-icons/social-icons.html",
|
||||||
|
"/components/core-image/core-image.html",
|
||||||
|
"/components/core-item/core-item.html",
|
||||||
|
"/components/core-menu/core-menu.html",
|
||||||
|
"/components/core-scaffold/core-scaffold.html",
|
||||||
|
"/components/core-transition/core-transition.html",
|
||||||
|
|
||||||
|
"/components/paper-button/paper-button.html",
|
||||||
|
"/components/paper-checkbox/paper-checkbox.html",
|
||||||
|
"/components/paper-dialog/paper-action-dialog.html",
|
||||||
|
"/components/paper-dialog/paper-dialog.html",
|
||||||
|
"/components/paper-dialog/paper-dialog-transition.html",
|
||||||
|
"/components/paper-fab/paper-fab.html",
|
||||||
|
"/components/paper-fab-menu/paper-fab-menu.html",
|
||||||
|
"/components/paper-icon-button/paper-icon-button.html",
|
||||||
|
"/components/paper-input/paper-autogrow-textarea.html",
|
||||||
|
"/components/paper-input/paper-input.html",
|
||||||
|
"/components/paper-input/paper-input-decorator.html",
|
||||||
|
"/components/paper-item/paper-item.html",
|
||||||
|
"/components/paper-menu-button/paper-menu-button.html",
|
||||||
|
"/components/paper-radio-button/paper-radio-button.html",
|
||||||
|
"/components/paper-radio-group/paper-radio-group.html",
|
||||||
|
"/components/paper-shadow/paper-shadow.html",
|
||||||
|
"/components/paper-spinner/paper-spinner.html",
|
||||||
|
"/components/paper-slider/paper-slider.html",
|
||||||
|
"/components/paper-tabs/paper-tabs.html",
|
||||||
|
"/components/paper-toast/paper-toast.html",
|
||||||
|
"/components/paper-toggle-button/paper-toggle-button.html"
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -1,3 +1,12 @@
|
|||||||
|
// if we want to add more functions, consider pulling out into its own file
|
||||||
|
(function() {
|
||||||
|
math.import({
|
||||||
|
"if": function(pred, a, b) {
|
||||||
|
return (!!(pred)) ? a : b;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})();
|
||||||
|
|
||||||
//evaluates a calculation string
|
//evaluates a calculation string
|
||||||
evaluate = function(charId, string){
|
evaluate = function(charId, string){
|
||||||
if (!string) return string;
|
if (!string) return string;
|
||||||
|
|||||||
@@ -1,8 +1,13 @@
|
|||||||
Meteor.methods({
|
Meteor.methods({
|
||||||
"getUserId": function(username){
|
"getUserId": function(username){
|
||||||
if (!username) return;
|
if (!username) return;
|
||||||
|
regex = new RegExp("^" + username + "$", "i")
|
||||||
var user = Meteor.users.findOne(
|
var user = Meteor.users.findOne(
|
||||||
{$or: [{username: username}, {"emails.address": username}]}
|
{$or: [
|
||||||
|
{username: username},
|
||||||
|
{"emails.address": regex},
|
||||||
|
{"services.google.email": regex},
|
||||||
|
]}
|
||||||
);
|
);
|
||||||
return user && user._id;
|
return user && user._id;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -101,6 +101,8 @@ trackEncumbranceConditions = function(charId, templateInstance) {
|
|||||||
{fields: {"settings": 1}}
|
{fields: {"settings": 1}}
|
||||||
);
|
);
|
||||||
var strength = Characters.calculate.attributeValue(charId, "strength");
|
var strength = Characters.calculate.attributeValue(charId, "strength");
|
||||||
|
var carryMultiplier = Characters.calculate
|
||||||
|
.attributeValue(charId, "carryMultiplier");
|
||||||
var give = function(condition) {
|
var give = function(condition) {
|
||||||
Meteor.call("giveCondition", charId, condition);
|
Meteor.call("giveCondition", charId, condition);
|
||||||
};
|
};
|
||||||
@@ -108,11 +110,11 @@ trackEncumbranceConditions = function(charId, templateInstance) {
|
|||||||
Meteor.call("removeCondition", charId, condition);
|
Meteor.call("removeCondition", charId, condition);
|
||||||
};
|
};
|
||||||
//variant encumbrance rules
|
//variant encumbrance rules
|
||||||
if (weight > strength * 10 &&
|
if (weight > strength * 10 * carryMultiplier &&
|
||||||
character.settings.useVariantEncumbrance) {
|
character.settings.useVariantEncumbrance) {
|
||||||
give("encumbered2");
|
give("encumbered2");
|
||||||
remove("encumbered");
|
remove("encumbered");
|
||||||
} else if (weight > strength * 5 &&
|
} else if (weight > strength * 5 * carryMultiplier &&
|
||||||
character.settings.useVariantEncumbrance){
|
character.settings.useVariantEncumbrance){
|
||||||
give("encumbered");
|
give("encumbered");
|
||||||
remove("encumbered2");
|
remove("encumbered2");
|
||||||
@@ -121,11 +123,11 @@ trackEncumbranceConditions = function(charId, templateInstance) {
|
|||||||
remove("encumbered2");
|
remove("encumbered2");
|
||||||
}
|
}
|
||||||
//normal encumbrance rules
|
//normal encumbrance rules
|
||||||
if (weight > strength * 30 &&
|
if (weight > strength * 30 * carryMultiplier &&
|
||||||
character.settings.useStandardEncumbrance){
|
character.settings.useStandardEncumbrance){
|
||||||
give("encumbered4");
|
give("encumbered4");
|
||||||
remove("encumbered3");
|
remove("encumbered3");
|
||||||
} else if (weight > strength * 15 &&
|
} else if (weight > strength * 15 * carryMultiplier &&
|
||||||
character.settings.useStandardEncumbrance) {
|
character.settings.useStandardEncumbrance) {
|
||||||
give("encumbered3");
|
give("encumbered3");
|
||||||
remove("encumbered4");
|
remove("encumbered4");
|
||||||
|
|||||||
16
rpg-docs/package.json
Normal file
16
rpg-docs/package.json
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"name": "rpg-docs",
|
||||||
|
"version": "0.10.0",
|
||||||
|
"description": "Unofficial Online Realtime D&D 5e App",
|
||||||
|
"scripts": {
|
||||||
|
"postinstall": "bower install"
|
||||||
|
},
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/ThaumRystra/RPG-Docs"
|
||||||
|
},
|
||||||
|
"author": "Stefan Zermatten",
|
||||||
|
"dependencies": {
|
||||||
|
"bower": "^1.7.9"
|
||||||
|
}
|
||||||
|
}
|
||||||
1
rpg-docs/packages/meteor-vulcanize/.gitignore
vendored
Normal file
1
rpg-docs/packages/meteor-vulcanize/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
.npm
|
||||||
3
rpg-docs/packages/meteor-vulcanize/.versions
Normal file
3
rpg-docs/packages/meteor-vulcanize/.versions
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
differential:vulcanize@0.0.5
|
||||||
|
meteor@1.1.6
|
||||||
|
underscore@1.0.3
|
||||||
29
rpg-docs/packages/meteor-vulcanize/README.md
Normal file
29
rpg-docs/packages/meteor-vulcanize/README.md
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
Vulcanize
|
||||||
|
==============================================================================
|
||||||
|
This package a meteor build plugin that wraps the [vulcanize](https://www.npmjs.com/package/vulcanize) npm package, which is used to process web components into a single output file.
|
||||||
|
|
||||||
|
### Usage
|
||||||
|
1. Ensure all your components are located somewhere under your public directory.
|
||||||
|
2. Include an `imports.html` file anywhere available to the client, that contains the html imports that would normally go inside your `<head>` tag.
|
||||||
|
|
||||||
|
````
|
||||||
|
<!-- Core Components -->
|
||||||
|
<link rel="import" href="/components/core-animation/core-animation.html">
|
||||||
|
<link rel="import" href="/components/core-animated-pages/core-animated-pages.html">
|
||||||
|
<link rel="import" href="/components/core-animated-pages/transitions/slide-from-right.html">
|
||||||
|
<link rel="import" href="/components/core-drawer-panel/core-drawer-panel.html">
|
||||||
|
<link rel="import" href="/components/core-pages/core-pages.html">
|
||||||
|
...
|
||||||
|
|
||||||
|
<!-- Paper Components -->
|
||||||
|
<link rel="import" href="/components/paper-dialog/paper-action-dialog.html">
|
||||||
|
<link rel="import" href="/components/paper-dialog/paper-dialog-transition.html">
|
||||||
|
<link rel="import" href="/components/paper-input/paper-input.html">
|
||||||
|
...
|
||||||
|
````
|
||||||
|
|
||||||
|
- Running your app in development as usual will result in the contents of `imports.html` being added to your `<head>` tag, resulting in multiple subsequent HTTP requests (good in development - debugging).
|
||||||
|
|
||||||
|
- Running `meteor`, `meteor build`, `modulus deploy`, etc with the `VULCANIZE=true` environment variable set will result in all your html imports being vulcanized or concatenated into a single html import (good in production). The resulting file will be called `vulcanized.html`, which will be automatically added to your `<head>` tag. For example, `VULCANIZE=true meteor`, `VULCANIZE=true modulus deploy`.
|
||||||
|
|
||||||
|
- Setting the `CDN_PREFIX` environment variable will prepend the string to the beginning of the file path that is inserted into your HTML's `<head>` tag.
|
||||||
15
rpg-docs/packages/meteor-vulcanize/package.js
Normal file
15
rpg-docs/packages/meteor-vulcanize/package.js
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
Package.describe({
|
||||||
|
name: 'thaum:vulcanize',
|
||||||
|
summary: 'Vulcanize',
|
||||||
|
version: '0.0.5',
|
||||||
|
git: 'https://github.com/Differential/meteor-vulcanize'
|
||||||
|
});
|
||||||
|
|
||||||
|
Package.registerBuildPlugin({
|
||||||
|
name: 'vulcanize',
|
||||||
|
use: [],
|
||||||
|
sources: [
|
||||||
|
'vulcanize.js'
|
||||||
|
],
|
||||||
|
npmDependencies: {'vulcanize': '0.7.11'}
|
||||||
|
});
|
||||||
20
rpg-docs/packages/meteor-vulcanize/versions.json
Normal file
20
rpg-docs/packages/meteor-vulcanize/versions.json
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"dependencies": [
|
||||||
|
[
|
||||||
|
"meteor",
|
||||||
|
"1.1.3"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"underscore",
|
||||||
|
"1.0.1"
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"pluginDependencies": [
|
||||||
|
[
|
||||||
|
"vulcanize",
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"toolVersion": "meteor-tool@1.0.35",
|
||||||
|
"format": "1.0"
|
||||||
|
}
|
||||||
5
rpg-docs/packages/meteor-vulcanize/vulcanize-tests.js
Normal file
5
rpg-docs/packages/meteor-vulcanize/vulcanize-tests.js
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
// Write your tests here!
|
||||||
|
// Here is an example.
|
||||||
|
Tinytest.add('example', function (test) {
|
||||||
|
test.equal(true, true);
|
||||||
|
});
|
||||||
70
rpg-docs/packages/meteor-vulcanize/vulcanize.js
Normal file
70
rpg-docs/packages/meteor-vulcanize/vulcanize.js
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
var vulcan = Npm.require('vulcanize');
|
||||||
|
var crypto = Npm.require('crypto');
|
||||||
|
var url = Npm.require('url');
|
||||||
|
|
||||||
|
var _ = Npm.require('underscore');
|
||||||
|
|
||||||
|
var handler = function(compileStep) {
|
||||||
|
var importsHtml = compileStep.read().toString('utf8');
|
||||||
|
|
||||||
|
if (process.env.VULCANIZE) {
|
||||||
|
log('Vulcanizing imports...');
|
||||||
|
vulcanize(compileStep, importsHtml);
|
||||||
|
} else {
|
||||||
|
log('Adding all imports...');
|
||||||
|
addImports(compileStep, importsHtml);
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
var vulcanize = function(compileStep, importsHtml) {
|
||||||
|
|
||||||
|
var vulcanOutputHandler = function(filename, data) {
|
||||||
|
|
||||||
|
var filenameHash = crypto.createHash('md5').update(data).digest('hex');
|
||||||
|
var filePath = '/vulcanized-' + filenameHash + '.html';
|
||||||
|
|
||||||
|
compileStep.addAsset({
|
||||||
|
path: filePath,
|
||||||
|
data: data
|
||||||
|
});
|
||||||
|
|
||||||
|
if (_.isString(process.env.CDN_PREFIX)) {
|
||||||
|
filePath = url.resolve(process.env.CDN_PREFIX, filePath);
|
||||||
|
}
|
||||||
|
|
||||||
|
compileStep.addHtml({
|
||||||
|
section: 'head',
|
||||||
|
data: '<link rel="import" href="' + filePath + '">'
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
vulcan.setOptions({
|
||||||
|
inputSrc: importsHtml,
|
||||||
|
outputHandler: vulcanOutputHandler,
|
||||||
|
abspath: 'public',
|
||||||
|
strip: true
|
||||||
|
}, function(error) {
|
||||||
|
if (error) {
|
||||||
|
log(error);
|
||||||
|
} else {
|
||||||
|
vulcan.processDocument();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
var addImports = function(compileStep, importsHtml) {
|
||||||
|
compileStep.addHtml({
|
||||||
|
section: 'head',
|
||||||
|
data: importsHtml
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
var log = function() {
|
||||||
|
args = _.values(arguments);
|
||||||
|
args.unshift("Vulcanize:");
|
||||||
|
console.log.apply(this, args);
|
||||||
|
};
|
||||||
|
|
||||||
|
Plugin.registerSourceHandler("imports.html", handler);
|
||||||
8
rpg-docs/packages/useraccounts-polymer-1.0/.travis.yml
vendored
Normal file
8
rpg-docs/packages/useraccounts-polymer-1.0/.travis.yml
vendored
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
sudo: required
|
||||||
|
language: node_js
|
||||||
|
node_js:
|
||||||
|
- "0.10"
|
||||||
|
before_install:
|
||||||
|
- "curl -L http://git.io/ejPSng | /bin/sh"
|
||||||
|
env:
|
||||||
|
- TEST_COMMAND=meteor
|
||||||
21
rpg-docs/packages/useraccounts-polymer-1.0/LICENSE
vendored
Normal file
21
rpg-docs/packages/useraccounts-polymer-1.0/LICENSE
vendored
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2014 splendido
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
48
rpg-docs/packages/useraccounts-polymer-1.0/README.md
vendored
Normal file
48
rpg-docs/packages/useraccounts-polymer-1.0/README.md
vendored
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
[](https://travis-ci.org/meteor-useraccounts/polymer)
|
||||||
|
useraccounts:polymer
|
||||||
|
=====================================
|
||||||
|
|
||||||
|
WORK IN PROGRESS - let us know about any problem you might encounter ;)
|
||||||
|
|
||||||
|
## TODOs
|
||||||
|
|
||||||
|
Add the following input types:
|
||||||
|
|
||||||
|
- checkbox input
|
||||||
|
- select input
|
||||||
|
- radio input
|
||||||
|
|
||||||
|
Find the proper solution for inheriting AT events for paper-button elements
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
This package depends on [useraccounts:core](https://atmospherejs.com/useraccounts/core)
|
||||||
|
|
||||||
|
Learn more [here](http://useraccounts.meteor.com) or have a look at the full [documentation](https://github.com/meteor-useraccounts/core).
|
||||||
|
|
||||||
|
|
||||||
|
## Bring Your Own Polymer
|
||||||
|
|
||||||
|
Adding this package with `meteor add useraccounts:polymer` does not add any other packages providing Polymer .This is to let you choose the flavour you prefer! Or using an Atmosphere package, or straight up with bower!
|
||||||
|
|
||||||
|
|
||||||
|
## ADD theses imports manually
|
||||||
|
|
||||||
|
This package does not automatically add the imports for the elements needed. If you don't have them imported already you should copy/paste these imports :
|
||||||
|
|
||||||
|
```HTML
|
||||||
|
|
||||||
|
<link rel="import" href="bower_components/paper-input/paper-input.html">
|
||||||
|
<link rel="import" href="bower_components/paper-button/paper-button.html">
|
||||||
|
<link rel="import" href="bower_components/paper-checkbox/paper-checkbox.html">
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
|
||||||
|
Anyone is welcome to contribute. Fork, make your changes, and then submit a pull request.
|
||||||
|
|
||||||
|
Thanks to all those who have contributed code changes to [this package](https://github.com/meteor-useraccounts/unstyled/graphs/contributors) as well as to the [core package](https://github.com/meteor-useraccounts/core/graphs/contributors) and all who have helped by submitting bug reports and feature ideas.
|
||||||
7
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_error.html
vendored
Normal file
7
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_error.html
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
<template name="atError">
|
||||||
|
<div class="at-error" horizontal center-justified layout>
|
||||||
|
{{#each error}}
|
||||||
|
<p>{{errorText}}</p>
|
||||||
|
{{/each}}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
2
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_error.js
vendored
Normal file
2
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_error.js
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atError.helpers(AccountsTemplates.atErrorHelpers);
|
||||||
39
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_form.html
vendored
Normal file
39
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_form.html
vendored
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
<template name="atForm">
|
||||||
|
{{#unless hide}}
|
||||||
|
<div class="at-form">
|
||||||
|
{{#if showTitle}}
|
||||||
|
{{> atTitle}}
|
||||||
|
{{/if}}
|
||||||
|
{{#if showOauthServices}}
|
||||||
|
{{> atOauth}}
|
||||||
|
{{/if}}
|
||||||
|
{{#if showServicesSeparator}}
|
||||||
|
{{> atSep}}
|
||||||
|
{{/if}}
|
||||||
|
{{#if showError}}
|
||||||
|
{{> atError}}
|
||||||
|
{{/if}}
|
||||||
|
{{#if showResult}}
|
||||||
|
{{> atResult}}
|
||||||
|
{{/if}}
|
||||||
|
{{#if showMessage}}
|
||||||
|
{{> atMessage}}
|
||||||
|
{{/if}}
|
||||||
|
{{#if showPwdForm}}
|
||||||
|
{{> atPwdForm}}
|
||||||
|
{{/if}}
|
||||||
|
{{#if showTermsLink}}
|
||||||
|
{{> atTermsLink}}
|
||||||
|
{{/if}}
|
||||||
|
{{#if showSignInLink}}
|
||||||
|
{{> atSigninLink}}
|
||||||
|
{{/if}}
|
||||||
|
{{#if showSignUpLink}}
|
||||||
|
{{> atSignupLink}}
|
||||||
|
{{/if}}
|
||||||
|
{{#if showResendVerificationEmailLink}}
|
||||||
|
{{> atResendVerificationEmailLink}}
|
||||||
|
{{/if}}
|
||||||
|
</div>
|
||||||
|
{{/unless}}
|
||||||
|
</template>
|
||||||
2
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_form.js
vendored
Normal file
2
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_form.js
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atForm.helpers(AccountsTemplates.atFormHelpers);
|
||||||
81
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_input.html
vendored
Normal file
81
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_input.html
vendored
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
<template name="atInput">
|
||||||
|
{{> Template.dynamic template=templateName}}
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template name="atTextInput">
|
||||||
|
<div class="at-input pure-control-group{{#if isValidating}}validating{{/if}} {{#if hasError}}has-error{{/if}} {{#if hasSuccess}}has-success{{/if}} {{#if feedback}}has-feedback{{/if}}">
|
||||||
|
<!-- {{#if showLabels}}
|
||||||
|
<label for="at-field-{{_id}}">
|
||||||
|
{{displayName}} {{#unless required}}{{optionalText}}{{/unless}}
|
||||||
|
</label>
|
||||||
|
{{/if}}
|
||||||
|
<input type="{{type}}" id="at-field-{{_id}}" name="at-field-{{_id}}" placeholder="{{placeholder}}" autocapitalize="none" autocorrect="off">
|
||||||
|
{{#if hasIcon}}
|
||||||
|
<span class="{{iconClass}}"></span>
|
||||||
|
{{/if}}
|
||||||
|
{{#if hasError}}
|
||||||
|
<span>{{errorText}}</span>
|
||||||
|
{{/if}}
|
||||||
|
</div> -->
|
||||||
|
|
||||||
|
{{#if showLabels}}
|
||||||
|
<paper-input-decorator label=" {{displayName}} {{#unless required}}{{optionalText}}{{/unless}}" error="{{errorText}}" floatinglabel="" layout="" vertical="" isInvalid="{{#if hasError}} true {{/if}}">
|
||||||
|
<input type="{{type}}" id="at-field-{{_id}}" is="core-input" name="at-field-{{_id}}" placeholder="{{placeholder}}" autocapitalize="none" autocorrect="off">
|
||||||
|
</paper-input-decorator>
|
||||||
|
{{else}}
|
||||||
|
|
||||||
|
<paper-input-decorator error="{{errorText}}" isInvalid="{{#if hasError}} true {{/if}}">
|
||||||
|
<input type="{{type}}" id="at-field-{{_id}}" is="core-input" name="at-field-{{_id}}" placeholder="{{placeholder}}" autocapitalize="none" autocorrect="off">
|
||||||
|
</paper-input-decorator>
|
||||||
|
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
|
{{#if hasIcon}}
|
||||||
|
<core-icon icon="{{iconClass}}"></core-icon>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<template name="atCheckboxInput">
|
||||||
|
<div class="at-input">
|
||||||
|
<core-label horizontal layout>
|
||||||
|
<div flex>{{displayName}}</div>
|
||||||
|
<paper-checkbox type="{{type}}" id="at-field-{{_id}}" name="at-field-{{_id}}" {{disabled}} for></paper-checkbox>
|
||||||
|
</core-label>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template name="atSelectInput">
|
||||||
|
<div class="at-input">
|
||||||
|
<core-label>
|
||||||
|
<div for="at-field-{{_id}}">{{displayName}}</div>
|
||||||
|
<core-selector id="at-field-{{_id}}" name="at-field-{{_id}}" valueattr="value" for horizontal layout center justified>
|
||||||
|
{{#each values}}
|
||||||
|
<div value="{{value}}">{{text}}</div>
|
||||||
|
{{/each}}
|
||||||
|
</core-selector>
|
||||||
|
</core-label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template name="atRadioInput">
|
||||||
|
<div class="at-input">
|
||||||
|
<label>{{displayName}}</label>
|
||||||
|
</div>
|
||||||
|
<paper-radio-group role="radiogroup" vertical layout>
|
||||||
|
{{#each values}}
|
||||||
|
<paper-radio-button id="at-field-{{id}}-choice-{{value}}" name="t-field-{{id}}" label="{{text}}" value={{value}} toggles role="radio" tabindex="0" aria-checked="true" aria-label="{{text}}" class="core-selected"></paper-radio-button>
|
||||||
|
{{/each}}
|
||||||
|
</paper-radio-group>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template name="atHiddenInput">
|
||||||
|
<input type="hidden" id="at-field-{{_id}}" name="at-field-{{_id}}">
|
||||||
|
</template>
|
||||||
25
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_input.js
vendored
Normal file
25
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_input.js
vendored
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
_.each(AccountsTemplates.atInputRendered, function(callback){
|
||||||
|
Template.atInput.onRendered(callback);
|
||||||
|
Template.atHiddenInput.onRendered(callback);
|
||||||
|
});
|
||||||
|
|
||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atInput.helpers(AccountsTemplates.atInputHelpers);
|
||||||
|
|
||||||
|
// Simply 'inherites' events from AccountsTemplates
|
||||||
|
Template.atInput.events(AccountsTemplates.atInputEvents);
|
||||||
|
|
||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atTextInput.helpers(AccountsTemplates.atInputHelpers);
|
||||||
|
|
||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atCheckboxInput.helpers(AccountsTemplates.atInputHelpers);
|
||||||
|
|
||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atSelectInput.helpers(AccountsTemplates.atInputHelpers);
|
||||||
|
|
||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atRadioInput.helpers(AccountsTemplates.atInputHelpers);
|
||||||
|
|
||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atHiddenInput.helpers(AccountsTemplates.atInputHelpers);
|
||||||
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_message.html
vendored
Normal file
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_message.html
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<template name="atMessage">
|
||||||
|
<div class="at-message">
|
||||||
|
{{message}}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
2
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_message.js
vendored
Normal file
2
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_message.js
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atMessage.helpers(AccountsTemplates.atMessageHelpers);
|
||||||
4
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_nav_button.html
vendored
Normal file
4
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_nav_button.html
vendored
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
<template name="atNavButton">
|
||||||
|
<!-- <a id="at-nav-button">{{text}}</a> -->
|
||||||
|
<paper-button id="at-nav-button" raised>{{text}}</paper-button>
|
||||||
|
</template>
|
||||||
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_nav_button.js
vendored
Normal file
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_nav_button.js
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atNavButton.helpers(AccountsTemplates.atNavButtonHelpers);
|
||||||
|
|
||||||
|
// Simply 'inherites' events from AccountsTemplates
|
||||||
|
Template.atNavButton.events(AccountsTemplates.atNavButtonEvents);
|
||||||
7
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_oauth.html
vendored
Normal file
7
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_oauth.html
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
<template name="atOauth">
|
||||||
|
<div class="at-oauth" horizontal center-justified layout>
|
||||||
|
{{#each oauthService}}
|
||||||
|
{{> atSocial}}
|
||||||
|
{{/each}}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
2
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_oauth.js
vendored
Normal file
2
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_oauth.js
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atOauth.helpers(AccountsTemplates.atOauthHelpers);
|
||||||
168
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_polymer.css
vendored
Normal file
168
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_polymer.css
vendored
Normal file
@@ -0,0 +1,168 @@
|
|||||||
|
.fullPageAtForm {
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
.at-form {
|
||||||
|
float: none;
|
||||||
|
margin: auto;
|
||||||
|
overflow: auto;
|
||||||
|
margin-top: 20px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
border-radius: 10px;
|
||||||
|
padding: 15px;
|
||||||
|
}
|
||||||
|
.at-form p {
|
||||||
|
font-size: 15px;
|
||||||
|
line-height: 20px;
|
||||||
|
}
|
||||||
|
.at-title h3 {
|
||||||
|
margin-top: 0px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 18px;
|
||||||
|
font-weight: 800;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.at-link.disabled {
|
||||||
|
color: #444;
|
||||||
|
}
|
||||||
|
.at-signin-link {
|
||||||
|
margin-top: 20px;
|
||||||
|
margin-bottom: 30px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.at-error,
|
||||||
|
.at-result {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.at-error {
|
||||||
|
background-color: #FFF0F0;
|
||||||
|
}
|
||||||
|
.at-error p {
|
||||||
|
width: 100%;
|
||||||
|
color: #A94442;
|
||||||
|
}
|
||||||
|
.at-oauth {
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
.at-btn {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
margin: auto;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
padding: 8px 10px;
|
||||||
|
border-radius: 5px;
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn core-icon {
|
||||||
|
float: left;
|
||||||
|
width: 40px;
|
||||||
|
font-size: 20px;
|
||||||
|
margin-top: 1px;
|
||||||
|
padding-right: 15px;
|
||||||
|
padding-left: 5px;
|
||||||
|
border-right: 1px solid rgba(0, 0, 0, 0.2);
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-facebook {
|
||||||
|
background: #3B5998;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-facebook.disabled {
|
||||||
|
color: #ddd;
|
||||||
|
background: #666666;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-facebook:hover {
|
||||||
|
background: #2C4780;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-linkedin {
|
||||||
|
background: #338AB0;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-linkedin.disabled {
|
||||||
|
color: #ddd;
|
||||||
|
background: #666666;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-linkedin:hover {
|
||||||
|
background: #0571A6;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-twitter {
|
||||||
|
background: #4099FF;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-twitter.disabled {
|
||||||
|
color: #ddd;
|
||||||
|
background: #666666;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-twitter:hover {
|
||||||
|
background: #3288EB;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-google {
|
||||||
|
background: #db5a3c;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-google.disabled {
|
||||||
|
color: #ddd;
|
||||||
|
background: #666666;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-google:hover {
|
||||||
|
background: #CA4C2E;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-github {
|
||||||
|
background: #666;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-github.disabled {
|
||||||
|
color: #ddd;
|
||||||
|
background: #666666;
|
||||||
|
}
|
||||||
|
paper-button.at-social-btn#at-github:hover {
|
||||||
|
background: #555;
|
||||||
|
}
|
||||||
|
.at-sep {
|
||||||
|
text-align: center;
|
||||||
|
position: relative;
|
||||||
|
overflow: hidden;
|
||||||
|
margin-bottom: 15px;
|
||||||
|
}
|
||||||
|
.at-sep:before,
|
||||||
|
.at-sep:after {
|
||||||
|
display: block;
|
||||||
|
content: " ";
|
||||||
|
border-bottom: 1px solid #ddd;
|
||||||
|
width: 100%;
|
||||||
|
position: absolute;
|
||||||
|
top: 48%;
|
||||||
|
}
|
||||||
|
.at-sep:before {
|
||||||
|
left: -60%;
|
||||||
|
}
|
||||||
|
.at-sep:after {
|
||||||
|
right: -60%;
|
||||||
|
}
|
||||||
|
.at-input.validating * {
|
||||||
|
cursor: progress;
|
||||||
|
}
|
||||||
|
.at-pwd-form > form {
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
.at-pwd-form > form label {
|
||||||
|
margin-bottom: 5px;
|
||||||
|
font-weight: 500;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
#at-btn {
|
||||||
|
font-size: 16px;
|
||||||
|
padding: 10px 12px;
|
||||||
|
margin-top: 30px;
|
||||||
|
}
|
||||||
|
.at-signup-link {
|
||||||
|
margin-top: 20px;
|
||||||
|
margin-bottom: 30px;
|
||||||
|
}
|
||||||
|
.at-terms-link {
|
||||||
|
text-align: center;
|
||||||
|
margin-top: 20px;
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
16
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_pwd_form.html
vendored
Normal file
16
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_pwd_form.html
vendored
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
<template name="atPwdForm">
|
||||||
|
<div class="at-pwd-form">
|
||||||
|
<form role="form" id="at-pwd-form" class="{{disabled}} pure-form pure-form-aligned" novalidate action="#" method="POST">
|
||||||
|
{{#each fields}}
|
||||||
|
{{> atInput}}
|
||||||
|
{{/each}}
|
||||||
|
{{#if showReCaptcha}}
|
||||||
|
{{> atReCaptcha}}
|
||||||
|
{{/if}}
|
||||||
|
{{#if showForgotPasswordLink}}
|
||||||
|
{{> atPwdLink}}
|
||||||
|
{{/if}}
|
||||||
|
{{> atPwdFormBtn}}
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_pwd_form.js
vendored
Normal file
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_pwd_form.js
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atPwdForm.helpers(AccountsTemplates.atPwdFormHelpers);
|
||||||
|
|
||||||
|
// Simply 'inherites' events from AccountsTemplates
|
||||||
|
Template.atPwdForm.events(AccountsTemplates.atPwdFormEvents);
|
||||||
8
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_pwd_form_btn.html
vendored
Normal file
8
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_pwd_form_btn.html
vendored
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<template name="atPwdFormBtn">
|
||||||
|
<div horizontal layout center-justified>
|
||||||
|
<button type="submit" id="at-btn" hidden></button>
|
||||||
|
<paper-button class="at-btn submit {{submitDisabled}}" role="button" id="at-btn-polymer" raised>
|
||||||
|
{{buttonText}}
|
||||||
|
</paper-button>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
10
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_pwd_form_btn.js
vendored
Normal file
10
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_pwd_form_btn.js
vendored
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atPwdFormBtn.helpers(AccountsTemplates.atPwdFormBtnHelpers);
|
||||||
|
|
||||||
|
|
||||||
|
Template.atPwdFormBtn.events = {
|
||||||
|
'click #at-btn-polymer': function(event,template) {
|
||||||
|
event.preventDefault();
|
||||||
|
template.find('button[type=submit]').click();
|
||||||
|
}
|
||||||
|
};
|
||||||
9
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_pwd_link.html
vendored
Normal file
9
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_pwd_link.html
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<template name="atPwdLink">
|
||||||
|
<div class="at-pwd-link" horizontal layout center-justified>
|
||||||
|
<p>
|
||||||
|
{{preText}}
|
||||||
|
<a href="{{forgotPwdLink}}" id="at-forgotPwd" class="at-link at-pwd {{disabled}}">{{linkText}}</a>
|
||||||
|
{{suffText}}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_pwd_link.js
vendored
Normal file
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_pwd_link.js
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atPwdLink.helpers(AccountsTemplates.atPwdLinkHelpers);
|
||||||
|
|
||||||
|
// Simply 'inherites' events from AccountsTemplates
|
||||||
|
Template.atPwdLink.events(AccountsTemplates.atPwdLinkEvents);
|
||||||
3
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_reCaptcha.html
vendored
Normal file
3
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_reCaptcha.html
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<template name="atReCaptcha">
|
||||||
|
<div class="g-recaptcha" data-sitekey='{{key}}' data-theme='{{theme}}' data-type='{{data_type}}'></div>
|
||||||
|
</template>
|
||||||
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_reCaptcha.js
vendored
Normal file
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_reCaptcha.js
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
// Simply 'inherites' rendered callback from AccountsTemplates
|
||||||
|
Template.atReCaptcha.rendered = AccountsTemplates.atReCaptchaRendered;
|
||||||
|
|
||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atReCaptcha.helpers(AccountsTemplates.atReCaptchaHelpers);
|
||||||
8
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_resend_verification_email_link.html
vendored
Normal file
8
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_resend_verification_email_link.html
vendored
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<template name="atResendVerificationEmailLink">
|
||||||
|
<div class="at-resend-verification-email-link at-wrap" horizontal center-justified layout>
|
||||||
|
<p>
|
||||||
|
<a href="{{resendVerificationEmailLink}}" id="at-resend-verification-email" class="at-link at-resend-verification-email {{disabled}}">{{linkText}}</a>
|
||||||
|
{{suffText}}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_resend_verification_email_link.js
vendored
Normal file
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_resend_verification_email_link.js
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atResendVerificationEmailLink.helpers(AccountsTemplates.atResendVerificationEmailLinkHelpers);
|
||||||
|
|
||||||
|
// Simply 'inherites' events from AccountsTemplates
|
||||||
|
Template.atResendVerificationEmailLink.events(AccountsTemplates.atResendVerificationEmailLinkEvents);
|
||||||
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_result.html
vendored
Normal file
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_result.html
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<template name="atResult">
|
||||||
|
<div class="at-result">
|
||||||
|
{{result}}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
2
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_result.js
vendored
Normal file
2
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_result.js
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atResult.helpers(AccountsTemplates.atResultHelpers);
|
||||||
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_sep.html
vendored
Normal file
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_sep.html
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<template name="atSep">
|
||||||
|
<div class="at-sep" horizontal center-justified layout>
|
||||||
|
<strong>{{sepText}}</strong>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
2
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_sep.js
vendored
Normal file
2
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_sep.js
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atSep.helpers(AccountsTemplates.atSepHelpers);
|
||||||
9
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_signin_link.html
vendored
Normal file
9
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_signin_link.html
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<template name="atSigninLink">
|
||||||
|
<div class="at-signin-link" horizontal center-justified layout>
|
||||||
|
<p>
|
||||||
|
{{preText}}
|
||||||
|
<a href="{{signInLink}}" id="at-signIn" class="at-link at-signin {{disabled}}">{{linkText}}</a>
|
||||||
|
{{suffText}}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_signin_link.js
vendored
Normal file
5
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_signin_link.js
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
// Simply 'inherites' helpers from AccountsTemplates
|
||||||
|
Template.atSigninLink.helpers(AccountsTemplates.atSigninLinkHelpers);
|
||||||
|
|
||||||
|
// Simply 'inherites' events from AccountsTemplates
|
||||||
|
Template.atSigninLink.events(AccountsTemplates.atSigninLinkEvents);
|
||||||
9
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_signup_link.html
vendored
Normal file
9
rpg-docs/packages/useraccounts-polymer-1.0/lib/at_signup_link.html
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<template name="atSignupLink">
|
||||||
|
<div class="at-signup-link" horizontal center-justified layout>
|
||||||
|
<p>
|
||||||
|
{{preText}}
|
||||||
|
<a href="{{signUpLink}}" id="at-signUp" class="at-link at-signup {{disabled}}">{{linkText}}</a>
|
||||||
|
{{suffText}}
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user