finish changes to chat color setting
This commit is contained in:
@@ -92,7 +92,6 @@ export default class ChatModel {
|
|||||||
filePaths.chat.reactions(this.id),
|
filePaths.chat.reactions(this.id),
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
readonly getReactionPath = (id: string): string[] => {
|
readonly getReactionPath = (id: string): string[] => {
|
||||||
return [...this.getReactionDirPath(), id];
|
return [...this.getReactionDirPath(), id];
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -69,7 +69,6 @@ export default class FileModel {
|
|||||||
readonly handleFileContent = (fileContent: FileContent<string>): void => {
|
readonly handleFileContent = (fileContent: FileContent<string>): void => {
|
||||||
if (fileContent.type == "chat-info") {
|
if (fileContent.type == "chat-info") {
|
||||||
if (checkMatchesObjectStructure(fileContent, ChatInfoReference) == false) return;
|
if (checkMatchesObjectStructure(fileContent, ChatInfoReference) == false) return;
|
||||||
console.log("CHANGING");
|
|
||||||
this.chatModel.handleInfo(fileContent as ChatInfoFileContent);
|
this.chatModel.handleInfo(fileContent as ChatInfoFileContent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -184,11 +184,12 @@ export function SettingsPage(
|
|||||||
class="width-50"
|
class="width-50"
|
||||||
aria-label={
|
aria-label={
|
||||||
coreViewModel.translations.chatPage.settings
|
coreViewModel.translations.chatPage.settings
|
||||||
.setNameButtonAudioLabel
|
.setColorButtonAudioLabel
|
||||||
}
|
}
|
||||||
on:click={
|
on:click={
|
||||||
settingsPageViewModel.applyColor
|
settingsPageViewModel.applyColor
|
||||||
}
|
}
|
||||||
|
toggle:disabled={settingsPageViewModel.cannotSetColor}
|
||||||
>
|
>
|
||||||
{coreViewModel.translations.general.setButton}
|
{coreViewModel.translations.general.setButton}
|
||||||
<span class="icon">check</span>
|
<span class="icon">check</span>
|
||||||
|
|||||||
@@ -211,6 +211,8 @@ const englishTranslations = {
|
|||||||
setEncryptionKeyButtonAudioLabel: "set encryption key",
|
setEncryptionKeyButtonAudioLabel: "set encryption key",
|
||||||
showEncryptionKey: "Show encryption key",
|
showEncryptionKey: "Show encryption key",
|
||||||
|
|
||||||
|
setColorButtonAudioLabel: "set color",
|
||||||
|
|
||||||
deleteChatButton: "Delete entire chat",
|
deleteChatButton: "Delete entire chat",
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -549,6 +551,8 @@ export const allTranslations: {
|
|||||||
setEncryptionKeyButtonAudioLabel: "Schlüssel festlegen",
|
setEncryptionKeyButtonAudioLabel: "Schlüssel festlegen",
|
||||||
showEncryptionKey: "Schlüssel anzeigen",
|
showEncryptionKey: "Schlüssel anzeigen",
|
||||||
|
|
||||||
|
setColorButtonAudioLabel: "Farbe festlegen",
|
||||||
|
|
||||||
deleteChatButton: "Gesamten Chat löschen",
|
deleteChatButton: "Gesamten Chat löschen",
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -859,6 +863,8 @@ export const allTranslations: {
|
|||||||
"establecer clave de encriptación",
|
"establecer clave de encriptación",
|
||||||
showEncryptionKey: "Mostrar clave de encriptación",
|
showEncryptionKey: "Mostrar clave de encriptación",
|
||||||
|
|
||||||
|
setColorButtonAudioLabel: "establecer color",
|
||||||
|
|
||||||
deleteChatButton: "Eliminar todo el chat",
|
deleteChatButton: "Eliminar todo el chat",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ export default class SettingsPageViewModel extends Context {
|
|||||||
);
|
);
|
||||||
|
|
||||||
color: React.State<Colors> = new React.State<any>(Colors.Standard);
|
color: React.State<Colors> = new React.State<any>(Colors.Standard);
|
||||||
|
appliedColor: React.State<Colors> = new React.State<any>(Colors.Standard);
|
||||||
|
|
||||||
// guards
|
// guards
|
||||||
cannotSetPrimaryChannel: React.State<boolean> = React.createProxyState(
|
cannotSetPrimaryChannel: React.State<boolean> = React.createProxyState(
|
||||||
@@ -27,6 +28,11 @@ export default class SettingsPageViewModel extends Context {
|
|||||||
this.nameInput.value == "" ||
|
this.nameInput.value == "" ||
|
||||||
this.nameInput.value == this.name.value,
|
this.nameInput.value == this.name.value,
|
||||||
);
|
);
|
||||||
|
cannotSetColor: React.State<boolean> = React.createProxyState(
|
||||||
|
[this.color, this.appliedColor],
|
||||||
|
() =>
|
||||||
|
this.color.value == this.appliedColor.value,
|
||||||
|
);
|
||||||
cannotAddSecondaryChannel: React.State<boolean> = React.createProxyState(
|
cannotAddSecondaryChannel: React.State<boolean> = React.createProxyState(
|
||||||
[this.newSecondaryChannelInput],
|
[this.newSecondaryChannelInput],
|
||||||
() => this.newSecondaryChannelInput.value == "",
|
() => this.newSecondaryChannelInput.value == "",
|
||||||
@@ -73,6 +79,7 @@ export default class SettingsPageViewModel extends Context {
|
|||||||
|
|
||||||
applyColor = (): void => {
|
applyColor = (): void => {
|
||||||
this.chatViewModel.setColor(this.color.value);
|
this.chatViewModel.setColor(this.color.value);
|
||||||
|
this.appliedColor.value = this.color.value;
|
||||||
};
|
};
|
||||||
|
|
||||||
remove = (): void => {
|
remove = (): void => {
|
||||||
@@ -87,6 +94,7 @@ export default class SettingsPageViewModel extends Context {
|
|||||||
this.chatViewModel.chatModel.info.name;
|
this.chatViewModel.chatModel.info.name;
|
||||||
|
|
||||||
this.color.value = this.chatViewModel.chatModel.color;
|
this.color.value = this.chatViewModel.chatModel.color;
|
||||||
|
this.appliedColor.value = this.color.value;
|
||||||
};
|
};
|
||||||
|
|
||||||
updateData = (): void => {
|
updateData = (): void => {
|
||||||
|
|||||||
Reference in New Issue
Block a user