Skip to content

Instantly share code, notes, and snippets.

View sujinnaljin's full-sized avatar
🙋‍♀️
I'm Bob5

강수진 sujinnaljin

🙋‍♀️
I'm Bob5
View GitHub Profile
페이로드 필드 의미 비고
scope 토큰 범위 이 토큰에 대해 App Store Connect에서 허용하려는 작업 목록(예: GET /v1/apps/123) optional
페이로드 필드 의미 비고
iss 발급자 ID {App Store Connect API 키 페이지의 발급자 ID}
iat 발행 시간 {토큰 생성 시간}
exp 만료 기간 {토큰 만료 시간} 💡 대부분의 경우 iat 과 exp 의 차이가 20분 이상이면 안됨
aud 대상자 appstoreconnect-v1
헤더 필드 의미 비고
alg 암호화 알고리즘 ES256 💡 App Store Connect API의 모든 JWT는 ES256 암호화로 서명되어야 합니다.
kid 키 식별자 {App Store Connect의 개인 키 ID}
typ 토큰 유형 JWT
@sujinnaljin
sujinnaljin / DictionaryStorageMacro.swift
Created July 1, 2023 07:36
DictionaryStorageMacro.swift
public struct DictionaryStorageMacro: MemberMacro {
public static func expansion(of node: AttributeSyntax,
providingMembersOf declaration: some DeclGroupSyntax,
in context: some MacroExpansionContext
) throws -> [DeclSyntax] {
let stringIdentifier = SimpleTypeIdentifierSyntax(name: .identifier("String"))
let anyIdentifier = SimpleTypeIdentifierSyntax(name: .keyword(.Any))
let dictionarySyntax = DictionaryTypeSyntax(leftSquareBracket: .leftSquareBracketToken(),
keyType: stringIdentifier,
# workflow 이름 지정
name: deploy
on:
# workflow 를 trigger 조건 설정 - release/ 로 시작하는 branch 가 push 되었을 때
push:
branches: [ release/* ]
# workflow의 실행은 하나 이상의 job으로 구성 됨
jobs:
# workflow 의 이름
name: Run Test
on:
# develop 브랜치에 push 나 pull request 이벤트가 일어났을때 해당 workflow 를 trigger
push:
branches: [ develop ]
pull_request:
branches: [ develop ]
//
// ViewController.swift
// KakaoMoneyEffect
//
// Created by naljin on 2021/07/30.
//
import UIKit
class ViewController: UIViewController {
func addSnowLayer() {
let cell = CAEmitterCell()
cell.contents = UIImage(named: "EmojiTwo")!.cgImage
cell.birthRate = 5
cell.lifetime = 10
cell.scale = 0.1
cell.yAcceleration = 100
cell.alphaSpeed = -0.2
let emitterLayer = CAEmitterLayer()
import UIKit
class ViewController: UIViewController {
let workerQueue = DispatchQueue(label: "com.sujinnaljin.worker",
attributes: .concurrent)
let falcon = Falcon(name: "naljin")
override func viewDidLoad() {
super.viewDidLoad()
//https://stackoverflow.com/questions/15741631/nsarray-from-nscharacterset/15742659#15742659
extension CharacterSet {
func characters() -> [Character] {
// A Unicode scalar is any Unicode code point in the range U+0000 to U+D7FF inclusive or U+E000 to U+10FFFF inclusive.
return codePoints().compactMap { UnicodeScalar($0) }.map { Character($0) }
}
func codePoints() -> [Int] {
var result: [Int] = []
var plane = 0