Compare commits
17 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ee1b876259 | ||
|
|
12fbca5c78 | ||
|
|
da6fb55ca0 | ||
|
|
8551e318c2 | ||
|
|
f175cffab8 | ||
|
|
2bca582af6 | ||
|
|
5815c7ca34 | ||
|
|
c237162475 | ||
|
|
e87772c2a3 | ||
|
|
704314a7eb | ||
|
|
7ffd0bf61d | ||
|
|
69b3ba781d | ||
|
|
bf8eb52a96 | ||
|
|
684d672028 | ||
|
|
fb98544ae1 | ||
|
|
ec8b9c209c | ||
|
|
bee90a7a80 |
@@ -83,13 +83,13 @@ export function resetProperties(creatureId, resetFilter, actionContext) {
|
|||||||
const attributeFilter = {
|
const attributeFilter = {
|
||||||
...filter,
|
...filter,
|
||||||
type: 'attribute',
|
type: 'attribute',
|
||||||
damage: { $ne: 0 },
|
damage: { $nin: [0, undefined] },
|
||||||
}
|
}
|
||||||
CreatureProperties.find(attributeFilter).forEach(prop => {
|
CreatureProperties.find(attributeFilter).forEach(prop => {
|
||||||
damagePropertyWork({
|
damagePropertyWork({
|
||||||
prop,
|
prop,
|
||||||
operation: 'increment',
|
operation: 'increment',
|
||||||
value: -prop.damage,
|
value: -prop.damage ?? 0,
|
||||||
actionContext,
|
actionContext,
|
||||||
logFunction(increment) {
|
logFunction(increment) {
|
||||||
actionContext.addLog({
|
actionContext.addLog({
|
||||||
@@ -105,7 +105,7 @@ export function resetProperties(creatureId, resetFilter, actionContext) {
|
|||||||
type: {
|
type: {
|
||||||
$in: ['action', 'spell']
|
$in: ['action', 'spell']
|
||||||
},
|
},
|
||||||
usesUsed: { $ne: 0 },
|
usesUsed: { $nin: [0, undefined] },
|
||||||
};
|
};
|
||||||
CreatureProperties.find(actionFilter, {
|
CreatureProperties.find(actionFilter, {
|
||||||
fields: { name: 1, usesUsed: 1 }
|
fields: { name: 1, usesUsed: 1 }
|
||||||
|
|||||||
@@ -39,17 +39,6 @@ export default {
|
|||||||
|
|
||||||
.column-layout>div,
|
.column-layout>div,
|
||||||
.column-layout>span>div {
|
.column-layout>span>div {
|
||||||
/*
|
|
||||||
Table and width set because firefox does not support break-inside: avoid
|
|
||||||
*/
|
|
||||||
display: table;
|
|
||||||
table-layout: fixed;
|
|
||||||
width: 100%;
|
|
||||||
backface-visibility: hidden;
|
|
||||||
-webkit-backface-visibility: hidden;
|
|
||||||
transform: translateX(0);
|
|
||||||
-webkit-transform: translateX(0);
|
|
||||||
-webkit-column-break-inside: avoid;
|
|
||||||
page-break-inside: avoid;
|
page-break-inside: avoid;
|
||||||
break-inside: avoid;
|
break-inside: avoid;
|
||||||
padding: 4px;
|
padding: 4px;
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
<v-icon
|
<v-icon
|
||||||
class="handle"
|
class="handle"
|
||||||
v-bind="$attrs"
|
v-bind="$attrs"
|
||||||
@click.stop="() => { }"
|
@click.native="e => { }"
|
||||||
@touchstart.native.stop="() => { }"
|
@touchstart.native.stop="e => { }"
|
||||||
@touchend.native="portalEvent"
|
@touchend.native="portalEvent"
|
||||||
>
|
>
|
||||||
mdi-drag
|
mdi-drag
|
||||||
|
|||||||
@@ -218,30 +218,30 @@ export default {
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
changeShowTreeTab(value) {
|
changeShowTreeTab(value) {
|
||||||
|
let currentTab = this.$store.getters.tabNameById(this.model._id);
|
||||||
|
if (!value && currentTab === 'tree') {
|
||||||
|
this.$store.commit(
|
||||||
|
'setTabForCharacterSheet',
|
||||||
|
{ id: this.model._id, tab: 'build' }
|
||||||
|
);
|
||||||
|
}
|
||||||
this.$emit('change', {
|
this.$emit('change', {
|
||||||
path: ['settings', 'showTreeTab'],
|
path: ['settings', 'showTreeTab'],
|
||||||
value: !!value
|
value: !!value
|
||||||
});
|
});
|
||||||
let currentTab = this.$store.getters.tabById(this.model._id);
|
|
||||||
if (!value && currentTab === 5) {
|
|
||||||
this.$store.commit(
|
|
||||||
'setTabForCharacterSheet',
|
|
||||||
{ id: this.model._id, tab: 4 }
|
|
||||||
);
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
changeHideSpellsTab(value) {
|
changeHideSpellsTab(value) {
|
||||||
|
let currentTab = this.$store.getters.tabNameById(this.model._id);
|
||||||
|
if (!value && currentTab === 'spells') {
|
||||||
|
this.$store.commit(
|
||||||
|
'setTabForCharacterSheet',
|
||||||
|
{ id: this.model._id, tab: 'actions' }
|
||||||
|
);
|
||||||
|
}
|
||||||
this.$emit('change', {
|
this.$emit('change', {
|
||||||
path: ['settings', 'hideSpellsTab'],
|
path: ['settings', 'hideSpellsTab'],
|
||||||
value: !value
|
value: !value
|
||||||
});
|
});
|
||||||
let currentTab = this.$store.getters.tabById(this.model._id);
|
|
||||||
if (!value && currentTab === 3) {
|
|
||||||
this.$store.commit(
|
|
||||||
'setTabForCharacterSheet',
|
|
||||||
{ id: this.model._id, tab: 4 }
|
|
||||||
);
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
allUserLibrariesChange(value, ack) {
|
allUserLibrariesChange(value, ack) {
|
||||||
toggleAllUserLibraries.call({
|
toggleAllUserLibraries.call({
|
||||||
|
|||||||
@@ -195,7 +195,7 @@ export default {
|
|||||||
} else {
|
} else {
|
||||||
this.$store.commit(
|
this.$store.commit(
|
||||||
'setTabForCharacterSheet',
|
'setTabForCharacterSheet',
|
||||||
{id: creatureId, tab: 5}
|
{id: creatureId, tab: 'build'}
|
||||||
);
|
);
|
||||||
this.$emit('pop', creatureId);
|
this.$emit('pop', creatureId);
|
||||||
defer(() => {
|
defer(() => {
|
||||||
|
|||||||
@@ -47,9 +47,6 @@
|
|||||||
<v-tab-item>
|
<v-tab-item>
|
||||||
<stats-tab :creature-id="creatureId" />
|
<stats-tab :creature-id="creatureId" />
|
||||||
</v-tab-item>
|
</v-tab-item>
|
||||||
<v-tab-item>
|
|
||||||
<features-tab :creature-id="creatureId" />
|
|
||||||
</v-tab-item>
|
|
||||||
<v-tab-item>
|
<v-tab-item>
|
||||||
<actions-tab :creature-id="creatureId" />
|
<actions-tab :creature-id="creatureId" />
|
||||||
</v-tab-item>
|
</v-tab-item>
|
||||||
@@ -59,6 +56,9 @@
|
|||||||
<v-tab-item>
|
<v-tab-item>
|
||||||
<inventory-tab :creature-id="creatureId" />
|
<inventory-tab :creature-id="creatureId" />
|
||||||
</v-tab-item>
|
</v-tab-item>
|
||||||
|
<v-tab-item>
|
||||||
|
<features-tab :creature-id="creatureId" />
|
||||||
|
</v-tab-item>
|
||||||
<v-tab-item>
|
<v-tab-item>
|
||||||
<character-tab :creature-id="creatureId" />
|
<character-tab :creature-id="creatureId" />
|
||||||
</v-tab-item>
|
</v-tab-item>
|
||||||
@@ -96,10 +96,6 @@
|
|||||||
<span>Stats</span>
|
<span>Stats</span>
|
||||||
<v-icon>mdi-chart-box</v-icon>
|
<v-icon>mdi-chart-box</v-icon>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
<v-btn>
|
|
||||||
<span>Features</span>
|
|
||||||
<v-icon>mdi-text</v-icon>
|
|
||||||
</v-btn>
|
|
||||||
<v-btn>
|
<v-btn>
|
||||||
<span>Actions</span>
|
<span>Actions</span>
|
||||||
<v-icon>mdi-lightning-bolt</v-icon>
|
<v-icon>mdi-lightning-bolt</v-icon>
|
||||||
@@ -112,6 +108,10 @@
|
|||||||
<span>Inventory</span>
|
<span>Inventory</span>
|
||||||
<v-icon>mdi-cube</v-icon>
|
<v-icon>mdi-cube</v-icon>
|
||||||
</v-btn>
|
</v-btn>
|
||||||
|
<v-btn>
|
||||||
|
<span>Features</span>
|
||||||
|
<v-icon>mdi-text</v-icon>
|
||||||
|
</v-btn>
|
||||||
<v-btn>
|
<v-btn>
|
||||||
<span>Journal</span>
|
<span>Journal</span>
|
||||||
<v-icon>mdi-book-open-variant</v-icon>
|
<v-icon>mdi-book-open-variant</v-icon>
|
||||||
|
|||||||
@@ -101,9 +101,6 @@
|
|||||||
<v-tab>
|
<v-tab>
|
||||||
Stats
|
Stats
|
||||||
</v-tab>
|
</v-tab>
|
||||||
<v-tab>
|
|
||||||
Features
|
|
||||||
</v-tab>
|
|
||||||
<v-tab>
|
<v-tab>
|
||||||
Actions
|
Actions
|
||||||
</v-tab>
|
</v-tab>
|
||||||
@@ -113,6 +110,9 @@
|
|||||||
<v-tab>
|
<v-tab>
|
||||||
Inventory
|
Inventory
|
||||||
</v-tab>
|
</v-tab>
|
||||||
|
<v-tab>
|
||||||
|
Features
|
||||||
|
</v-tab>
|
||||||
<v-tab>
|
<v-tab>
|
||||||
Journal
|
Journal
|
||||||
</v-tab>
|
</v-tab>
|
||||||
|
|||||||
@@ -61,6 +61,7 @@ export default {
|
|||||||
const folderIds = CreatureProperties.find({
|
const folderIds = CreatureProperties.find({
|
||||||
'ancestors.id': this.creatureId,
|
'ancestors.id': this.creatureId,
|
||||||
type: 'folder',
|
type: 'folder',
|
||||||
|
groupStats: true,
|
||||||
hideStatsGroup: true,
|
hideStatsGroup: true,
|
||||||
removed: { $ne: true },
|
removed: { $ne: true },
|
||||||
inactive: { $ne: true },
|
inactive: { $ne: true },
|
||||||
|
|||||||
@@ -59,6 +59,7 @@ export default {
|
|||||||
const folderIds = CreatureProperties.find({
|
const folderIds = CreatureProperties.find({
|
||||||
'ancestors.id': this.creatureId,
|
'ancestors.id': this.creatureId,
|
||||||
type: 'folder',
|
type: 'folder',
|
||||||
|
groupStats: true,
|
||||||
hideStatsGroup: true,
|
hideStatsGroup: true,
|
||||||
removed: { $ne: true },
|
removed: { $ne: true },
|
||||||
inactive: { $ne: true },
|
inactive: { $ne: true },
|
||||||
|
|||||||
@@ -145,6 +145,7 @@ export default {
|
|||||||
return CreatureProperties.find({
|
return CreatureProperties.find({
|
||||||
'ancestors.id': this.creatureId,
|
'ancestors.id': this.creatureId,
|
||||||
type: 'folder',
|
type: 'folder',
|
||||||
|
groupStats: true,
|
||||||
hideStatsGroup: true,
|
hideStatsGroup: true,
|
||||||
removed: { $ne: true },
|
removed: { $ne: true },
|
||||||
inactive: { $ne: true },
|
inactive: { $ne: true },
|
||||||
|
|||||||
@@ -63,6 +63,7 @@ export default {
|
|||||||
const folderIds = CreatureProperties.find({
|
const folderIds = CreatureProperties.find({
|
||||||
'ancestors.id': this.creatureId,
|
'ancestors.id': this.creatureId,
|
||||||
type: 'folder',
|
type: 'folder',
|
||||||
|
groupStats: true,
|
||||||
hideStatsGroup: true,
|
hideStatsGroup: true,
|
||||||
removed: { $ne: true },
|
removed: { $ne: true },
|
||||||
inactive: { $ne: true },
|
inactive: { $ne: true },
|
||||||
|
|||||||
@@ -81,6 +81,7 @@ export default {
|
|||||||
return CreatureProperties.find({
|
return CreatureProperties.find({
|
||||||
'ancestors.id': this.creatureId,
|
'ancestors.id': this.creatureId,
|
||||||
type: 'folder',
|
type: 'folder',
|
||||||
|
groupStats: true,
|
||||||
hideStatsGroup: true,
|
hideStatsGroup: true,
|
||||||
removed: { $ne: true },
|
removed: { $ne: true },
|
||||||
inactive: { $ne: true },
|
inactive: { $ne: true },
|
||||||
|
|||||||
@@ -427,10 +427,10 @@ const propertyHandlers = {
|
|||||||
folder(prop) {
|
folder(prop) {
|
||||||
let skipChildren;
|
let skipChildren;
|
||||||
let propPath = null;
|
let propPath = null;
|
||||||
if (prop.hideStatsGroup) {
|
if (prop.groupStats && prop.hideStatsGroup) {
|
||||||
skipChildren = true;
|
skipChildren = true;
|
||||||
}
|
}
|
||||||
if (prop.tab === 'stats') {
|
if (prop.groupStats && prop.tab === 'stats') {
|
||||||
propPath = ['folder', prop.location]
|
propPath = ['folder', prop.location]
|
||||||
}
|
}
|
||||||
return { skipChildren, propPath }
|
return { skipChildren, propPath }
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<template lang="html">
|
<template lang="html">
|
||||||
<v-list-item-content style="min-height: 60px;">
|
<v-list-item-content :style="dense ? undefined : 'min-height: 60px;'">
|
||||||
<v-list-item-title class="d-flex align-center">
|
<v-list-item-title class="d-flex align-center">
|
||||||
<div
|
<div
|
||||||
v-if="!renaming"
|
v-if="!renaming"
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
<template lang="html">
|
<template lang="html">
|
||||||
<v-list
|
<v-list
|
||||||
expand
|
expand
|
||||||
|
:nav="nav"
|
||||||
|
:dense="dense"
|
||||||
class="creature-folder-list"
|
class="creature-folder-list"
|
||||||
>
|
>
|
||||||
<creature-list
|
<creature-list
|
||||||
@@ -14,7 +16,7 @@
|
|||||||
v-for="folder in folders"
|
v-for="folder in folders"
|
||||||
:key="folder._id"
|
:key="folder._id"
|
||||||
v-model="openFolders[folder._id]"
|
v-model="openFolders[folder._id]"
|
||||||
group="folder"
|
:dense="dense"
|
||||||
>
|
>
|
||||||
<template #activator>
|
<template #activator>
|
||||||
<creature-folder-header
|
<creature-folder-header
|
||||||
@@ -60,6 +62,7 @@ export default {
|
|||||||
default: undefined,
|
default: undefined,
|
||||||
},
|
},
|
||||||
dense: Boolean,
|
dense: Boolean,
|
||||||
|
nav: Boolean,
|
||||||
},
|
},
|
||||||
data(){return{
|
data(){return{
|
||||||
openFolders: {},
|
openFolders: {},
|
||||||
|
|||||||
@@ -5,10 +5,12 @@
|
|||||||
<v-list-item
|
<v-list-item
|
||||||
v-bind="$attrs"
|
v-bind="$attrs"
|
||||||
:class="isSelected && 'primary--text v-list-item--active'"
|
:class="isSelected && 'primary--text v-list-item--active'"
|
||||||
|
:dense="dense"
|
||||||
v-on="selection ? { click() {$emit('click')} } : {}"
|
v-on="selection ? { click() {$emit('click')} } : {}"
|
||||||
>
|
>
|
||||||
<v-list-item-avatar
|
<v-list-item-avatar
|
||||||
:color="isSelected ? 'red darken-1' : model.color || 'grey'"
|
:color="isSelected ? 'red darken-1' : model.color || 'grey'"
|
||||||
|
:size="dense ? 30 : undefined"
|
||||||
class="white--text"
|
class="white--text"
|
||||||
style="transition: background 0.3s;"
|
style="transition: background 0.3s;"
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -63,21 +63,14 @@
|
|||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
dialogs(newDialogs) {
|
dialogs(newDialogs) {
|
||||||
let el = document.documentElement;
|
const el = document.documentElement;
|
||||||
if (newDialogs.length) {
|
if (newDialogs.length) {
|
||||||
this.top = el.scrollTop;
|
this.top = el.scrollTop;
|
||||||
if (el.scrollHeight > el.clientHeight){
|
if (el.scrollHeight > el.clientHeight){
|
||||||
el.style.position = 'fixed';
|
el.style.overflowY = 'hidden';
|
||||||
el.style.top = `${-this.top}px`;
|
el.scrollTop = this.top;
|
||||||
el.style.left = 0;
|
|
||||||
el.style.right = 0;
|
|
||||||
el.style.overflowY = 'scroll';
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
el.style.position = null;
|
|
||||||
el.style.top = null;
|
|
||||||
el.style.left = null;
|
|
||||||
el.style.right = null;
|
|
||||||
el.style.overflowY = null;
|
el.style.overflowY = null;
|
||||||
el.scrollTop = this.top;
|
el.scrollTop = this.top;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,10 @@
|
|||||||
Sign in
|
Sign in
|
||||||
</v-btn>
|
</v-btn>
|
||||||
</v-layout>
|
</v-layout>
|
||||||
<v-list>
|
<v-list
|
||||||
|
nav
|
||||||
|
class="links"
|
||||||
|
>
|
||||||
<v-list-item v-if="signedIn">
|
<v-list-item v-if="signedIn">
|
||||||
<v-list-item-content>
|
<v-list-item-content>
|
||||||
<v-list-item-title>
|
<v-list-item-title>
|
||||||
@@ -138,3 +141,9 @@ export default {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.links .v-list-item:not(:last-child):not(:only-child) {
|
||||||
|
margin-bottom: 4px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|||||||
@@ -4,7 +4,10 @@
|
|||||||
style="height: 100%"
|
style="height: 100%"
|
||||||
>
|
>
|
||||||
<v-container>
|
<v-container>
|
||||||
<v-row justify="center">
|
<v-row
|
||||||
|
justify="center"
|
||||||
|
class="mb-16"
|
||||||
|
>
|
||||||
<v-col
|
<v-col
|
||||||
cols="12"
|
cols="12"
|
||||||
xl="8"
|
xl="8"
|
||||||
|
|||||||
@@ -189,7 +189,9 @@ RouterFactory.configure(router => {
|
|||||||
meta: {
|
meta: {
|
||||||
title: 'Print Character Sheet',
|
title: 'Print Character Sheet',
|
||||||
},
|
},
|
||||||
}, {
|
},
|
||||||
|
/* Not ready for prime time <3
|
||||||
|
{
|
||||||
path: '/tabletops',
|
path: '/tabletops',
|
||||||
name: 'tabletops',
|
name: 'tabletops',
|
||||||
component: Tabletops,
|
component: Tabletops,
|
||||||
@@ -203,7 +205,9 @@ RouterFactory.configure(router => {
|
|||||||
rightDrawer: TabletopRightDrawer,
|
rightDrawer: TabletopRightDrawer,
|
||||||
},
|
},
|
||||||
beforeEnter: ensureLoggedIn,
|
beforeEnter: ensureLoggedIn,
|
||||||
}, {
|
},
|
||||||
|
*/
|
||||||
|
{
|
||||||
path: '/friends',
|
path: '/friends',
|
||||||
components: {
|
components: {
|
||||||
default: NotImplemented,
|
default: NotImplemented,
|
||||||
|
|||||||
37
app/imports/client/ui/styles/body.css
Normal file
37
app/imports/client/ui/styles/body.css
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
html {
|
||||||
|
--scrollbarBG: #f0f0f0;
|
||||||
|
--thumbBG: #cdcdcd;
|
||||||
|
scrollbar-gutter: stable;
|
||||||
|
background-color: var(--scrollbarBG);
|
||||||
|
}
|
||||||
|
|
||||||
|
html:has(#app.theme--dark) {
|
||||||
|
--scrollbarBG: #212121;
|
||||||
|
--thumbBG: #404040;
|
||||||
|
}
|
||||||
|
|
||||||
|
#app.theme--dark {
|
||||||
|
--scrollbarBG: #212121;
|
||||||
|
--thumbBG: #404040;
|
||||||
|
}
|
||||||
|
|
||||||
|
* {
|
||||||
|
scrollbar-width: thin;
|
||||||
|
scrollbar-color: var(--thumbBG) var(--scrollbarBG);
|
||||||
|
}
|
||||||
|
|
||||||
|
::-webkit-scrollbar {
|
||||||
|
width: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
::-webkit-scrollbar-track {
|
||||||
|
background-color: var(--scrollbarBG);
|
||||||
|
}
|
||||||
|
|
||||||
|
::-webkit-scrollbar-thumb {
|
||||||
|
background-color: var(--thumbBG);
|
||||||
|
}
|
||||||
|
|
||||||
|
::-webkit-scrollbar-corner {
|
||||||
|
background-color: rgba(0, 0, 0, 0);
|
||||||
|
}
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import './body.css';
|
||||||
import './cardColors.css';
|
import './cardColors.css';
|
||||||
import './cardTitles.css';
|
import './cardTitles.css';
|
||||||
import './centeredInputs.css';
|
import './centeredInputs.css';
|
||||||
|
|||||||
@@ -2,8 +2,8 @@ import Vue from 'vue';
|
|||||||
import Vuex from 'vuex';
|
import Vuex from 'vuex';
|
||||||
import dialogStackStore from '/imports/client/ui/dialogStack/dialogStackStore.js';
|
import dialogStackStore from '/imports/client/ui/dialogStack/dialogStackStore.js';
|
||||||
import Creatures from '/imports/api/creature/creatures/Creatures.js';
|
import Creatures from '/imports/api/creature/creatures/Creatures.js';
|
||||||
const tabs = ['stats', 'features', 'actions', 'spells', 'inventory', 'journal', 'build', 'tree'];
|
const tabs = ['stats', 'actions', 'spells', 'inventory', 'features', 'journal', 'build', 'tree'];
|
||||||
const tabsWithoutSpells = ['stats', 'features', 'actions', 'inventory', 'journal', 'build', 'tree'];
|
const tabsWithoutSpells = ['stats', 'actions', 'inventory', 'features', 'journal', 'build', 'tree'];
|
||||||
|
|
||||||
Vue.use(Vuex);
|
Vue.use(Vuex);
|
||||||
const store = new Vuex.Store({
|
const store = new Vuex.Store({
|
||||||
@@ -50,6 +50,19 @@ const store = new Vuex.Store({
|
|||||||
document.title = value;
|
document.title = value;
|
||||||
},
|
},
|
||||||
setTabForCharacterSheet(state, { tab, id }) {
|
setTabForCharacterSheet(state, { tab, id }) {
|
||||||
|
// Convert tab names to tab numbers
|
||||||
|
if (typeof tab === 'string') {
|
||||||
|
const creature = Creatures.findOne(id);
|
||||||
|
if (creature?.settings?.hideSpellsTab) {
|
||||||
|
tab = tabsWithoutSpells.indexOf(tab);
|
||||||
|
} else {
|
||||||
|
tab = tabs.indexOf(tab);
|
||||||
|
}
|
||||||
|
if (!(tab > -1)) {
|
||||||
|
throw 'Could not find requested tab';
|
||||||
|
}
|
||||||
|
console.log('resolved: ', tab);
|
||||||
|
}
|
||||||
Vue.set(state.characterSheetTabs, id, tab);
|
Vue.set(state.characterSheetTabs, id, tab);
|
||||||
},
|
},
|
||||||
setShowDetailsDialog(state, value) {
|
setShowDetailsDialog(state, value) {
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ const STORAGE_LIMITS = Object.freeze({
|
|||||||
rollCount: 64,
|
rollCount: 64,
|
||||||
statsToTarget: 64,
|
statsToTarget: 64,
|
||||||
tagCount: 64,
|
tagCount: 64,
|
||||||
writersCount: 20,
|
writersCount: 32,
|
||||||
libraryCollectionCount: 32,
|
libraryCollectionCount: 32,
|
||||||
pointBuyRowsCount: 32,
|
pointBuyRowsCount: 32,
|
||||||
});
|
});
|
||||||
|
|||||||
114
app/package-lock.json
generated
114
app/package-lock.json
generated
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "dicecloud",
|
"name": "dicecloud",
|
||||||
"version": "2.0.43",
|
"version": "2.0.45",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -56,11 +56,11 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@babel/runtime": {
|
"@babel/runtime": {
|
||||||
"version": "7.20.1",
|
"version": "7.20.6",
|
||||||
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.1.tgz",
|
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.6.tgz",
|
||||||
"integrity": "sha512-mrzLkl6U9YLF8qpqI7TB82PESyEGjm/0Ly91jG575eVxMMlb8fYfOXFZIJ8XfLrJZQbm7dlKry2bJmXBUEkdFg==",
|
"integrity": "sha512-Q+8MqP7TiHMWzSfwiJwXCjyf4GYA4Dgw3emg/7xmwsdLJOZUp+nMqcOwOzzYheuM1rhDu8FSj2l0aoMygEuXuA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"regenerator-runtime": "^0.13.10"
|
"regenerator-runtime": "^0.13.11"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@chenfengyuan/vue-countdown": {
|
"@chenfengyuan/vue-countdown": {
|
||||||
@@ -185,14 +185,14 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@typescript-eslint/eslint-plugin": {
|
"@typescript-eslint/eslint-plugin": {
|
||||||
"version": "5.43.0",
|
"version": "5.44.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.43.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.44.0.tgz",
|
||||||
"integrity": "sha512-wNPzG+eDR6+hhW4yobEmpR36jrqqQv1vxBq5LJO3fBAktjkvekfr4BRl+3Fn1CM/A+s8/EiGUbOMDoYqWdbtXA==",
|
"integrity": "sha512-j5ULd7FmmekcyWeArx+i8x7sdRHzAtXTkmDPthE4amxZOWKFK7bomoJ4r7PJ8K7PoMzD16U8MmuZFAonr1ERvw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@typescript-eslint/scope-manager": "5.43.0",
|
"@typescript-eslint/scope-manager": "5.44.0",
|
||||||
"@typescript-eslint/type-utils": "5.43.0",
|
"@typescript-eslint/type-utils": "5.44.0",
|
||||||
"@typescript-eslint/utils": "5.43.0",
|
"@typescript-eslint/utils": "5.44.0",
|
||||||
"debug": "^4.3.4",
|
"debug": "^4.3.4",
|
||||||
"ignore": "^5.2.0",
|
"ignore": "^5.2.0",
|
||||||
"natural-compare-lite": "^1.4.0",
|
"natural-compare-lite": "^1.4.0",
|
||||||
@@ -222,14 +222,14 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@typescript-eslint/parser": {
|
"@typescript-eslint/parser": {
|
||||||
"version": "5.43.0",
|
"version": "5.44.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.43.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.44.0.tgz",
|
||||||
"integrity": "sha512-2iHUK2Lh7PwNUlhFxxLI2haSDNyXvebBO9izhjhMoDC+S3XI9qt2DGFUsiJ89m2k7gGYch2aEpYqV5F/+nwZug==",
|
"integrity": "sha512-H7LCqbZnKqkkgQHaKLGC6KUjt3pjJDx8ETDqmwncyb6PuoigYajyAwBGz08VU/l86dZWZgI4zm5k2VaKqayYyA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@typescript-eslint/scope-manager": "5.43.0",
|
"@typescript-eslint/scope-manager": "5.44.0",
|
||||||
"@typescript-eslint/types": "5.43.0",
|
"@typescript-eslint/types": "5.44.0",
|
||||||
"@typescript-eslint/typescript-estree": "5.43.0",
|
"@typescript-eslint/typescript-estree": "5.44.0",
|
||||||
"debug": "^4.3.4"
|
"debug": "^4.3.4"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -245,23 +245,23 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@typescript-eslint/scope-manager": {
|
"@typescript-eslint/scope-manager": {
|
||||||
"version": "5.43.0",
|
"version": "5.44.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.43.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.44.0.tgz",
|
||||||
"integrity": "sha512-XNWnGaqAtTJsUiZaoiGIrdJYHsUOd3BZ3Qj5zKp9w6km6HsrjPk/TGZv0qMTWyWj0+1QOqpHQ2gZOLXaGA9Ekw==",
|
"integrity": "sha512-2pKml57KusI0LAhgLKae9kwWeITZ7IsZs77YxyNyIVOwQ1kToyXRaJLl+uDEXzMN5hnobKUOo2gKntK9H1YL8g==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@typescript-eslint/types": "5.43.0",
|
"@typescript-eslint/types": "5.44.0",
|
||||||
"@typescript-eslint/visitor-keys": "5.43.0"
|
"@typescript-eslint/visitor-keys": "5.44.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@typescript-eslint/type-utils": {
|
"@typescript-eslint/type-utils": {
|
||||||
"version": "5.43.0",
|
"version": "5.44.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.43.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.44.0.tgz",
|
||||||
"integrity": "sha512-K21f+KY2/VvYggLf5Pk4tgBOPs2otTaIHy2zjclo7UZGLyFH86VfUOm5iq+OtDtxq/Zwu2I3ujDBykVW4Xtmtg==",
|
"integrity": "sha512-A1u0Yo5wZxkXPQ7/noGkRhV4J9opcymcr31XQtOzcc5nO/IHN2E2TPMECKWYpM3e6olWEM63fq/BaL1wEYnt/w==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@typescript-eslint/typescript-estree": "5.43.0",
|
"@typescript-eslint/typescript-estree": "5.44.0",
|
||||||
"@typescript-eslint/utils": "5.43.0",
|
"@typescript-eslint/utils": "5.44.0",
|
||||||
"debug": "^4.3.4",
|
"debug": "^4.3.4",
|
||||||
"tsutils": "^3.21.0"
|
"tsutils": "^3.21.0"
|
||||||
},
|
},
|
||||||
@@ -278,19 +278,19 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@typescript-eslint/types": {
|
"@typescript-eslint/types": {
|
||||||
"version": "5.43.0",
|
"version": "5.44.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.43.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.44.0.tgz",
|
||||||
"integrity": "sha512-jpsbcD0x6AUvV7tyOlyvon0aUsQpF8W+7TpJntfCUWU1qaIKu2K34pMwQKSzQH8ORgUrGYY6pVIh1Pi8TNeteg==",
|
"integrity": "sha512-Tp+zDnHmGk4qKR1l+Y1rBvpjpm5tGXX339eAlRBDg+kgZkz9Bw+pqi4dyseOZMsGuSH69fYfPJCBKBrbPCxYFQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@typescript-eslint/typescript-estree": {
|
"@typescript-eslint/typescript-estree": {
|
||||||
"version": "5.43.0",
|
"version": "5.44.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.43.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.44.0.tgz",
|
||||||
"integrity": "sha512-BZ1WVe+QQ+igWal2tDbNg1j2HWUkAa+CVqdU79L4HP9izQY6CNhXfkNwd1SS4+sSZAP/EthI1uiCSY/+H0pROg==",
|
"integrity": "sha512-M6Jr+RM7M5zeRj2maSfsZK2660HKAJawv4Ud0xT+yauyvgrsHu276VtXlKDFnEmhG+nVEd0fYZNXGoAgxwDWJw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@typescript-eslint/types": "5.43.0",
|
"@typescript-eslint/types": "5.44.0",
|
||||||
"@typescript-eslint/visitor-keys": "5.43.0",
|
"@typescript-eslint/visitor-keys": "5.44.0",
|
||||||
"debug": "^4.3.4",
|
"debug": "^4.3.4",
|
||||||
"globby": "^11.1.0",
|
"globby": "^11.1.0",
|
||||||
"is-glob": "^4.0.3",
|
"is-glob": "^4.0.3",
|
||||||
@@ -319,16 +319,16 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@typescript-eslint/utils": {
|
"@typescript-eslint/utils": {
|
||||||
"version": "5.43.0",
|
"version": "5.44.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.43.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.44.0.tgz",
|
||||||
"integrity": "sha512-8nVpA6yX0sCjf7v/NDfeaOlyaIIqL7OaIGOWSPFqUKK59Gnumd3Wa+2l8oAaYO2lk0sO+SbWFWRSvhu8gLGv4A==",
|
"integrity": "sha512-fMzA8LLQ189gaBjS0MZszw5HBdZgVwxVFShCO3QN+ws3GlPkcy9YuS3U4wkT6su0w+Byjq3mS3uamy9HE4Yfjw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@types/json-schema": "^7.0.9",
|
"@types/json-schema": "^7.0.9",
|
||||||
"@types/semver": "^7.3.12",
|
"@types/semver": "^7.3.12",
|
||||||
"@typescript-eslint/scope-manager": "5.43.0",
|
"@typescript-eslint/scope-manager": "5.44.0",
|
||||||
"@typescript-eslint/types": "5.43.0",
|
"@typescript-eslint/types": "5.44.0",
|
||||||
"@typescript-eslint/typescript-estree": "5.43.0",
|
"@typescript-eslint/typescript-estree": "5.44.0",
|
||||||
"eslint-scope": "^5.1.1",
|
"eslint-scope": "^5.1.1",
|
||||||
"eslint-utils": "^3.0.0",
|
"eslint-utils": "^3.0.0",
|
||||||
"semver": "^7.3.7"
|
"semver": "^7.3.7"
|
||||||
@@ -355,12 +355,12 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@typescript-eslint/visitor-keys": {
|
"@typescript-eslint/visitor-keys": {
|
||||||
"version": "5.43.0",
|
"version": "5.44.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.43.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.44.0.tgz",
|
||||||
"integrity": "sha512-icl1jNH/d18OVHLfcwdL3bWUKsBeIiKYTGxMJCoGe7xFht+E4QgzOqoWYrU8XSLJWhVw8nTacbm03v23J/hFTg==",
|
"integrity": "sha512-a48tLG8/4m62gPFbJ27FxwCOqPKxsb8KC3HkmYoq2As/4YyjQl1jDbRr1s63+g4FS/iIehjmN3L5UjmKva1HzQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@typescript-eslint/types": "5.43.0",
|
"@typescript-eslint/types": "5.44.0",
|
||||||
"eslint-visitor-keys": "^3.3.0"
|
"eslint-visitor-keys": "^3.3.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -530,9 +530,9 @@
|
|||||||
"integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw=="
|
"integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw=="
|
||||||
},
|
},
|
||||||
"aws-sdk": {
|
"aws-sdk": {
|
||||||
"version": "2.1258.0",
|
"version": "2.1262.0",
|
||||||
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1258.0.tgz",
|
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1262.0.tgz",
|
||||||
"integrity": "sha512-siqNFXlhJZVN1BizPZebJViFXtTUPgcA+yLfHKl2eC4Ied7kE7spOjZmAzpuiGUTzFagk1oWCaJ1Hit4llIoGg==",
|
"integrity": "sha512-XbaK/XUIxwLEBnHANhJ0RTZtiU288lFRj5FllSihQ5Kb0fibKyW8kJFPsY+NzzDezLH5D3WdGbTKb9fycn5TbA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"buffer": "4.9.2",
|
"buffer": "4.9.2",
|
||||||
"events": "1.1.1",
|
"events": "1.1.1",
|
||||||
@@ -1575,9 +1575,9 @@
|
|||||||
"integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg=="
|
"integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg=="
|
||||||
},
|
},
|
||||||
"ignore": {
|
"ignore": {
|
||||||
"version": "5.2.0",
|
"version": "5.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.1.tgz",
|
||||||
"integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ=="
|
"integrity": "sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA=="
|
||||||
},
|
},
|
||||||
"ignore-styles": {
|
"ignore-styles": {
|
||||||
"version": "5.0.1",
|
"version": "5.0.1",
|
||||||
@@ -1850,9 +1850,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"marked": {
|
"marked": {
|
||||||
"version": "4.2.2",
|
"version": "4.2.3",
|
||||||
"resolved": "https://registry.npmjs.org/marked/-/marked-4.2.2.tgz",
|
"resolved": "https://registry.npmjs.org/marked/-/marked-4.2.3.tgz",
|
||||||
"integrity": "sha512-JjBTFTAvuTgANXx82a5vzK9JLSMoV6V3LBVn4Uhdso6t7vXrGx7g1Cd2r6NYSsxrYbQGFCMqBDhFHyK5q2UvcQ=="
|
"integrity": "sha512-slWRdJkbTZ+PjkyJnE30Uid64eHwbwa1Q25INCAYfZlK4o6ylagBy/Le9eWntqJFoFT93ikUKMv47GZ4gTwHkw=="
|
||||||
},
|
},
|
||||||
"merge2": {
|
"merge2": {
|
||||||
"version": "1.4.1",
|
"version": "1.4.1",
|
||||||
@@ -3018,9 +3018,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"regenerator-runtime": {
|
"regenerator-runtime": {
|
||||||
"version": "0.13.10",
|
"version": "0.13.11",
|
||||||
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz",
|
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
|
||||||
"integrity": "sha512-KepLsg4dU12hryUO7bp/axHAKvwGOCV0sGloQtpagJ12ai+ojVDqkeGSiRX1zlq+kjIMZ1t7gpze+26QqtdGqw=="
|
"integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg=="
|
||||||
},
|
},
|
||||||
"regexpp": {
|
"regexpp": {
|
||||||
"version": "3.2.0",
|
"version": "3.2.0",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "dicecloud",
|
"name": "dicecloud",
|
||||||
"version": "2.0.46",
|
"version": "2.0.48",
|
||||||
"description": "Unofficial Online Realtime D&D 5e App",
|
"description": "Unofficial Online Realtime D&D 5e App",
|
||||||
"license": "GPL-3.0",
|
"license": "GPL-3.0",
|
||||||
"repository": {
|
"repository": {
|
||||||
@@ -20,10 +20,10 @@
|
|||||||
"npm": "6.13.x"
|
"npm": "6.13.x"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "^7.20.1",
|
"@babel/runtime": "^7.20.6",
|
||||||
"@chenfengyuan/vue-countdown": "^1.1.5",
|
"@chenfengyuan/vue-countdown": "^1.1.5",
|
||||||
"@tozd/vue-observer-utils": "^0.5.0",
|
"@tozd/vue-observer-utils": "^0.5.0",
|
||||||
"aws-sdk": "^2.1258.0",
|
"aws-sdk": "^2.1262.0",
|
||||||
"bcrypt": "^5.1.0",
|
"bcrypt": "^5.1.0",
|
||||||
"chroma-js": "^2.4.2",
|
"chroma-js": "^2.4.2",
|
||||||
"css-box-shadow": "^1.0.0-3",
|
"css-box-shadow": "^1.0.0-3",
|
||||||
@@ -31,10 +31,10 @@
|
|||||||
"ddp-rate-limiter-mixin": "^1.1.10",
|
"ddp-rate-limiter-mixin": "^1.1.10",
|
||||||
"discord.js": "^12.5.3",
|
"discord.js": "^12.5.3",
|
||||||
"dompurify": "^2.4.1",
|
"dompurify": "^2.4.1",
|
||||||
"ignore": "^5.2.0",
|
"ignore": "^5.2.1",
|
||||||
"ignore-styles": "^5.0.1",
|
"ignore-styles": "^5.0.1",
|
||||||
"lodash": "^4.17.20",
|
"lodash": "^4.17.20",
|
||||||
"marked": "^4.2.2",
|
"marked": "^4.2.3",
|
||||||
"meteor-node-stubs": "^1.2.5",
|
"meteor-node-stubs": "^1.2.5",
|
||||||
"minify-css-string": "^1.0.0",
|
"minify-css-string": "^1.0.0",
|
||||||
"moo": "^0.5.2",
|
"moo": "^0.5.2",
|
||||||
@@ -58,8 +58,8 @@
|
|||||||
"vuex": "^3.1.3"
|
"vuex": "^3.1.3"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@typescript-eslint/eslint-plugin": "^5.43.0",
|
"@typescript-eslint/eslint-plugin": "^5.44.0",
|
||||||
"@typescript-eslint/parser": "^5.43.0",
|
"@typescript-eslint/parser": "^5.44.0",
|
||||||
"@vue/compiler-dom": "^3.2.45",
|
"@vue/compiler-dom": "^3.2.45",
|
||||||
"chai": "^4.3.7",
|
"chai": "^4.3.7",
|
||||||
"eslint": "^7.32.0",
|
"eslint": "^7.32.0",
|
||||||
|
|||||||
Reference in New Issue
Block a user