Skip to content

Instantly share code, notes, and snippets.

const Component = props =>
<div className='myComponent'>
{do {
if(color === 'blue') { <BlueComponent/>; }
else if(color === 'red') { <RedComponent/>; }
else if(color === 'green') { <GreenComponent/>; }
}}
</div>
;
version: 2.1
executors:
default:
docker:
- image: circleci/node:12
working_directory: ~/my-app
commands:
restore_yarn:
steps:
- restore_cache:
import { message, danger } from "danger"
message(danger.git.modified_files.join("- "))
danger:
executor:
name: default
steps:
- checkout
- restore_yarn
- restore_node
- run: yarn
- save_yarn
- save_node
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject",
"danger:ci": "danger ci"
},
// dangerfile.ts
import { warn, danger } from "danger"
const prThreshold = 300;
if (danger.github.pr.additions + danger.github.pr.deletions > prThreshold) {
warn(':exclamation: Big PR');
}
// dangerfile.ts
//...
const createLink = (href: string, text: string): string =>
`<a href='${href}'>${text}</a>`;
const toLinkList = (files: string[]): string => {
const repoURL = danger.github.pr.head.repo.html_url;
const ref = danger.github.pr.head.ref;
return files
.map(f => createLink(`${repoURL}/blob/${ref}/${f}`, f))
.map(a => `- ${a}`)
// dangerfile.ts
import { warn, danger, schedule } from "danger"
import { istanbulCoverage } from 'danger-plugin-istanbul-coverage';
// ...
schedule(
istanbulCoverage({
reportFileSet: 'createdOrModified',
danger:
executor:
name: default
steps:
- checkout
- restore_yarn
- restore_node
- run: yarn
- save_yarn
- save_node
export const formatDate = (date) => {
let result
if (date) {
const dateObj = new Date(date)
if (isToday(dateObj)) {
result = 'Today'
} else if (isYesterday(dateObj)) {
result = 'Yesterday'