// Flow 0.76 // Typescript
- Flow - poor, only by official playground, can't share code
- Typescript - great
- Flow - poor, laggy, memory leaks, stuns
- Typescript - great
| export type TPasswordValidatorRules = { | |
| length?: boolean; // min length | |
| digit?: boolean; // must contain digits | |
| twoCases?: boolean; // must contain different cases | |
| } | |
| export type TPasswordValidatorOptions = { | |
| length?: number; | |
| rules?: TPasswordValidatorRules; | |
| } |
| <component> | |
| <keymap name="$default" version="1" disable-mnemonics="false"> | |
| <action id="ShowNavBar"> | |
| <keyboard-shortcut first-keystroke="alt HOME"/> | |
| </action> | |
| <action id="FileChooser.TogglePathShowing"> | |
| <keyboard-shortcut first-keystroke="control P"/> | |
| </action> | |
| <action id="ShowSettings"> | |
| <keyboard-shortcut first-keystroke="control alt S"/> |
| diff --git a/assets/errors/50x.html b/assets/errors/50x.html | |
| index 4468f58..c931df6 100644 | |
| --- a/assets/errors/50x.html | |
| +++ b/assets/errors/50x.html | |
| @@ -40,16 +40,26 @@ | |
| <script type="text/javascript"> | |
| var offline; | |
| + | |
| + /** |
| .boards-app > div { | |
| display: flex !important; | |
| } | |
| .board { | |
| margin: 0 0 0 0 !important; | |
| padding: 0 !important; | |
| } | |
| .board-list-component > .board-list { |
| -------------------------------------------------------------------------------- | |
| Language files blank comment code | |
| -------------------------------------------------------------------------------- | |
| JavaScript 251 5602 5943 27592 | |
| TypeScript 620 2902 962 18042 | |
| HTML 204 2445 67 12313 | |
| XML 23 0 0 2601 | |
| Stylus 51 426 44 2170 | |
| JSON 25 1 0 1053 | |
| JSX 4 0 0 1049 |
| const projectIds = { | |
| 'frontend-react': 315, | |
| 'frontend': 147, | |
| 'appliance-face': 353 | |
| } | |
| const projectName = /main\/([^\/]+)/.exec(location.pathname); | |
| if (projectName) { | |
| const projectId = projectIds[projectName[1]]; |
| function gre () { | |
| git fetch | |
| if [ "$1" != "" ] | |
| then | |
| echo "Reset to origin/\e[34m$1\e[0m" | |
| git reset --hard origin/$1 | |
| else | |
| echo "Reset to origin/\e[34m$(git rev-parse --abbrev-ref HEAD)\e[0m" | |
| git reset --hard origin/$(git rev-parse --abbrev-ref HEAD) | |
| fi |
| function Futures(executor) { | |
| const self = this; | |
| let fullfilled = false; | |
| let pending = true; | |
| let rejected = false; | |
| let data; | |
| const callbacks = { |
| /** | |
| * INSTALLATION | |
| * 1. Install node (https://nodejs.org/en/download/package-manager or https://github.com/creationix/nvm#installation) | |
| * 2. $ cd ~/ && mkdir -p makeOrder && npm init -y && npm install moment git+https://github.com/GoogleChrome/puppeteer#ddc59b247282774ccc53e3cc925efc30d4e25675 | |
| * 3. $ wget --no-check-certificate https://gist.githubusercontent.com/kerbyfc/9b4e79d5a7ac4a2ad0b839fca2e0581b/raw/1d3d23b4130a86d3fb2dbdf0b046db152e445c78/makeOrder.js | |
| * 5. $ crontab -e # add line 20 13 * * * node ~/makeOrder.js | tee ~/makeOrder.log' | |
| * 4. edit 'credentials' and 'products' variables in makeOrder script | |
| */ | |
| const puppeteer = require('puppeteer'); | |
| const moment = require('moment'); |