Skip to content

Commit

Permalink
@use-funnel 0.0.1 (#1)
Browse files Browse the repository at this point in the history
* first commit

* 첫번째 논의

* transition + sample

* update

* 최종

* add test

* 코드 정리

* 코드정리, step.id 제거, 테스트 분리

* remove core from entry

* setup eslint, prettier, ...etc

* update husky option

* 모노레포 세팅 (#1)

* setup

* remove adapter context

* react-router-dom package init

* setup hygen

* add browser package

* update README.md

* fix type

* 현재 스텝도 다음 단계로 설정할 수 있게 변경

* fix package.json target file

* renderHelpers 추가, with 프로퍼티로 사용

* missing import fix

* publishConfig 세팅 추가

* 누락된 package.json files 추가

* init changeset

* ExtendedFunnelContext 추가

* changeset

* add readme.md

* update version

* with event의 dispatch 사용방식 변경

* feat: @useFunnel/next 추가 (#2)

* next package.json 수정반영

* init lerna

* v0.0.1-alpha.0

* v0.0.1-alpha.1

* v0.0.1-y.0

* Revert "v0.0.1-y.0"

This reverts commit 7d7a2a1.

* v0.0.1-alpha.2

* v0.0.1-alpha.3

* prepublish setup

* step builder 추가

* history.go 제거

* feat(core): funnel router에서 overlay 여부를 알 수 있게 한다. (#5)

* fix: asPath에 pathname 할당하지 않으면 basePath가 사라지는 문제

* feat: makePath 함수 util로 분리 및 테스트 코드 작성

* feat: overlay close 추가, router 설정의 currentState 삭제 (#6)

* feat: overlay close 추가, router 설정의 currentState 삭제

* type: add FunnelRenderOverlayHandler

* feat: Render.overlay 추가, renderHelper 타입 정리

* feat: @use-funnel/react-navigation-native (#4)

* feat: @use-funnel/react-navigation-native

* history가 비어있지 않게 수정

* Overlay 관련 스펙 추가 (push할때 스택을 만들지 않게 한다.)

* feat(core): funnel router에서 overlay 여부를 알 수 있게 한다. (#5)

* remove unused

* fix: asPath에 pathname 할당하지 않으면 basePath가 사라지는 문제

* feat: makePath 함수 util로 분리 및 테스트 코드 작성

* feat: overlay close 추가, router 설정의 currentState 삭제 (#6)

* feat: overlay close 추가, router 설정의 currentState 삭제

* type: add FunnelRenderOverlayHandler

* feat: Render.overlay 추가, renderHelper 타입 정리

* 테스트 케이스 강화

---------

Co-authored-by: line0 <[email protected]>

* fix: 서브퍼널 사용 시 상태 쿼리파라미터가 제거되지 않는 문제 히결 (#7)

* v0.0.1-alpha.4

* v0.0.1-alpha.5

* docs: 문서 세팅

* fix doc style

* v0.0.1-alpha.6

* fix type export

* docs: 문서 추가

* react 17 지원을 위해 `use-sync-external-store/shim` 적용

* use-sync-external-store 제거, 직접 이벤트 설정

* 잘못된 문서 패키지 설정 수정

* lerna 삭제, 0.0.1 에서 넘버링 시작

* 문서 수정

* exit pre

* Exit prerelease mode

* doc: 전체적인 문서 피드백 반영

* docs: 소개 동영상 추가

* feat: setup workflows

* doc: useFunnel() 문서 추가

* 문서 (#10)

* docs: 구조 변경 (wip)

* docs: 새로운 구조 적용

* apply feedback

* docs: 소개, 가이드 파트 재정리

* docs: 키워드 컴포넌트 사용법 변경 적용

* docs: 내용 수정

* docs: 표현 수정

* docs: 표현 수정 2

* 뒤로가기 추가

* context guide 에서 parse 예시 잘못된거 수정

* 문단 정리

---------

Co-authored-by: juyeon.han <[email protected]>

* fix: changset에서 doc 무시하기

* fix: changeset change log add repo

* fix: delete pnpm-lock.yaml in core package

---------

Co-authored-by: 권선영 <[email protected]>
Co-authored-by: juyeon.han <[email protected]>
  • Loading branch information
3 people authored Jul 25, 2024
1 parent 986feae commit ef9163f
Show file tree
Hide file tree
Showing 116 changed files with 19,224 additions and 1 deletion.
8 changes: 8 additions & 0 deletions .changeset/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Changesets

Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works
with multi-package repos, or single-package repos to help you version and publish your code. You can
find the full documentation for it [in our repository](https://github.com/changesets/changesets)

We have a quick list of common questions to get you started engaging with this project in
[our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md)
11 changes: 11 additions & 0 deletions .changeset/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"$schema": "https://unpkg.com/@changesets/[email protected]/schema.json",
"changelog": ["@changesets/changelog-github", { "repo": "toss/use-funnel" }],
"commit": false,
"fixed": [],
"linked": [],
"access": "restricted",
"baseBranch": "main",
"updateInternalDependencies": "patch",
"ignore": ["docs"]
}
2 changes: 2 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
**/node_modules/
**/dist/
59 changes: 59 additions & 0 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
module.exports = {
root: true,
extends: ['plugin:@typescript-eslint/recommended', 'plugin:prettier/recommended'],
parser: '@typescript-eslint/parser',
plugins: ['simple-import-sort'],
overrides: [
{
files: ['*.js', '*.cjs', '*.cts'],
rules: {
'@typescript-eslint/no-var-requires': 'off',
},
},
{
files: ['*.test.ts'],
rules: {
'@typescript-eslint/ban-ts-comment': 'off',
},
},
],
rules: {
'@typescript-eslint/explicit-module-boundary-types': 'off',
'@typescript-eslint/no-inferrable-types': 'off',
'@typescript-eslint/ban-types': 'off',
'@typescript-eslint/no-redeclare': 'off',
'@typescript-eslint/no-non-null-assertion': 'off',
'@typescript-eslint/no-explicit-any': 'off',
'@typescript-eslint/no-empty-interface': 'off',
'@typescript-eslint/no-unsafe-declaration-merging': 'off',
'@typescript-eslint/explicit-member-accessibility': ['warn', { accessibility: 'no-public' }],
'@typescript-eslint/no-unused-vars': ['warn', { varsIgnorePattern: '^_', argsIgnorePattern: '^_' }],
'simple-import-sort/exports': 'warn',
'simple-import-sort/imports': [
'warn',
{
groups: [
// Side effect imports.
['^\\u0000'],
[
// Node.js builtins.
`^node:`,
`^(${require('module').builtinModules.join('|')})(/|$)`,
// Packages.
'^@?\\w',
// Internal packages.
'^(src)(/.*|$)',
// Parent imports. Put `..` last.
'^\\.\\.(?!/?$)',
'^\\.\\./?$',
// Other relative imports. Put same-folder imports and `.` last.
'^\\./(?=.*/)(?!/?$)',
'^\\.(?!/?$)',
'^\\./?$',
],
],
},
],
'prettier/prettier': 'warn',
},
};
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @minuukang @SunYoungKwon
13 changes: 13 additions & 0 deletions .github/actions/pnpm-setup-node/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: setup pnpm & node
description: setup pnpm & node
runs:
using: composite
steps:
- uses: pnpm/action-setup@v4
with:
version: 9.4.0
- uses: actions/setup-node@v4
with:
cache: 'pnpm'
cache-dependency-path: 'pnpm-lock.yaml'
node-version-file: '.nvmrc'
24 changes: 24 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Changesets PR or Publish

on:
push:
branches: [main, beta]

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/pnpm-setup-node
- run: pnpm install --frozen-lockfile
- name: Create Changesets Pull Request or Publish to NPM
id: changesets
uses: changesets/action@v1
with:
title: 'chore: version packages'
commit: 'chore: version packages'
version: pnpm changeset:version
publish: pnpm changeset:publish
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
167 changes: 167 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,167 @@
# Created by https://www.toptal.com/developers/gitignore/api/node,go
# Edit at https://www.toptal.com/developers/gitignore?templates=node,go

### Go ###
# If you prefer the allow list template instead of the deny list, see community template:
# https://github.com/github/gitignore/blob/main/community/Golang/Go.AllowList.gitignore
#
# Binaries for programs and plugins
*.exe
*.exe~
*.dll
*.so
*.dylib

# Test binary, built with `go test -c`
*.test

# Output of the go coverage tool, specifically when used with LiteIDE
*.out

# Dependency directories (remove the comment below to include it)
# vendor/

# Go workspace file
go.work

### Node ###
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
.pnpm-debug.log*

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage
*.lcov

# nyc test coverage
.nyc_output

# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/
jspm_packages/

# Snowpack dependency directory (https://snowpack.dev/)
web_modules/

# TypeScript cache
*.tsbuildinfo

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Optional stylelint cache
.stylelintcache

# Microbundle cache
.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variable files
.env*.local

# parcel-bundler cache (https://parceljs.org/)
.cache
.parcel-cache

# Next.js build output
.next
out

# Nuxt.js build / generate output
.nuxt
dist

# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and not Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public

# vuepress build output
.vuepress/dist

# vuepress v2.x temp and cache directory
.temp

# Docusaurus cache and generated files
.docusaurus

# Serverless directories
.serverless/

# FuseBox cache
.fusebox/

# DynamoDB Local files
.dynamodb/

# TernJS port file
.tern-port

# Stores VSCode versions used for testing VSCode extensions
.vscode-test

# yarn v2
# https://yarnpkg.com/getting-started/qa#which-files-should-be-gitignored
.yarn/*
!.yarn/cache
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/sdks
!.yarn/versions

### Node Patch ###
# Serverless Webpack directories
.webpack/

# Optional stylelint cache

# SvelteKit build / generate output
.svelte-kit

# End of https://www.toptal.com/developers/gitignore/api/node,go
.DS_Store
1 change: 1 addition & 0 deletions .node-version
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
v20
1 change: 1 addition & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
prefer-workspace-packages=true
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.nvmrc
7 changes: 7 additions & 0 deletions .prettierrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"tabWidth": 2,
"printWidth": 120,
"singleQuote": true,
"semi": true,
"trailingComma": "all"
}
18 changes: 18 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"[javascript][javascriptreact][typescript][typescriptreact]": {
"editor.defaultFormatter": "vscode.typescript-language-features",
"editor.codeActionsOnSave": {
"source.fixAll": "explicit"
}
},
"[json][jsonc][yaml][dockercompose]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true
},
"files.exclude": {
"**/node_modules/": true
},
"prettier.prettierPath": "node_modules/prettier/index.cjs",
"typescript.enablePromptUseWorkspaceTsdk": true,
"typescript.tsdk": "node_modules/typescript/lib"
}
16 changes: 15 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,15 @@
# use-funnel
# use-funnel

## Development

### Add router package

```sh
pnpm add:router --name your-router-name
```

### Build workspace all

```sh
pnpm --filter="*" run build
```
Loading

0 comments on commit ef9163f

Please sign in to comment.