Skip to content

Instantly share code, notes, and snippets.

View arturdev's full-sized avatar

Artur Mkrtchyan arturdev

View GitHub Profile
@arturdev
arturdev / URLRequest+Multipart.swift
Last active February 21, 2023 18:59
URLRequest with multipart support
//
// URLRequest+Multipart.swift
//
// Created by Artur Mkrtchyan on 1/16/19.
// Copyright © 2019 arturdev. All rights reserved.
//
import Foundation
import MobileCoreServices
//
// UIScrollView+ParallaxHeader.swift
// ParallaxHeader
//
// Created by Artur Mkrtchyan on 3/24/20.
// Copyright © 2020 Artur Mkrtchyan. All rights reserved.
//
import UIKit
private class ParralaxView: UIView {
@arturdev
arturdev / CGPoint+Math.swift
Created August 20, 2023 00:09
UIBezierPath+Superpowers
//
// CGPoint+Math.swift
//
// Created by Artur Mkrtchyan on 10/24/20.
//
import UIKit
public extension CGPoint {
func symmetryTo(point: CGPoint) -> CGPoint {
@arturdev
arturdev / Test.js
Created August 27, 2023 09:47
Test
// Playerjs.com 18.18.3
// 05.06.2023 16:07:42
// API - https://playerjs.com/docs/q=api
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('if(!1Z.62){B 62=[];B gl}if(1Z[\'MQ\']){1F(MQ,1)};E IN(3y){B o={1G:K,pi:[],Cc:[],mQ:\'Rq\',Rm:Oe,RR:M8,7T:\'18.18.3\',jq:[\'\',\'Ob\'],mF:\'\',2f:K,9C:K,bf:K,RO:K,gq:K,6S:K,aI:K,aK:K,u:\'#Rh#GK#ew#RB#Rg#Rr#RH#S0#RZ#ew#RK#Rx#ew#Ro#Tw#Tt#Td#ew#U6#TT#TQ#ew#TO#TK#TJ#GK#ew#SF#T8#Sy#Sw#Sr#Sq#So#Sl#Sf#T6#ew#T5#T4#T0#SX#SS/SP#ew#SY#SE#SB#T9#TF#TG=\',u2:\'#U1#U3#jJ#U7#U9#Ua#S9#Tp#jJ#Tc#Th#Ti#Tz#jJ#Ru#RD#Rn#jJ#Rw#Rt#RW#RJ#jJ#Rk#Y6==\',u3:\'\',u4:\'\',u5:\'\',u6:\'\',u7:\'\',u8:\'\',u9:\'\',Y5:\'\',y:\'xx????=\',p:\'#Y4=\',Y1:-1,yX:"tQ",ih:"//tQ.6R",8q:[],dt:G,pr:G,ga:K,ab:K,ls:[],XZ:K,gu:\'//.9l//\',wF:0,3I:[