Skip to content

Instantly share code, notes, and snippets.

@justerror
justerror / .editorconfig
Last active July 29, 2021 17:38
Configuration file for EditorConfig
# Editor configuration, see https://editorconfig.org
root = true
[*]
charset = utf-8
end_of_line = lf
indent_size = 2
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true
@justerror
justerror / .prettierrc
Last active June 27, 2021 18:33
Configuration file for Prettier
{
"printWidth": 80,
"tabWidth": 2,
"useTabs": false,
"semi": true,
"singleQuote": true,
"quoteProps": "as-needed",
"trailingComma": "es5",
"bracketSpacing": true,
"arrowParens": "avoid",
@justerror
justerror / .htmlhintrc
Last active July 26, 2021 11:17
Configuration file for HTMLHint
{
"attr-no-duplication": true,
"attr-value-double-quotes": true,
"id-class-ad-disabled": true,
"inline-script-disabled": true,
"inline-style-disabled": true,
"src-not-empty": true,
"style-disabled": true,
"tag-pair": true,
"tagname-lowercase": true
@justerror
justerror / .stylelintrc
Last active October 15, 2021 09:06
Configuration file for stylelint
{
"extends": [
"stylelint-config-prettier"
],
"plugins": [
"stylelint-order",
"stylelint-scss"
],
"rules": {
"alpha-value-notation": "number",
@justerror
justerror / calc-scrollbar-width.js
Last active March 10, 2019 11:17 — forked from itrelease/calc-scrollbar-width.js
Calculate scrollbar width
/**
* @description Calculates scrollbar width
* @export
* @returns {number} Value in px
*/
export function calcScrollbarWidth(): number {
const outer = document.createElement('div');
outer.style.visibility = 'hidden';
outer.style.width = '100px';
outer.style.msOverflowStyle = 'scrollbar'; // needed for WinJS apps
@justerror
justerror / style.css
Last active March 4, 2021 15:24
Better cross browser font smoothing
body {
// Better cross browser font smoothing
text-rendering: optimizeLegibility;
font-variant-ligatures: none;
text-decoration-skip: objects;
text-size-adjust: 100%;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-webkit-tap-highlight-color: transparent;
}
@justerror
justerror / style.css
Last active July 26, 2021 11:30
CSS scrollbar styling
/* Works on Firefox */
* {
scrollbar-width: thin; /* "auto" or "thin" */
scrollbar-color: blue orange; /* scroll thumb and track */
}
/* Works on Chrome/Edge/Safari */
::-webkit-scrollbar {
width: 12px; /* width of the entire vertical scrollbar */
height: 12px; /* height of the entire horizontal scrollbar */
@justerror
justerror / tslint.json
Created March 5, 2021 06:40
Configuration file for TSLint with Angular
{
"extends": ["tslint-config-prettier"],
"rulesDirectory": ["codelyzer"],
"rules": {
"angular-whitespace": [
true,
"check-interpolation",
"check-pipe",
"check-semicolon"
],
@justerror
justerror / tsconfig.json
Created March 23, 2021 06:56 — forked from KRostyslav/tsconfig.json
tsconfig.json с комментариями.
// Файл "tsconfig.json":
// - устанавливает корневой каталог проекта TypeScript;
// - выполняет настройку параметров компиляции;
// - устанавливает файлы проекта.
// Присутствие файла "tsconfig.json" в папке указывает TypeScript, что это корневая папка проекта.
// Внутри "tsconfig.json" указываются настройки компилятора TypeScript и корневые файлы проекта.
// Программа компилятора "tsc" ищет файл "tsconfig.json" сначала в папке, где она расположена, затем поднимается выше и ищет в родительских папках согласно их вложенности друг в друга.
// Команда "tsc --project C:\path\to\my\project\folder" берет файл "tsconfig.json" из папки, расположенной по данному пути.
// Файл "tsconfig.json" может быть полностью пустым, тогда компилятор скомпилирует все файлы с настройками заданными по умолчанию.
// Опции компилятора, перечисленные в командной строке перезаписывают собой опции, заданные в файле "tsconfig.json".
type Entity<T> = T & { id: number | string };
export const trackById = <T>(index: number, item: Entity<T>) =>
item?.id ?? index;