Skip to content

Instantly share code, notes, and snippets.

@sinchang
sinchang / functional-http-service.ts
Created September 15, 2023 11:44 — forked from maxgaurav/functional-http-service.ts
A Interceptor system for raw ajax on rxjs to get same functionality as in angular http client interceptor.
import { ajax, AjaxConfig, AjaxResponse } from 'rxjs/ajax';
import { from, Observable, of, OperatorFunction, switchMap } from 'rxjs';
export type BeforeInterceptors = (config: AjaxConfig) => Promise<AjaxConfig> | AjaxConfig | Observable<AjaxConfig>;
export type AfterInterceptors<T extends any = any> = (response: AjaxResponse<T>) => Observable<AjaxResponse<T>> | AjaxResponse<T> | Promise<AjaxResponse<T>>;
const BEFORE_INTERCEPTORS: BeforeInterceptors[] = [];
const AFTER_INTERCEPTORS: AfterInterceptors[] = [];
interface ConfigInterceptor {
@sinchang
sinchang / fly.toml
Created April 25, 2023 11:47 — forked from frostming/fly.toml
A Fly.io config file for OpenCat™ for Team that can be deployed directly
# fly.toml file generated for still-snowflake-6351 on 2023-03-30T09:53:40+08:00
kill_signal = "SIGINT"
kill_timeout = 5
primary_region = "sin"
processes = []
[build]
image = "bayedev/opencatd"
@sinchang
sinchang / undefined
Last active December 7, 2022 20:05
⚡️ Recent activity
🎉 Merged PR #50 in sinchang/vstar
🎉 Merged PR #49 in sinchang/vstar
❗️ Closed issue #1 in kujitegemea/language-colors
❗️ Opened issue #1 in kujitegemea/language-colors
❌ Closed PR #1 in sinchang/wiki
@sinchang
sinchang / uBlacklist.txt
Last active August 23, 2022 08:38
uBlacklist Subscription
*://bleepcoder.com/*
*://githubja.com/*
*://*.gitmemory.com/*
*://giters.com/*
*://githubmemory.com/*
*://code-examples.net/*
*://kotaeta.com/*
*://code.i-harness.com/*
*://living-sun.com/*
*://tutorialmore.com/*
@sinchang
sinchang / extensions.json
Last active October 30, 2020 06:13
VSCode's Settings - Syncing
[
{
"id": "atlassian.atlascode",
"name": "atlascode",
"publisher": "atlassian",
"version": "2.8.3"
},
{
"id": "be5invis.vscode-custom-css",
"name": "vscode-custom-css",
@sinchang
sinchang / step.md
Last active July 23, 2019 08:32
mac dev env

install Homebrew

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

install Oh My Zsh

sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
'use strict'
/**
* https://github.com/Rokid/NextForum/blob/master/server.js
*/
const fs = require('fs')
const path = require('path')
const https = require('https')
const app = require('express')()
const targetHost = process.env.API_URL
@sinchang
sinchang / base64-image-upload.js
Last active January 1, 2018 05:27 — forked from madhums/base64-image-upload.js
save base64 encoded image
/*
* Taken from http://stackoverflow.com/questions/5867534/how-to-save-canvas-data-to-file/5971674#5971674
*/
var fs = require('fs');
// string generated by canvas.toDataURL()
var img = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABUAAAAFdCAYAAADCAcdtAAAgAElEQVR4XuydB5hdVbn+37XLKdNnkkx6D4SEFKog0ptSVQSuwLVfBJWr+FesINxLUUQpylVAiiDSe6/SBJEaTCCBhPQ+M5l+2i7r/7zrzJoMYYZkMJNMMt++z9xzcuacXX5rz/D4m/f7PhXHsYZsQkAIbBUCSqlNPq5GDOgYqpBBy+N/Rcv9FyCZjJHxfJQErfDDJLROQ8NB7GagnQLcOAGtgOWqGjPPuR1x7VRoz4Wr2xGqFCK48IufAMBzcTb5fOSNQmBbJ6B68wO4rV+snL8QEAJCQAgIASEgBISAEBACQmAAE1AiQAfw6sulb3UCvfEvIkC3+nLJCWxnBESAbmcLKpcjBISAEBACQkAICAEhIASEgBDogYAIULk1hMBWJCACdCvCl0MPeAIiQAf8LSAAhIAQEAJCQAgIASEgBISAEBggBESADpCFlsvsnwREgPbPdZGzGhgERIAOjHWWqxQCQkAICAEhIASEgBAQAkJACIgAlXtACGxFAiJAtyJ8OfSAJyACdMDfAgJACAgBISAEhIAQEAJCQAgIgQFCQAToAFloucz+SUAEaP9cFzmrgUFABOjAWGe5SiEgBISAEBACQkAICAEhIASEgAhQuQeEwFYkIAJ0K8KXQw94AiJAB/wtIACEgBAQAkJACAgBISAEhIAQGCAERIAOkIWWy+yfBESA9s91kbMaGAREgA6MdZarFAJCQAgIASEgBISAEBACQkAIiACVe0AIbEUCIkC3Inw59IAnIAJ0wN8
@sinchang
sinchang / roles_invesitgation.md
Created July 3, 2017 07:05 — forked from facultymatt/roles_invesitgation.md
Roles and permissions system for Nodejs
@sinchang
sinchang / gulpfile.js
Last active March 1, 2017 07:42
gulpfile.js
//引入gulp
var gulp = require('gulp');
//引入组件
var htmlmin = require('gulp-htmlmin'),
imagemin = require('gulp-imagemin'),
sass = require('gulp-ruby-sass'),
concat = require('gulp-concat'),
minifycss = require('gulp-minify-css'),
rename = require('gulp-rename'),