Skip to content

Instantly share code, notes, and snippets.

View hungtcs's full-sized avatar

鸿则 hungtcs

View GitHub Profile
@hungtcs
hungtcs / base64-to-file.ts
Created December 26, 2023 01:22
Convert base64 string to File
function base64ToFile(base64: string, filename: string) {
const [header, code] = base64.split(',')
const cotnentType = header.replace(/(data:)|(;base64)/g, '');
const byteStr = atob(code);
const bytes = new Array(byteStr.length);
for (var i = 0; i < byteStr.length; i++) {
bytes[i] = byteStr.charCodeAt(i);
}
const byteArray = new Uint8Array(bytes);
@hungtcs
hungtcs / timezones.json
Created January 26, 2024 05:38
timezone list
[
{
"label": "Asia/Kabul",
"value": "+04:30"
},
{
"label": "Europe/Tirane",
"value": "+01:00"
},
{
@hungtcs
hungtcs / dark-mode.css
Created February 2, 2024 02:34
Change any site to dark mode
/* https://github.com/openstyles/stylus/ */
html {
filter: invert(1) hue-rotate(180deg);
color-scheme: dark;
}
html img{
filter: invert(1) hue-rotate(180deg);
}
@hungtcs
hungtcs / capture.js
Last active February 2, 2024 05:25
Capture elements with html2canvas
async function capture(element, options = {}) {
const module = await import('https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.esm.js')
const html2canvas = module.default;
return await html2canvas(element, options);
}
async function canvasToBlob(canvas, type, quality) {
return await new Promise((resolve) => {
canvas.toBlob(blob => resolve(blob), type, quality);
});
@hungtcs
hungtcs / temp.go
Created April 11, 2024 08:27
starlark format function like js string interpolation
var predeclared = starlark.StringDict{
"format": starlark.NewBuiltin("format", func(thread *starlark.Thread, fn *starlark.Builtin, args starlark.Tuple, kwargs []starlark.Tuple) (starlark.Value, error) {
var function = thread.DebugFrame(1).Callable().(*starlark.Function)
var locals = function.Locals()
var globals = function.Globals()
var formatArgs = make(map[string]starlark.Value)
for key, val := range globals {
formatArgs[key] = val
@hungtcs
hungtcs / docker-entrypoint.sh
Created April 17, 2024 01:34
docker 支持使用 ENV_FILE 环境变量
#!/usr/bin/env bash
# set -v
set -e
file_env() {
local var="$1"
local fileVar="${var}_FILE"
local def="${2:-}"
@hungtcs
hungtcs / github-jsdelivr-link.user.js
Last active December 10, 2024 01:17
获取 Github 文件的 JsDelivr CDN 连接