local-i18n's Introduction
local-i18n's People
local-i18n's Issues
[큰틀/기능 추가] 설정 언어 import 시 validation
- 지원하는 언어에 값이 추가로 들어갈 때..
- 저장해둘지
- 저장하지 않을지.
- xlsx import 실패했을 때
- plugin시스템 (preview hook, post hook)
test
asidebar 오픈 로직 정리
- asidebar가 켜있는 상태로 유지되어있는 케이스
문구 정리
문구 UX 플로우 정리
[기능추가] 코드 transform 기능 추가.
코드 transform을 통한 입력기능 추가.
커스텀 fetching 기능 추가.
- 외부에서 번역어를 받아 업데이트 하는 기능 추가.
- 업데이트 할 경우 conflict 나는 부분 추가하기.
우선순위 작업 목록.
우선순위 기능.
- fetch 기능
- schema 등록 기능 (외부 자료를 안정적으로 받기 위한 방법)
- export 기능
- save sync 기능
- diff기능 (1) - 변경된 내용만 commit하도록 체크.
- diff기능 (2) - 코드 내에 한글 포착하도록 체크.
- react-window-scroll 기능
- 태깅 기능. 그룹핑 기능.
[기능추가/리팩토링] language 타입 추가 및 language 관리 기능 추가.
- language 타입(enum) 추가.
- workspace에서 language 선택 시 실제 적용되도록 변경.
- language 전용 workspace 등록 과정 개선.
[버그] - row 추가 버그
- addRow
- importRows
작동하지 않음.
디자인 정리
디자인 정리
- action 버튼은 상단으로.
- 설정류는 감춰서 처리.
- Workspace를 선택하는 화면과 분리.
변경안.
- 첫 접근 시, workspace 선택.
- 워크스페이스 선택과 워크스페이스 작업을 아얘 분리
- 상단에 전체 파일뷰 추가.
- 워크스페이스 전반적인 관리는 파일뷰에 감춰서 제공.
- 왼쪽 고정 worksapces는 삭제.
- 작업 영역이 줄어드는 문제
- action 버튼은 모두 상단에 고정.
- (PCW기준이라 하단에 놓지 않음)
작업
- 워크스페이스 선택존 추가.
- 워스스페이스존 변경 + 파일 메뉴 뷰 추가.
- Navigation 정리.
- Context 정리.
- 현재 Scene 추가.
- `@data 없애기
- 파일컨벤션 맞추기
- layout
- context
- React router 추가하기.
redux에 필요하지 않은 인수 빼기.
redux에 필요하지 않는 scope인수들 빼기
네비게이션 시스템
- history back
- bread crum
[리팩토링] currWorkspaceId EntityId 타입 개선
현재는 currentWorkspace에 undefined가 들어올 수 있지만,
컨텍스트 하위에서는 항상 undefined가 들어올 수 없게 함
- EntityId? -> EntitiyId로 변경
- 런타임에서 EntityId가 없으면 접근하지 못하도록 가드.
- 레이아웃 레벨에서는 useCurrWorkspaceId() 사용하지 않도록 함 (props를 통해서 데이터 통신)
[리팩토링] 폴더구조 변경
- context provider는 현재 폴더보다 상위 폴더에서 감싸줘야 하기 때문에, 폴더 상-하위 구조가 있다면 상-하위 구조를 따르게 할 것
- 별도 독립 모듈 성격의 훅들은 따로 빼줄 것.
@data
폴더에 provider를 넣어두기
Indexed DB or FileSystem 사용하는것으로 변경하기.
-
local storage는 한계가 많음.
-
변경이 생길 때 마다, transaction 걸기.
-
브라우저 기반이라면 Indexed DB
-
FS를 사용해야한다면 Electron이나 Server Action을 활용해야할 수 있음.
- 아무래도 FileSystem이 안전하나, 구현에 까다로움이 있을 수 있어 Indexed DB를 쉽게 export할 수 있는것을 우선적으로 고려.
transform 로직 변경.
html parser코드 변경 체크.
[기능추가] url로 공유하기 작업
스키마 기능 추가.
각 영역별로 지원하는 스키마 정리
- excel (export, import)
- json (export, import)
그 규격대로 export, import 할 수 있도록 지원.
parse custom scheme rule set 만들기.
- 외부 데이터를 파싱할 때 (엑셀이나 json) 커스텀 scheme을 만들 수 있는 UI
- 외부 데이터를 파싱할 때 (엑셀이나 json) 커스텀 scheme을 만들어서 적용할 수 있는 hooks.
[개선] 테스트 코드 추가
- import json, export file하는 부분들은 코어 로직은 아니지만, 코드 변경시마다 깨지는 케이스가 존재.
- 자동화된 테스트를 구성하여서 외부 로직들로 가는 부분들에 시나리오적 추가 제약을 걸어 둠.
- PR시 자동화 테스트 수행하도록 설정.
- 현재 코어 도메인 부분에 대한 테스트는 필요 하지 않음
- 문제가 있어도 런타임에서 문제가 빠르게 발견되는 편.
- 문제가 생겨도 격리가 잘 되는 편.
- 빌드타임에서 타입이나 다른 제약조건에 의해 미리 걸러지는 편. (핵심 도메인로직)
[기능추가] 인터렉션 추가
- 버튼 인터렉션 추가.
폴더 구조 변경
현재 폴더의 구조는 작업하기 불편한 방식.
- 기본 도메인 분류 변경
- 도메인 별로 slice, provider 폴더 구분.
- depth 줄이기.
- context 활용하는 경우, access control까지 다 해두기.
react-virtualized + react-router
[기능추가] text replace 기능.
- 번역어 내에서 text를 검출하여 replace함.
- 여러개가 검출 될 경우, 어떤 row만 변경할건지 추가하기. (data-table사용 및 selector 사용 예시 찾아보기)
[기능추가] workspace 이름 및 설정 변경 기능 추가
- 상단에 workspace 변경 기능 추가
[버그/기능추가] 애니메이션 및 반응형 레이아웃 정리.
- 입력폼에 애니메이션 추가
- 애니메이션 에러 제거
- 레이아웃 에러 및 반응형 코드 정리
[버그 수정] 워크스페이스 제출 버튼 애니메이션 수정 및 사이즈 변경.
[개선] redux configure 코드 정리
- redux toolkit example 과 비슷하게 코드 정리.
공유 페이지 확인하기
- 공유 URL을 받을 경우, 서비스를 이용하지 않더라도 내용을 다운받을 수 있도록 함.
- 용량 제한 확인하고 압축률 최대로 높일 것.
[기능개선] table header sticky 처리
[성능개선] 최적화 및 validateError수정
- useAppSelector 호출회수 체크, memo 가능한지 확인
- validate error 수정.
[리팩토링] row에 entityAdapter 적용
- RowType에 entityAdapter 적용.
[기능추가] row 제거 기능 추가.
- row 제거 기능 추가
- 상단에 row 관리 버튼 추가.
[기능 추가] 라우터 변경 및 수정/삭제 시 경고 alert 추가.
key별 프로젝트 영역 만들기.
한 워크스페이스 내부에서도 프로젝트 별로 export하거나 따로 관리하고 싶은 니즈가 생길 수 있음.
project별로 depth를 추가할 수 있는 기능 만들기. (해시태그 필터링)
필터링 알고리즘 추가하기.
-
워크스페이스1
- 피처 1
- 피처 2
- 피처 3
-
피처별로 선택하거나, 피처별로 필터링 해서 볼 수 있는 뷰 보기.
-
드래그앤 드롭이 아닌 -=> 현재 필터된 번역어 Export하기로 처리하도록 함.
-
feature여역 만들기..
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.