Skip to content

Instantly share code, notes, and snippets.

View avilde's full-sized avatar
🚀

Andris Vilde avilde

🚀
View GitHub Profile
@avilde
avilde / new-react-fc.json
Last active June 4, 2020 06:54
New React Typescript Functional Component Template
{
"New React FC": {
"prefix": "nfc",
"body": [
"import React from 'react';",
"import classes from './${1}.module.scss';",
"",
"interface ${1}Props {}",
"",
"const ${1} = (props: ${1}Props) => {",
@avilde
avilde / set-or-replace-favorite-icon.ts
Created November 2, 2019 16:42
Replace favorite icon for your web page in real time.
export const setOrReplaceFavoritesIcon = (icon: string = defaultFavIcon) => {
const link: HTMLLinkElement =
document.querySelector('link[rel*="icon"]') ||
document.createElement('link');
link.type = 'image/x-icon';
link.rel = 'shortcut icon';
link.href = icon;
document.getElementsByTagName('head')[0].appendChild(link);
};
@avilde
avilde / camel-to-kebab.ts
Created November 2, 2019 16:41
Convert text from camel to kebab case.
export const camelToKebabCase = (text: string) => {
return text.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, '$1-$2').toLowerCase();
};
@avilde
avilde / chunk-array.ts
Created November 2, 2019 16:39
Chunk an array into smaller arrays (Javascript, Typescript)
export const chunkArray = <T>(array: Array<T>, size: number) => {
const results = [];
while (array.length) {
results.push(array.splice(0, size));
}
return results;
};
@avilde
avilde / capitalize-nordic.ts
Last active March 30, 2020 09:11
Capitalize text and words in text for Nordic countries.
/**
* Swedish/Finnish special characters: åäö
* Danish/Norwegian special characters: æøå
* Latin characters: a-z
* Other special characters: ç (e.g. country Curaçao)
*/
const wordRegex = /[åäöçæøa-z]+/gi;
export const capitalizeWord = (word: string): string =>
word.charAt(0).toUpperCase() + word.substring(1).toLowerCase();