Skip to content

Instantly share code, notes, and snippets.

View susilolab's full-sized avatar

Agus Susilo susilolab

View GitHub Profile
@susilolab
susilolab / js-tips.js
Created January 7, 2024 01:10
Tips javascript
// generate array 1 - 10
const nums = [...Array.from(10).keys()].map(x => ++x)
// [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
// dimulai dari 0
const nums = [...Array.from(10).keys()]
// [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
@susilolab
susilolab / .env
Last active November 21, 2023 13:02
Fungsi pada async amphp tidak mau lanjut ke fungsi berikutnya jika pake `Emitter` dan lanjut jika pake `Amp\Iterator\map`
DB_HOST=127.0.0.1
DB_USER=user
DB_PASSWD=password
DB_NAME=test
@susilolab
susilolab / DataTable.php
Created November 14, 2023 08:11
Contoh Server Side Processing dengan datatable dan laravel 10
<?php
declare(strict_types=1);
namespace App\Helpers;
use Illuminate\Database\Query\Builder;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Log;
@susilolab
susilolab / log-query.php
Created November 10, 2023 06:32
Log query beserta paramternya pada query builder di laravel 10
<?php
// Sebelum query aktifkan log query
DB::enableQueryLog();
$query = DB::table('demo')->where('id', '=', 1);
// Setelah query get lognya.
Log::error(print_r(DB::getQueryLog(), true));
<div id="canvas"></div>
<style>
#canvas {
width: 500px;
height: 300px;
border: 5px solid black;
position: relative;
box-sizing: content-box;
}
@susilolab
susilolab / static-compile.sh
Created October 22, 2023 13:18
Compile rust secara static binary
#!/bin/bash
RUSTFLAGS='-C target-feature=+crt-static' cargo build --release --target x86_64-unknown-linux-musl
# hasil compile diatas akan bisa dieksekusi disemua os linux
@susilolab
susilolab / jquery-ajax-timeout.js
Created October 20, 2023 16:23
Ajax timeout dengan jQuery
'use strict'
function fetchTimeout(url, timeout, {signal, ...options} = {}) {
function createJqueryAjaxAbortAdapter(signal) {
return function(jqXhr) {
signal.addEventListener("abort", () => {
jqXhr.abort();
});
};
}
@susilolab
susilolab / ajax-timeout.js
Last active October 22, 2023 13:19
Request ajax dengan timeout pure js
'use strict'
const fetchTimeout = (url, ms, {signal, ...options} = {}) => {
const controller = new AbortController()
const promise = fetch(url, {signal: controller.signal, ...options})
if (signal) signal.addEventListener('abort', () => controller.abort())
const timeout = setTimeout(() => controller.abort(), ms)
return promise.finally(() => clearTimeout(timeout))
}
@susilolab
susilolab / setting-cl-compilter.md
Last active July 4, 2023 01:23
Setting cl compiler powershell windows 10
function Invoke-CmdScript {
  param(
    [String] $scriptName
  )
  $cmdLine = """$scriptName"" $args & set"
  & $env:SystemRoot\system32\cmd.exe /c $cmdLine |
  Select-String '^([^=]*)=(.*)$' | ForEach-Object {
    $varName = $_.Matches[0].Groups[1].Value
 $varValue = $_.Matches[0].Groups[2].Value
@susilolab
susilolab / dirname-es6.md
Created June 26, 2023 21:25
alternative __dirname di modul es6

__dirname di es6 dapat dibuat sendiri dengan bantuan modul path, url dan import.meta

import path, { dirname } from 'path'
import { fileURLToPath } from 'url'

const __dirname = dirname(fileURLToPath(import.meta.url))