SELECT DISTINCT colA, colB, colC picks only one row per distinct combination of all columns colA and colB and colC, dropping the duplicates.
Source: https://chartscreator.com/blog/postgresql-distinct-on-multiple-columns/
{ | |
"editor.inlineSuggest.enabled": true, | |
"github.copilot.enable": { | |
"*": false, | |
"plaintext": false, | |
"markdown": false, | |
"scminput": false, | |
"ts": true, | |
"js": true, | |
"jsx": true, |
import { useMemo, useRef } from 'react'; | |
import { useMemoizedFn } from 'ahooks'; | |
import { noop } from 'lodash'; | |
type UseRadioInputs = { | |
// Defaults to undefined | |
defaultValue?: any; | |
onChange?: (value: any) => void; |
1. yarn add --dev detox jest-circus | |
2. detox init -r jest (This creates the e2e folder along with the .detoxrc.json) | |
3. yarn add --dev eslint-plugin-detox (optional) | |
plugins: [...'detox'...], | |
- Add this to your eslint config plugins | |
4.Make sure your your **eas.json** has a simulator build set up that looks like this then create a simulator release build by running: **eas build --profile simulator --platform ios** | |
"simulator": { | |
"ios": { | |
"simulator": true, |
SELECT DISTINCT colA, colB, colC picks only one row per distinct combination of all columns colA and colB and colC, dropping the duplicates.
Source: https://chartscreator.com/blog/postgresql-distinct-on-multiple-columns/
Paste without formating - Command+Option+Shift+V - https://www.howtogeek.com/285319/how-to-paste-text-without-formatting-on-macos/
Cu.import('resource://gre/modules/ctypes.jsm'); | |
const cg = ctypes.open('/System/Library/Frameworks/CoreGraphics.framework/CoreGraphics'); | |
const CFTimeInterval = ctypes.double; | |
const CGEventSourceStateID = ctypes.uint32_t; | |
const CGEventType = ctypes.uint32_t; | |
const kCGEventSourceStateCombinedSessionState = 0; | |
const kCGAnyInputEventType = 0xFFFFFFFF; |
import React, { | |
Children, | |
createContext, | |
useContext, | |
useEffect, | |
useRef, | |
useState | |
} from 'react'; | |
import { |
import React, { useCallback, useEffect, useRef } from 'react';import { defaults, omit, pick } from 'lodash'; | |
import { useController, UseControllerProps } from 'react-hook-form'; | |
import { TextInput, TextInputProps } from 'react-native';import { HookedInputTransformer } from 'src/lib/react-hook-form-transforms';interface HookedTextInputProps | |
extends Omit<TextInputProps, 'defaultValue'>, | |
UseControllerProps { | |
transform?: HookedInputTransformer; | |
}export default function withHookedInput( | |
ControlledInputComponent: typeof TextInput | |
) { | |
function HookedInput({ transform, ...props }: HookedTextInputProps) { |
import * as React from 'react'; | |
import { Text, View, StyleSheet, TextInput, Button, Alert } from 'react-native'; | |
import { useForm, useController } from 'react-hook-form'; | |
import Constants from 'expo-constants'; | |
import { pick, omit, defaults } from 'lodash'; | |
const REQUIRED = { required: true }; | |
function ClassicHookedTextInput(props) { | |
const controllerProps = defaults( |
var { stripIndents } = require("common-tags") | |
const toTitle = ad => ad.title; | |
const ads = [{ title: 'a' }, { title: 'b' }]; | |
function bulletLists(strs, ...lists) { | |
return strs.reduce((compiled, str, ix) => { | |
compiled.push(str); | |
const list = lists[ix]; | |
if (list) { |