Compare commits

...

3 commits

Author SHA1 Message Date
e8bb51d388 chore(release): prepare for v0.4.1
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
2023-04-05 12:38:20 +02:00
b38eabb27b chore(release): bump version -> 0.4.1 2023-04-05 12:37:58 +02:00
1e7718865c fix: use better abbreviations for page names 2023-04-05 12:37:06 +02:00
5 changed files with 38 additions and 3 deletions

View file

@ -2,6 +2,20 @@
All notable changes to this project will be documented in this file.
## [0.4.1] - 2023-04-05
### Bug Fixes
- Stop propagation of key events on menu search
- Use sh
- Remove version prefix from "latest" tag
- Detect CI commit SHA
- Use better abbreviations for page names
### Features
- Add upload script
## [0.4.0] - 2023-04-02
### Features

View file

@ -1,6 +1,6 @@
[package]
name = "talon"
version = "0.4.0"
version = "0.4.1"
edition = "2021"
authors = ["ThetaDev <t.testboy@gmail.com>"]
license = "MIT"

View file

@ -48,7 +48,7 @@ commit_parsers = [
{ message = "^refactor", group = "Refactor"},
{ message = "^style", group = "Styling"},
{ message = "^test", group = "Testing"},
{ message = "^chore\\(release\\): (prepare for|bump)", skip = true},
{ message = "^chore\\(release\\):", skip = true},
{ message = "(^chore)|(^ci)", group = "Miscellaneous Tasks"},
{ body = ".*security", group = "Security"},
]

View file

@ -3,6 +3,7 @@
import Icon from "./Icon.svelte";
import type { Website } from "talon-client";
import { talonConfig } from "../util/talonData";
import { getAbbreviation } from "../util/functions";
export let website: Website;
export let size = 40;
@ -15,7 +16,7 @@
? `${talonConfig.internal}/icons/${website.subdomain}`
: null}
color={website.color}
alt={website.name.substring(0, 2)}
alt={getAbbreviation(website.name)}
{size}
{scale}
/>

View file

@ -81,3 +81,23 @@ export function trimCommit(commit: string | undefined): string | undefined {
export function isMobile(): boolean {
return window.innerWidth < 768;
}
/**
* Get a 2-letter abbreviation of the website name.
*
* If the name consists of multiple words
* (separated by spaces, underscores or CamelCase), output
* the first letters of these words.
*
* Otherwise output the first letters of the name.
*/
export function getAbbreviation(name: string): string {
const split_sep = name
.replace(/([a-z])([A-Z])/g, "$1_$2")
.split(/[ ,.;_-]/)
.filter((x) => x.length > 0);
if (split_sep.length >= 2) {
return split_sep[0].charAt(0) + split_sep[1].charAt(0);
}
return name.substring(0, 2);
}