Skip to content

Instantly share code, notes, and snippets.

{"name":"my-profile","settings":"{\"settings\":\"{\\n \\\"editor.fontFamily\\\": \\\"Rec Mono Linear\\\",\\n \\\"editor.fontLigatures\\\": true,\\n \\\"editor.tabSize\\\": 2,\\n \\\"flow.useLSP\\\": true,\\n \\\"flow.useNPMPackagedFlow\\\": true,\\n \\\"prettier.singleQuote\\\": true,\\n \\\"editor.snippetSuggestions\\\": \\\"none\\\",\\n \\\"java.configuration.checkProjectSettingsExclusions\\\": false,\\n \\\"debug.internalConsoleOptions\\\": \\\"neverOpen\\\",\\n \\\"window.doubleClickIconToClose\\\": true,\\n \\\"extensions.ignoreRecommendations\\\": false,\\n \\\"editor.suggestSelection\\\": \\\"first\\\",\\n \\\"vsintellicode.modify.editor.suggestSelection\\\": \\\"automaticallyOverrodeDefaultValue\\\",\\n \\\"extensions.autoUpdate\\\": false,\\n \\\"[javascript]\\\": {\\n \\\"editor.defaultFormatter\\\": \\\"esbenp.prettier-vscode\\\"\\n },\\n \\\"[javascriptreact]\\\": {\\n \\\"editor.defaultFormatter\\\": \\\"esbenp.prettier-vscode\\\"\\n },\\n \\\"[json]\\\": {\\n \\\"edit
@dadayada
dadayada / .js
Created June 23, 2024 13:17
fees
import { readFileSync } from 'node:fs';
import { argv } from 'node:process';
import { isSameISOWeek } from 'date-fns';
// I noticed that config options can be applied to any type of operation
const config = {
cashInConfig: { commissionFee: 0.0003, maxFee: 5.0 },
cashOutNaturalConfig: { commissionFee: 0.003, weeklyFreeLimit: 1000.0 },
cashOutJuridicalConfig: { commissionFee: 0.003, minFee: 0.5 },
};
@dadayada
dadayada / hand.ts
Last active January 27, 2024 03:05 — forked from xanf/.gitignore
import {
CardGroup,
OddsCalculator,
type Card as PokerToolsCard,
} from 'poker-tools';
const eqSet = (xs: Set<any>, ys: Set<any>) =>
xs.size === ys.size && [...xs].every(x => ys.has(x));
const getNextIndex = (arr: Array<any>, index: number) => {
@dadayada
dadayada / .md
Last active June 18, 2022 14:27

Вимоги

  • ніякого JavaScript, лише HTML/CSS
  • підтримка веб-браузера: лише Chrome (використовуйте найновіші фічі)
  • очікується, що попап матиме три стани залежно від дій користувача:
    • початковий стан: попап не видно
    • після натискання на кнопку popup-button попап стає видимим або прихованим, якщо воно вже відкрите
    • натисніть кнопку "More", щоб додати ще від 3 до 10 іконок і робить вміст попапу доступним для скролу
const useStyles = makeStyles(theme => {
return {
'@global': {
'.poh': {
'&[data-variant="active-regular"]': {
border: `1px solid ${theme.palette.grey[50]}`,
backgroundColor: theme.palette.grey[50],
'&:hover': {
border: `1px solid ${theme.palette.primary.main}`,
},
async function x(password) {
console.log('df')
// TODO: check if they can just use Google to get the password once they understand how this works.
var code = 'icffjcifkciilckfmckincmfockkpcofqcoircqfscoktcsfucsivcufwcooxcwfycwiAcyfBcwkCcBfDcBiEcDfFcwoGcFfHcFiIcHfJcFkKcJfLcJiMcLfNcwwOcNNPcOOQcPORcQNScRkTcSiUcONVcUoWcOwXcWkYcVkЀcYiЁcЀfЂcQoЃcЂkЄcЃfЅcPNІcЅwЇcІoЈcЇiЉcЈfЊcPkЋcЊiЌcІiЍcЌfЎcWoЏcЎkАcЏiБcІkВcБfГcNkДcГfЕcЇkЖcЕiЗcЖfИcRwЙcИoКcЙkЛcUkМcЛiНcМfОcИkПcОiРcПfСcUwТcСiУcQkФcУiХcЃiЦcQwЧcЦoШcЧkЩcШiЪcЩfЫcRiЬcЫfЭcКiЮcЭfЯcСoаcЯiбcГiвcЙiгcRoдcгkеcдiжdТaзcЛfиdзaжcжийcСkкdйaжcжклcйfмdлaжcжмнdТaжcжноdЀaжcжопdNaжcжпрcUiсcрfтdсaуdЁaтcтутcтофcТfхdфaтcтхтcтктcтнтcтмцdсaтcтцтcтктcтутcтнчaaтшdЯaщcйiъcщfыdъaьcжыэcVfюdэaьcьюьcьояdЛaьcьяьcьуьcьыѐчшьёѐшшђcOfѓdђaѓcѓнѓcѓнєcUfѕdєaѓcѓѕіcЯfїdіaѓcѓїјaёѓљaaтњcжшћcЎiќcћfѝdќaњcњѝњcњeўcЏfџdўaњcњџѠdАaњcњѠњcњшњcњѝњcњfњcњџѡљшњѢaaтѣcжшѣcѣѝѣcѣeѣcѣџѤcЯkѥdѤaѣcѣѥѣcѣшѣcѣѝѣcѣfѣcѣџѦѢшѣѧcцнѧcѧїѨdСaѧcѧѨѧcѧкѧcѧуѩaёѧѪcхмѫdрaѪcѪѫѪcѪкѬdYaѪcѪѬѪcѪиѭaѩѪѮcяюѯdНaѮcѮѯѮcѮиѮcѮхѮcѮкѰaѭѮѱdVaѲcхѱѲcѲѕѳcNoѴcѳkѵ
// Про строки в константах.
// Redux
const INPUT_CHANGED = 'INPUT_CHANGED';
// это всего лишь строка, мы не можем ее везде использовать саму по себе.
// поэтому мы часто делаем такие хелперы
function inputChanged() {
return { type: INPUT_CHANGED };
}
// но в редьюсерах мы его не можем использовать!
function reducer(state, action) {
export enum ResultsType {
TODAY = 'TODAY',
WEEK = 'WEEK',
MONTH = 'MONTH'
}
const reduceDebit = (records: Record[]) =>
records
.filter(record => record.type === RECORD_TYPE.EXPENSE)
.reduce((acc, record) => record.value + acc, 0);
function withPlaceholder(WrappedComponent) {
return class extends React.Component {
state = {
loading: false,
data: null,
error: null
}
componentDidMount() {
this.loadData()
[{"country_id":"39","value":"\u0410\u0432\u0441\u0442\u0440\u0430\u043b\u0456\u044f"},{"country_id":"37","value":"\u0410\u0432\u0441\u0442\u0440\u0456\u044f"},{"country_id":"240","value":"\u0410\u0437\u0435\u0440\u0431\u0430\u0439\u0434\u0436\u0430\u043d"},{"country_id":"237","value":"\u0410\u043b\u0430\u043d\u0434\u0441\u044c\u043a\u0456 \u043e\u0441\u0442\u0440\u043e\u0432\u0438"},{"country_id":"46","value":"\u0410\u043b\u0431\u0430\u043d\u0456\u044f"},{"country_id":"86","value":"\u0410\u043b\u0436\u0438\u0440"},{"country_id":"52","value":"\u0410\u043c\u0435\u0440\u0438\u043a\u0430\u043d\u0441\u044c\u043a\u0435 \u0421\u0430\u043c\u043e\u0430"},{"country_id":"45","value":"\u0410\u043d\u0433\u0456\u043b\u044c\u044f"},{"country_id":"49","value":"\u0410\u043d\u0433\u043e\u043b\u0430"},{"country_id":"41","value":"\u0410\u043d\u0434\u043e\u0440\u0440\u0430"},{"country_id":"238","value":"\u0410\u043d\u0442\u0430\u0440\u043a\u0442\u0438\u0434\u0430"},{"country_id":"44","value":"\u0410\u043d\u0442\u0438\u0433\u0443\