Skip to content

Instantly share code, notes, and snippets.

.wrapper {
display: flex;
justify-content: space-between;
}
<input class="tgl tgl-flip" id="cb5" type="checkbox" ng-model="vm.pattern.isPublic">
<label class="tgl-btn" data-tg-off="Private" data-tg-on="Public" for="cb5"></label>
@Graniron
Graniron / Parent.vue
Created June 14, 2017 07:59
Switcher component for vue.js
<div>
<app-switch v-model="dataSwitch"></app-switch>
</div>
@Graniron
Graniron / credit-card.directive.ts
Last active September 16, 2017 17:04
Angular custom directive for masking input
import { Directive, HostListener } from '@angular/core';
@Directive({
selector: '[credit-card]'
})
export class CreditCardDirective {
@HostListener('input', ['$event'])
onKeyDown(event: KeyboardEvent) {
const input = event.target as HTMLInputElement;
@Graniron
Graniron / credit-card.directive.ts
Created September 16, 2017 18:13
Angular directive for input validation
import { Directive, HostListener, HostBinding } from '@angular/core';
@Directive({
selector: '[credit-card]'
})
export class CreditCardDirective {
@HostBinding('style.border')
border: string;
@HostListener('input', ['$event'])
@Graniron
Graniron / form.component.ts
Created September 16, 2017 18:18
Angular tooltip directive(with exportAs)
import { Component } from '@angular/core';
@Component({
selector: 'form-component',
template: `
<div>
<label>
Name
<input
name="name"
@Graniron
Graniron / index.js
Created October 4, 2017 06:13
Get file type from array buffer(based on hexadecimal/magic-number value)
function getImageType(arrayBuffer){
var type = "";
var dv = new DataView(arrayBuffer,0,5);
var nume1 = dv.getUint8(0,true);
var nume2 = dv.getUint8(1,true);
var hex = nume1.toString(16) + nume2.toString(16) ;
switch(hex){
case "8950":
type = "image/png";
var copy = JSON.parse(JSON.stringify(tags));
@Graniron
Graniron / service.ts
Created December 8, 2017 11:01
Angular: create dynamic component from service
constructor(
private componentFactoryResolver: ComponentFactoryResolver,
private appRef: ApplicationRef,
private injector: Injector
) { }
appendComponentToBody(component: any) {
// 1. Create a component reference from the component
const componentRef = this.componentFactoryResolver
.resolveComponentFactory(component)
@Graniron
Graniron / has-value.validator.ts
Created June 3, 2021 13:22
NG: hasValueValidator
const hasValueValidator = (formGroup: FormGroup) => {
const hasValue = (val: string | string[]) => Array.isArray(val) ? val.length > 0 : !!val;
const formIsFilled = Object.values(formGroup.value).some(hasValue);
return formIsFilled ? null : { empty: true };
}