mirror of
https://github.com/Elvanos/fantasia-archive.git
synced 2024-06-02 02:14:47 +12:00
0.1.7-DEV-7.1: added "leading figure fields", a few tweaks and renamed export/import functionality to save/load
This commit is contained in:
parent
15b6e8bc4a
commit
a68a8cc2c5
|
@ -109,14 +109,14 @@
|
|||
color="primary"
|
||||
outline
|
||||
:disable="!projectExists"
|
||||
@click="commenceExport"
|
||||
@click="commenceSave"
|
||||
>
|
||||
<q-tooltip
|
||||
:delay="500"
|
||||
anchor="bottom middle"
|
||||
self="top middle"
|
||||
>
|
||||
Export current project
|
||||
Save current project
|
||||
</q-tooltip>
|
||||
</q-btn>
|
||||
|
||||
|
@ -340,7 +340,7 @@ import { saveDocument } from "src/scripts/databaseManager/documentManager"
|
|||
import { createNewWithParent } from "src/scripts/documentActions/createNewWithParent"
|
||||
import { copyDocument } from "src/scripts/documentActions/copyDocument"
|
||||
|
||||
import { retrieveCurrentProjectName, exportProject } from "src/scripts/projectManagement/projectManagent"
|
||||
import { retrieveCurrentProjectName, saveProject } from "src/scripts/projectManagement/projectManagent"
|
||||
|
||||
@Component({
|
||||
components: {
|
||||
|
@ -533,10 +533,10 @@ export default class DocumentControl extends BaseClass {
|
|||
/****************************************************************/
|
||||
retrieveCurrentProjectName = retrieveCurrentProjectName
|
||||
|
||||
async commenceExport () {
|
||||
async commenceSave () {
|
||||
const projectName = await retrieveCurrentProjectName()
|
||||
const setup = {
|
||||
message: "<h4>Exporting current project...</h4>",
|
||||
message: "<h4>Saving current project...</h4>",
|
||||
spinnerColor: "primary",
|
||||
messageColor: "cultured",
|
||||
spinnerSize: 120,
|
||||
|
@ -544,7 +544,7 @@ export default class DocumentControl extends BaseClass {
|
|||
// @ts-ignore
|
||||
spinner: QSpinnerGears
|
||||
}
|
||||
exportProject(projectName, Loading, setup, this.$q)
|
||||
saveProject(projectName, Loading, setup, this.$q)
|
||||
}
|
||||
|
||||
/****************************************************************/
|
||||
|
@ -717,7 +717,7 @@ export default class DocumentControl extends BaseClass {
|
|||
this.openedDocsWithEdits = this.SGET_allOpenedDocuments.docs.filter(doc => doc.hasEdits)
|
||||
|
||||
const setup = {
|
||||
message: "<h4>Saving project...</h4>",
|
||||
message: "<h4>Saving all opened documents...</h4>",
|
||||
spinnerColor: "primary",
|
||||
messageColor: "cultured",
|
||||
spinnerSize: 120,
|
||||
|
|
|
@ -30,9 +30,9 @@
|
|||
/>
|
||||
|
||||
<!-- Import project dialog -->
|
||||
<importProjectCheckDialog
|
||||
:dialog-trigger="importProjectDialogTrigger"
|
||||
@trigger-dialog-close="importProjectDialogClose"
|
||||
<loadProjectCheckDialog
|
||||
:dialog-trigger="loadProjectDialogTrigger"
|
||||
@trigger-dialog-close="loadProjectDialogClose"
|
||||
/>
|
||||
|
||||
<!-- Merge project dialog -->
|
||||
|
@ -218,10 +218,10 @@
|
|||
active
|
||||
active-class="bg-gunmetal-light text-cultured"
|
||||
class="noHigh"
|
||||
@click="commenceExport"
|
||||
@click="commenceSave"
|
||||
:disable="!projectExists"
|
||||
>
|
||||
<q-item-section>Export current project</q-item-section>
|
||||
<q-item-section>Save current project</q-item-section>
|
||||
<q-item-section avatar>
|
||||
<q-icon name="mdi-package-variant-closed" />
|
||||
</q-item-section>
|
||||
|
@ -233,9 +233,9 @@
|
|||
active
|
||||
active-class="bg-gunmetal-light text-cultured"
|
||||
class="noHigh"
|
||||
@click="importProjectAssignUID"
|
||||
@click="loadProjectAssignUID"
|
||||
>
|
||||
<q-item-section>Import existing project</q-item-section>
|
||||
<q-item-section>Load existing project</q-item-section>
|
||||
<q-item-section avatar>
|
||||
<q-icon name="mdi-package-variant" />
|
||||
</q-item-section>
|
||||
|
@ -471,7 +471,7 @@ import { Component, Watch } from "vue-property-decorator"
|
|||
import BaseClass from "src/BaseClass"
|
||||
import projectCloseCheckDialog from "src/components/dialogs/ProjectCloseCheck.vue"
|
||||
import keybindCheatsheetDialog from "src/components/dialogs/KeybindCheatsheet.vue"
|
||||
import importProjectCheckDialog from "src/components/dialogs/ImportProjectCheck.vue"
|
||||
import loadProjectCheckDialog from "src/components/dialogs/LoadProjectCheck.vue"
|
||||
import mergeProjectCheckDialog from "src/components/dialogs/MergeProjectCheck.vue"
|
||||
import newProjectCheckDialog from "src/components/dialogs/NewProjectCheck.vue"
|
||||
import repairProjectDialog from "src/components/dialogs/RepairProject.vue"
|
||||
|
@ -485,7 +485,7 @@ import tipsTricksTriviaDialog from "src/components/dialogs/TipsTricksTrivia.vue"
|
|||
import licenseDialog from "src/components/dialogs/License.vue"
|
||||
|
||||
import { Loading, QSpinnerGears } from "quasar"
|
||||
import { retrieveCurrentProjectName, exportProject } from "src/scripts/projectManagement/projectManagent"
|
||||
import { retrieveCurrentProjectName, saveProject } from "src/scripts/projectManagement/projectManagent"
|
||||
import { toggleDevTools } from "src/scripts/utilities/devTools"
|
||||
|
||||
import appLogo from "src/assets/appLogo.png"
|
||||
|
@ -494,7 +494,7 @@ import appLogo from "src/assets/appLogo.png"
|
|||
components: {
|
||||
projectCloseCheckDialog,
|
||||
keybindCheatsheetDialog,
|
||||
importProjectCheckDialog,
|
||||
loadProjectCheckDialog,
|
||||
mergeProjectCheckDialog,
|
||||
newProjectCheckDialog,
|
||||
aboutAppDialog,
|
||||
|
@ -606,10 +606,10 @@ export default class AppControl extends BaseClass {
|
|||
// Export project action
|
||||
/****************************************************************/
|
||||
|
||||
async commenceExport () {
|
||||
async commenceSave () {
|
||||
const projectName = await retrieveCurrentProjectName()
|
||||
const setup = {
|
||||
message: "<h4>Exporting current project...</h4>",
|
||||
message: "<h4>Saving current project...</h4>",
|
||||
spinnerColor: "primary",
|
||||
messageColor: "cultured",
|
||||
spinnerSize: 120,
|
||||
|
@ -617,7 +617,7 @@ export default class AppControl extends BaseClass {
|
|||
// @ts-ignore
|
||||
spinner: QSpinnerGears
|
||||
}
|
||||
exportProject(projectName, Loading, setup, this.$q)
|
||||
saveProject(projectName, Loading, setup, this.$q)
|
||||
}
|
||||
|
||||
/****************************************************************/
|
||||
|
@ -637,13 +637,13 @@ export default class AppControl extends BaseClass {
|
|||
// Import project dialog
|
||||
/****************************************************************/
|
||||
|
||||
importProjectDialogTrigger: string | false = false
|
||||
importProjectDialogClose () {
|
||||
this.importProjectDialogTrigger = false
|
||||
loadProjectDialogTrigger: string | false = false
|
||||
loadProjectDialogClose () {
|
||||
this.loadProjectDialogTrigger = false
|
||||
}
|
||||
|
||||
importProjectAssignUID () {
|
||||
this.importProjectDialogTrigger = this.generateUID()
|
||||
loadProjectAssignUID () {
|
||||
this.loadProjectDialogTrigger = this.generateUID()
|
||||
}
|
||||
|
||||
/****************************************************************/
|
||||
|
|
|
@ -70,7 +70,7 @@
|
|||
v-if="!preventPreviewsTabs"
|
||||
:document-id="document._id"
|
||||
:external-close-trigger="documentPreviewClose"
|
||||
:custom-delay="1500"
|
||||
:custom-delay="1750"
|
||||
/>
|
||||
|
||||
<q-btn
|
||||
|
|
|
@ -60,6 +60,7 @@
|
|||
:special-z-index="999999999"
|
||||
:custom-anchor="'top start'"
|
||||
:custom-self="'center right'"
|
||||
:custom-delay="1200"
|
||||
/>
|
||||
<q-item-section avatar>
|
||||
<q-icon
|
||||
|
|
|
@ -6,14 +6,14 @@
|
|||
>
|
||||
<q-card dark class="documentCloseDialog">
|
||||
<q-card-section class="row justify-center">
|
||||
<h6 class="text-center q-my-sm">Import existing project</h6>
|
||||
<h6 class="text-center q-my-sm">Load existing project</h6>
|
||||
</q-card-section>
|
||||
|
||||
<q-card-section class="row justify-center q-mx-xl">
|
||||
<div>
|
||||
Please note that the imported project will <span class="text-bold text-secondary">COMPLETELY OVERWRITE</span> the currently opened project.
|
||||
Please note that the loaded project will <span class="text-bold text-secondary">COMPLETELY OVERWRITE</span> the currently opened project.
|
||||
<br>
|
||||
If you haven't done so already, please export your current project first to prevent a <span class="text-bold text-secondary">FULL LOSS</span> of all your current project data!
|
||||
If you haven't done so already, please save your current project first to prevent a <span class="text-bold text-secondary">FULL LOSS</span> of all your current project data!
|
||||
</div>
|
||||
</q-card-section>
|
||||
|
||||
|
@ -25,16 +25,16 @@
|
|||
v-close-popup />
|
||||
<q-btn
|
||||
flat
|
||||
label="Export project"
|
||||
label="Save project"
|
||||
color="primary"
|
||||
@click="commenceExport"
|
||||
@click="commenceSave"
|
||||
/>
|
||||
<q-btn
|
||||
flat
|
||||
label="Import project"
|
||||
label="Load project"
|
||||
color="primary"
|
||||
v-close-popup
|
||||
@click="importProject()" />
|
||||
@click="saveProject()" />
|
||||
</q-card-actions>
|
||||
</q-card>
|
||||
</q-dialog>
|
||||
|
@ -45,13 +45,13 @@
|
|||
import { Component, Watch } from "vue-property-decorator"
|
||||
|
||||
import DialogBase from "src/components/dialogs/_DialogBase"
|
||||
import { retrieveCurrentProjectName, exportProject, importExistingProject } from "src/scripts/projectManagement/projectManagent"
|
||||
import { retrieveCurrentProjectName, saveProject, importExistingProject } from "src/scripts/projectManagement/projectManagent"
|
||||
import { Loading, QSpinnerGears } from "quasar"
|
||||
|
||||
@Component({
|
||||
components: { }
|
||||
})
|
||||
export default class ImportProjectCheckDialog extends DialogBase {
|
||||
export default class LoadProjectCheck extends DialogBase {
|
||||
/**
|
||||
* React to dialog opening request
|
||||
*/
|
||||
|
@ -64,7 +64,7 @@ export default class ImportProjectCheckDialog extends DialogBase {
|
|||
this.openDialog()
|
||||
}
|
||||
else {
|
||||
this.importProject()
|
||||
this.saveProject()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -83,9 +83,9 @@ export default class ImportProjectCheckDialog extends DialogBase {
|
|||
/**
|
||||
* Import a new project
|
||||
*/
|
||||
importProject () {
|
||||
saveProject () {
|
||||
const setup = {
|
||||
message: "<h4>Importing selected project...</h4>",
|
||||
message: "<h4>Loading selected project...</h4>",
|
||||
spinnerColor: "primary",
|
||||
messageColor: "cultured",
|
||||
spinnerSize: 120,
|
||||
|
@ -100,10 +100,10 @@ export default class ImportProjectCheckDialog extends DialogBase {
|
|||
/**
|
||||
* Export the current project
|
||||
*/
|
||||
async commenceExport () {
|
||||
async commenceSave () {
|
||||
const projectName = await retrieveCurrentProjectName()
|
||||
const setup = {
|
||||
message: "<h4>Exporting current project...</h4>",
|
||||
message: "<h4>Saving current project...</h4>",
|
||||
spinnerColor: "primary",
|
||||
messageColor: "cultured",
|
||||
spinnerSize: 120,
|
||||
|
@ -111,7 +111,7 @@ export default class ImportProjectCheckDialog extends DialogBase {
|
|||
// @ts-ignore
|
||||
spinner: QSpinnerGears
|
||||
}
|
||||
exportProject(projectName, Loading, setup, this.$q)
|
||||
saveProject(projectName, Loading, setup, this.$q)
|
||||
}
|
||||
}
|
||||
</script>
|
|
@ -13,7 +13,7 @@
|
|||
<div>
|
||||
Please note that merging another project will cause <span class="text-bold text-secondary">IRREVERSIBLE CHANGES</span> to the currently opened project.
|
||||
<br>
|
||||
If you haven't done so already, please export your current project first to prevent <span class="text-bold text-secondary">POSSIBLE COMPLICATIONS</span> concerning your current project data!
|
||||
If you haven't done so already, please save your current project first to prevent <span class="text-bold text-secondary">POSSIBLE COMPLICATIONS</span> concerning your current project data!
|
||||
</div>
|
||||
</q-card-section>
|
||||
|
||||
|
@ -25,9 +25,9 @@
|
|||
v-close-popup />
|
||||
<q-btn
|
||||
flat
|
||||
label="Export project"
|
||||
label="Save project"
|
||||
color="primary"
|
||||
@click="commenceExport"
|
||||
@click="commenceSave"
|
||||
/>
|
||||
<q-btn
|
||||
flat
|
||||
|
@ -45,7 +45,7 @@
|
|||
import { Component, Watch } from "vue-property-decorator"
|
||||
|
||||
import DialogBase from "src/components/dialogs/_DialogBase"
|
||||
import { retrieveCurrentProjectName, exportProject, mergeExistingProject } from "src/scripts/projectManagement/projectManagent"
|
||||
import { retrieveCurrentProjectName, saveProject, mergeExistingProject } from "src/scripts/projectManagement/projectManagent"
|
||||
import { Loading, QSpinnerGears } from "quasar"
|
||||
|
||||
@Component({
|
||||
|
@ -97,10 +97,10 @@ export default class MergeProjectCheckDialog extends DialogBase {
|
|||
/**
|
||||
* Export the current project
|
||||
*/
|
||||
async commenceExport () {
|
||||
async commenceSave () {
|
||||
const projectName = await retrieveCurrentProjectName()
|
||||
const setup = {
|
||||
message: "<h4>Exporting current project...</h4>",
|
||||
message: "<h4>Saving current project...</h4>",
|
||||
spinnerColor: "primary",
|
||||
messageColor: "cultured",
|
||||
spinnerSize: 120,
|
||||
|
@ -108,7 +108,7 @@ export default class MergeProjectCheckDialog extends DialogBase {
|
|||
// @ts-ignore
|
||||
spinner: QSpinnerGears
|
||||
}
|
||||
exportProject(projectName, Loading, setup, this.$q)
|
||||
saveProject(projectName, Loading, setup, this.$q)
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
<div>
|
||||
Please note that the new project will <span class="text-bold text-secondary">COMPLETELY OVERWRITE</span> the currently opened project.
|
||||
<br>
|
||||
If you haven't done so already, please export your current project first to prevent a <span class="text-bold text-secondary">FULL LOSS</span> of all your current project data!
|
||||
If you haven't done so already, please save your current project first to prevent a <span class="text-bold text-secondary">FULL LOSS</span> of all your current project data!
|
||||
</div>
|
||||
</q-card-section>
|
||||
|
||||
|
@ -42,9 +42,9 @@
|
|||
<q-btn
|
||||
flat
|
||||
v-if="projectExists"
|
||||
label="Export project"
|
||||
label="Save project"
|
||||
color="primary"
|
||||
@click="commenceExport"
|
||||
@click="commenceSave"
|
||||
/>
|
||||
<q-btn
|
||||
flat
|
||||
|
@ -63,14 +63,14 @@
|
|||
import { Component, Watch } from "vue-property-decorator"
|
||||
|
||||
import DialogBase from "src/components/dialogs/_DialogBase"
|
||||
import { retrieveCurrentProjectName, exportProject, createNewProject } from "src/scripts/projectManagement/projectManagent"
|
||||
import { retrieveCurrentProjectName, saveProject, createNewProject } from "src/scripts/projectManagement/projectManagent"
|
||||
|
||||
import { Loading, QSpinnerGears, extend } from "quasar"
|
||||
|
||||
@Component({
|
||||
components: { }
|
||||
})
|
||||
export default class ImportProjectCheckDialog extends DialogBase {
|
||||
export default class NewProjectCheck extends DialogBase {
|
||||
/**
|
||||
* React to dialog opening request
|
||||
*/
|
||||
|
@ -162,10 +162,10 @@ export default class ImportProjectCheckDialog extends DialogBase {
|
|||
/**
|
||||
* Export current project
|
||||
*/
|
||||
async commenceExport () {
|
||||
async commenceSave () {
|
||||
const projectName = await retrieveCurrentProjectName()
|
||||
const setup = {
|
||||
message: "<h4>Exporting current project...</h4>",
|
||||
message: "<h4>Saving current project...</h4>",
|
||||
spinnerColor: "primary",
|
||||
messageColor: "cultured",
|
||||
spinnerSize: 120,
|
||||
|
@ -173,7 +173,7 @@ export default class ImportProjectCheckDialog extends DialogBase {
|
|||
// @ts-ignore
|
||||
spinner: QSpinnerGears
|
||||
}
|
||||
exportProject(projectName, Loading, setup, this.$q)
|
||||
saveProject(projectName, Loading, setup, this.$q)
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
flat
|
||||
label="Export project"
|
||||
color="primary"
|
||||
@click="commenceExport"
|
||||
@click="commenceSave"
|
||||
/>
|
||||
<q-btn
|
||||
flat
|
||||
|
@ -90,7 +90,7 @@ import { extend, Loading, QSpinnerGears } from "quasar"
|
|||
import { Component, Watch } from "vue-property-decorator"
|
||||
|
||||
import DialogBase from "src/components/dialogs/_DialogBase"
|
||||
import { retrieveCurrentProjectName, exportProject } from "src/scripts/projectManagement/projectManagent"
|
||||
import { retrieveCurrentProjectName, saveProject } from "src/scripts/projectManagement/projectManagent"
|
||||
|
||||
import { I_ShortenedDocument } from "src/interfaces/I_OpenedDocument"
|
||||
import { I_Blueprint } from "src/interfaces/I_Blueprint"
|
||||
|
@ -300,7 +300,7 @@ export default class RepairProjectDialog extends DialogBase {
|
|||
/**
|
||||
* Export the current project
|
||||
*/
|
||||
async commenceExport () {
|
||||
async commenceSave () {
|
||||
const projectName = await retrieveCurrentProjectName()
|
||||
const setup = {
|
||||
message: "<h4>Exporting current project...</h4>",
|
||||
|
@ -311,7 +311,7 @@ export default class RepairProjectDialog extends DialogBase {
|
|||
// @ts-ignore
|
||||
spinner: QSpinnerGears
|
||||
}
|
||||
exportProject(projectName, Loading, setup, this.$q)
|
||||
saveProject(projectName, Loading, setup, this.$q)
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -180,7 +180,7 @@
|
|||
style="flex-grow: 1;"
|
||||
popup-content-class="menuResizer"
|
||||
dense
|
||||
:ref="`multieRelationshipField${this.inputDataBluePrint.id}`"
|
||||
:ref="`multiRelationshipField${this.inputDataBluePrint.id}`"
|
||||
:options="filterList"
|
||||
use-input
|
||||
:option-disable="opt => Object(opt) === opt ? disabledIDList.includes(opt._id) : true"
|
||||
|
@ -208,7 +208,7 @@
|
|||
<q-chip
|
||||
removable
|
||||
dense
|
||||
@remove="scope.removeAtIndex(scope.index)"
|
||||
@remove="removeInput(scope)"
|
||||
:tabindex="scope.tabindex"
|
||||
:color="(scope.opt.isAutoGenerated) ? 'teal-3' : 'accent'"
|
||||
text-color="dark"
|
||||
|
@ -248,6 +248,7 @@
|
|||
</q-tooltip>
|
||||
</q-btn>
|
||||
<documentPreview
|
||||
:custom-delay="1200"
|
||||
v-if="(!recursive && !preventPreviewsDocuments) && !scope.opt.isAutoGenerated"
|
||||
:document-id="scope.opt._id"
|
||||
:external-close-trigger="documentPreviewClose"
|
||||
|
@ -363,6 +364,7 @@
|
|||
:external-close-trigger="documentPreviewClose"
|
||||
:custom-anchor="'top start'"
|
||||
:custom-self="'center right'"
|
||||
:custom-delay="1500"
|
||||
/>
|
||||
<q-menu
|
||||
touch-position
|
||||
|
@ -563,6 +565,19 @@ export default class Field_MultiRelationship extends FieldBase {
|
|||
// INPUT HANDLING
|
||||
/****************************************************************/
|
||||
|
||||
async removeInput (scope: {
|
||||
index: number
|
||||
removeAtIndex: (index: number) => void
|
||||
}) {
|
||||
scope.removeAtIndex(scope.index)
|
||||
|
||||
await this.$nextTick()
|
||||
/*eslint-disable */
|
||||
// @ts-ignore
|
||||
this.$refs[`multiRelationshipField${this.inputDataBluePrint.id}`].hidePopup()
|
||||
/* eslint-enable */
|
||||
}
|
||||
|
||||
/**
|
||||
* Watch changes to the prefilled data already existing in the field and update local input accordingly
|
||||
* Also reload the local object list
|
||||
|
@ -631,9 +646,9 @@ export default class Field_MultiRelationship extends FieldBase {
|
|||
await this.$nextTick()
|
||||
/*eslint-disable */
|
||||
// @ts-ignore
|
||||
this.$refs[`multieRelationshipField${this.inputDataBluePrint.id}`].setOptionIndex(-1)
|
||||
this.$refs[`multiRelationshipField${this.inputDataBluePrint.id}`].setOptionIndex(-1)
|
||||
// @ts-ignore
|
||||
this.$refs[`multieRelationshipField${this.inputDataBluePrint.id}`].moveOptionSelection(1, true)
|
||||
this.$refs[`multiRelationshipField${this.inputDataBluePrint.id}`].moveOptionSelection(1, true)
|
||||
/* eslint-enable */
|
||||
}
|
||||
|
||||
|
@ -646,7 +661,7 @@ export default class Field_MultiRelationship extends FieldBase {
|
|||
this.filterList = this.allTypeDocuments
|
||||
.filter((obj) => !obj.isMinor && obj._id !== this.currentId)
|
||||
|
||||
if (this.$refs[`multieRelationshipField${this.inputDataBluePrint.id}`] && this.filterList.length > 0) {
|
||||
if (this.$refs[`multiRelationshipField${this.inputDataBluePrint.id}`] && this.filterList.length > 0) {
|
||||
this.refocusSelect().catch(e => console.log(e))
|
||||
}
|
||||
})
|
||||
|
@ -661,7 +676,7 @@ export default class Field_MultiRelationship extends FieldBase {
|
|||
this.filterList = advancedDocumentFilter(needle, this.filterList, this.SGET_allBlueprints, this.SGET_allDocuments.docs)
|
||||
.filter((obj) => obj._id !== this.currentId)
|
||||
|
||||
if (this.$refs[`multieRelationshipField${this.inputDataBluePrint.id}`] && this.filterList.length > 0) {
|
||||
if (this.$refs[`multiRelationshipField${this.inputDataBluePrint.id}`] && this.filterList.length > 0) {
|
||||
this.refocusSelect().catch(e => console.log(e))
|
||||
}
|
||||
})
|
||||
|
@ -778,7 +793,7 @@ export default class Field_MultiRelationship extends FieldBase {
|
|||
selectValue () {
|
||||
/*eslint-disable */
|
||||
// @ts-ignore
|
||||
this.$refs[`multieRelationshipField${this.inputDataBluePrint.id}`].updateInputValue ('')
|
||||
this.$refs[`multiRelationshipField${this.inputDataBluePrint.id}`].updateInputValue ('')
|
||||
/* eslint-enable */
|
||||
|
||||
this.processInput()
|
||||
|
@ -930,7 +945,7 @@ export default class Field_MultiRelationship extends FieldBase {
|
|||
addNewRelationshipObject (input: string) {
|
||||
/*eslint-disable */
|
||||
// @ts-ignore
|
||||
this.$refs[`multieRelationshipField${this.inputDataBluePrint.id}`].updateInputValue ('')
|
||||
this.$refs[`multiRelationshipField${this.inputDataBluePrint.id}`].updateInputValue ('')
|
||||
/* eslint-enable */
|
||||
|
||||
const newObjectType = this.inputDataBluePrint?.relationshipSettings?.connectedObjectType as unknown as string
|
||||
|
|
|
@ -203,8 +203,7 @@
|
|||
v-if="scope.opt.label && scope.opt.label.length > 0"
|
||||
removable
|
||||
dense
|
||||
@click="openNewTab(scope.opt)"
|
||||
@remove="scope.removeAtIndex(scope.index)"
|
||||
@remove="removeInput(scope)"
|
||||
:tabindex="scope.tabindex"
|
||||
:color="(scope.opt.isAutoGenerated) ? 'teal-3' : 'accent'"
|
||||
text-color="dark"
|
||||
|
@ -247,6 +246,7 @@
|
|||
v-if="(!recursive && !preventPreviewsDocuments) && !scope.opt.isAutoGenerated"
|
||||
:document-id="scope.opt._id"
|
||||
:external-close-trigger="documentPreviewClose"
|
||||
:custom-delay="1200"
|
||||
/>
|
||||
<q-menu
|
||||
v-if="!scope.opt.isAutoGenerated"
|
||||
|
@ -359,6 +359,7 @@
|
|||
:external-close-trigger="documentPreviewClose"
|
||||
:custom-anchor="'top start'"
|
||||
:custom-self="'center right'"
|
||||
:custom-delay="1500"
|
||||
/>
|
||||
<q-menu
|
||||
touch-position
|
||||
|
@ -518,6 +519,19 @@ export default class Field_SingleRelationship extends FieldBase {
|
|||
// INPUT HANDLING
|
||||
/****************************************************************/
|
||||
|
||||
async removeInput (scope: {
|
||||
index: number
|
||||
removeAtIndex: (index: number) => void
|
||||
}) {
|
||||
scope.removeAtIndex(scope.index)
|
||||
|
||||
await this.$nextTick()
|
||||
/*eslint-disable */
|
||||
// @ts-ignore
|
||||
this.$refs[`singleRelationshipField${this.inputDataBluePrint.id}`].hidePopup()
|
||||
/* eslint-enable */
|
||||
}
|
||||
|
||||
/**
|
||||
* Watch changes to the prefilled data already existing in the field and update local input accordingly
|
||||
* Also reload the local object list
|
||||
|
@ -849,12 +863,18 @@ export default class Field_SingleRelationship extends FieldBase {
|
|||
})
|
||||
}
|
||||
|
||||
selectValue () {
|
||||
async selectValue () {
|
||||
/*eslint-disable */
|
||||
// @ts-ignore
|
||||
this.$refs[`singleRelationshipField${this.inputDataBluePrint.id}`].updateInputValue ('')
|
||||
/* eslint-enable */
|
||||
|
||||
await this.$nextTick()
|
||||
/*eslint-disable */
|
||||
// @ts-ignore
|
||||
this.$refs[`singleRelationshipField${this.inputDataBluePrint.id}`].hidePopup()
|
||||
/* eslint-enable */
|
||||
|
||||
this.processInput()
|
||||
}
|
||||
|
||||
|
|
|
@ -46,6 +46,7 @@
|
|||
|
||||
### QoL adjustments
|
||||
|
||||
- All "Export and Import" texts have been changed to "Save and Load" due to the inclusion of the new, actual, "Export" feature
|
||||
- Added a note about possible color searching in the advanced search cheatsheet popup window
|
||||
- Added input reseting after adding/selection in the relationship fields
|
||||
- Revamped the field order in all document types since `Other names` field moved to `Document settings` from `Basic information` as it is not a mandatory system field specially used in advanced search
|
||||
|
@ -54,6 +55,8 @@
|
|||
- Field labels received a facelift to look more appealing to look at when showing on smaller screens
|
||||
- Attempteds to "prettify" the display mode of the document fields in case the "Hide empty fields" option is ticked on
|
||||
- Added a tiny bit of color to help discern which relationship is one-way and which is two-way
|
||||
- Adjusted the single and multi relationship fields not showing suggestion popups when a value is removed the list
|
||||
- Adjusted the single relationship fields to hide the suggest list when a value is selected from the list
|
||||
|
||||
## 0.1.6a
|
||||
|
||||
|
|
|
@ -2,9 +2,9 @@
|
|||
<q-page class="column items-center justify-center">
|
||||
|
||||
<!-- Import project dialog -->
|
||||
<importProjectCheckDialog
|
||||
:dialog-trigger="importProjectDialogTrigger"
|
||||
@trigger-dialog-close="importProjectDialogClose"
|
||||
<loadProjectCheckDialog
|
||||
:dialog-trigger="loadProjectDialogTrigger"
|
||||
@trigger-dialog-close="loadProjectDialogClose"
|
||||
/>
|
||||
|
||||
<!-- New project dialog -->
|
||||
|
@ -51,9 +51,9 @@
|
|||
:outline="isDarkMode"
|
||||
size="md"
|
||||
class="q-px-xl q-py-xs"
|
||||
@click="importProjectAssignUID()"
|
||||
@click="saveProjectAssignUID()"
|
||||
>
|
||||
Import existing project
|
||||
Load existing project
|
||||
</q-btn>
|
||||
</div>
|
||||
|
||||
|
@ -104,7 +104,7 @@
|
|||
import { Component, Watch } from "vue-property-decorator"
|
||||
|
||||
import BaseClass from "src/BaseClass"
|
||||
import importProjectCheckDialog from "src/components/dialogs/ImportProjectCheck.vue"
|
||||
import loadProjectCheckDialog from "src/components/dialogs/LoadProjectCheck.vue"
|
||||
import newProjectCheckDialog from "src/components/dialogs/NewProjectCheck.vue"
|
||||
import { shell } from "electron"
|
||||
|
||||
|
@ -112,7 +112,7 @@ import { retrieveCurrentProjectName } from "src/scripts/projectManagement/projec
|
|||
|
||||
@Component({
|
||||
components: {
|
||||
importProjectCheckDialog,
|
||||
loadProjectCheckDialog,
|
||||
newProjectCheckDialog
|
||||
}
|
||||
})
|
||||
|
@ -212,13 +212,13 @@ export default class WelcomeScreen extends BaseClass {
|
|||
/****************************************************************/
|
||||
// IMPORT PROJECT DIALOG
|
||||
/****************************************************************/
|
||||
importProjectDialogTrigger: string | false = false
|
||||
importProjectDialogClose () {
|
||||
this.importProjectDialogTrigger = false
|
||||
loadProjectDialogTrigger: string | false = false
|
||||
loadProjectDialogClose () {
|
||||
this.loadProjectDialogTrigger = false
|
||||
}
|
||||
|
||||
importProjectAssignUID () {
|
||||
this.importProjectDialogTrigger = this.generateUID()
|
||||
saveProjectAssignUID () {
|
||||
this.loadProjectDialogTrigger = this.generateUID()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -13,7 +13,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Known Magic/Spells",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-hat-wizard",
|
||||
sizing: 6,
|
||||
sizing: 12,
|
||||
tooltip: `
|
||||
This field is obsolete and no longer serves any purpose.
|
||||
<br>
|
||||
|
@ -40,7 +40,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
This field will automatically disappear once all data is gone from it.
|
||||
`,
|
||||
isLegacy: true,
|
||||
sizing: 6,
|
||||
sizing: 12,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "tech",
|
||||
connectedField: "pairedCharacter"
|
||||
|
@ -52,7 +52,6 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
type: "list",
|
||||
icon: "mdi-sword",
|
||||
sizing: 12,
|
||||
isLegacy: true,
|
||||
tooltip: `
|
||||
This field is obsolete and no longer serves any purpose.
|
||||
<br>
|
||||
|
@ -60,6 +59,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
<br>
|
||||
This field will automatically disappear once all data is gone from it.
|
||||
`,
|
||||
isLegacy: true,
|
||||
predefinedListExtras: {
|
||||
affix: "Level",
|
||||
extraSelectValueList: [
|
||||
|
@ -1314,6 +1314,17 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
sizing: 12
|
||||
},
|
||||
|
||||
{
|
||||
id: "leadingPoliticalLeaders",
|
||||
name: "Leading Figure of Ideologies/Political groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-bank-outline",
|
||||
sizing: 6,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "politicalGroups",
|
||||
connectedField: "leadingCharacters"
|
||||
}
|
||||
},
|
||||
{
|
||||
id: "pairedConnectionPolGroup",
|
||||
name: "Connected to Ideologies/Political groups",
|
||||
|
@ -1330,7 +1341,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Member of Ideologies/Political groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-bank-outline",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "politicalGroups",
|
||||
connectedField: "pairedBelongingCharacter"
|
||||
|
@ -1341,7 +1352,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Ally of Ideologies/Political groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-bank-outline",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "politicalGroups",
|
||||
connectedField: "pairedAllyCharacter"
|
||||
|
@ -1352,13 +1363,24 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Enemy of Ideologies/Political groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-bank-outline",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "politicalGroups",
|
||||
connectedField: "pairedEnemyCharacter"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
id: "leadingOtherLeaders",
|
||||
name: "Leading Figure of Organizations/Other groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-account-group",
|
||||
sizing: 6,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "guilds",
|
||||
connectedField: "leadingCharacters"
|
||||
}
|
||||
},
|
||||
{
|
||||
id: "pairedConnectionOtherGroups",
|
||||
name: "Connected to Organizations/Other groups",
|
||||
|
@ -1375,7 +1397,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Member of Organizations/Other groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-account-group",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "guilds",
|
||||
connectedField: "pairedBelongingCharacter"
|
||||
|
@ -1386,7 +1408,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Ally of Organizations/Other groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-account-group",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "guilds",
|
||||
connectedField: "pairedAllyCharacter"
|
||||
|
@ -1397,13 +1419,24 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Enemy of Organizations/Other groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-account-group",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "guilds",
|
||||
connectedField: "pairedEnemyCharacter"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
id: "leadingReligiousLeaders",
|
||||
name: "Leading Figure of Teachings/Religious groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-ankh",
|
||||
sizing: 6,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "religions",
|
||||
connectedField: "leadingCharacters"
|
||||
}
|
||||
},
|
||||
{
|
||||
id: "pairedConnectionRelGroup",
|
||||
name: "Connected to Teachings/Religious groups",
|
||||
|
@ -1420,7 +1453,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Member of Teachings/Religious groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-ankh",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "religions",
|
||||
connectedField: "pairedBelongingCharacter"
|
||||
|
@ -1431,7 +1464,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Ally of Teachings/Religious groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-ankh",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "religions",
|
||||
connectedField: "pairedAllyCharacter"
|
||||
|
@ -1442,12 +1475,24 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Enemy of Teachings/Religious groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-ankh",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "religions",
|
||||
connectedField: "pairedEnemyCharacter"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
id: "leadingMagicalLeaders",
|
||||
name: "Leading Figure of Schools of Magic/Magical groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-hat-wizard",
|
||||
sizing: 6,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "magic",
|
||||
connectedField: "leadingCharacters"
|
||||
}
|
||||
},
|
||||
{
|
||||
id: "pairedConnectionMagicGroup",
|
||||
name: "Connected to Schools of Magic/Magical groups",
|
||||
|
@ -1464,7 +1509,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Member of Schools of Magic/Magical groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-hat-wizard",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "magic",
|
||||
connectedField: "pairedBelongingCharacter"
|
||||
|
@ -1475,7 +1520,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Ally of Schools of Magic/Magical groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-hat-wizard",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "magic",
|
||||
connectedField: "pairedAllyCharacter"
|
||||
|
@ -1486,12 +1531,24 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Enemy of Schools of Magic/Magical groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-hat-wizard",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "magic",
|
||||
connectedField: "pairedEnemyCharacter"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
id: "leadingTechLeaders",
|
||||
name: "Leading Figure of Sciences/Technological groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-wrench",
|
||||
sizing: 6,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "tech",
|
||||
connectedField: "leadingCharacters"
|
||||
}
|
||||
},
|
||||
{
|
||||
id: "pairedConnectionTechGroup",
|
||||
name: "Connected to Sciences/Technological groups",
|
||||
|
@ -1508,7 +1565,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Member of Sciences/Technological groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-wrench",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "tech",
|
||||
connectedField: "pairedBelongingCharacter"
|
||||
|
@ -1519,7 +1576,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Ally of Sciences/Technological groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-wrench",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "tech",
|
||||
connectedField: "pairedAllyCharacter"
|
||||
|
@ -1530,7 +1587,7 @@ export const charactersBlueprint: I_Blueprint = {
|
|||
name: "Enemy of Sciences/Technological groups",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-wrench",
|
||||
sizing: 6,
|
||||
sizing: 4,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "tech",
|
||||
connectedField: "pairedEnemyCharacter"
|
||||
|
|
|
@ -12,7 +12,6 @@ export const currenciesBlueprint: I_Blueprint = {
|
|||
name: "Connected to Items",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-sword",
|
||||
isLegacy: true,
|
||||
tooltip: `
|
||||
This field is obsolete and no longer serves any purpose.
|
||||
<br>
|
||||
|
@ -20,6 +19,7 @@ export const currenciesBlueprint: I_Blueprint = {
|
|||
<br>
|
||||
This field will automatically disappear once all data is gone from it.
|
||||
`,
|
||||
isLegacy: true,
|
||||
sizing: 12,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "items",
|
||||
|
|
|
@ -7,6 +7,24 @@ export const guildsBlueprint: I_Blueprint = {
|
|||
icon: "mdi-account-group",
|
||||
category: "Groups/Teachings",
|
||||
extraFields: [
|
||||
{
|
||||
id: "leaders",
|
||||
name: "Leading Figures (legacy)",
|
||||
type: "manyToNoneRelationship",
|
||||
icon: "mdi-crown",
|
||||
tooltip: `
|
||||
This field is obsolete and no longer serves any purpose.
|
||||
<br>
|
||||
Pleae move your data to the corresponding new fields.
|
||||
<br>
|
||||
This field will automatically disappear once all data is gone from it.
|
||||
`,
|
||||
isLegacy: true,
|
||||
sizing: 12,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "characters"
|
||||
}
|
||||
},
|
||||
{
|
||||
id: "breakDocumentSettings",
|
||||
name: "Document settings",
|
||||
|
@ -225,13 +243,14 @@ export const guildsBlueprint: I_Blueprint = {
|
|||
tooltip: "The amount of people affected by/following this group/organization."
|
||||
},
|
||||
{
|
||||
id: "leaders",
|
||||
id: "leadingCharacters",
|
||||
name: "Leading Figures",
|
||||
type: "manyToNoneRelationship",
|
||||
icon: "mdi-crown",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-account",
|
||||
sizing: 6,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "characters"
|
||||
connectedObjectType: "characters",
|
||||
connectedField: "leadingOtherLeaders"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
|
@ -13,8 +13,6 @@ export const itemsBlueprint: I_Blueprint = {
|
|||
name: "Capable of utilizing Spells/Magic",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-hat-wizard",
|
||||
isLegacy: true,
|
||||
sizing: 6,
|
||||
tooltip: `
|
||||
This field is obsolete and no longer serves any purpose.
|
||||
<br>
|
||||
|
@ -22,6 +20,8 @@ export const itemsBlueprint: I_Blueprint = {
|
|||
<br>
|
||||
This field will automatically disappear once all data is gone from it.
|
||||
`,
|
||||
isLegacy: true,
|
||||
sizing: 12,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "magic",
|
||||
connectedField: "pairedItems"
|
||||
|
@ -32,8 +32,7 @@ export const itemsBlueprint: I_Blueprint = {
|
|||
name: "Connected to Currencies",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "fas fa-coins",
|
||||
sizing: 6,
|
||||
isLegacy: true,
|
||||
sizing: 12,
|
||||
tooltip: `
|
||||
This field is obsolete and no longer serves any purpose.
|
||||
<br>
|
||||
|
@ -41,6 +40,8 @@ export const itemsBlueprint: I_Blueprint = {
|
|||
<br>
|
||||
This field will automatically disappear once all data is gone from it.
|
||||
`,
|
||||
isLegacy: true,
|
||||
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "currencies",
|
||||
connectedField: "pairedItems"
|
||||
|
|
|
@ -8,12 +8,11 @@ export const magicBlueprint: I_Blueprint = {
|
|||
category: "Groups/Teachings",
|
||||
extraFields: [
|
||||
{
|
||||
id: "pairedCharacter",
|
||||
name: "Magic/Spell Users",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-account",
|
||||
sizing: 4,
|
||||
isLegacy: true,
|
||||
id: "leaders",
|
||||
name: "Leading Figures",
|
||||
type: "manyToNoneRelationship",
|
||||
icon: "mdi-crown",
|
||||
sizing: 12,
|
||||
tooltip: `
|
||||
This field is obsolete and no longer serves any purpose.
|
||||
<br>
|
||||
|
@ -21,6 +20,25 @@ export const magicBlueprint: I_Blueprint = {
|
|||
<br>
|
||||
This field will automatically disappear once all data is gone from it.
|
||||
`,
|
||||
isLegacy: true,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "characters"
|
||||
}
|
||||
},
|
||||
{
|
||||
id: "pairedCharacter",
|
||||
name: "Magic/Spell Users",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-account",
|
||||
sizing: 12,
|
||||
tooltip: `
|
||||
This field is obsolete and no longer serves any purpose.
|
||||
<br>
|
||||
Pleae move your data to the corresponding new fields.
|
||||
<br>
|
||||
This field will automatically disappear once all data is gone from it.
|
||||
`,
|
||||
isLegacy: true,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "characters",
|
||||
connectedField: "pairedMagic"
|
||||
|
@ -31,8 +49,7 @@ export const magicBlueprint: I_Blueprint = {
|
|||
name: "Important items",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-sword",
|
||||
sizing: 4,
|
||||
isLegacy: true,
|
||||
sizing: 12,
|
||||
tooltip: `
|
||||
This field is obsolete and no longer serves any purpose.
|
||||
<br>
|
||||
|
@ -40,6 +57,7 @@ export const magicBlueprint: I_Blueprint = {
|
|||
<br>
|
||||
This field will automatically disappear once all data is gone from it.
|
||||
`,
|
||||
isLegacy: true,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "items",
|
||||
connectedField: "pairedMagic"
|
||||
|
@ -261,16 +279,16 @@ export const magicBlueprint: I_Blueprint = {
|
|||
icon: "mdi-account-group-outline",
|
||||
sizing: 3,
|
||||
tooltip: "The amount of people affected by/following this magical group."
|
||||
|
||||
},
|
||||
{
|
||||
id: "leaders",
|
||||
id: "leadingCharacters",
|
||||
name: "Leading Figures",
|
||||
type: "manyToNoneRelationship",
|
||||
icon: "mdi-crown",
|
||||
sizing: 4,
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-account",
|
||||
sizing: 6,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "characters"
|
||||
connectedObjectType: "characters",
|
||||
connectedField: "leadingMagicalLeaders"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
@ -278,7 +296,7 @@ export const magicBlueprint: I_Blueprint = {
|
|||
name: "Type",
|
||||
type: "multiSelect",
|
||||
icon: "fas fa-monument",
|
||||
sizing: 4,
|
||||
sizing: 3,
|
||||
predefinedSelectValues: [
|
||||
"Magical institution",
|
||||
"Magical teaching",
|
||||
|
@ -292,7 +310,7 @@ export const magicBlueprint: I_Blueprint = {
|
|||
name: "General schools of magic",
|
||||
type: "multiSelect",
|
||||
icon: "fas fa-hand-sparkles",
|
||||
sizing: 4,
|
||||
sizing: 3,
|
||||
predefinedSelectValues: [
|
||||
"Abjuration ",
|
||||
"Conjuration",
|
||||
|
@ -303,7 +321,7 @@ export const magicBlueprint: I_Blueprint = {
|
|||
"Necromancy",
|
||||
"Transmutation",
|
||||
"World alteration",
|
||||
"Raw magical energy manipulation",
|
||||
"Raw energy manipulation",
|
||||
"Other"
|
||||
]
|
||||
},
|
||||
|
|
|
@ -7,6 +7,25 @@ export const politicalGroupsBlueprint: I_Blueprint = {
|
|||
icon: "mdi-bank-outline",
|
||||
category: "Groups/Teachings",
|
||||
extraFields: [
|
||||
|
||||
{
|
||||
id: "leaders",
|
||||
name: "Leading Figures (legacy)",
|
||||
type: "manyToNoneRelationship",
|
||||
icon: "mdi-crown",
|
||||
tooltip: `
|
||||
This field is obsolete and no longer serves any purpose.
|
||||
<br>
|
||||
Pleae move your data to the corresponding new fields.
|
||||
<br>
|
||||
This field will automatically disappear once all data is gone from it.
|
||||
`,
|
||||
isLegacy: true,
|
||||
sizing: 12,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "characters"
|
||||
}
|
||||
},
|
||||
{
|
||||
id: "breakDocumentSettings",
|
||||
name: "Document settings",
|
||||
|
@ -222,16 +241,19 @@ export const politicalGroupsBlueprint: I_Blueprint = {
|
|||
sizing: 3,
|
||||
tooltip: "The amount of people affected by/following this political group/ideology."
|
||||
},
|
||||
|
||||
{
|
||||
id: "leaders",
|
||||
id: "leadingCharacters",
|
||||
name: "Leading Figures",
|
||||
type: "manyToNoneRelationship",
|
||||
icon: "mdi-crown",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-account",
|
||||
sizing: 6,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "characters"
|
||||
connectedObjectType: "characters",
|
||||
connectedField: "leadingPoliticalLeaders"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
id: "formGovernment",
|
||||
name: "Form of government",
|
||||
|
|
|
@ -7,6 +7,24 @@ export const religionsBlueprint: I_Blueprint = {
|
|||
icon: "fas fa-ankh",
|
||||
category: "Groups/Teachings",
|
||||
extraFields: [
|
||||
{
|
||||
id: "leaders",
|
||||
name: "Leading Figures (legacy)",
|
||||
type: "manyToNoneRelationship",
|
||||
icon: "mdi-crown",
|
||||
tooltip: `
|
||||
This field is obsolete and no longer serves any purpose.
|
||||
<br>
|
||||
Pleae move your data to the corresponding new fields.
|
||||
<br>
|
||||
This field will automatically disappear once all data is gone from it.
|
||||
`,
|
||||
isLegacy: true,
|
||||
sizing: 12,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "characters"
|
||||
}
|
||||
},
|
||||
{
|
||||
id: "breakDocumentSettings",
|
||||
name: "Document settings",
|
||||
|
@ -223,22 +241,25 @@ export const religionsBlueprint: I_Blueprint = {
|
|||
sizing: 3,
|
||||
tooltip: "The amount of people affected by/following this religious school/teaching."
|
||||
},
|
||||
|
||||
{
|
||||
id: "leaders",
|
||||
id: "leadingCharacters",
|
||||
name: "Leading Figures",
|
||||
type: "manyToNoneRelationship",
|
||||
icon: "mdi-crown",
|
||||
sizing: 4,
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-account",
|
||||
sizing: 6,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "characters"
|
||||
connectedObjectType: "characters",
|
||||
connectedField: "leadingReligiousLeaders"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
id: "formReligion",
|
||||
name: "Form of religion",
|
||||
type: "multiSelect",
|
||||
icon: "fas fa-yin-yang",
|
||||
sizing: 4,
|
||||
sizing: 3,
|
||||
predefinedSelectValues: [
|
||||
"Cult",
|
||||
"Free-form faith",
|
||||
|
@ -254,7 +275,7 @@ export const religionsBlueprint: I_Blueprint = {
|
|||
name: "Type of religion",
|
||||
type: "multiSelect",
|
||||
icon: "fas fa-sun",
|
||||
sizing: 4,
|
||||
sizing: 3,
|
||||
predefinedSelectValues: [
|
||||
"Ancestor worship",
|
||||
"Animism",
|
||||
|
|
|
@ -8,12 +8,10 @@ export const techBlueprint: I_Blueprint = {
|
|||
category: "Groups/Teachings",
|
||||
extraFields: [
|
||||
{
|
||||
id: "pairedCharacter",
|
||||
name: "Technology/Science Users",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-account",
|
||||
sizing: 6,
|
||||
isLegacy: true,
|
||||
id: "leaders",
|
||||
name: "Leading figures (legacy)",
|
||||
type: "manyToNoneRelationship",
|
||||
icon: "mdi-crown",
|
||||
tooltip: `
|
||||
This field is obsolete and no longer serves any purpose.
|
||||
<br>
|
||||
|
@ -21,6 +19,26 @@ export const techBlueprint: I_Blueprint = {
|
|||
<br>
|
||||
This field will automatically disappear once all data is gone from it.
|
||||
`,
|
||||
isLegacy: true,
|
||||
sizing: 12,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "characters"
|
||||
}
|
||||
},
|
||||
{
|
||||
id: "pairedCharacter",
|
||||
name: "Technology/Science Users",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-account",
|
||||
sizing: 12,
|
||||
tooltip: `
|
||||
This field is obsolete and no longer serves any purpose.
|
||||
<br>
|
||||
Pleae move your data to the corresponding new fields.
|
||||
<br>
|
||||
This field will automatically disappear once all data is gone from it.
|
||||
`,
|
||||
isLegacy: true,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "characters",
|
||||
connectedField: "pairedTech"
|
||||
|
@ -243,14 +261,16 @@ export const techBlueprint: I_Blueprint = {
|
|||
sizing: 3,
|
||||
tooltip: "The amount of people affected by/following this scientific school/teaching."
|
||||
},
|
||||
|
||||
{
|
||||
id: "leaders",
|
||||
name: "Leading figures",
|
||||
type: "manyToNoneRelationship",
|
||||
icon: "mdi-crown",
|
||||
sizing: 4,
|
||||
id: "leadingCharacters",
|
||||
name: "Leading Figures",
|
||||
type: "manyToManyRelationship",
|
||||
icon: "mdi-account",
|
||||
sizing: 6,
|
||||
relationshipSettings: {
|
||||
connectedObjectType: "characters"
|
||||
connectedObjectType: "characters",
|
||||
connectedField: "leadingTechLeaders"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
@ -258,7 +278,7 @@ export const techBlueprint: I_Blueprint = {
|
|||
name: "Type",
|
||||
type: "multiSelect",
|
||||
icon: "fas fa-cogs",
|
||||
sizing: 4,
|
||||
sizing: 3,
|
||||
predefinedSelectValues: [
|
||||
"Factory/Manufacture",
|
||||
"Invention",
|
||||
|
@ -275,7 +295,7 @@ export const techBlueprint: I_Blueprint = {
|
|||
name: "Scientific branches",
|
||||
type: "multiSelect",
|
||||
icon: "fas fa-vial",
|
||||
sizing: 4,
|
||||
sizing: 3,
|
||||
predefinedSelectValues: [
|
||||
"Agricultural science",
|
||||
"Astrology",
|
||||
|
|
|
@ -63,7 +63,7 @@ export const createNewProject = async (projectName: string, vueRouter: any, quas
|
|||
* Open an file dialog asking the use for location where to export the project
|
||||
* @param projectName The name of the project to export
|
||||
*/
|
||||
export const exportProject = (projectName: string, Loading: any, loadingSetup: any, quasar: any) => {
|
||||
export const saveProject = (projectName: string, Loading: any, loadingSetup: any, quasar: any) => {
|
||||
remote.dialog.showOpenDialog({
|
||||
properties: ["openDirectory"]
|
||||
}).then(async (result) => {
|
||||
|
@ -109,7 +109,7 @@ export const exportProject = (projectName: string, Loading: any, loadingSetup: a
|
|||
Loading.hide()
|
||||
quasar.notify({
|
||||
type: 'positive',
|
||||
message: `Project succesfully exported`
|
||||
message: `Project succesfully saved`
|
||||
})
|
||||
/* eslint-enable */
|
||||
}).catch(err => {
|
||||
|
@ -208,7 +208,7 @@ export const importExistingProject = (vueRouter: any, Loading: any, loadingSetup
|
|||
|
||||
quasar.notify({
|
||||
type: 'positive',
|
||||
message: `Project succesfully imported`
|
||||
message: `Project succesfully loaded`
|
||||
})
|
||||
|
||||
vueInstance.SSET_resetDocuments()
|
||||
|
|
|
@ -78,10 +78,11 @@
|
|||
- Tag management (coloring)
|
||||
- Drag/drop tree list
|
||||
- Add printing support
|
||||
- Support for muliple document types support in relationship fields
|
||||
|
||||
### Low priority
|
||||
|
||||
- Horizonatal fields (title AND value next to each other. Might need a designer)
|
||||
- Horizontal fields (title AND value next to each other. Might need a designer)
|
||||
- Simple data imports (maybe?)
|
||||
- Vanity project-wide word count
|
||||
- Automatic thumbnail generation AND re-checking based on date
|
||||
|
|
Loading…
Reference in a new issue