diff --git a/changelog.md b/changelog.md new file mode 100644 index 0000000..0145691 --- /dev/null +++ b/changelog.md @@ -0,0 +1,48 @@ +# Changelog + +## 0.1.1 + +### Bugfixes + +- Fixed a bunch of typos +- Fixed names not changing with single/multi relatinships if one gets name updated showing on the others properly +- Fixed forced lower-case for notes in lists and relashionship fields + +### New features + +- Added keyboard shorcut support +- Added quick-add new document pop-up +- Added quick-search existing document pop-up +- Added keybind cheetcheet pop-up +- Added control buttons for keybind cheetsheet, quick search and quick add +- Added document coloring support for the document hierarchical tree and tabs on the top +- Added category/document switch for handling custom subcategories +- Added tooltip support for all input fields +- Added "Color picker" type field +- Added "Switch" type field + +### QoL adjustments + +- Alphabetically sorted most predefined lists (eg: types of political groups) with "Other/Unique" fields at the bottom. The fields that are ordered logically (eg: severity of racial weakness/strength) remain ordered via the logical sorting and not by alphabet +- Added explanation via tooltip to "Belongs under", "Order" and "Color" fields +- Adjusted tooltip font-size to be actually readable +- Added program FAVICON support +- Moved the document edit/save/delet buttons to the top +- Adjusted text selection to look better with the aesthetics of the app +- Adjusted scrollbars to look better with the aesthetics of the app +- Added auto-focus on name field when opening edit mode of a document +- Added auto-focus AND auto-select of all text of the name field when creating new document +- Renamed "Lore notes" to "Other/Notes" for more intuitive usage +- Remamed "Other names" to "Other names & Epithets" across all document types +- Renamed "Power level" to "Combat rating" in "Characters" document type +- Renamed "Level of sentience" to "Level of sapience" in "Species/Races" document type +- Added "Oldest known" and "Average adulthood" fields to "Species/Races" document type +- Added "Continent" and "Landmass" to prefilled options to "Location type" field in "Locations" document type +- Added "Ethnicity" field in "Characters" document type +- Added "Titles" field in "Characters" document type + +--- + +## 0.1.0 + +### Innitial release diff --git a/package.json b/package.json index 4bfe24e..93b2c66 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "fantasiaarchive", - "version": "0.1.0", + "version": "0.1.1", "description": "A database manager for world building", "productName": "Fantasia archive", "author": "Elvanos ", diff --git a/src-electron/icons/icon.icns b/src-electron/icons/icon.icns index 9cc7e8e..ad3c840 100644 Binary files a/src-electron/icons/icon.icns and b/src-electron/icons/icon.icns differ diff --git a/src-electron/icons/icon.ico b/src-electron/icons/icon.ico index ae49a01..9afdccc 100644 Binary files a/src-electron/icons/icon.ico and b/src-electron/icons/icon.ico differ diff --git a/src-electron/icons/linux-512x512.png b/src-electron/icons/linux-512x512.png index 9cf2bdb..07cbd47 100644 Binary files a/src-electron/icons/linux-512x512.png and b/src-electron/icons/linux-512x512.png differ diff --git a/src/BaseClass.ts b/src/BaseClass.ts index cc9d332..f47299a 100644 --- a/src/BaseClass.ts +++ b/src/BaseClass.ts @@ -138,6 +138,7 @@ export default class BaseClass extends Vue { @Blueprints.Getter("getBlueprint") SGET_blueprint!: (type: string) => I_Blueprint @Blueprints.Mutation("setAllBlueprints") SSET_allBlueprints!: (input: I_Blueprint[]) => void + @Blueprints.Mutation("setBlueprint") SSET_blueprint!: (input: I_Blueprint) => void addNewObjectType (e: I_NewObjectTrigger) { // console.log(e.id) diff --git a/src/assets/quasar-logo-full.svg b/src/assets/quasar-logo-full.svg deleted file mode 100644 index 281d072..0000000 --- a/src/assets/quasar-logo-full.svg +++ /dev/null @@ -1,191 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/components/Field_ColorPicker.vue b/src/components/Field_ColorPicker.vue new file mode 100644 index 0000000..3b3ef50 --- /dev/null +++ b/src/components/Field_ColorPicker.vue @@ -0,0 +1,114 @@ + + + + + diff --git a/src/components/Field_List.vue b/src/components/Field_List.vue index c941850..9e19055 100644 --- a/src/components/Field_List.vue +++ b/src/components/Field_List.vue @@ -3,6 +3,11 @@
{{inputDataBluePrint.name}} + + + + +
{{input.value}} - + ({{localInput[index].affix}}) @@ -130,6 +135,10 @@ export default class Field_List extends BaseClass { return this.inputDataBluePrint?.icon } + get toolTip () { + return this.inputDataBluePrint?.tooltip + } + get hasExtraInput () { // @ts-ignore this.localExtraInput = this.inputDataBluePrint?.predefinedListExtras?.extraSelectValueList diff --git a/src/components/Field_MultiRelationship.vue b/src/components/Field_MultiRelationship.vue index 2bdb3b7..547dc8c 100644 --- a/src/components/Field_MultiRelationship.vue +++ b/src/components/Field_MultiRelationship.vue @@ -3,6 +3,11 @@
{{inputDataBluePrint.name}} + + + + + This is a one-way relationship.
Editing this value will not have effect on the connected document/s. @@ -28,7 +33,7 @@ @click="openExistingDocument(single)"> {{single.label}} - + {{retrieveNoteText(single._id)}} @@ -138,6 +143,10 @@ export default class Field_SingleRelationship extends BaseClass { return this.inputDataBluePrint?.icon } + get toolTip () { + return this.inputDataBluePrint?.tooltip + } + extraInput: I_FieldRelationship[] = [] filteredInput: I_FieldRelationship[] = [] @@ -202,6 +211,7 @@ export default class Field_SingleRelationship extends BaseClass { disable: isDisabled, url: `/project/display-content/${objectDoc.type}/${objectDoc._id}`, label: objectDoc.extraFields.find(e => e.id === "name")?.value, + isCategory: objectDoc.extraFields.find(e => e.id === "categorySwitch")?.value, pairedField: pairedField } }) as unknown as I_FieldRelationship[] @@ -215,11 +225,19 @@ export default class Field_SingleRelationship extends BaseClass { if (!allObjectsWithoutCurrent.find(e => e._id === s._id)) { // @ts-ignore this.localInput.splice(index, 1) + } else { + const matchedFieldContent = allObjectsWithoutCurrent.find(e => e._id === s._id) + + if (matchedFieldContent) { + this.localInput[index].label = matchedFieldContent.label + } } } }) - this.extraInput = allObjectsWithoutCurrent + const allObjectsWithoutCategories: I_FieldRelationship[] = allObjectsWithoutCurrent.filter((obj) => !obj.isCategory) + + this.extraInput = allObjectsWithoutCategories } } diff --git a/src/components/Field_MultiSelect.vue b/src/components/Field_MultiSelect.vue index 19130ac..95a497e 100644 --- a/src/components/Field_MultiSelect.vue +++ b/src/components/Field_MultiSelect.vue @@ -3,6 +3,11 @@
{{inputDataBluePrint.name}} + + + + +
{{inputDataBluePrint.name}} + + + + +
{{inputDataBluePrint.name}} + + + + + This is a one-way relationship.
Editing this value will not have effect on the connected document/s. @@ -13,7 +18,6 @@ This is a two-way relationship.
Editing this value will also effect the connected document/s.
- {{localInput.label}} - - {{retrieveNoteText(localInput._id)}} + + {{retrieveNoteText()}} @@ -135,6 +139,10 @@ export default class Field_SingleRelationship extends BaseClass { return this.inputDataBluePrint?.icon } + get toolTip () { + return this.inputDataBluePrint?.tooltip + } + get inputFieldID () { return this.inputDataBluePrint?.id } @@ -202,20 +210,32 @@ export default class Field_SingleRelationship extends BaseClass { disable: isDisabled, url: `/project/display-content/${objectDoc.type}/${objectDoc._id}`, label: objectDoc.extraFields.find(e => e.id === "name")?.value, + isCategory: objectDoc.extraFields.find(e => e.id === "categorySwitch")?.value, pairedField: pairedField } }) as unknown as I_FieldRelationship[] - const allObjectsWithoutCurrent: I_FieldRelationship[] = allObjects.filter((obj) => obj._id !== this.currentId) + const isBelongsUnder = (this.inputDataBluePrint.id === "parentDoc") + + const allObjectsWithoutCategories: I_FieldRelationship[] = allObjects.filter((obj) => !obj.isCategory) + + const objectsWithoutCurrent: I_FieldRelationship[] = (isBelongsUnder) + ? allObjects.filter((obj) => obj._id !== this.currentId) + : allObjectsWithoutCategories.filter((obj) => obj._id !== this.currentId) if (this.localInput._id) { - if (!allObjectsWithoutCurrent.find(e => e._id === this.localInput._id)) { + if (!objectsWithoutCurrent.find(e => e._id === this.localInput._id)) { // @ts-ignore this.localInput = "" + } else { + const matchedFieldContent = objectsWithoutCurrent.find(e => e._id === this.localInput._id) + if (matchedFieldContent) { + this.localInput.label = matchedFieldContent.label + } } } - this.extraInput = allObjectsWithoutCurrent + this.extraInput = objectsWithoutCurrent } } diff --git a/src/components/Field_SingleSelect.vue b/src/components/Field_SingleSelect.vue index b3dd62b..1d97f61 100644 --- a/src/components/Field_SingleSelect.vue +++ b/src/components/Field_SingleSelect.vue @@ -3,6 +3,11 @@
{{inputDataBluePrint.name}} + + + + +
+
+
+ + {{inputDataBluePrint.name}} + + + + + +
+ + + +
+ +
+
+ + + + diff --git a/src/components/Field_Text.vue b/src/components/Field_Text.vue index 2a0a65d..6e9f7c2 100644 --- a/src/components/Field_Text.vue +++ b/src/components/Field_Text.vue @@ -3,6 +3,11 @@
{{inputDataBluePrint.name}} + + + + +