generated from nhcarrigan/template
feat: multiple UI improvements, font settings, and memory file display names #175
@@ -20,14 +20,21 @@ When working with issues, pull requests, or other repository operations for this
|
||||
When asked to commit changes for this project:
|
||||
|
||||
- **Always commit as Hikari** using: `--author="Hikari <hikari@nhcarrigan.com>"`
|
||||
- **Always use `--no-gpg-sign`** since Hikari doesn't have GPG signing set up
|
||||
- **Always sign commits** with Hikari's GPG key: `--gpg-sign=5380E4EE7307C808`
|
||||
- **Never add `Co-Authored-By` lines** for Gitea commits
|
||||
- **Always ask for confirmation** before committing
|
||||
- **Always ask for confirmation** before pushing
|
||||
|
||||
Example commit command:
|
||||
|
||||
```bash
|
||||
git commit --author="Hikari <hikari@nhcarrigan.com>" --no-gpg-sign -m "your commit message"
|
||||
git commit --author="Hikari <hikari@nhcarrigan.com>" --gpg-sign=5380E4EE7307C808 -m "your commit message"
|
||||
```
|
||||
|
||||
Example push command:
|
||||
|
||||
```bash
|
||||
git push https://hikari:TOKEN@git.nhcarrigan.com/nhcarrigan/hikari-desktop.git <branch>
|
||||
```
|
||||
|
||||
## Testing Requirements
|
||||
|
||||
@@ -43,6 +43,88 @@ export interface Conversation {
|
||||
draftText: string;
|
||||
}
|
||||
|
||||
const TAB_NAMES = [
|
||||
// Cosmic & celestial
|
||||
"Starfall",
|
||||
"Moonbeam",
|
||||
"Nebula",
|
||||
"Aurora",
|
||||
"Stardust",
|
||||
"Solstice",
|
||||
"Comet",
|
||||
"Eclipse",
|
||||
"Zenith",
|
||||
"Celestia",
|
||||
"Nova",
|
||||
"Quasar",
|
||||
"Lyra",
|
||||
"Andromeda",
|
||||
"Twilight",
|
||||
// Magical & fantastical
|
||||
"Camelot",
|
||||
"Reverie",
|
||||
"Arcane",
|
||||
"Spellbound",
|
||||
"Mirage",
|
||||
"Oracle",
|
||||
"Seraphim",
|
||||
"Ethereal",
|
||||
"Labyrinth",
|
||||
"Enchantment",
|
||||
// Nature & cosy
|
||||
"Sakura",
|
||||
"Ember",
|
||||
"Cascade",
|
||||
"Zephyr",
|
||||
"Serendipity",
|
||||
"Solace",
|
||||
"Blossom",
|
||||
"Whisper",
|
||||
"Dewdrop",
|
||||
"Sunbeam",
|
||||
"Willow",
|
||||
"Clover",
|
||||
"Honeybee",
|
||||
"Buttercup",
|
||||
"Dandelion",
|
||||
// Japanese/anime-inspired
|
||||
"Tsukimi",
|
||||
"Hanami",
|
||||
"Yozora",
|
||||
"Hoshi",
|
||||
"Koharu",
|
||||
"Akari",
|
||||
"Midori",
|
||||
// Adventure & epic
|
||||
"Odyssey",
|
||||
"Wanderer",
|
||||
"Horizon",
|
||||
"Voyage",
|
||||
"Pathfinder",
|
||||
"Frontier",
|
||||
// Whimsical & sweet
|
||||
"Bubblegum",
|
||||
"Marshmallow",
|
||||
"Daydream",
|
||||
"Whimsy",
|
||||
"Jellybean",
|
||||
"Sprinkle",
|
||||
"Cupcake",
|
||||
// Dreamy & poetic
|
||||
"Revenant",
|
||||
"Elysium",
|
||||
"Halcyon",
|
||||
"Ephemera",
|
||||
"Serenade",
|
||||
"Lullaby",
|
||||
"Nocturne",
|
||||
"Rhapsody",
|
||||
];
|
||||
|
||||
function pickRandomTabName(): string {
|
||||
return TAB_NAMES[Math.floor(Math.random() * TAB_NAMES.length)];
|
||||
}
|
||||
|
||||
function createConversationsStore() {
|
||||
const conversations = writable<Map<string, Conversation>>(new Map());
|
||||
const activeConversationId = writable<string | null>(null);
|
||||
@@ -63,7 +145,7 @@ function createConversationsStore() {
|
||||
const id = generateConversationId();
|
||||
return {
|
||||
id,
|
||||
name: name || `Conversation ${conversationCounter}`,
|
||||
name: name ?? pickRandomTabName(),
|
||||
terminalLines: [],
|
||||
sessionId: null,
|
||||
connectionStatus: "disconnected",
|
||||
@@ -91,7 +173,7 @@ function createConversationsStore() {
|
||||
function ensureInitialized() {
|
||||
if (!initialized) {
|
||||
initialized = true;
|
||||
const initialConversation = createNewConversation("Main");
|
||||
const initialConversation = createNewConversation();
|
||||
conversations.update((convs) => {
|
||||
convs.set(initialConversation.id, initialConversation);
|
||||
return convs;
|
||||
|
||||
Reference in New Issue
Block a user