Attention: the list was moved to
https://github.com/dypsilon/frontend-dev-bookmarks
This page is not maintained anymore, please update your bookmarks.
Attention: the list was moved to
https://github.com/dypsilon/frontend-dev-bookmarks
This page is not maintained anymore, please update your bookmarks.
/** | |
* A generic confirmation for risky actions. | |
* Usage: Add attributes: ng-really-message="Really?" ng-really-click="takeAction()" function | |
*/ | |
angular.module('app').directive('ngReallyClick', [function() { | |
return { | |
restrict: 'A', | |
link: function(scope, element, attrs) { | |
element.bind('click', function() { | |
var message = attrs.ngReallyMessage; |
var app = angular.module('dragDrop', []); | |
app.directive('draggable', function() { | |
return function(scope, element) { | |
// this gives us the native JS object | |
var el = element[0]; | |
el.draggable = true; | |
el.addEventListener( |
SchemaSpy is a neat tool to produce visual diagrams for most relational databases.
Here's how to use it to generate schema relationship diagrams for PostgreSQL databases:
Download the jar file from here (the current version is v6.1.0)
Get the PostgreSQL JDBC driver (unless your installed version of java is really old, use the latest JDBC4 jar file)
Run the command against an existing database. For most databases, the schema (-s option) we are interested in is the public one:
var traverse = function(o, fn) { | |
for (var i in o) { | |
fn.apply(this,[i,o[i]]); | |
if (o[i] !== null && typeof(o[i])=="object") { | |
traverse(o[i], fn); | |
} | |
} | |
} | |
// usage |
A. IdentityServer3 docs, samples and source code use OIDC & OAuth2 terms interchangeably to refer to same thing in many areas. I think that's make sense because OIDC introduced as complement & extension for OAuth2.
B. IdentityServer3, STS, OP, OIDC server, OAuth2 server, CSP, IDP and others: means same thing (software that provide/issue tokens to clients) as explained in [Terminology] (http://identityserver.github.io/Documentation/docs/overview/terminology.html).
C. Grants and flows mean same thing, grant was the common term in OAuth2 specs and flow is the common term in OIDC specs.
D. This document will not focus on custom flow/grant.
E. [Important] Choosing wrong flow leads to security threat.
import {PipeTransform, Pipe} from 'angular2/core'; | |
@Pipe({ name: 'highlight' }) | |
export class HighLightPipe implements PipeTransform { | |
transform(text: string, [search]): string { | |
return search ? text.replace(new RegExp(search, 'i'), `<span class="highlight">${search}</span>`) : text; | |
} | |
} | |
/** Usage: |
[CmdletBinding(SupportsShouldProcess)] | |
param ( | |
# Only one of these may be used. | |
[Parameter(ParameterSetName='Major')] | |
[switch]$Major, | |
[Parameter(ParameterSetName='Minor')] | |
[switch]$Minor, | |
[Parameter(ParameterSetName='Patch')] | |
[switch]$Patch, | |
[Parameter(ParameterSetName='Version')] |
import { NgbDatepickerConfig, NgbDateParserFormatter } from '@ng-bootstrap/ng-bootstrap'; | |
import { NgbDateFRParserFormatter } from "./ngb-date-fr-parser-formatter" | |
@Component({ | |
providers: [{provide: NgbDateParserFormatter, useClass: NgbDateFRParserFormatter}] | |
}) | |
export class AppComponent {} |