Skip to content

Instantly share code, notes, and snippets.

View kousherAlam's full-sized avatar
💭
I may be slow to respond..

Kousher alam kousherAlam

💭
I may be slow to respond..
View GitHub Profile
@kousherAlam
kousherAlam / blog-loop.html
Created February 1, 2018 20:38 — forked from kylerush/blog-loop.html
An example of a blog post loop in Jekyll.
{% for post in site.posts %}
<article class="{% if forloop.first %}first{% elsif forloop.last %}last{% else %}middle{% endif %}">
<div class="article-head">
<h2 class="title"><a href="/{{ post.url }}/" class="js-pjax">{{ post.title }}</a></h2>
<p class="date">{{ post.date | date: "%b %d, %Y" }}</p>
</div><!--/.article-head-->
<div class="article-content">
{{ post.long_description }}
<a href="/{{ post.url }}/" class="full-post-link js-pjax">Read more</a>
</div><!--/.article-content-->
@kousherAlam
kousherAlam / hot-reload-extracted-stylesheets
Created March 4, 2018 16:39 — forked from christopher4lis/hot-reload-extracted-stylesheets
This snippet allows webpack-dev-server to hot reload stylesheets extracted with the ExtractTextWebpackPlugin
if (module.hot) {
const hotEmitter = require("webpack/hot/emitter");
const DEAD_CSS_TIMEOUT = 2000;
hotEmitter.on("webpackHotUpdate", function(currentHash) {
document.querySelectorAll("link[href][rel=stylesheet]").forEach((link) => {
const nextStyleHref = link.href.replace(/(\?\d+)?$/, `?${Date.now()}`);
const newLink = link.cloneNode();
newLink.href = nextStyleHref;
@kousherAlam
kousherAlam / browser-sync-config.js
Created March 4, 2018 17:00 — forked from christopher4lis/browser-sync-config.js
Webpack Dev Server + Browser Sync Config
new BrowserSyncPlugin({
host: 'localhost',
port: 3001,
proxy: 'http://localhost:8081/',
files: [{
match: [
'**/*.hbs'
],
fn: function(event, file) {
if (event === "change") {
@kousherAlam
kousherAlam / jsCoreDomFunctions.js
Last active November 19, 2018 04:56
basic dom functionality implemented with prototype
document.addEventListener("DOMContentLoaded", function(){
// write your script here
var demo = _("demo");
demo.html("Hello").addClass("hi").attr('data-name','test')
.css('background-color-is-','black');
// demo.addClass("your anme");
// demo.fadeIn();
// demo.remove();
// demo.hide();
console.log(demo);

Observer and promises in javascript

The main defference between observable and promises is:

1. observer can emit multiple value, but promise only can work with single value. when promise `reject` or `resolve` they end.
2. promise is **eager** but observer are **lazy**
3. Promise are not cancelable but observable are cancelable 
4. Promises are always asynchronous but obervable are possibly asnychronous.
5. Promise are always multicast but Observable are both multicase and unicast

example:

Lua Syntax

Lua is a dynamically typed language. There are no type definitions in the language. All values carry their own type. All values in Lua are first-class values. This means that all values can be stored in variables, passed as arguments to other functions, and returned as results

There are eight basic types in Lua: nil, boolean, number, string, function, userdata, thread, and table.

The type table implements associative arrays, that is, arrays that can be indexed not only with numbers, but with any value (except nil). Tables can be heterogeneous; that is, they can contain values of all types (except nil).

Comment

single linke comment start with --

import { Request, Response } from "express";
import { successResponse } from "../../Helpers/Responses/successResponse";
import { ApiConfig } from "../../Configs/Api.Config";
import { errorResponse } from "../../Helpers/Responses";
const { OAuth2Client } = require("google-auth-library");
const { google } = require("googleapis");
export default async function googleLogin(request: Request, response: Response) {
console.log(ApiConfig.THIRD_PARTY_LOGIN_API.GOOGLE.SCOPES);
@kousherAlam
kousherAlam / .block
Last active July 2, 2019 05:15
d3-test-01
license: mit
@kousherAlam
kousherAlam / token-interceptor.service.ts
Created April 13, 2020 18:08 — forked from abereghici/token-interceptor.service.ts
Angular Tutorial — Implement Refresh Token with HttpInterceptor
// src/app/services/token-interceptor.service.ts
import { Injectable } from "@angular/core";
import { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from "@angular/common/http";
import { AuthenticationService } from "../authentication.service";
import { Observable } from "rxjs/Observable";
import { BehaviorSubject } from "rxjs/BehaviorSubject";
@Injectable()
export class RefreshTokenInterceptor implements HttpInterceptor {
import { Observable, Subject, from, throwError } from 'rxjs';
import { map, catchError, tap, switchMap } from 'rxjs/operators';
import { Injectable } from '@angular/core';
import { HttpClient, HttpErrorResponse } from '@angular/common/http';
import { AuthService } from 'ngx-auth';
import { TokenStorage } from './token-storage.service';
import { UtilsService } from '../services/utils.service';
import { AccessData } from './access-data';
import { Credential } from './credential';