Skip to content

Instantly share code, notes, and snippets.

View ddikodroid's full-sized avatar
🚀
rocket science

Ahmad Syarifuddin Randiko ddikodroid

🚀
rocket science
  • Central Bank of Indonesia
  • Jakarta, Indonesia
  • 19:04 (UTC +07:00)
  • X @pxlpd
View GitHub Profile
@ddikodroid
ddikodroid / nvmCommands.js
Created November 20, 2023 09:53 — forked from chranderson/nvmCommands.js
Useful NVM commands
// check version
node -v || node --version
// list locally installed versions of node
nvm ls
// list remove available versions of node
nvm ls-remote
// install specific version of node
import AsyncStorage from '@react-native-async-storage/async-storage';
import create from 'zustand';
import { persist } from 'zustand/middleware';
export const useSomthingStore = create<TSomthingStore>(
persist(
(set, get) => ({
isTrue: false,
_hasHydrated: false,
setHasHydrated: state => {
@ddikodroid
ddikodroid / test-setup.ts
Created November 14, 2022 06:09 — forked from xiongemi/test-setup.ts
mock @react-navigation/native for unit testing
jest.mock('@react-navigation/native', () => {
return {
useNavigation: () => ({
navigate: jest.fn(),
dispatch: jest.fn(),
}),
useRoute: () => ({
params: {
id: '123',
},
@ddikodroid
ddikodroid / app.spec.ts
Created November 14, 2022 06:09 — forked from xiongemi/app.spec.ts
stater e2e test StudioGhibliSearchEngineApp
import { device, element, by, expect } from 'detox';
describe('StudioGhibliSearchEngineApp', () => {
beforeEach(async () => {
await device.reloadReactNative();
});
it('should display heading', async () => {
await waitFor(element(by.id('search-page'))).toBeVisible().withTimeout(5000);
await expect(element(by.id('heading'))).toBeVisible();
@ddikodroid
ddikodroid / search.spec.ts
Created November 14, 2022 06:09 — forked from xiongemi/search.spec.ts
example detox e2e tests for search flow
import { device, element, by, expect } from 'detox';
describe('Search', () => {
beforeEach(async () => {
await device.reloadReactNative();
});
it('should show a list of results and go to film details', async () => {
await waitFor(element(by.id('search-page')))
.toBeVisible()
@ddikodroid
ddikodroid / e2e.spec.ts
Created November 14, 2022 06:09 — forked from xiongemi/e2e.spec.ts
e2e test template
import { device, element, by, expect } from 'detox';
describe('<your page>', () => {
beforeEach(async () => {
await device.reloadReactNative();
});
it('should ...', async () => {
await waitFor(element(by.id('your page testID')))
.toBeVisible()
{
"2023":{
"2023-05":{
"2023-05-1":{
"location": "Mediterania Garden Residence",
"startTime": "08.00",
"endTime": "17.00",
"address": "Main Lobby, Apartment Mediterania Garden Residence 1 (Bougenville Tower)",
"image": "https://asset.kompas.com/crops/BFQQ80bdcr1_P5L_BglS4Gwd82E=/0x1068:3072x3116/750x500/data/photo/2021/02/09/602286cc9e72a.jpeg",
"clockIn":"07.50",
{
"image":"https://picsum.photos/400"
}
LOG learnerid: 25209472407394
LOG PL Next Assesment Response Data: {"assessment_id": "27483269192103", "assessment_version": 0.5, "status": "available", "target_group": "students"}
LOG assessment_id: 27483269192103
[{"DisplayOrder": 2, "Group": "Personal Growth", "Question": "Where are you now in your academic career & how do you feel towards it?", "answers": [[Object], [Object], [Object], [Object], [Object], [Object], [Object], [Object], [Object]], "id": "5143712996293"}, {"DisplayOrder": 3, "Group": "Personal Growth", "Question": "Out of the following, what would you like to accomplish?", "answers": [[Object], [Object], [Object], [Object], [Object], [Object], [Object], [Object], [Object], [Object], [Object], [Object]], "id": "52477710108843"}, {"DisplayOrder": 4, "Group": "Personal Growth", "Question": "How important is it for you to achieve these outcomes", "answers": [[Object], [Object], [Object], [Object], [Object], [Object], [Object]], "id": "107696104477360"}, {"DisplayOrder": 5, "Group": "
const currencyCode = 'Rp '
const currencyPosition = 'left'
const maxFractionDigits = 2
const decimalSeparator = ','
const thousandSeparator = '.'
function position(currencyPosition, value) {
return currencyPosition === 'left'
? `${currencyCode}${value}`
: `${value}${currencyCode}`