Compare commits

...

120 Commits

Author SHA1 Message Date
nalpari
3d9cd1d992 fix: Update PDF download options to A4 format and portrait orientation 2025-05-16 17:46:02 +09:00
4e8fd462cf feat: add MS_USR_TRK model to Prisma schema, update axios instance with request interceptor, and enhance Footer component with PDF link 2025-05-16 16:56:38 +09:00
900e8edcec Merge pull request 'feature/pub' (#36) from feature/pub into dev
Reviewed-on: #36
2025-05-16 15:34:36 +09:00
김민식
e3b755896b [조사매물] 전기.지붕정보, 버튼 폼 추가 2025-05-16 15:33:00 +09:00
김민식
cdae73b95e 🚨chore: Sync Sass
[조사매물] 상세, 수정 퍼블 수정
2025-05-16 15:32:23 +09:00
21c0a7a3a0 Merge pull request 'feat: scrollTop 기능 추가' (#35) from feature/float-button into dev
Reviewed-on: #35
2025-05-15 18:31:30 +09:00
Daseul Kim
bc3193714a feat: scrollTop 기능 추가 2025-05-15 18:28:31 +09:00
d03c01e3a9 fix: replace img with next/image for optimized loading in MemberInformationPopup 2025-05-15 17:53:14 +09:00
2e32260fa2 feat: add new SVG icons and update Suitable component with image integration 2025-05-15 17:25:50 +09:00
beba34321d fix: update authentication flow and enhance API error handling 2025-05-15 17:02:01 +09:00
510317c676 feat: implement authentication and survey sales APIs with suitable data structure 2025-05-15 16:30:46 +09:00
5f23cf986f Merge pull request '[1:1 문의] 퍼블 수정' (#34) from feature/pub into dev
Reviewed-on: #34
2025-05-15 15:17:04 +09:00
김민식
d5f30a565f [1:1 문의] 퍼블 수정 2025-05-15 15:15:01 +09:00
148ed2dda4 Merge pull request 'feat: add store name and role properties to default session data' (#33) from hotfix/sessionData into dev
Reviewed-on: #33
2025-05-15 15:00:31 +09:00
7a23f02e85 feat: add store name and role properties to default session data 2025-05-15 14:58:25 +09:00
ff52b2ab56 Merge pull request 'style: 지붕재 적합성 결과 아이콘 css 수정' (#32) from feature/pub into dev
Reviewed-on: #32
2025-05-15 13:46:17 +09:00
Daseul Kim
1185d08c8d style: 지붕재 적합성 결과 아이콘 css 수정 2025-05-15 13:45:29 +09:00
c94ced6c77 Merge pull request 'style: 지붕재 적합성 화면 css 수정' (#31) from feature/pub into dev
Reviewed-on: #31
2025-05-15 11:30:09 +09:00
DESKTOP-EJG0M5T\User
6eb94dc82c style: 지붕재 적합성 화면 css 수정 2025-05-15 11:28:29 +09:00
02283c3b71 Merge pull request 'feature/userInfo-yoo' (#30) from feature/userInfo-yoo into dev
Reviewed-on: #30
2025-05-14 17:50:38 +09:00
2217426152 feat: implement password change API and update Login and PwResetForm components to utilize local storage for password management 2025-05-14 17:49:59 +09:00
2bfacca06b chore: add usehooks-ts dependency for enhanced hooks management 2025-05-14 16:01:33 +09:00
8034424d15 fix: enhance Header component to manage user session storage and clear session data on logout 2025-05-14 16:01:16 +09:00
4ca4a28c7d Merge pull request 'fix: update MemberInformationPopup to use session store name for display instead of hardcoded value' (#29) from feature/MemberInformationPopup into dev
Reviewed-on: #29
2025-05-14 15:44:13 +09:00
3212763a1b fix: update MemberInformationPopup to use session store name for display instead of hardcoded value 2025-05-14 15:42:35 +09:00
5c0593b755 feat: integrate user info state management in Login and PwResetForm components for enhanced user experience 2025-05-14 14:22:55 +09:00
70c45bc182 feat: add password reset functionality to MemberInformationPopup with navigation support 2025-05-13 17:30:19 +09:00
2ba6583ffb fix: update MemberInformationPopup to use session store name for better data accuracy 2025-05-13 17:24:32 +09:00
a4c36474d5 refactor: update side_swiper_icon02.svg to a new design with improved dimensions and paths for better rendering 2025-05-13 17:23:40 +09:00
c545cbab93 Merge branch 'feature/MemberInformationPopup' into dev 2025-05-13 17:22:33 +09:00
a2a2b2e6fa fix: restore storeNm property in session management and adjust padding in check and radio components for improved layout 2025-05-13 17:21:22 +09:00
98299ffe92 chore: update @prisma/client and prisma dependencies to version 6.7.0; modify session management in MemberInformationPopup and Header components to utilize session data 2025-05-13 16:10:22 +09:00
f33786a8eb feat: implement user role management in session and update Header component to display user ID 2025-05-13 14:41:09 +09:00
e5affe0df5 chore: update environment variables and dependencies; add database configuration for QPARTNER login 2025-05-13 13:28:46 +09:00
f8b11c3e7e Merge pull request 'feature/suitable' (#28) from feature/suitable into dev
Reviewed-on: #28
2025-05-13 11:03:33 +09:00
9f4c3de2cf refactor: 지붕재 적합성 테이블 컬럼명 공통코드화 2025-05-13 11:00:20 +09:00
2c75a6b416 refactor: 지붕재 적합성 테이블 컬럼명 수정 2025-05-13 10:51:17 +09:00
7973d7c2b1 Merge pull request 'feature/suitable' (#26) from feature/suitable into dev
Reviewed-on: #26
2025-05-13 09:42:19 +09:00
186843e154 remove: 미사용 테스트 파일 삭제 2025-05-13 09:40:08 +09:00
bc1c1579cc feat: 지붕재 적합성 데이터 관련 테이블 모델 추가 2025-05-13 09:35:21 +09:00
0cdd7cdebd Merge branch 'dev' of https://git.hanasys.jp/qcast3/onsitesurvey into feature/suitable 2025-05-13 09:33:10 +09:00
778d3b6be8 refactor: enhance DoubleBtnAlert and Header components with improved button handling and confirm dialog integration 2025-05-12 18:24:18 +09:00
b4e009cb8e chore: add inquiry API URL to development and production environment files 2025-05-12 18:24:11 +09:00
2d914d3798 Merge branch 'dev' of https://git.hanasys.jp/qcast3/onsitesurvey into feature/suitable 2025-05-12 15:03:49 +09:00
69d81d892d fix: conditionally update session state in EdgeProvider based on presence of sessionData 2025-05-12 13:34:14 +09:00
e84ef1b7a0 fix: update session data handling in RootLayout to conditionally stringify session based on login status 2025-05-12 11:24:32 +09:00
6cab9cdde3 feat: implement session management in RootLayout and pass session data to EdgeProvider for enhanced state handling 2025-05-12 11:01:07 +09:00
2eacdda23e refactor: remove alertSwitch store and simplify alert handling in EdgeProvider 2025-05-12 10:37:58 +09:00
db2daf8ba0 Merge branch 'dev' of https://git.hanasys.jp/qcast3/onsitesurvey into feature/suitable 2025-05-12 09:57:05 +09:00
ce00cc2ba7 refactor: simplify Header component by removing unused props and updating button action for password reset 2025-05-09 18:21:35 +09:00
e6d346c5da refactor: remove unused title variable in Header component to streamline code 2025-05-09 18:14:55 +09:00
178e9c0d3e refactor: update layout components to use 'import type' for ReactNode and enhance Header component with dynamic title retrieval 2025-05-09 18:13:40 +09:00
3e16d3a767 feat: implement session management with Zustand and enhance login flow in Login component 2025-05-09 16:05:20 +09:00
5e8d2fa8cc feat: enhance DoubleBtnAlert component with dynamic alert messages and button actions 2025-05-09 15:19:03 +09:00
436f149635 feat: implement alert management in EdgeProvider with dynamic alert types 2025-05-09 15:17:19 +09:00
a6702f52fc feat: add new sample page with various input components and styling for enhanced user interaction 2025-05-09 14:44:07 +09:00
06967d746c refactor: streamline MS_SUITABLE model by removing redundant fields and add new BC_COMM_H and BC_COMM_L models for improved data structure 2025-05-09 13:53:33 +09:00
b61f5205e4 Merge branch 'dev' of https://git.hanasys.jp/qcast3/onsitesurvey into feature/suitable 2025-05-09 09:49:18 +09:00
b4db26d80a fix: update EdgeProvider to correctly set back button visibility based on pathname 2025-05-08 18:00:57 +09:00
4ab2b225cd feat: add new compliance-related SVG icons for enhanced UI representation 2025-05-08 17:57:48 +09:00
5628d330d5 fix: update button action in Main component to navigate to suitable page for roof material compatibility checks 2025-05-08 17:56:35 +09:00
1746c91742 feat: integrate EdgeProvider for alert management and add Suitable components for roof material compatibility checks 2025-05-08 17:55:24 +09:00
4467c04321 style: update SCSS styles for various components, adding responsive design adjustments and new styles for compliance checks 2025-05-08 17:55:10 +09:00
b1f81d7853 Merge branch 'dev' of https://git.hanasys.jp/qcast3/onsitesurvey into feature/suitable
# Conflicts:
#	src/api/suitable.ts
2025-05-08 15:53:53 +09:00
0d12239460 refactor: expand MS_SUITABLE model in Prisma schema with detailed field definitions and comments for clarity 2025-05-08 15:47:29 +09:00
e355ad5378 refactor: clean up User and MS_SUITABLE models in Prisma schema by removing unnecessary comments and optimizing field definitions 2025-05-08 15:41:12 +09:00
692d2b7d84 refactor: comment out login redirection in middleware for future implementation 2025-05-07 17:37:09 +09:00
05f4fe4e94 refactor: enhance session management and routing in middleware and API authentication 2025-05-07 17:16:26 +09:00
5048fe1c08 chore: axios 설정 충돌 해결 2025-05-07 15:17:01 +09:00
c9378dfccd Merge pull request 'snake case -> camel case 변환 로직 추가' (#25) from feature/pub into dev
Reviewed-on: #25
2025-05-07 15:11:04 +09:00
김민식
2166b7836e snake case -> camel case 변환 로직 추가 2025-05-07 15:08:33 +09:00
d340e3d976 Merge pull request 'refactor: remove suitable and surveySales API modules to streamline codebase' (#24) from feature/chore into dev
Reviewed-on: #24
2025-05-07 10:19:02 +09:00
82e198836a refactor: remove suitable and surveySales API modules to streamline codebase 2025-05-07 10:18:28 +09:00
e86c5d18b4 Merge branch 'dev' of https://git.hanasys.jp/qcast3/onsitesurvey into feature/suitable
# Conflicts:
#	src/app/api/suitable/list/route.ts
#	src/components/Suitable.tsx
#	src/components/SuitableDetails.tsx
#	src/components/SuitableSearch.tsx
2025-05-07 09:52:10 +09:00
3cf55e1a9e Merge pull request 'refactor: enhance Header component by organizing useEffect hooks and updating client URL pathname handling' (#23) from feature/pub-yoo into dev
Reviewed-on: #23
2025-05-02 18:47:03 +09:00
3937179279 refactor: enhance Header component by organizing useEffect hooks and updating client URL pathname handling 2025-05-02 18:46:38 +09:00
9255d3fab7 Merge pull request 'docs: update README to include useEffect organization and client URL pathname changes in Header component' (#22) from feature/pub-yoo into dev
Reviewed-on: #22
2025-05-02 16:58:32 +09:00
4e90af97e7 docs: update README to include useEffect organization and client URL pathname changes in Header component 2025-05-02 16:58:07 +09:00
9ae6cf99f9 Merge pull request 'refactor: integrate side navigation state management into Header component for improved navigation control' (#21) from feature/pub-yoo into dev
Reviewed-on: #21
2025-05-02 16:56:15 +09:00
7046b215c4 refactor: integrate side navigation state management into Header component for improved navigation control 2025-05-02 16:55:47 +09:00
38055365a5 Merge pull request 'refactor: remove inquiry page component and enhance navigation in Main and Header components with router integration' (#20) from feature/pub-yoo into dev
Reviewed-on: #20
2025-05-02 16:35:54 +09:00
e0bdaa4ddf refactor: remove inquiry page component and enhance navigation in Main and Header components with router integration 2025-05-02 16:35:27 +09:00
044385fceb Merge pull request 'refactor: move state management and effect hooks for selected tab into respective form components for better encapsulation' (#19) from feature/pub-yoo into dev
Reviewed-on: #19
2025-05-02 16:03:26 +09:00
ddd41009b7 refactor: move state management and effect hooks for selected tab into respective form components for better encapsulation 2025-05-02 16:02:54 +09:00
eea55ae8b4 Merge pull request 'refactor: implement state management for survey sale pages; add effect hooks to set selected tab state and enhance navigation functionality' (#18) from feature/pub-yoo into dev
Reviewed-on: #18
2025-05-02 15:59:14 +09:00
baf3700f67 refactor: implement state management for survey sale pages; add effect hooks to set selected tab state and enhance navigation functionality 2025-05-02 15:58:49 +09:00
eaddd3b2a3 Merge pull request 'refactor: enhance layout structure by adding survey sale layout and navigation tab components; streamline page components for improved readability' (#17) from feature/pub-yoo into dev
Reviewed-on: #17
2025-05-02 15:42:32 +09:00
2a373dd712 refactor: enhance layout structure by adding survey sale layout and navigation tab components; streamline page components for improved readability 2025-05-02 15:41:58 +09:00
8786824569 Merge pull request 'fix: correct spelling of 'Information' in member information popup handlers' (#16) from feature/pub-yoo into dev
Reviewed-on: #16
2025-05-02 14:13:01 +09:00
nalpari
b56d013dc2 fix: correct spelling of 'Information' in member information popup handlers 2025-05-02 14:12:06 +09:00
631176301b Merge pull request 'refactor: update ZipCodePopup to simplify state management by removing unnecessary parameter in setZipCodePopup function' (#15) from feature/pub-yoo into dev
Reviewed-on: #15
2025-05-02 13:56:00 +09:00
nalpari
3e77864d2e refactor: update ZipCodePopup to simplify state management by removing unnecessary parameter in setZipCodePopup function 2025-05-02 13:55:21 +09:00
041e43f78b Merge pull request 'refactor: remove header and footer imports from basic-info and roof-info pages to streamline layout' (#14) from feature/pub-yoo into dev
Reviewed-on: #14
2025-05-02 13:38:34 +09:00
40952ec38a refactor: remove header and footer imports from basic-info and roof-info pages to streamline layout 2025-05-02 13:38:01 +09:00
1d592b4226 Merge pull request 'refactor: simplify layout by removing header and footer components from survey sale pages; enhance structure for better readability' (#13) from feature/pub-yoo into dev
Reviewed-on: #13
2025-05-02 12:46:26 +09:00
3736b8b094 refactor: simplify layout by removing header and footer components from survey sale pages; enhance structure for better readability 2025-05-02 12:45:40 +09:00
6598dc9459 Merge pull request 'chore: update layout structure by adding header, footer, and float button components; implement member information popup; enhance popup controller for better state management' (#12) from feature/pub-yoo into dev
Reviewed-on: #12
2025-05-02 12:44:13 +09:00
1f102a5054 chore: update layout structure by adding header, footer, and float button components; implement member information popup; enhance popup controller for better state management 2025-05-02 12:43:34 +09:00
c5af6b848b Merge pull request 'refactor: enhance login and survey sale pages with structured layout and footer; update popup controller for zip code management' (#11) from feature/pub-yoo into dev
Reviewed-on: #11
2025-05-02 10:19:26 +09:00
933eeb5f2e refactor: enhance login and survey sale pages with structured layout and footer; update popup controller for zip code management 2025-05-02 10:18:43 +09:00
cc8b988fdb Merge pull request 'chore: add swiper dependency and update package lock; remove unused components for suitable and survey sales' (#10) from feature/pub-yoo into dev
Reviewed-on: #10
2025-04-30 18:35:50 +09:00
02f6ad9f46 chore: add swiper dependency and update package lock; remove unused components for suitable and survey sales 2025-04-30 18:34:48 +09:00
b1db492937 Merge pull request 'chore: comment out session check in middleware for future login feature implementation' (#9) from feature/chore into dev
Reviewed-on: #9
2025-04-30 17:36:02 +09:00
71f7913bee chore: comment out session check in middleware for future login feature implementation 2025-04-30 17:35:03 +09:00
b9cc66090e Merge pull request 'chore: remove unused API routes and components for survey sales and suitable details' (#8) from feature/ready-for-work into dev
Reviewed-on: #8
2025-04-30 16:53:36 +09:00
6592b1d3b9 chore: remove unused API routes and components for survey sales and suitable details 2025-04-30 16:52:23 +09:00
36ea0dbf19 Merge pull request 'chore: ready for work' (#7) from feature/ready-for-work into dev
Reviewed-on: #7
2025-04-30 16:49:11 +09:00
4afcd7f8eb chore: ready for work 2025-04-30 16:47:44 +09:00
adfe6d7a32 feat: 지붕재 적합성 pdf 기본기능 추가 2025-04-30 16:20:36 +09:00
56c2693bb7 Merge branch 'dev' of https://git.hanasys.jp/qcast3/onsitesurvey into feature/suitable 2025-04-30 15:07:15 +09:00
17641d2b57 Merge pull request 'chore: Refactor next.config.ts to streamline API rewrites and remove unnecessary CORS headers' (#4) from feature/chore into dev
Reviewed-on: #4
2025-04-30 15:02:59 +09:00
45b244d309 chore: Refactor next.config.ts to streamline API rewrites and remove unnecessary CORS headers 2025-04-30 15:01:23 +09:00
01e41fd1f5 Merge pull request 'feat: Add update functionality to Survey Sales API and enhance UI for managing survey sales details' (#3) from feature/survey-sales into dev
Reviewed-on: #3
2025-04-29 16:58:12 +09:00
f801bacd12 feat: Add update functionality to Survey Sales API and enhance UI for managing survey sales details 2025-04-29 16:56:41 +09:00
68ea411064 Merge branch 'dev' of https://git.hanasys.jp/qcast3/onsitesurvey into feature/suitable 2025-04-29 10:55:31 +09:00
65a30310a5 Merge pull request 'chore: Update DATABASE_URL in .env to use the production server address' (#2) from hotfix/chore into dev
Reviewed-on: #2
2025-04-29 10:54:42 +09:00
8240b434fd chore: Update DATABASE_URL in .env to use the production server address 2025-04-29 10:52:59 +09:00
bfbbdc01b8 feat: 지붕재 데이터 선택 기능 추가 2025-04-29 10:49:58 +09:00
d36084add5 Merge branch 'main' of https://git.hanasys.jp/qcast3/onsitesurvey into feature/suitable 2025-04-29 10:41:18 +09:00
cc8ef6a7d3 feat: 지붕재 데이터 조회 기능 추가 2025-04-28 16:51:01 +09:00
206 changed files with 8771 additions and 1001 deletions

2
.env
View File

@ -5,7 +5,7 @@
# See the documentation for all the connection string options: https://pris.ly/d/connection-strings
# DATABASE_URL="sqlserver://3team.devgrr.kr:1433;database=onsitesurvey;user=sa;password=1q2w3e4r!;encrypt=true;trustServerCertificate=true;"
DATABASE_URL="sqlserver://172.30.1.35:1433;database=onsitesurvey;user=sa;password=1q2w3e4r!;encrypt=true;trustServerCertificate=true;"
DATABASE_URL="sqlserver://3team.devgrr.kr:1433;database=onsitesurvey;user=sa;password=1q2w3e4r!;encrypt=true;trustServerCertificate=true;"
# SESSION_PASSWORD="QWERASDFZXCV1234567890REWQFDSAVCXZ"
SESSION_PASSWORD="This application is for mobile field research"

View File

@ -1,3 +1,17 @@
# 모바일 디바이스로 로컬 서버 확인하려면 자신 IP 주소로 변경
# 다시 로컬에서 개발할때는 localhost로 변경
#route handler
NEXT_PUBLIC_API_URL=http://localhost:3000
#qsp 로그인 api
NEXT_PUBLIC_QSP_API_URL=http://1.248.227.176:8120
#1:1문의 api
NEXT_PUBLIC_INQUIRY_API_URL=http://1.248.227.176:38080
#QPARTNER 로그인 api
DB_HOST=asdf
DB_USER=asdf
DB_PASSWORD=asdf
DB_DATABASE=asdf
DB_PORT=3306

View File

@ -1 +1,15 @@
#route handler
NEXT_PUBLIC_API_URL=http://172.30.1.35:3000
#qsp 로그인 api
NEXT_PUBLIC_QSP_API_URL=http://1.248.227.176:8120
#1:1문의 api
NEXT_PUBLIC_INQUIRY_API_URL=http://1.248.227.176:38080
#QPARTNER 로그인 api
DB_HOST=asdf
DB_USER=asdf
DB_PASSWORD=asdf
DB_DATABASE=asdf
DB_PORT=3306

View File

@ -17,3 +17,44 @@ generate 를 진행해야 로컬에 연결 파일들이 생성이되고 pull pus
const cache = useQueryClient()
const data = cache.getQueryData(['user', 'info']) as UserState
```
# 팝업 컨트롤러 제어
### open
```
const popupController = usePopupController()
onClick={() => popupController.setMemberInformationPopup(true)}
onClick={() => popupController.setZipCodePopup(true)}
```
### close
```
const popupController = usePopupController()
onClick={() => popupController.setMemberInformationPopup(false)}
onClick={() => popupController.setZipCodePopup(false)}
```
# useEffect 정리
- client url pathname 변경시 -> @/components/ui/Header.tsx
# User Role 구분
session에 있는 role 키로 구분한다
- T01 / T01 -> Super user\
session.role === 'T01'
- A03 / 1234 -> T01을 제외한 1차점\
session.role === 'Admin'
- 2A03 / 1234 -> 2차점\
session.role === 'Admin_Sub'
- constA03_01 / 1234 -> 시공사\
session.role === 'Builder'
- partners -> Q.Partners 계정\
session.role === 'Partner'
- 이외의 경우 -> 굳이 체크할 필요 없어보임\
session.role === 'User'

View File

@ -9,29 +9,12 @@ const nextConfig: NextConfig = {
async rewrites() {
return [
{
source: '/:path*',
destination: `${process.env.NEXT_PUBLIC_API_URL}/:path*`,
source: '/api/user/login',
destination: `${process.env.NEXT_PUBLIC_QSP_API_URL}/api/user/login`,
},
]
},
async headers() {
return [
{
source: '/api/:path*',
headers: [
{
key: 'Access-Control-Allow-Origin',
value: '*',
},
{
key: 'Access-Control-Allow-Methods',
value: 'GET, POST, PUT, DELETE, OPTIONS',
},
{
key: 'Access-Control-Allow-Headers',
value: 'Content-Type, Authorization',
},
],
destination: `${process.env.NEXT_PUBLIC_API_URL}/api/:path*`,
},
]
},

1124
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -9,7 +9,7 @@
"lint": "next lint"
},
"dependencies": {
"@prisma/client": "^6.5.0",
"@prisma/client": "^6.7.0",
"@tanstack/react-query": "^5.71.0",
"@tanstack/react-query-devtools": "^5.71.0",
"axios": "^1.8.4",
@ -20,6 +20,8 @@
"react-dom": "^19.0.0",
"react-to-pdf": "^2.0.0",
"sass": "^1.87.0",
"swiper": "^11.2.6",
"usehooks-ts": "^3.1.1",
"zustand": "^5.0.3"
},
"devDependencies": {
@ -27,7 +29,7 @@
"@types/node": "^20",
"@types/react": "^19",
"@types/react-dom": "^19",
"prisma": "^6.5.0",
"prisma": "^6.7.0",
"tailwindcss": "^4",
"typescript": "^5"
}

106
pnpm-lock.yaml generated
View File

@ -9,8 +9,8 @@ importers:
.:
dependencies:
'@prisma/client':
specifier: ^6.5.0
version: 6.5.0(prisma@6.5.0(typescript@5.8.2))(typescript@5.8.2)
specifier: ^6.7.0
version: 6.7.0(prisma@6.7.0(typescript@5.8.2))(typescript@5.8.2)
'@tanstack/react-query':
specifier: ^5.71.0
version: 5.71.0(react@19.1.0)
@ -41,6 +41,12 @@ importers:
sass:
specifier: ^1.87.0
version: 1.87.0
swiper:
specifier: ^11.2.6
version: 11.2.6
usehooks-ts:
specifier: ^3.1.1
version: 3.1.1(react@19.1.0)
zustand:
specifier: ^5.0.3
version: 5.0.3(@types/react@19.0.12)(react@19.1.0)
@ -58,8 +64,8 @@ importers:
specifier: ^19
version: 19.0.4(@types/react@19.0.12)
prisma:
specifier: ^6.5.0
version: 6.5.0(typescript@5.8.2)
specifier: ^6.7.0
version: 6.7.0(typescript@5.8.2)
tailwindcss:
specifier: ^4
version: 4.0.17
@ -535,8 +541,8 @@ packages:
resolution: {integrity: sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==}
engines: {node: '>= 10.0.0'}
'@prisma/client@6.5.0':
resolution: {integrity: sha512-M6w1Ql/BeiGoZmhMdAZUXHu5sz5HubyVcKukbLs3l0ELcQb8hTUJxtGEChhv4SVJ0QJlwtLnwOLgIRQhpsm9dw==}
'@prisma/client@6.7.0':
resolution: {integrity: sha512-+k61zZn1XHjbZul8q6TdQLpuI/cvyfil87zqK2zpreNIXyXtpUv3+H/oM69hcsFcZXaokHJIzPAt5Z8C8eK2QA==}
engines: {node: '>=18.18'}
peerDependencies:
prisma: '*'
@ -547,23 +553,23 @@ packages:
typescript:
optional: true
'@prisma/config@6.5.0':
resolution: {integrity: sha512-sOH/2Go9Zer67DNFLZk6pYOHj+rumSb0VILgltkoxOjYnlLqUpHPAN826vnx8HigqnOCxj9LRhT6U7uLiIIWgw==}
'@prisma/config@6.7.0':
resolution: {integrity: sha512-di8QDdvSz7DLUi3OOcCHSwxRNeW7jtGRUD2+Z3SdNE3A+pPiNT8WgUJoUyOwJmUr5t+JA2W15P78C/N+8RXrOA==}
'@prisma/debug@6.5.0':
resolution: {integrity: sha512-fc/nusYBlJMzDmDepdUtH9aBsJrda2JNErP9AzuHbgUEQY0/9zQYZdNlXmKoIWENtio+qarPNe/+DQtrX5kMcQ==}
'@prisma/debug@6.7.0':
resolution: {integrity: sha512-RabHn9emKoYFsv99RLxvfG2GHzWk2ZI1BuVzqYtmMSIcuGboHY5uFt3Q3boOREM9de6z5s3bQoyKeWnq8Fz22w==}
'@prisma/engines-version@6.5.0-73.173f8d54f8d52e692c7e27e72a88314ec7aeff60':
resolution: {integrity: sha512-iK3EmiVGFDCmXjSpdsKGNqy9hOdLnvYBrJB61far/oP03hlIxrb04OWmDjNTwtmZ3UZdA5MCvI+f+3k2jPTflQ==}
'@prisma/engines-version@6.7.0-36.3cff47a7f5d65c3ea74883f1d736e41d68ce91ed':
resolution: {integrity: sha512-EvpOFEWf1KkJpDsBCrih0kg3HdHuaCnXmMn7XFPObpFTzagK1N0Q0FMnYPsEhvARfANP5Ok11QyoTIRA2hgJTA==}
'@prisma/engines@6.5.0':
resolution: {integrity: sha512-FVPQYHgOllJklN9DUyujXvh3hFJCY0NX86sDmBErLvoZjy2OXGiZ5FNf3J/C4/RZZmCypZBYpBKEhx7b7rEsdw==}
'@prisma/engines@6.7.0':
resolution: {integrity: sha512-3wDMesnOxPrOsq++e5oKV9LmIiEazFTRFZrlULDQ8fxdub5w4NgRBoxtWbvXmj2nJVCnzuz6eFix3OhIqsZ1jw==}
'@prisma/fetch-engine@6.5.0':
resolution: {integrity: sha512-3LhYA+FXP6pqY8FLHCjewyE8pGXXJ7BxZw2rhPq+CZAhvflVzq4K8Qly3OrmOkn6wGlz79nyLQdknyCG2HBTuA==}
'@prisma/fetch-engine@6.7.0':
resolution: {integrity: sha512-zLlAGnrkmioPKJR4Yf7NfW3hftcvqeNNEHleMZK9yX7RZSkhmxacAYyfGsCcqRt47jiZ7RKdgE0Wh2fWnm7WsQ==}
'@prisma/get-platform@6.5.0':
resolution: {integrity: sha512-xYcvyJwNMg2eDptBYFqFLUCfgi+wZLcj6HDMsj0Qw0irvauG4IKmkbywnqwok0B+k+W+p+jThM2DKTSmoPCkzw==}
'@prisma/get-platform@6.7.0':
resolution: {integrity: sha512-i9IH5lO4fQwnMLvQLYNdgVh9TK3PuWBfQd7QLk/YurnAIg+VeADcZDbmhAi4XBBDD+hDif9hrKyASu0hbjwabw==}
'@swc/counter@0.1.3':
resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==}
@ -1079,6 +1085,9 @@ packages:
resolution: {integrity: sha512-6b6gd/RUXKaw5keVdSEtqFVdzWnU5jMxTUjA2bVcMNPLwSQ08Sv/UodBVtETLCn7k4S1Ibxwh7k68IwLZPgKaA==}
engines: {node: '>= 12.0.0'}
lodash.debounce@4.0.8:
resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
lodash.includes@4.3.0:
resolution: {integrity: sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==}
@ -1178,8 +1187,8 @@ packages:
resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==}
engines: {node: ^10 || ^12 || >=14}
prisma@6.5.0:
resolution: {integrity: sha512-yUGXmWqv5F4PByMSNbYFxke/WbnyTLjnJ5bKr8fLkcnY7U5rU9rUTh/+Fja+gOrRxEgtCbCtca94IeITj4j/pg==}
prisma@6.7.0:
resolution: {integrity: sha512-vArg+4UqnQ13CVhc2WUosemwh6hr6cr6FY2uzDvCIFwH8pu8BXVv38PktoMLVjtX7sbYThxbnZF5YiR8sN2clw==}
engines: {node: '>=18.18'}
hasBin: true
peerDependencies:
@ -1306,6 +1315,10 @@ packages:
resolution: {integrity: sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==}
engines: {node: '>=12.0.0'}
swiper@11.2.6:
resolution: {integrity: sha512-8aXpYKtjy3DjcbzZfz+/OX/GhcU5h+looA6PbAzHMZT6ESSycSp9nAjPCenczgJyslV+rUGse64LMGpWE3PX9Q==}
engines: {node: '>= 4.7.0'}
tailwindcss@4.0.17:
resolution: {integrity: sha512-OErSiGzRa6rLiOvaipsDZvLMSpsBZ4ysB4f0VKGXUrjw2jfkJRd6kjRKV2+ZmTCNvwtvgdDam5D7w6WXsdLJZw==}
@ -1342,6 +1355,12 @@ packages:
undici-types@6.19.8:
resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==}
usehooks-ts@3.1.1:
resolution: {integrity: sha512-I4diPp9Cq6ieSUH2wu+fDAVQO43xwtulo+fKEidHUwZPnYImbtkTjzIJYcDcJqxgmX31GVqNFURodvcgHcW0pA==}
engines: {node: '>=16.15.0'}
peerDependencies:
react: ^16.8.0 || ^17 || ^18 || ^19 || ^19.0.0-rc
utrie@1.0.2:
resolution: {integrity: sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==}
@ -1747,38 +1766,38 @@ snapshots:
'@parcel/watcher-win32-x64': 2.5.1
optional: true
'@prisma/client@6.5.0(prisma@6.5.0(typescript@5.8.2))(typescript@5.8.2)':
'@prisma/client@6.7.0(prisma@6.7.0(typescript@5.8.2))(typescript@5.8.2)':
optionalDependencies:
prisma: 6.5.0(typescript@5.8.2)
prisma: 6.7.0(typescript@5.8.2)
typescript: 5.8.2
'@prisma/config@6.5.0':
'@prisma/config@6.7.0':
dependencies:
esbuild: 0.25.2
esbuild-register: 3.6.0(esbuild@0.25.2)
transitivePeerDependencies:
- supports-color
'@prisma/debug@6.5.0': {}
'@prisma/debug@6.7.0': {}
'@prisma/engines-version@6.5.0-73.173f8d54f8d52e692c7e27e72a88314ec7aeff60': {}
'@prisma/engines-version@6.7.0-36.3cff47a7f5d65c3ea74883f1d736e41d68ce91ed': {}
'@prisma/engines@6.5.0':
'@prisma/engines@6.7.0':
dependencies:
'@prisma/debug': 6.5.0
'@prisma/engines-version': 6.5.0-73.173f8d54f8d52e692c7e27e72a88314ec7aeff60
'@prisma/fetch-engine': 6.5.0
'@prisma/get-platform': 6.5.0
'@prisma/debug': 6.7.0
'@prisma/engines-version': 6.7.0-36.3cff47a7f5d65c3ea74883f1d736e41d68ce91ed
'@prisma/fetch-engine': 6.7.0
'@prisma/get-platform': 6.7.0
'@prisma/fetch-engine@6.5.0':
'@prisma/fetch-engine@6.7.0':
dependencies:
'@prisma/debug': 6.5.0
'@prisma/engines-version': 6.5.0-73.173f8d54f8d52e692c7e27e72a88314ec7aeff60
'@prisma/get-platform': 6.5.0
'@prisma/debug': 6.7.0
'@prisma/engines-version': 6.7.0-36.3cff47a7f5d65c3ea74883f1d736e41d68ce91ed
'@prisma/get-platform': 6.7.0
'@prisma/get-platform@6.5.0':
'@prisma/get-platform@6.7.0':
dependencies:
'@prisma/debug': 6.5.0
'@prisma/debug': 6.7.0
'@swc/counter@0.1.3': {}
@ -2305,6 +2324,8 @@ snapshots:
lightningcss-win32-arm64-msvc: 1.29.2
lightningcss-win32-x64-msvc: 1.29.2
lodash.debounce@4.0.8: {}
lodash.includes@4.3.0: {}
lodash.isboolean@3.0.3: {}
@ -2406,10 +2427,10 @@ snapshots:
picocolors: 1.1.1
source-map-js: 1.2.1
prisma@6.5.0(typescript@5.8.2):
prisma@6.7.0(typescript@5.8.2):
dependencies:
'@prisma/config': 6.5.0
'@prisma/engines': 6.5.0
'@prisma/config': 6.7.0
'@prisma/engines': 6.7.0
optionalDependencies:
fsevents: 2.3.3
typescript: 5.8.2
@ -2534,6 +2555,8 @@ snapshots:
svg-pathdata@6.0.3:
optional: true
swiper@11.2.6: {}
tailwindcss@4.0.17: {}
tapable@2.2.1: {}
@ -2572,6 +2595,11 @@ snapshots:
undici-types@6.19.8: {}
usehooks-ts@3.1.1(react@19.1.0):
dependencies:
lodash.debounce: 4.0.8
react: 19.1.0
utrie@1.0.2:
dependencies:
base64-arraybuffer: 1.0.2

View File

@ -7,7 +7,6 @@ datasource db {
url = env("DATABASE_URL")
}
// 사용자 정보
model User {
id Int @id @default(autoincrement())
username String @unique
@ -20,186 +19,201 @@ model User {
updated_at DateTime @updatedAt
}
// 지붕재 적합성 정보
model MS_SUITABLE {
//일련번호
id Int @id @default(autoincrement())
//제품명
product_name String @db.VarChar(200)
//제조업체명
manufacturer String? @db.VarChar(200)
//지붕재
roof_material String? @db.VarChar(100)
//금구형태(쇠붙이형)
shape String? @db.VarChar(200)
//지지 기와
support_roof_tile String? @db.VarChar(1)
//지지 기와 메모
support_roof_tile String? @db.VarChar(2)
support_roof_tile_memo String? @db.VarChar(500)
//지지 금구
support_roof_bracket String? @db.VarChar(200)
//지지 금구 메모
support_roof_bracket_memo String? @db.VarChar(500)
//yg 앵커
yg_anchor String? @db.VarChar(200)
//yg 앵커 메모
yg_anchor_memo String? @db.VarChar(500)
//rg 지붕판
rg_roof_tile_part String? @db.VarChar(200)
//rg 지붕판 메모
rg_roof_tile_part_memo String? @db.VarChar(500)
//다이도헌트 지지 기와2
dido_hunt_support_tile_2 String? @db.VarChar(200)
//다이도헌트 지지 기와2 메모
dido_hunt_support_tile_2_memo String? @db.VarChar(500)
//타카시마 파워 베이스
takashima_power_base String? @db.VarChar(200)
//타카시마 파워 베이스 메모
takashima_power_base_memo String? @db.VarChar(500)
//타카시마용 금구
takashima_tile_bracket String? @db.VarChar(200)
//타카시마용 금구 메모
takashima_tile_bracket_memo String? @db.VarChar(500)
//슬레이트 금구4
slate_bracket_4 String? @db.VarChar(200)
//슬레이트 금구4 메모
slate_bracket_4_memo String? @db.VarChar(500)
//슬레이트 판금 금구(슬레이트, 싱글)
slate_single_metal_bracket String? @db.VarChar(200)
//슬레이트 판금 금구 메모(슬레이트, 싱글)
slate_single_metal_bracket_memo String? @db.VarChar(500)
//다이도헌트 짧은 트랙4
dido_hunt_short_rack_4 String? @db.VarChar(200)
//다이도헌트 짧은 트랙4 메모
dido_hunt_short_rack_4_memo String? @db.VarChar(500)
//타카시마 슬레이트 금구
takashima_slate_bracket_slate_single String? @db.VarChar(200)
//타카시마 슬레이트 금구 메모
takashima_slate_bracket_slate_single_memo String? @db.VarChar(500)
//df 판금 금구
df_metal_bracket String? @db.VarChar(200)
//df 판금 금구 메모
df_metal_bracket_memo String? @db.VarChar(500)
//슬레이트 판금 금구(금속 지붕)
slate_metal_bracket String? @db.VarChar(200)
//슬레이트 판금 금구(금속 지붕) 메모
slate_metal_bracket_memo String? @db.VarChar(500)
//타카시마 슬레이트 금구(금속 지붕)
takashima_slate_bracket_metal_roof String? @db.VarChar(200)
//타카시마 슬레이트 금구(금속 지붕) 메모
takashima_slate_bracket_metal_roof_memo String? @db.VarChar(500)
created_at DateTime @default(now())
updated_at DateTime @updatedAt
}
// 조사 매물 기본 정보
model SD_SERVEY_SALES_BASIC_INFO {
//일련번호
id Int @id @default(autoincrement())
//담당자명
representative String @db.VarChar(200)
//판매점
store String? @db.VarChar(200)
//시공점
construction_point String? @db.VarChar(200)
//현재 조사일
investigation_date String? @db.VarChar(10)
//건물명
building_name String? @db.VarChar(200)
//고객명
customer_name String? @db.VarChar(200)
//우편번호
post_code String? @db.VarChar(10)
//주소
address String? @db.VarChar(200)
//상세주소
address_detail String? @db.VarChar(300)
//제출상태
submission_status Boolean @default(false)
//제출일
submission_date DateTime? @db.Date
//상세정보
detail_info SD_SERVEY_SALES_DETAIL_INFO?
created_at DateTime @default(now())
updated_at DateTime @updatedAt
model SD_SURVEY_SALES_BASIC_INFO {
ID Int @id @default(autoincrement())
REPRESENTATIVE String @db.VarChar(200)
STORE String? @db.VarChar(200)
CONSTRUCTION_POINT String? @db.VarChar(200)
INVESTIGATION_DATE String? @db.VarChar(10)
BUILDING_NAME String? @db.VarChar(200)
CUSTOMER_NAME String? @db.VarChar(200)
POST_CODE String? @db.VarChar(10)
ADDRESS String? @db.VarChar(200)
ADDRESS_DETAIL String? @db.VarChar(300)
SUBMISSION_STATUS Boolean @default(false)
SUBMISSION_DATE DateTime? @db.Date
REG_DT DateTime @default(now())
UPT_DT DateTime @updatedAt
DETAIL_INFO SD_SURVEY_SALES_DETAIL_INFO?
}
// 조사 매물 전기 지붕 정보
model SD_SERVEY_SALES_DETAIL_INFO {
//일련번호
id Int @id @default(autoincrement())
//전기계약 용량
contract_capacity String? @db.VarChar(20)
//전기 소매 회사
retail_company String? @db.VarChar(100)
//전기 부대 설비
supplementary_facilities Int? @db.Int
//전기 부대 설비 기타
supplementary_facilities_etc String? @db.VarChar(200)
//설치 희망 시스템
installation_system Int? @db.Int
//설치 희망 시스템 기타
installation_system_etc String? @db.VarChar(200)
//건축 연수
construction_year Int? @db.Int
//건축 연수 기타
construction_year_etc String? @db.VarChar(200)
//지붕재
roof_material Int? @db.Int
//지붕재 기타
roof_material_etc String? @db.VarChar(200)
//지붕 모양
roof_shape Int? @db.Int
//지붕 모양 기타
roof_shape_etc String? @db.VarChar(200)
//지붕 경사도
roof_slope String? @db.VarChar(5)
//주택 구조
house_structure Int? @db.Int
//주택 구조 기타
house_structure_etc String? @db.VarChar(200)
//서까래 재질
rafter_material Int? @db.Int
//서까래 재질 기타
rafter_material_etc String? @db.VarChar(200)
//서까래 크기
rafter_size Int? @db.Int
//서까래 크기 기타
rafter_size_etc String? @db.VarChar(200)
//서까래 피치
rafter_pitch Int? @db.Int
//서까래 피치 기타
rafter_pitch_etc String? @db.VarChar(200)
//서까래 방향
rafter_direction Int? @db.Int
//노지판 종류
open_field_plate_kind Int? @db.Int
//노지판 종류 기타
open_field_plate_kind_etc String? @db.VarChar(200)
//노지판 두께
open_field_plate_thickness String? @db.VarChar(5)
//누수 흔적
leak_trace Boolean? @default(false)
//방수재 종류
waterproof_material Int? @db.Int
//방수재 종류 기타
waterproof_material_etc String? @db.VarChar(200)
//단열재 여부
insulation_presence Int? @db.Int
//단열재 여부 기타
insulation_presence_etc String? @db.VarChar(200)
//지붕 구조 순서
structure_order Int? @db.Int
//지붕 구조 순서 기타
structure_order_etc String? @db.VarChar(200)
//설치 가능 여부
installation_availability Int? @db.Int
//설치 가능 여부 기타
installation_availability_etc String? @db.VarChar(200)
//메모
memo String? @db.VarChar(500)
created_at DateTime @default(now())
updated_at DateTime @updatedAt
basic_info SD_SERVEY_SALES_BASIC_INFO @relation(fields: [basic_info_id], references: [id])
basic_info_id Int @unique
model SD_SURVEY_SALES_DETAIL_INFO {
ID Int @id @default(autoincrement())
CONTRACT_CAPACITY String? @db.VarChar(20)
RETAIL_COMPANY String? @db.VarChar(100)
SUPPLEMENTARY_FACILITIES String? @db.VarChar(20)
SUPPLEMENTARY_FACILITIES_ETC String? @db.VarChar(200)
INSTALLATION_SYSTEM String? @db.VarChar(20)
INSTALLATION_SYSTEM_ETC String? @db.VarChar(200)
CONSTRUCTION_YEAR String? @db.VarChar(200)
CONSTRUCTION_YEAR_ETC String? @db.VarChar(200)
ROOF_MATERIAL String? @db.VarChar(20)
ROOF_MATERIAL_ETC String? @db.VarChar(200)
ROOF_SHAPE String? @db.VarChar(20)
ROOF_SHAPE_ETC String? @db.VarChar(200)
ROOF_SLOPE String? @db.VarChar(5)
HOUSE_STRUCTURE String? @db.VarChar(20)
HOUSE_STRUCTURE_ETC String? @db.VarChar(200)
RAFTER_MATERIAL String? @db.VarChar(20)
RAFTER_MATERIAL_ETC String? @db.VarChar(200)
RAFTER_SIZE String? @db.VarChar(20)
RAFTER_SIZE_ETC String? @db.VarChar(200)
RAFTER_PITCH String? @db.VarChar(20)
RAFTER_PITCH_ETC String? @db.VarChar(200)
RAFTER_DIRECTION String? @db.VarChar(20)
OPEN_FIELD_PLATE_KIND String? @db.VarChar(20)
OPEN_FIELD_PLATE_KIND_ETC String? @db.VarChar(200)
OPEN_FIELD_PLATE_THICKNESS String? @db.VarChar(5)
LEAK_TRACE Boolean? @default(false)
WATERPROOF_MATERIAL String? @db.VarChar(20)
WATERPROOF_MATERIAL_ETC String? @db.VarChar(200)
INSULATION_PRESENCE String? @db.VarChar(20)
INSULATION_PRESENCE_ETC String? @db.VarChar(200)
STRUCTURE_ORDER String? @db.VarChar(20)
STRUCTURE_ORDER_ETC String? @db.VarChar(200)
INSTALLATION_AVAILABILITY String? @db.VarChar(20)
INSTALLATION_AVAILABILITY_ETC String? @db.VarChar(200)
MEMO String? @db.VarChar(500)
REG_DT DateTime @default(now())
UPT_DT DateTime @updatedAt
BASIC_INFO_ID Int @unique
BASIC_INFO SD_SURVEY_SALES_BASIC_INFO @relation(fields: [BASIC_INFO_ID], references: [ID])
}
model BC_COMM_H {
HEAD_CD String @id(map: "PK_BC_COMM_H") @db.NVarChar(6)
HEAD_ID String @db.NVarChar(100)
HEAD_NM String @db.NVarChar(100)
HEAD_JP String @db.NVarChar(100)
HEAD_4TH String @db.NVarChar(100)
REF_CHR1 String @db.NVarChar(100)
REF_CHR2 String @db.NVarChar(100)
REF_CHR3 String @db.NVarChar(100)
REF_CHR4 String @db.NVarChar(100)
REF_CHR5 String @db.NVarChar(100)
REF_NUM1 String @db.NVarChar(100)
REF_NUM2 String @db.NVarChar(100)
REF_NUM3 String @db.NVarChar(100)
REF_NUM4 String @db.NVarChar(100)
REF_NUM5 String @db.NVarChar(100)
REMARKS String @db.NVarChar(200)
SAP_YN String @db.NVarChar(1)
STAT_CD String @db.NVarChar(1)
DEL_YN String @db.NVarChar(1)
REG_DT DateTime? @db.DateTime
REG_ID String @db.NVarChar(50)
UPT_DT DateTime? @db.DateTime
UPT_ID String @db.NVarChar(50)
QC_COMM_YN String? @default("N", map: "DF__BC_COMM_H__QC_CO__48CFD27E") @db.NVarChar(1)
BC_COMM_L BC_COMM_L[]
@@index([HEAD_ID], map: "BC_COMM_H_HEAD_ID_IDX")
}
model BC_COMM_L {
HEAD_CD String @db.NVarChar(6)
CODE String @db.NVarChar(50)
READ_CD String? @db.NVarChar(50)
CODE_NM String? @db.NVarChar(100)
CODE_JP String? @db.NVarChar(100)
CODE_4TH String? @db.NVarChar(100)
REF_CHR1 String? @db.NVarChar(150)
REF_CHR2 String? @db.NVarChar(150)
REF_CHR3 String? @db.NVarChar(150)
REF_CHR4 String? @db.NVarChar(150)
REF_CHR5 String? @db.NVarChar(150)
REF_NUM1 Decimal? @db.Decimal(22, 5)
REF_NUM2 Decimal? @db.Decimal(22, 5)
REF_NUM3 Decimal? @db.Decimal(22, 5)
REF_NUM4 Decimal? @db.Decimal(22, 5)
REF_NUM5 Decimal? @db.Decimal(22, 5)
PRIORITY Decimal? @db.Decimal(3, 0)
REF_CNT String? @db.NVarChar(5)
STAT_CD String? @db.NVarChar(1)
DEL_YN String? @db.NVarChar(1)
REG_DT DateTime? @db.DateTime
REG_ID String? @db.NVarChar(50)
UPT_DT DateTime? @db.DateTime
UPT_ID String? @db.NVarChar(50)
BC_COMM_H BC_COMM_H @relation(fields: [HEAD_CD], references: [HEAD_CD], onUpdate: NoAction, map: "FK_BC_COMM_L")
@@id([HEAD_CD, CODE], map: "PK_BC_COMM_L")
}
model MS_SUITABLE_ROOF_MATERIAL_GROUP {
ID Int @id @default(autoincrement())
ROOF_MATERIAL_GROUP String @db.VarChar(200)
ROOF_MT_CD String @db.VarChar(200)
REG_DT DateTime @default(now(), map: "DF__MS_SUITAB__creat__4F7CD00D")
UPT_DT DateTime
}
model MS_SUITABLE_DETAIL {
ID Int @id @default(autoincrement())
MAIN_ID Int
TRESTLE_MFPC_CD String? @db.VarChar(200)
TRESTLE_MANUFACTURER_PRODUCT_NAME String? @db.VarChar(200)
MEMO String? @db.VarChar(500)
REG_DT DateTime @default(now(), map: "DF__MS_SUITAB__creat__571DF1D5")
UPT_DT DateTime?
MS_SUITABLE_MAIN MS_SUITABLE_MAIN @relation(fields: [MAIN_ID], references: [ID], onUpdate: NoAction, map: "MS_SUITABLE_DETAIL_MS_SUITABLE_MAIN_FK")
}
model MS_SUITABLE_MAIN {
ID Int @id @default(autoincrement())
PRODUCT_NAME String @db.VarChar(200)
MANU_FT_CD String? @db.VarChar(200)
ROOF_MT_CD String? @db.VarChar(100)
ROOF_SH_CD String? @db.VarChar(200)
REG_DT DateTime @default(now(), map: "DF__MS_SUITAB__creat__5441852A")
UPT_DT DateTime?
MS_SUITABLE_DETAIL MS_SUITABLE_DETAIL[]
}
/// The underlying table does not contain a valid unique identifier and can therefore currently not be handled by Prisma Client.
model MS_USR_TRK {
ID Int @id @default(autoincrement())
OWNER String @db.VarChar(100)
TYPE String @db.VarChar(50)
URL String? @db.VarChar(200)
data String? @db.VarChar(200)
REG_DT DateTime @default(now())
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,3 @@
<svg width="6" height="10" viewBox="0 0 6 10" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 1L5 5L1 9" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 207 B

View File

@ -0,0 +1,4 @@
<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.125 10.875L10.875 7.125" stroke="white" stroke-width="1.5" stroke-linecap="round"/>
<path d="M12.6347 10.9572L14.5919 9C16.136 7.45584 16.136 4.95227 14.5919 3.40812C13.0477 1.86396 10.5442 1.86396 9 3.40812L7.04284 5.36528M10.9572 12.6347L9 14.5919C7.45584 16.136 4.95227 16.136 3.40812 14.5919C1.86396 13.0477 1.86396 10.5442 3.40812 9L5.36528 7.04284" stroke="white" stroke-width="1.5" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 529 B

View File

@ -0,0 +1,4 @@
<svg width="19" height="18" viewBox="0 0 19 18" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.625 10.875L11.375 7.125" stroke="#4E637E" stroke-width="1.5" stroke-linecap="round"/>
<path d="M13.1347 10.9572L15.0919 9C16.636 7.45584 16.636 4.95227 15.0919 3.40812C13.5477 1.86396 11.0442 1.86396 9.5 3.40812L7.54284 5.36528M11.4572 12.6347L9.5 14.5919C7.95584 16.136 5.45227 16.136 3.90812 14.5919C2.36396 13.0477 2.36396 10.5442 3.90812 9L5.86528 7.04284" stroke="#4E637E" stroke-width="1.5" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 537 B

View File

@ -0,0 +1,4 @@
<svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="2" height="10" rx="1" transform="matrix(0 -1 -1 0 10 6)" fill="white"/>
<rect x="4" width="2" height="10" rx="1" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 244 B

View File

@ -0,0 +1,14 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_169_1229)">
<path d="M17 7H7C5.89543 7 5 7.89543 5 9V18C5 19.1046 5.89543 20 7 20H17C18.1046 20 19 19.1046 19 18V9C19 7.89543 18.1046 7 17 7Z" fill="white"/>
<path d="M17 7.5H7C6.17157 7.5 5.5 8.17157 5.5 9V18C5.5 18.8284 6.17157 19.5 7 19.5H17C17.8284 19.5 18.5 18.8284 18.5 18V9C18.5 8.17157 17.8284 7.5 17 7.5Z" stroke="#A8B6C7" stroke-width="1.5"/>
<path d="M7 7H17C17.5304 7 18.0391 7.21071 18.4142 7.58579C18.7893 7.96086 19 8.46957 19 9V12H5V9C5 8.46957 5.21071 7.96086 5.58579 7.58579C5.96086 7.21071 6.46957 7 7 7Z" fill="#A8B6C7"/>
<path d="M9 5C9.26522 5 9.51957 5.10536 9.70711 5.29289C9.89464 5.48043 10 5.73478 10 6V8H8V6C8 5.73478 8.10536 5.48043 8.29289 5.29289C8.48043 5.10536 8.73478 5 9 5Z" fill="#A8B6C7"/>
<path d="M15 5C15.2652 5 15.5196 5.10536 15.7071 5.29289C15.8946 5.48043 16 5.73478 16 6V8H14V6C14 5.73478 14.1054 5.48043 14.2929 5.29289C14.4804 5.10536 14.7348 5 15 5Z" fill="#A8B6C7"/>
</g>
<defs>
<clipPath id="clip0_169_1229">
<rect width="16" height="16" fill="white" transform="translate(4 5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1,10 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_169_1253)">
<path fill-rule="evenodd" clip-rule="evenodd" d="M3.06815e-06 8C3.06815e-06 6.41775 0.469195 4.87103 1.34825 3.55544C2.2273 2.23985 3.47673 1.21447 4.93854 0.608967C6.40034 0.00346625 8.00888 -0.15496 9.56073 0.153721C11.1126 0.462403 12.538 1.22433 13.6569 2.34315C14.7757 3.46197 15.5376 4.88743 15.8463 6.43928C16.155 7.99113 15.9965 9.59966 15.391 11.0615C14.7855 12.5233 13.7602 13.7727 12.4446 14.6518C11.129 15.5308 9.58225 16 8 16C6.94917 16.0009 5.90847 15.7946 4.93745 15.3929C3.96643 14.9912 3.08415 14.402 2.3411 13.6589C1.59804 12.9159 1.0088 12.0336 0.607092 11.0626C0.20538 10.0915 -0.00091762 9.05084 3.06815e-06 8ZM8 6.872L10.072 4.8L11.2 5.928L9.128 8L11.2 10.072L10.072 11.2L8 9.128L5.928 11.2L4.8 10.072L6.872 8L4.8 5.928L5.928 4.8L8 6.872Z" fill="#A8B6C7"/>
</g>
<defs>
<clipPath id="clip0_169_1253">
<rect width="16" height="16" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -0,0 +1,3 @@
<svg width="10" height="12" viewBox="0 0 10 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M10.0007 9.93023C10.0138 10.4593 9.84112 10.9762 9.51269 11.3912C9.37838 11.5781 9.20188 11.7306 8.99755 11.8364C8.79321 11.9422 8.5668 11.9984 8.33669 12.0002H1.66469C1.43459 11.9984 1.20818 11.9422 1.00384 11.8364C0.799503 11.7306 0.623008 11.5781 0.488694 11.3912C0.160266 10.9762 -0.0124006 10.4593 0.000693567 9.93023C-0.00072481 9.51133 0.0213097 9.09267 0.0666936 8.67623C0.11313 8.27361 0.195799 7.876 0.313694 7.48823C0.416695 7.12727 0.570573 6.78281 0.770694 6.46523C0.957125 6.1776 1.20855 5.93782 1.50469 5.76523C1.82451 5.58323 2.18781 5.49162 2.55569 5.50023C2.87512 5.82266 3.25627 6.0774 3.67636 6.24922C4.09645 6.42103 4.54687 6.5064 5.00069 6.50023C5.45452 6.5064 5.90494 6.42103 6.32503 6.24922C6.74512 6.0774 7.12627 5.82266 7.44569 5.50023C7.81539 5.49241 8.1802 5.58577 8.50069 5.77023C8.79683 5.94282 9.04826 6.1826 9.23469 6.47023C9.43481 6.78781 9.58869 7.13227 9.69169 7.49323C9.80925 7.88103 9.89158 8.27864 9.93769 8.68123C9.98189 9.09607 10.0029 9.51305 10.0007 9.93023ZM8.00069 3.00023C8.00686 3.39506 7.93204 3.78697 7.78086 4.15176C7.62967 4.51656 7.40534 4.8465 7.12169 5.12123C6.84696 5.40488 6.51702 5.62921 6.15223 5.78039C5.78743 5.93157 5.39553 6.00639 5.00069 6.00023C4.60586 6.00639 4.21395 5.93157 3.84916 5.78039C3.48436 5.62921 3.15442 5.40488 2.87969 5.12123C2.59605 4.8465 2.37171 4.51656 2.22053 4.15176C2.06935 3.78697 1.99453 3.39506 2.00069 3.00023C1.99453 2.6054 2.06935 2.21349 2.22053 1.8487C2.37171 1.4839 2.59605 1.15396 2.87969 0.879229C3.15442 0.595584 3.48436 0.371249 3.84916 0.220068C4.21395 0.0688871 4.60586 -0.00593148 5.00069 0.000229761C5.39553 -0.00593148 5.78743 0.0688871 6.15223 0.220068C6.51702 0.371249 6.84696 0.595584 7.12169 0.879229C7.40534 1.15396 7.62967 1.4839 7.78086 1.8487C7.93204 2.21349 8.00686 2.6054 8.00069 3.00023Z" fill="#A8B6C7"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -0,0 +1,16 @@
<svg width="19" height="14" viewBox="0 0 19 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_243_508)">
<path d="M9.5 0.5C7.44666 0.503119 5.44191 1.12498 3.74727 2.28447C2.05263 3.44397 0.74676 5.08726 0 7C0.743991 8.91467 2.04917 10.5598 3.74441 11.7199C5.43966 12.8799 7.44586 13.5005 9.5 13.5005C11.5541 13.5005 13.5603 12.8799 15.2556 11.7199C16.9508 10.5598 18.256 8.91467 19 7C18.2532 5.08726 16.9474 3.44397 15.2527 2.28447C13.5581 1.12498 11.5533 0.503119 9.5 0.5ZM9.5 11.333C8.64238 11.336 7.80317 11.0844 7.08864 10.6101C6.37411 10.1358 5.81641 9.46007 5.48615 8.66859C5.1559 7.8771 5.06794 7.00541 5.23344 6.16391C5.39893 5.3224 5.81042 4.54893 6.4158 3.94145C7.02118 3.33397 7.79322 2.9198 8.63414 2.75139C9.47507 2.58298 10.3471 2.66791 11.1397 2.99541C11.9323 3.32292 12.6099 3.87828 13.0867 4.59116C13.5635 5.30404 13.818 6.14238 13.818 7C13.8196 8.14707 13.3657 9.24784 12.556 10.0604C11.7463 10.8729 10.6471 11.3306 9.5 11.333ZM9.5 4.4C8.98539 4.39822 8.48182 4.54919 8.05307 4.8338C7.62432 5.1184 7.28967 5.52384 7.09151 5.99877C6.89334 6.4737 6.84056 6.99675 6.93987 7.5017C7.03917 8.00664 7.28608 8.47075 7.64934 8.83527C8.01259 9.19979 8.47585 9.44831 8.98045 9.54936C9.48504 9.65042 10.0083 9.59946 10.4839 9.40294C10.9595 9.20642 11.3661 8.87317 11.6522 8.44541C11.9383 8.01765 12.091 7.51461 12.091 7C12.0921 6.65903 12.0258 6.32119 11.8961 6.00586C11.7664 5.69052 11.5757 5.40388 11.335 5.16236C11.0943 4.92084 10.8083 4.72917 10.4935 4.59835C10.1786 4.46754 9.84098 4.40013 9.5 4.4Z" fill="#C6D2E0"/>
<mask id="mask0_243_508" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="19" height="14">
<path d="M9.5 0.5C7.44666 0.503119 5.44191 1.12498 3.74727 2.28447C2.05263 3.44397 0.74676 5.08726 0 7C0.743991 8.91467 2.04917 10.5598 3.74441 11.7199C5.43966 12.8799 7.44586 13.5005 9.5 13.5005C11.5541 13.5005 13.5603 12.8799 15.2556 11.7199C16.9508 10.5598 18.256 8.91467 19 7C18.2532 5.08726 16.9474 3.44397 15.2527 2.28447C13.5581 1.12498 11.5533 0.503119 9.5 0.5ZM9.5 11.333C8.64238 11.336 7.80317 11.0844 7.08864 10.6101C6.37411 10.1358 5.81641 9.46007 5.48615 8.66859C5.1559 7.8771 5.06794 7.00541 5.23344 6.16391C5.39893 5.3224 5.81042 4.54893 6.4158 3.94145C7.02118 3.33397 7.79322 2.9198 8.63414 2.75139C9.47507 2.58298 10.3471 2.66791 11.1397 2.99541C11.9323 3.32292 12.6099 3.87828 13.0867 4.59116C13.5635 5.30404 13.818 6.14238 13.818 7C13.8196 8.14707 13.3657 9.24784 12.556 10.0604C11.7463 10.8729 10.6471 11.3306 9.5 11.333ZM9.5 4.4C8.98539 4.39822 8.48182 4.54919 8.05307 4.8338C7.62432 5.1184 7.28967 5.52384 7.09151 5.99877C6.89334 6.4737 6.84056 6.99675 6.93987 7.5017C7.03917 8.00664 7.28608 8.47075 7.64934 8.83527C8.01259 9.19979 8.47585 9.44831 8.98045 9.54936C9.48504 9.65042 10.0083 9.59946 10.4839 9.40294C10.9595 9.20642 11.3661 8.87317 11.6522 8.44541C11.9383 8.01765 12.091 7.51461 12.091 7C12.0921 6.65903 12.0258 6.32119 11.8961 6.00586C11.7664 5.69052 11.5757 5.40388 11.335 5.16236C11.0943 4.92084 10.8083 4.72917 10.4935 4.59835C10.1786 4.46754 9.84098 4.40013 9.5 4.4Z" fill="white"/>
</mask>
<g mask="url(#mask0_243_508)">
<path d="M15.3699 -0.375707L17.3752 1.56459L3.91121 14.7797L1.90586 12.8394L15.3699 -0.375707Z" fill="white"/>
</g>
</g>
<defs>
<clipPath id="clip0_243_508">
<rect width="19" height="13" fill="white" transform="translate(0 0.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@ -0,0 +1,3 @@
<svg width="9" height="12" viewBox="0 0 9 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M2.50011 5.50004H6.50011V4.00004C6.5042 3.73682 6.45431 3.47555 6.35352 3.23236C6.25274 2.98916 6.10319 2.7692 5.91411 2.58604C5.73094 2.39696 5.51098 2.24741 5.26779 2.14662C5.02459 2.04584 4.76333 1.99595 4.50011 2.00004C4.23689 1.99595 3.97562 2.04584 3.73243 2.14662C3.48924 2.24741 3.26927 2.39696 3.08611 2.58604C2.89703 2.7692 2.74748 2.98916 2.64669 3.23236C2.54591 3.47555 2.49602 3.73682 2.50011 4.00004V5.50004ZM9.00011 6.25004V10.75C9.00182 10.8488 8.98327 10.9469 8.9456 11.0382C8.90794 11.1295 8.85195 11.2122 8.78111 11.281C8.71226 11.3519 8.62962 11.4079 8.53829 11.4455C8.44696 11.4832 8.34888 11.5017 8.25011 11.5H0.750108C0.651333 11.5017 0.553255 11.4832 0.461927 11.4455C0.370599 11.4079 0.28796 11.3519 0.219108 11.281C0.148264 11.2122 0.0922805 11.1295 0.0546143 11.0382C0.016948 10.9469 -0.00160222 10.8488 0.000108407 10.75V6.25004C-0.00160222 6.15126 0.016948 6.05318 0.0546143 5.96186C0.0922805 5.87053 0.148264 5.78789 0.219108 5.71904C0.28796 5.64819 0.370599 5.59221 0.461927 5.55454C0.553255 5.51688 0.651333 5.49833 0.750108 5.50004H1.00011V4.00004C0.994168 3.53989 1.08259 3.08341 1.25991 2.65876C1.43723 2.23412 1.6997 1.85031 2.03111 1.53104C2.35038 1.19963 2.73419 0.937163 3.15883 0.759839C3.58348 0.582516 4.03996 0.494096 4.50011 0.500037C4.96025 0.494096 5.41673 0.582516 5.84138 0.759839C6.26603 0.937163 6.64983 1.19963 6.96911 1.53104C7.30052 1.85031 7.56298 2.23412 7.74031 2.65876C7.91763 3.08341 8.00605 3.53989 8.00011 4.00004V5.50004H8.25011C8.34888 5.49833 8.44696 5.51688 8.53829 5.55454C8.62962 5.59221 8.71226 5.64819 8.78111 5.71904C8.85195 5.78789 8.90794 5.87053 8.9456 5.96186C8.98327 6.05318 9.00182 6.15126 9.00011 6.25004Z" fill="#A8B6C7"/>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -0,0 +1,3 @@
<svg width="19" height="14" viewBox="0 0 19 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.5 0.522583C7.4493 0.523752 5.44643 1.14218 3.75206 2.29738C2.0577 3.45258 0.750291 5.09107 0 6.99958C0.749121 8.90896 2.05622 10.5483 3.75083 11.7038C5.44544 12.8593 7.44892 13.4774 9.5 13.4774C11.5511 13.4774 13.5546 12.8593 15.2492 11.7038C16.9438 10.5483 18.2509 8.90896 19 6.99958C18.2497 5.09107 16.9423 3.45258 15.2479 2.29738C13.5536 1.14218 11.5507 0.523752 9.5 0.522583ZM9.5 11.3226C8.64598 11.3226 7.81114 11.0693 7.10105 10.5949C6.39096 10.1204 5.83751 9.44602 5.51069 8.65701C5.18387 7.868 5.09836 6.99979 5.26497 6.16218C5.43158 5.32457 5.84283 4.55518 6.44671 3.9513C7.0506 3.34741 7.81999 2.93616 8.6576 2.76955C9.49521 2.60294 10.3634 2.68845 11.1524 3.01527C11.9414 3.34209 12.6158 3.89554 13.0903 4.60563C13.5648 5.31572 13.818 6.15056 13.818 7.00458C13.8175 8.14963 13.3624 9.24762 12.5527 10.0573C11.743 10.867 10.645 11.3221 9.5 11.3226ZM9.5 4.41358C8.98755 4.41358 8.4866 4.56554 8.06052 4.85025C7.63443 5.13495 7.30233 5.53961 7.10623 6.01305C6.91012 6.48649 6.85881 7.00746 6.95879 7.51006C7.05876 8.01267 7.30553 8.47434 7.66789 8.8367C8.03024 9.19905 8.49192 9.44582 8.99452 9.5458C9.49713 9.64577 10.0181 9.59446 10.4915 9.39835C10.965 9.20225 11.3696 8.87015 11.6543 8.44407C11.939 8.01798 12.091 7.51703 12.091 7.00458C12.0922 6.66376 12.026 6.32606 11.8963 6.01089C11.7666 5.69572 11.5758 5.40929 11.3351 5.16806C11.0943 4.92683 10.8082 4.73555 10.4933 4.60521C10.1784 4.47488 9.84083 4.40805 9.5 4.40858V4.41358Z" fill="#A8B6C7"/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 12C4 10.4178 4.46919 8.87103 5.34825 7.55544C6.2273 6.23985 7.47672 5.21447 8.93853 4.60897C10.4003 4.00347 12.0089 3.84504 13.5607 4.15372C15.1126 4.4624 16.538 5.22433 17.6569 6.34315C18.7757 7.46197 19.5376 8.88743 19.8463 10.4393C20.155 11.9911 19.9965 13.5997 19.391 15.0615C18.7855 16.5233 17.7602 17.7727 16.4446 18.6518C15.129 19.5308 13.5822 20 12 20C10.9492 20.0009 9.90846 19.7946 8.93744 19.3929C7.96642 18.9912 7.08415 18.402 6.34109 17.6589C5.59804 16.9159 5.0088 16.0336 4.60709 15.0626C4.20538 14.0915 3.99908 13.0508 4 12ZM12 10.872L14.072 8.8L15.2 9.928L13.128 12L15.2 14.072L14.072 15.2L12 13.128L9.928 15.2L8.8 14.072L10.872 12L8.8 9.928L9.928 8.8L12 10.872Z" fill="#D9E1EC"/>
</svg>

After

Width:  |  Height:  |  Size: 852 B

View File

@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11 4C14.866 4 18 7.13401 18 11C18 12.6663 17.4164 14.1955 16.4443 15.3975C16.4539 15.4045 16.4644 15.4104 16.4736 15.418L16.5303 15.4697L19.5303 18.4697L19.582 18.5264C19.8223 18.8209 19.8049 19.2557 19.5303 19.5303C19.2557 19.8049 18.8209 19.8223 18.5264 19.582L18.4697 19.5303L15.4697 16.5303L15.418 16.4736C15.4104 16.4644 15.4045 16.4539 15.3975 16.4443C14.1955 17.4164 12.6663 18 11 18C7.13401 18 4 14.866 4 11C4 7.13401 7.13401 4 11 4ZM11 5.5C7.96243 5.5 5.5 7.96243 5.5 11C5.5 14.0376 7.96243 16.5 11 16.5C14.0376 16.5 16.5 14.0376 16.5 11C16.5 7.96243 14.0376 5.5 11 5.5Z" fill="#A8B6C7"/>
</svg>

After

Width:  |  Height:  |  Size: 711 B

View File

@ -0,0 +1,3 @@
<svg width="14" height="8" viewBox="0 0 14 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 1L7 7L13 1" stroke="#A8B6C7" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 210 B

View File

@ -0,0 +1,5 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M3 12H21" stroke="#101010" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M12 6H21" stroke="#101010" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M12 18H21" stroke="#101010" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 410 B

View File

@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6.7072 5.29289C6.31668 4.90237 5.68351 4.90237 5.29299 5.29289C4.90246 5.68342 4.90246 6.31658 5.29299 6.7071L10.5858 12L5.29289 17.2929C4.90237 17.6834 4.90237 18.3166 5.29289 18.7071C5.68342 19.0976 6.31658 19.0976 6.70711 18.7071L12 13.4142L17.293 18.7071C17.6835 19.0976 18.3167 19.0976 18.7072 18.7071C19.0977 18.3166 19.0977 17.6834 18.7072 17.2929L13.4143 12L18.7071 6.70711C19.0976 6.31658 19.0976 5.68342 18.7071 5.29289C18.3166 4.90237 17.6834 4.90237 17.2929 5.29289L12 10.5857L6.7072 5.29289Z" fill="#101010"/>
</svg>

After

Width:  |  Height:  |  Size: 636 B

View File

@ -0,0 +1,4 @@
<svg width="17" height="20" viewBox="0 0 17 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M15.2104 18.9998V16.9001C15.2104 15.9767 14.882 15.1046 14.3177 14.4725C13.7907 13.8824 13.1027 13.5487 12.3926 13.5092L12.2499 13.5053H4.74992C3.98984 13.5053 3.24431 13.8429 2.68218 14.4725C2.1178 15.1046 1.7894 15.9767 1.7894 16.9001V18.9998C1.7894 19.4445 1.43594 19.805 0.999923 19.805C0.563909 19.805 0.210449 19.4445 0.210449 18.9998V16.9001C0.210449 15.5957 0.672785 14.3313 1.51493 13.3881C2.35931 12.4424 3.52093 11.8947 4.74992 11.8947H12.2499L12.4797 11.901C13.623 11.9647 14.6933 12.5016 15.4849 13.3881C16.3271 14.3313 16.7894 15.5957 16.7894 16.9001V18.9998C16.7894 19.4445 16.4359 19.805 15.9999 19.805C15.5639 19.805 15.2104 19.4445 15.2104 18.9998Z" fill="white"/>
<path d="M11.681 5.04991C11.6809 3.25793 10.2568 1.80526 8.49996 1.80526C6.74315 1.80531 5.31899 3.25796 5.31894 5.04991C5.31894 6.84189 6.74312 8.2945 8.49996 8.29455C10.2568 8.29455 11.681 6.84193 11.681 5.04991ZM13.2599 5.04991C13.2599 7.73139 11.1289 9.90508 8.49996 9.90508C5.87109 9.90503 3.73999 7.73136 3.73999 5.04991C3.74004 2.36849 5.87112 0.194787 8.49996 0.194736C11.1288 0.194736 13.2599 2.36846 13.2599 5.04991Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1,6 @@
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.4498 1.90001H9.54985C5.51941 1.90001 3.50419 1.90001 2.2521 3.15213C1 4.40424 1 6.4195 1 10.45C1 14.4805 1 16.4958 2.2521 17.7479C3.50419 19 5.51941 19 9.54985 19C13.5803 19 15.5955 19 16.8476 17.7479C18.0997 16.4958 18.0997 14.4805 18.0997 10.45V9.55001" stroke="white" stroke-width="1.5" stroke-linecap="round"/>
<path d="M18.9996 4.15C18.9996 5.8897 17.5893 7.3 15.8497 7.3C14.11 7.3 12.6997 5.8897 12.6997 4.15C12.6997 2.4103 14.11 1 15.8497 1C17.5893 1 18.9996 2.4103 18.9996 4.15Z" stroke="white" stroke-width="1.5"/>
<path d="M5.5 9.1H9.09994" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M5.5 13.6H12.6999" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 861 B

View File

@ -0,0 +1,5 @@
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11.5 2.00372C10.6049 1.99039 9.7047 2.01289 8.8294 2.07107C4.64639 2.34913 1.31441 5.72838 1.04024 9.97072C0.986587 10.8009 0.986587 11.6607 1.04024 12.4909C1.1401 14.036 1.82343 15.4666 2.62791 16.6746C3.09501 17.5203 2.78674 18.5758 2.30021 19.4978C1.94941 20.1626 1.77401 20.495 1.91484 20.7351C2.05568 20.9752 2.37026 20.9829 2.99943 20.9982C4.24367 21.0285 5.08268 20.6757 5.74868 20.1846C6.1264 19.9061 6.31527 19.7668 6.44544 19.7508C6.5756 19.7348 6.83177 19.8403 7.34401 20.0513C7.8044 20.2409 8.33896 20.3579 8.8294 20.3905C10.2536 20.4852 11.7435 20.4854 13.1706 20.3905C17.3536 20.1125 20.6856 16.7332 20.9598 12.4909C21.0021 11.836 21.011 11.1627 20.9866 10.5" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M7.5 14H14.5M7.5 9H11" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M14 4.5H21M17.5 1L17.5 8" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -0,0 +1,5 @@
<svg width="19" height="22" viewBox="0 0 19 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M18 8.90909L18 6.81818C18 5.12494 18 4.27832 17.732 3.60214C17.3013 2.5151 16.3902 1.65765 15.2352 1.2522C14.5168 1 13.6173 1 11.8182 0.999999C8.66981 0.999999 7.09563 1 5.83836 1.44135C3.81714 2.15088 2.22282 3.65142 1.46894 5.55375C1 6.73706 1 8.21865 1 11.1818L1 13.7273C1 16.7966 1 18.3313 1.8477 19.3971C2.09058 19.7025 2.37862 19.9736 2.70307 20.2022C3.83546 21 5.46607 21 8.72727 21L9.5 21C10.0347 21 11.0337 21 11.5 20.9972" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M1 11C1 9.15905 2.49238 7.66667 4.33333 7.66667C4.99912 7.66667 5.78404 7.78333 6.43137 7.60988C7.00652 7.45576 7.45576 7.00652 7.60988 6.43136C7.78333 5.78404 7.66667 4.99912 7.66667 4.33333C7.66667 2.49238 9.15905 1 11 1" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M18 15H10.5M18 15C18 15.7002 16.0057 17.0085 15.5 17.5M18 15C18 14.2998 16.0057 12.9915 15.5 12.5" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M20 10.9899V13.0101H7.87879L13.4343 18.5657L12 20L4 12L12 4L13.4343 5.43434L7.87879 10.9899H20Z" fill="#2B2B2B"/>
</svg>

After

Width:  |  Height:  |  Size: 226 B

View File

@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6.7072 5.29289C6.31668 4.90237 5.68351 4.90237 5.29299 5.29289C4.90246 5.68342 4.90246 6.31658 5.29299 6.70711L10.5858 12L5.29289 17.2929C4.90237 17.6834 4.90237 18.3166 5.29289 18.7071C5.68342 19.0976 6.31658 19.0976 6.70711 18.7071L12 13.4142L17.293 18.7071C17.6835 19.0976 18.3167 19.0976 18.7072 18.7071C19.0977 18.3166 19.0977 17.6834 18.7072 17.2929L13.4143 12L18.7071 6.70711C19.0976 6.31658 19.0976 5.68342 18.7071 5.29289C18.3166 4.90237 17.6834 4.90237 17.2929 5.29289L12 10.5857L6.7072 5.29289Z" fill="#535763"/>
</svg>

After

Width:  |  Height:  |  Size: 637 B

View File

@ -0,0 +1,3 @@
<svg width="6" height="11" viewBox="0 0 6 11" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 1.5L5 5.5L1 9.5" stroke="#8F9CB1" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 213 B

View File

@ -0,0 +1,5 @@
<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="48" height="48" rx="24" fill="#101010"/>
<path d="M34 34.1765V31.5686C34 30.1853 33.4996 28.8587 32.6088 27.8806C31.718 26.9024 30.5098 26.3529 29.25 26.3529H19.75C18.4902 26.3529 17.282 26.9024 16.3912 27.8806C15.5004 28.8587 15 30.1853 15 31.5686V34.1765" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M24.5001 21.8824C27.2778 21.8824 29.5295 19.6306 29.5295 16.8529C29.5295 14.0753 27.2778 11.8235 24.5001 11.8235C21.7224 11.8235 19.4707 14.0753 19.4707 16.8529C19.4707 19.6306 21.7224 21.8824 24.5001 21.8824Z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 756 B

View File

@ -0,0 +1,8 @@
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 4C1 2.34315 2.34315 1 4 1H16C17.6569 1 19 2.34315 19 4V18C19 19.6569 17.6569 21 16 21H4C2.34315 21 1 19.6569 1 18V4Z" fill="white"/>
<path d="M19 10V9C19 5.22876 19 3.34315 17.7595 2.17157C16.519 1 14.5225 1 10.5294 1L9.47059 1C5.47752 1 3.48098 1 2.24049 2.17157C1 3.34315 1 5.22876 1 9L1 13C1 16.7712 1 18.6569 2.24049 19.8284C3.48098 21 5.47751 21 9.47059 21H10" stroke="#7896BA" stroke-width="1.5" stroke-linecap="round"/>
<path d="M6 6H14" stroke="#7896BA" stroke-width="1.5" stroke-linecap="round"/>
<path d="M6 11H14" stroke="#7896BA" stroke-width="1.5" stroke-linecap="round"/>
<path d="M17.3285 13.8039C17.6619 13.4705 17.8285 13.3039 18.0019 13.2037C18.4725 12.9321 19.0522 12.9321 19.5227 13.2037C19.6961 13.3039 19.8628 13.4705 20.1961 13.8039C20.5295 14.1372 20.6961 14.3039 20.7963 14.4773C21.0679 14.9478 21.0679 15.5275 20.7963 15.9981C20.6961 16.1715 20.5295 16.3381 20.1961 16.6715L16.8883 19.9793C16.2274 20.6402 15.2301 20.6671 14.3477 20.8557C13.6578 21.0032 13.3128 21.077 13.1179 20.8821C12.923 20.6872 12.9968 20.3422 13.1443 19.6523C13.3329 18.7699 13.3598 17.7726 14.0207 17.1117L17.3285 13.8039Z" fill="#F4F9FF"/>
<path d="M14.3477 20.8557L14.1909 20.1223L14.3477 20.8557ZM13.1443 19.6523L13.8777 19.8091L13.1443 19.6523ZM14.0207 17.1117L13.4903 16.5814L14.0207 17.1117ZM16.8883 19.9793L16.358 19.449L16.8883 19.9793ZM20.7963 14.4773L21.4458 14.1023V14.1023L20.7963 14.4773ZM20.1961 16.6715L20.7265 17.2018L20.1961 16.6715ZM20.7963 15.9981L21.4458 16.3731L20.7963 15.9981ZM19.5227 13.2037L19.8977 12.5542V12.5542L19.5227 13.2037ZM17.3285 13.8039L17.8588 14.3342L17.3285 13.8039ZM18.0019 13.2037L17.6269 12.5542V12.5542L18.0019 13.2037ZM20.1961 16.6715L19.6658 16.1412L16.358 19.449L16.8883 19.9793L17.4186 20.5097L20.7265 17.2018L20.1961 16.6715ZM14.0207 17.1117L14.551 17.642L17.8588 14.3342L17.3285 13.8039L16.7982 13.2735L13.4903 16.5814L14.0207 17.1117ZM14.3477 20.8557L14.1909 20.1223C14.0155 20.1598 13.8753 20.1897 13.7548 20.2121C13.6333 20.2347 13.5536 20.2454 13.4996 20.2488C13.4441 20.2524 13.4479 20.2458 13.4825 20.2547C13.5296 20.2669 13.5936 20.2972 13.6482 20.3518L13.1179 20.8821L12.5876 21.4124C12.9113 21.7362 13.3158 21.7636 13.5948 21.7458C13.8603 21.7289 14.1839 21.6577 14.5045 21.5891L14.3477 20.8557ZM13.1443 19.6523L12.4109 19.4955C12.3423 19.8161 12.2711 20.1397 12.2542 20.4052C12.2364 20.6842 12.2638 21.0887 12.5876 21.4124L13.1179 20.8821L13.6482 20.3518C13.7028 20.4064 13.7331 20.4704 13.7453 20.5175C13.7542 20.5521 13.7476 20.5559 13.7512 20.5004C13.7546 20.4464 13.7653 20.3667 13.7879 20.2452C13.8103 20.1247 13.8402 19.9845 13.8777 19.8091L13.1443 19.6523ZM20.1961 13.8039L19.6658 14.3342C20.0333 14.7017 20.1084 14.786 20.1467 14.8523L20.7963 14.4773L21.4458 14.1023C21.2839 13.8218 21.0257 13.5728 20.7265 13.2735L20.1961 13.8039ZM20.1961 16.6715L20.7265 17.2018C21.0257 16.9026 21.2839 16.6535 21.4458 16.3731L20.7963 15.9981L20.1467 15.6231C20.1084 15.6894 20.0333 15.7737 19.6658 16.1412L20.1961 16.6715ZM20.7963 14.4773L20.1467 14.8523C20.2844 15.0908 20.2844 15.3846 20.1467 15.6231L20.7963 15.9981L21.4458 16.3731C21.8514 15.6705 21.8514 14.8049 21.4458 14.1023L20.7963 14.4773ZM20.1961 13.8039L20.7265 13.2735C20.4272 12.9743 20.1782 12.7161 19.8977 12.5542L19.5227 13.2037L19.1477 13.8533C19.214 13.8916 19.2983 13.9667 19.6658 14.3342L20.1961 13.8039ZM17.3285 13.8039L17.8588 14.3342C18.2263 13.9667 18.3106 13.8916 18.3769 13.8533L18.0019 13.2037L17.6269 12.5542C17.3465 12.7161 17.0974 12.9743 16.7982 13.2735L17.3285 13.8039ZM19.5227 13.2037L19.8977 12.5542C19.1951 12.1486 18.3295 12.1486 17.6269 12.5542L18.0019 13.2037L18.3769 13.8533C18.6154 13.7156 18.9092 13.7156 19.1477 13.8533L19.5227 13.2037ZM16.8883 19.9793L16.358 19.449C16.1624 19.6445 15.8952 19.771 15.5155 19.8679C15.3253 19.9165 15.1224 19.954 14.8963 19.9931C14.679 20.0306 14.4303 20.0711 14.1909 20.1223L14.3477 20.8557L14.5045 21.5891C14.7063 21.546 14.9131 21.5124 15.1517 21.4712C15.3814 21.4315 15.6346 21.3856 15.8866 21.3213C16.3914 21.1924 16.9533 20.975 17.4186 20.5097L16.8883 19.9793ZM13.1443 19.6523L13.8777 19.8091C13.9289 19.5697 13.9694 19.321 14.0069 19.1037C14.046 18.8776 14.0835 18.6747 14.1321 18.4845C14.229 18.1048 14.3555 17.8376 14.551 17.642L14.0207 17.1117L13.4903 16.5814C13.025 17.0467 12.8076 17.6086 12.6787 18.1134C12.6144 18.3654 12.5685 18.6186 12.5288 18.8483C12.4876 19.0869 12.454 19.2937 12.4109 19.4955L13.1443 19.6523Z" fill="#7896BA"/>
</svg>

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@ -0,0 +1,7 @@
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.2435 0.855705C15.4097 0.855705 19.5984 4.76701 19.5984 9.59169C19.5983 14.4163 15.4097 18.3277 10.2435 18.3277C9.21282 18.3276 8.22209 18.1686 7.2948 17.8811L6.93848 18.2343L3.16521 18.8557L4.21196 16.2668C2.1806 14.6643 0.889448 12.2694 0.889404 9.59169C0.889404 4.76712 5.07732 0.85588 10.2435 0.855705Z" fill="white"/>
<path d="M0 9.59678C0.000163056 4.27209 4.50324 3.08562e-05 9.99974 0C10.5114 0 11.0145 0.0367594 11.5062 0.108105L11.994 0.190773L12.0635 0.208033C12.4039 0.310445 12.6172 0.654717 12.5476 1.00928C12.478 1.36387 12.15 1.6032 11.7958 1.5707L11.7245 1.5607L11.3034 1.48894C10.8786 1.42731 10.4433 1.39537 9.99974 1.39537C5.22716 1.3954 1.40338 5.09254 1.40322 9.59678C1.40322 11.7648 2.28418 13.7385 3.73095 15.2082L3.89265 15.3881C4.25873 15.8329 4.5322 16.4532 4.40149 17.1468V17.1487C4.30484 17.6562 4.13751 18.1444 3.91092 18.6022C4.74024 18.5824 5.56144 18.369 6.29803 17.9772L6.82058 17.7073C6.95458 17.6437 7.12248 17.5708 7.30476 17.5429L7.43723 17.5302C7.56728 17.5242 7.69099 17.5364 7.79808 17.5511C7.94476 17.5712 8.12535 17.6059 8.33159 17.6447L8.74543 17.7119C9.16053 17.77 9.57922 17.7996 9.99883 17.7991H9.99974L10.4446 17.7882C15.0079 17.5669 18.5963 13.9603 18.5963 9.59678C18.5964 9.21163 18.9105 8.89916 19.2979 8.8991C19.6853 8.8991 19.9993 9.21159 19.9995 9.59678C19.9995 14.9216 15.4964 19.1936 9.99974 19.1936C9.51427 19.1941 9.02994 19.1608 8.54993 19.0936L8.07032 19.0155C7.84995 18.9741 7.71018 18.948 7.60623 18.9337C7.56695 18.9284 7.5409 18.924 7.52493 18.9228C7.5106 18.9282 7.47931 18.9408 7.42535 18.9664L6.96035 19.2072C5.6279 19.9161 4.07257 20.1676 2.57256 19.8885C2.32985 19.8433 2.12903 19.6747 2.04362 19.4443C1.95822 19.2139 2.00084 18.9558 2.15598 18.7648L2.31311 18.5586C2.66358 18.067 2.90718 17.4969 3.02294 16.8888C3.05428 16.7202 2.99503 16.5004 2.81374 16.2793L2.72787 16.1839C1.04031 14.4693 0 12.1512 0 9.59678Z" fill="#7896BA"/>
<path d="M19.2978 4.88379C19.2978 6.68195 17.8408 8.13965 16.0434 8.13965C14.2461 8.13965 12.7891 6.68195 12.7891 4.88379C12.7891 3.08563 14.2461 1.62794 16.0434 1.62794C17.8408 1.62794 19.2978 3.08563 19.2978 4.88379Z" fill="#F4F9FF"/>
<path d="M18.5967 4.88379C18.5967 3.46695 17.4492 2.32562 16.0433 2.32562C14.6376 2.32578 13.4909 3.46705 13.4909 4.88379C13.4909 6.30053 14.6376 7.4418 16.0433 7.44196C17.4492 7.44196 18.5967 6.30063 18.5967 4.88379ZM19.9999 4.88379C19.9999 7.06327 18.2322 8.83733 16.0433 8.83733C13.8546 8.83717 12.0876 7.06318 12.0876 4.88379C12.0876 2.70441 13.8546 0.930412 16.0433 0.930252C18.2322 0.930252 19.9999 2.70431 19.9999 4.88379Z" fill="#7896BA"/>
<path d="M6.28867 9.06989L6.38459 9.07444C6.85625 9.12213 7.22415 9.51853 7.22415 10.0001C7.22415 10.4817 6.85625 10.8781 6.38459 10.9258L6.28867 10.9304H6.28045C5.7638 10.9304 5.34497 10.5139 5.34497 10.0001C5.34497 9.48638 5.7638 9.06989 6.28045 9.06989H6.28867ZM10.0041 9.06989L10.0991 9.07444C10.571 9.12186 10.9396 9.51833 10.9396 10.0001C10.9396 10.4819 10.571 10.8784 10.0991 10.9258L10.0041 10.9304H9.99586C9.47921 10.9304 9.06039 10.5139 9.06039 10.0001C9.06039 9.48638 9.47921 9.06989 9.99586 9.06989H10.0041ZM13.7186 9.06989L13.8145 9.07444C14.2863 9.122 14.6541 9.51843 14.6541 10.0001C14.6541 10.4818 14.2863 10.8783 13.8145 10.9258L13.7186 10.9304H13.7104C13.1939 10.9302 12.7749 10.5138 12.7749 10.0001C12.7749 9.48648 13.1939 9.07005 13.7104 9.06989H13.7186Z" fill="#7896BA"/>
</svg>

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

@ -0,0 +1,5 @@
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11 1.5L13 2.5L19 8.5L20 9.5L20.5 10.5V11.5L19.5 12.5L19 13.5L18.5 14.5L18 16.5L17.5 18H16L14.5 18.5L12.5 19.5L11 20.5L9 19.5L8 18.5L5 18L4 17L3.5 15L3 13L1.5 11.5V10L3.5 7.5L4 4.5L5.5 4L9 2.5L11 1.5Z" fill="white"/>
<path d="M13.2618 2.59937C12.1956 1.53312 11.6625 1 11 1C10.3375 1 9.8044 1.53312 8.73815 2.59937C8.09832 3.2392 7.46427 3.53626 6.55208 3.53626C5.7556 3.53626 4.62243 3.38178 4 4.00944C3.38249 4.63214 3.53628 5.76065 3.53628 6.55206C3.53628 7.46428 3.2392 8.09832 2.59935 8.73817C1.53312 9.8044 1.00001 10.3375 1 11C1.00002 11.6624 1.53314 12.1956 2.59938 13.2618C3.31616 13.9786 3.53628 14.4414 3.53628 15.4479C3.53628 16.2444 3.38181 17.3776 4.00949 18C4.63218 18.6175 5.76068 18.4637 6.55206 18.4637C7.52349 18.4637 7.99128 18.6537 8.68457 19.347C9.27492 19.9374 10.0663 21 11 21C11.9337 21 12.7251 19.9374 13.3154 19.347C14.0087 18.6537 14.4765 18.4637 15.4479 18.4637C16.2393 18.4637 17.3678 18.6175 17.9905 18M19.4006 8.73817C20.4669 9.8044 21 10.3375 21 11C21 11.6624 20.4669 12.1956 19.4006 13.2618C18.6838 13.9786 18.4637 14.4414 18.4637 15.4479C18.4637 16.2444 18.6182 17.3776 17.9905 18M17.9905 18H18" stroke="#7896BA" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M7.5 8.5L11 12L20.0002 2" stroke="#7896BA" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1,3 @@
<svg width="6" height="11" viewBox="0 0 6 11" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 1.5L5 5.5L1 9.5" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 211 B

View File

@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.29297 0.292734C5.65908 -0.0733816 6.23809 -0.0959754 6.63086 0.224375L6.70703 0.292734L11.707 5.29273C12.0976 5.68326 12.0976 6.31627 11.707 6.7068L6.70703 11.7068C6.31651 12.0973 5.68349 12.0973 5.29297 11.7068C4.90244 11.3163 4.90244 10.6833 5.29297 10.2927L8.58594 6.99977H1C0.447715 6.99977 0 6.55205 0 5.99977C0 5.44748 0.447715 4.99977 1 4.99977H8.58594L5.29297 1.7068L5.22461 1.63063C4.90426 1.23785 4.92685 0.65885 5.29297 0.292734Z" fill="#7896BA" fill-opacity="0.6"/>
</svg>

After

Width:  |  Height:  |  Size: 593 B

View File

@ -0,0 +1,6 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12.5 3H11.5C7.02166 3 4.78249 3 3.39124 4.39124C2 5.78249 2 8.02166 2 12.5C2 16.9783 2 19.2175 3.39124 20.6088C4.78249 22 7.02166 22 11.5 22C15.9783 22 18.2175 22 19.6088 20.6088C21 19.2175 21 16.9783 21 12.5V11.5" stroke="#B2A3FF" stroke-width="1.5" stroke-linecap="round"/>
<path d="M22 5.5C22 7.433 20.433 9 18.5 9C16.567 9 15 7.433 15 5.5C15 3.567 16.567 2 18.5 2C20.433 2 22 3.567 22 5.5Z" stroke="#B2A3FF" stroke-opacity="0.5" stroke-width="1.5"/>
<path d="M7 11H11" stroke="#B2A3FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M7 16H15" stroke="#B2A3FF" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 775 B

View File

@ -0,0 +1,5 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M20 11V7.81818C20 6.12494 20 5.27832 19.732 4.60214C19.3012 3.5151 18.3902 2.65765 17.2352 2.2522C16.5168 2 15.6173 2 13.8182 2C10.6698 2 9.09563 2 7.83836 2.44135C5.81714 3.15089 4.22281 4.65142 3.46894 6.55375C3 7.73706 3 9.21865 3 12.1818V14.7273C3 17.7966 3 19.3313 3.8477 20.3971C4.09058 20.7025 4.37862 20.9736 4.70307 21.2022C5.74797 21.9384 7.21706 21.9952 10 21.9996" stroke="#FFA1A1" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M3 12C3 10.1591 4.49238 8.66667 6.33333 8.66667C6.99912 8.66667 7.78404 8.78333 8.43137 8.60988C9.00652 8.45576 9.45576 8.00652 9.60988 7.43136C9.78333 6.78404 9.66667 5.99912 9.66667 5.33333C9.66667 3.49238 11.1591 2 13 2" stroke="#FFA1A1" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M14.3477 21.8557L14.1909 21.1223L14.3477 21.8557ZM13.1443 20.6523L13.8777 20.8091L13.1443 20.6523ZM14.0207 18.1117L13.4903 17.5814H13.4903L14.0207 18.1117ZM20.7963 15.4773L21.4458 15.1023L20.7963 15.4773ZM20.7963 16.9981L21.4458 17.3731L20.7963 16.9981ZM19.5227 14.2037L19.8977 13.5542L19.5227 14.2037ZM17.3285 14.8039L17.8588 15.3342L17.3285 14.8039ZM18.0019 14.2037L17.6269 13.5542L17.6269 13.5542L18.0019 14.2037ZM20.1961 17.6715L19.6658 17.1412L16.358 20.449L16.8883 20.9793L17.4186 21.5097L20.7265 18.2018L20.1961 17.6715ZM14.0207 18.1117L14.551 18.642L17.8588 15.3342L17.3285 14.8039L16.7982 14.2735L13.4903 17.5814L14.0207 18.1117ZM14.3477 21.8557L14.1909 21.1223C14.0155 21.1598 13.8753 21.1897 13.7548 21.2121C13.6333 21.2347 13.5536 21.2454 13.4996 21.2488C13.4441 21.2524 13.4479 21.2458 13.4825 21.2547C13.5296 21.2669 13.5936 21.2972 13.6482 21.3518L13.1179 21.8821L12.5876 22.4124C12.9113 22.7362 13.3158 22.7636 13.5948 22.7458C13.8603 22.7289 14.1839 22.6577 14.5045 22.5891L14.3477 21.8557ZM13.1443 20.6523L12.4109 20.4955C12.3423 20.8161 12.2711 21.1397 12.2542 21.4052C12.2364 21.6842 12.2638 22.0887 12.5876 22.4124L13.1179 21.8821L13.6482 21.3518C13.7028 21.4064 13.7331 21.4704 13.7453 21.5175C13.7542 21.5521 13.7476 21.5559 13.7512 21.5004C13.7546 21.4464 13.7653 21.3667 13.7879 21.2452C13.8103 21.1247 13.8402 20.9845 13.8777 20.8091L13.1443 20.6523ZM20.1961 14.8039L19.6658 15.3342C20.0333 15.7017 20.1084 15.786 20.1467 15.8523L20.7963 15.4773L21.4458 15.1023C21.2839 14.8218 21.0257 14.5728 20.7265 14.2735L20.1961 14.8039ZM20.1961 17.6715L20.7265 18.2018C21.0257 17.9026 21.2839 17.6535 21.4458 17.3731L20.7963 16.9981L20.1467 16.6231C20.1084 16.6894 20.0333 16.7737 19.6658 17.1412L20.1961 17.6715ZM20.7963 15.4773L20.1467 15.8523C20.2844 16.0908 20.2844 16.3846 20.1467 16.6231L20.7963 16.9981L21.4458 17.3731C21.8514 16.6705 21.8514 15.8049 21.4458 15.1023L20.7963 15.4773ZM20.1961 14.8039L20.7265 14.2735C20.4272 13.9743 20.1782 13.7161 19.8977 13.5542L19.5227 14.2037L19.1477 14.8533C19.214 14.8916 19.2983 14.9667 19.6658 15.3342L20.1961 14.8039ZM17.3285 14.8039L17.8588 15.3342C18.2263 14.9667 18.3106 14.8916 18.3769 14.8533L18.0019 14.2037L17.6269 13.5542C17.3465 13.7161 17.0974 13.9743 16.7982 14.2735L17.3285 14.8039ZM19.5227 14.2037L19.8977 13.5542C19.1951 13.1486 18.3295 13.1486 17.6269 13.5542L18.0019 14.2037L18.3769 14.8533C18.6154 14.7156 18.9092 14.7156 19.1477 14.8533L19.5227 14.2037ZM16.8883 20.9793L16.358 20.449C16.1624 20.6445 15.8952 20.771 15.5155 20.8679C15.3253 20.9165 15.1224 20.954 14.8963 20.9931C14.679 21.0306 14.4303 21.0711 14.1909 21.1223L14.3477 21.8557L14.5045 22.5891C14.7063 22.546 14.9131 22.5124 15.1517 22.4712C15.3814 22.4315 15.6346 22.3856 15.8866 22.3213C16.3914 22.1924 16.9533 21.975 17.4186 21.5097L16.8883 20.9793ZM13.1443 20.6523L13.8777 20.8091C13.9289 20.5697 13.9694 20.321 14.0069 20.1037C14.046 19.8776 14.0835 19.6747 14.1321 19.4845C14.229 19.1048 14.3555 18.8376 14.551 18.642L14.0207 18.1117L13.4903 17.5814C13.025 18.0467 12.8076 18.6086 12.6787 19.1134C12.6144 19.3654 12.5685 19.6186 12.5288 19.8483C12.4876 20.0869 12.454 20.2937 12.4109 20.4955L13.1443 20.6523Z" fill="#FFA1A1" fill-opacity="0.5"/>
</svg>

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@ -0,0 +1,4 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M8 14H16M8 9H12" stroke="#A0C653" stroke-opacity="0.5" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M6.09881 19.5C4.7987 19.3721 3.82475 18.9816 3.17157 18.3284C2 17.1569 2 15.2712 2 11.5V11C2 7.22876 2 5.34315 3.17157 4.17157C4.34315 3 6.22876 3 10 3H14C17.7712 3 19.6569 3 20.8284 4.17157C22 5.34315 22 7.22876 22 11V11.5C22 15.2712 22 17.1569 20.8284 18.3284C19.6569 19.5 17.7712 19.5 14 19.5C13.4395 19.5125 12.9931 19.5551 12.5546 19.655C11.3562 19.9309 10.2465 20.5441 9.14987 21.0789C7.58729 21.8408 6.806 22.2218 6.31569 21.8651C5.37769 21.1665 6.29454 19.0019 6.5 18" stroke="#A0C653" stroke-width="1.5" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 782 B

View File

@ -0,0 +1,5 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M21.9165 10.5C21.9351 10.6556 21.9495 10.8126 21.9598 10.9707C22.0134 11.8009 22.0134 12.6607 21.9598 13.4909C21.6856 17.7332 18.3536 21.1125 14.1706 21.3905C12.7435 21.4854 11.2536 21.4852 9.8294 21.3905C9.33896 21.3579 8.8044 21.2409 8.34401 21.0513C7.83177 20.8403 7.5756 20.7348 7.44544 20.7508C7.31527 20.7668 7.1264 20.9061 6.74868 21.1846C6.08268 21.6757 5.24367 22.0285 3.99943 21.9982C3.37026 21.9829 3.05568 21.9752 2.91484 21.7351C2.77401 21.495 2.94941 21.1626 3.30021 20.4978C3.78674 19.5758 4.09501 18.5203 3.62791 17.6746C2.82343 16.4666 2.1401 15.036 2.04024 13.4909C1.98659 12.6607 1.98659 11.8009 2.04024 10.9707C2.31441 6.72838 5.64639 3.34913 9.8294 3.07107C11.0318 2.99114 12.2812 2.97856 13.5 3.03368" stroke="#D7B85A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M15.3477 9.85572L15.1909 9.1223H15.1909L15.3477 9.85572ZM14.1443 8.65228L14.8777 8.80911L14.1443 8.65228ZM15.0207 6.11171L14.4903 5.58138H14.4903L15.0207 6.11171ZM17.8883 8.97933L18.4186 9.50966L17.8883 8.97933ZM21.7963 3.47729L22.4458 3.10229L21.7963 3.47729ZM21.1961 5.67149L20.6658 5.14116L21.1961 5.67149ZM21.7963 4.99807L22.4458 5.37307L21.7963 4.99807ZM20.5227 2.20375L20.8977 1.55423V1.55423L20.5227 2.20375ZM18.3285 2.80388L18.8588 3.33421L18.3285 2.80388ZM19.0019 2.20375L18.6269 1.55423V1.55423L19.0019 2.20375ZM21.1961 5.67149L20.6658 5.14116L17.358 8.449L17.8883 8.97933L18.4186 9.50966L21.7265 6.20182L21.1961 5.67149ZM15.0207 6.11171L15.551 6.64205L18.8588 3.33421L18.3285 2.80388L17.7982 2.27355L14.4903 5.58138L15.0207 6.11171ZM15.3477 9.85572L15.1909 9.1223C15.0155 9.15981 14.8753 9.18973 14.7548 9.21212C14.6333 9.23472 14.5536 9.2454 14.4996 9.24884C14.4441 9.25237 14.4479 9.24579 14.4825 9.25471C14.5296 9.26685 14.5936 9.29719 14.6482 9.35178L14.1179 9.88211L13.5876 10.4124C13.9113 10.7362 14.3158 10.7636 14.5948 10.7458C14.8603 10.7289 15.1839 10.6577 15.5045 10.5891L15.3477 9.85572ZM14.1443 8.65228L13.4109 8.49546C13.3423 8.8161 13.2711 9.13973 13.2542 9.40523C13.2364 9.68419 13.2638 10.0887 13.5876 10.4124L14.1179 9.88211L14.6482 9.35178C14.7028 9.40637 14.7331 9.47039 14.7453 9.51747C14.7542 9.55207 14.7476 9.55591 14.7512 9.50044C14.7546 9.44641 14.7653 9.36674 14.7879 9.24519C14.8103 9.12473 14.8402 8.98455 14.8777 8.80911L14.1443 8.65228ZM21.1961 2.80388L20.6658 3.33421C21.0333 3.7017 21.1084 3.78597 21.1467 3.85229L21.7963 3.47729L22.4458 3.10229C22.2839 2.82184 22.0257 2.57275 21.7265 2.27355L21.1961 2.80388ZM21.1961 5.67149L21.7265 6.20182C22.0257 5.90261 22.2839 5.65353 22.4458 5.37307L21.7963 4.99807L21.1467 4.62307C21.1084 4.6894 21.0333 4.77367 20.6658 5.14116L21.1961 5.67149ZM21.7963 3.47729L21.1467 3.85229C21.2844 4.09077 21.2844 4.38459 21.1467 4.62307L21.7963 4.99807L22.4458 5.37307C22.8514 4.67049 22.8514 3.80488 22.4458 3.10229L21.7963 3.47729ZM21.1961 2.80388L21.7265 2.27355C21.4272 1.97434 21.1782 1.71615 20.8977 1.55423L20.5227 2.20375L20.1477 2.85326C20.214 2.89156 20.2983 2.96671 20.6658 3.33421L21.1961 2.80388ZM18.3285 2.80388L18.8588 3.33421C19.2263 2.96672 19.3106 2.89156 19.3769 2.85326L19.0019 2.20375L18.6269 1.55423C18.3465 1.71615 18.0974 1.97434 17.7982 2.27355L18.3285 2.80388ZM20.5227 2.20375L20.8977 1.55423C20.1951 1.14859 19.3295 1.14859 18.6269 1.55423L19.0019 2.20375L19.3769 2.85327C19.6154 2.71558 19.9092 2.71558 20.1477 2.85327L20.5227 2.20375ZM17.8883 8.97933L17.358 8.449C17.1624 8.64453 16.8952 8.77096 16.5155 8.8679C16.3253 8.91646 16.1224 8.954 15.8963 8.99307C15.679 9.03061 15.4303 9.07112 15.1909 9.1223L15.3477 9.85572L15.5045 10.5891C15.7063 10.546 15.9131 10.5124 16.1517 10.4712C16.3814 10.4315 16.6346 10.3856 16.8866 10.3213C17.3914 10.1924 17.9533 9.97497 18.4186 9.50966L17.8883 8.97933ZM14.1443 8.65228L14.8777 8.80911C14.9289 8.56974 14.9694 8.32097 15.0069 8.1037C15.046 7.87757 15.0835 7.67468 15.1321 7.48447C15.229 7.10477 15.3555 6.83758 15.551 6.64205L15.0207 6.11171L14.4903 5.58138C14.025 6.0467 13.8076 6.60863 13.6787 7.11341C13.6144 7.36544 13.5685 7.61864 13.5288 7.84832C13.4876 8.08687 13.454 8.29366 13.4109 8.49546L14.1443 8.65228Z" fill="#D7B85A" fill-opacity="0.5"/>
<path d="M8.5 15H15.5M8.5 10H11" stroke="#D7B85A" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

@ -0,0 +1,4 @@
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="0.5" y="0.5" width="21" height="21" rx="10.5" stroke="#A8B6C7"/>
<path d="M7 13L11 9L15 13" stroke="#A8B6C7" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 289 B

View File

@ -0,0 +1,4 @@
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M20 11C20 6.02944 15.9706 2 11 2C6.02944 2 2 6.02944 2 11C2 15.9706 6.02944 20 11 20C15.9706 20 20 15.9706 20 11Z" fill="#F1FFF4" stroke="#6CB67C"/>
<path d="M7 11.5875L9.5625 14.15L15.2 8" stroke="#6CB67C" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 387 B

View File

@ -0,0 +1,4 @@
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M20 11C20 6.02944 15.9706 2 11 2C6.02944 2 2 6.02944 2 11C2 15.9706 6.02944 20 11 20C15.9706 20 20 15.9706 20 11Z" fill="#EFF7FF" stroke="#67A9EF"/>
<path d="M10.9219 14.7871C11.3002 14.8253 11.5956 15.1448 11.5957 15.5332C11.5957 15.9217 11.3002 16.2411 10.9219 16.2793L10.8457 16.2832H10.833C10.419 16.283 10.083 15.9473 10.083 15.5332C10.0831 15.1192 10.4191 14.7834 10.833 14.7832H10.8457L10.9219 14.7871ZM10.835 5C12.4218 5.00022 13.6687 6.32107 13.6689 7.90039C13.6689 8.4001 13.545 8.87321 13.3252 9.28613L13.2256 9.45898C13.0473 9.74483 12.8377 10.0187 12.6436 10.2676C12.4417 10.5263 12.2576 10.7567 12.0908 10.9932C11.7534 11.4716 11.5851 11.8465 11.585 12.2002V12.7383C11.5847 13.1522 11.2489 13.4881 10.835 13.4883C10.4209 13.4883 10.0852 13.1523 10.085 12.7383V12.2002C10.0851 11.3669 10.4817 10.6716 10.8652 10.1279C11.059 9.85327 11.2756 9.58331 11.4609 9.3457C11.6538 9.09844 11.8192 8.87814 11.9521 8.66504L12.0439 8.49316C12.1238 8.3143 12.1689 8.11368 12.1689 7.90039C12.1687 7.10541 11.55 6.50023 10.835 6.5C10.1198 6.50002 9.50021 7.10528 9.5 7.90039C9.49985 8.31448 9.16412 8.65039 8.75 8.65039C8.33589 8.65037 8.00015 8.31447 8 7.90039C8.00021 6.32095 9.24791 5.00002 10.835 5Z" fill="#67A9EF"/>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -0,0 +1,4 @@
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M20 11C20 6.02944 15.9706 2 11 2C6.02944 2 2 6.02944 2 11C2 15.9706 6.02944 20 11 20C15.9706 20 20 15.9706 20 11Z" fill="#F6F6F6" stroke="#999999"/>
<path d="M11.0088 13.75C11.5611 13.75 12.0088 14.1977 12.0088 14.75C12.0088 15.3023 11.5611 15.75 11.0088 15.75H11C10.4477 15.75 10 15.3023 10 14.75C10 14.1977 10.4477 13.75 11 13.75H11.0088ZM11 6C11.4142 6 11.75 6.33579 11.75 6.75V11.75C11.75 12.1642 11.4142 12.5 11 12.5C10.5858 12.5 10.25 12.1642 10.25 11.75V6.75C10.25 6.33579 10.5858 6 11 6Z" fill="#999999"/>
</svg>

After

Width:  |  Height:  |  Size: 626 B

View File

@ -0,0 +1,4 @@
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M20 11C20 6.02944 15.9706 2 11 2C6.02944 2 2 6.02944 2 11C2 15.9706 6.02944 20 11 20C15.9706 20 20 15.9706 20 11Z" fill="#FFF3F7" stroke="#EB6F94"/>
<path d="M8 8L11 11M11 11L14 14M11 11L14 8M11 11L8 14" stroke="#EB6F94" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 401 B

View File

@ -0,0 +1,3 @@
<svg width="8" height="12" viewBox="0 0 8 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 9.75C0.585786 9.75 0.25 10.0858 0.25 10.5C0.25 10.9142 0.585786 11.25 1 11.25V9.75ZM7 11.25C7.41421 11.25 7.75 10.9142 7.75 10.5C7.75 10.0858 7.41421 9.75 7 9.75V11.25ZM6.55675 6.13091C6.83428 5.82343 6.81001 5.34918 6.50252 5.07164C6.19504 4.7941 5.72079 4.81838 5.44325 5.12586L6.55675 6.13091ZM5.06066 6.66908L5.6174 7.17161L5.61741 7.1716L5.06066 6.66908ZM2.93934 6.66908L2.38259 7.1716L2.93934 6.66908ZM2.55675 5.12586C2.27921 4.81838 1.80496 4.7941 1.49747 5.07164C1.18999 5.34918 1.16571 5.82343 1.44325 6.13091L2.55675 5.12586ZM4.75 1.5C4.75 1.08579 4.41421 0.75 4 0.75C3.58579 0.75 3.25 1.08579 3.25 1.5H4.75ZM1 10.5V11.25H7V10.5V9.75H1V10.5ZM6 5.62839L5.44325 5.12586L4.50391 6.16655L5.06066 6.66908L5.61741 7.1716L6.55675 6.13091L6 5.62839ZM2.93934 6.66908L3.49609 6.16655L2.55675 5.12586L2 5.62839L1.44325 6.13091L2.38259 7.1716L2.93934 6.66908ZM5.06066 6.66908L4.50391 6.16655C4.23928 6.45974 4.09104 6.62153 3.97516 6.71949C3.8727 6.80609 3.90069 6.75 4 6.75V7.5V8.25C4.40997 8.25 4.71829 8.05542 4.9435 7.86505C5.15528 7.68603 5.38204 7.43236 5.6174 7.17161L5.06066 6.66908ZM2.93934 6.66908L2.38259 7.1716C2.61796 7.43236 2.84472 7.68603 3.0565 7.86505C3.28171 8.05542 3.59003 8.25 4 8.25V7.5V6.75C4.09931 6.75 4.1273 6.80609 4.02484 6.71949C3.90896 6.62153 3.76072 6.45974 3.49609 6.16655L2.93934 6.66908ZM4 7.5H4.75V1.5H4H3.25V7.5H4Z" fill="#1259CB"/>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1,4 @@
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="0.5" y="0.5" width="21" height="21" rx="10.5" stroke="#2E3A59"/>
<path d="M7 9L11 13L15 9" stroke="#2E3A59" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 288 B

View File

@ -0,0 +1,6 @@
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
<g id="toggle btn">
<rect x="0.5" y="0.5" width="21" height="21" rx="10.5" stroke="white"/>
<path id="Vector 7412" d="M7 13L11 9L15 13" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 327 B

View File

@ -0,0 +1,4 @@
<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 10L9 2L17 10" stroke="white" stroke-width="2"/>
<rect x="8" y="2" width="2" height="16" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 218 B

View File

@ -1,6 +1,7 @@
'use server'
import { SessionData, sessionOptions } from '@/libs/session'
import { sessionOptions } from '@/libs/session'
import type { SessionData } from '@/types/Auth'
import { getIronSession } from 'iron-session'
import { cookies } from 'next/headers'
import { redirect } from 'next/navigation'

View File

@ -38,58 +38,70 @@ export interface Suitable {
}
export const suitableApi = {
getList: async (): Promise<Suitable[]> => {
const response = await axiosInstance.get<Suitable[]>('/api/suitable/list')
console.log('🚀 ~ getList: ~ response:', response)
return response.data
},
getDetails: async (roofMaterial: string): Promise<Suitable[]> => {
const response = await axiosInstance.get<Suitable[]>(`/api/suitable/details?roof-material=${roofMaterial}`)
return response.data
},
create: async () => {
const suitableData: Suitable[] = []
database.forEach((item) => {
suitableData.push({
product_name: item[0],
manufacturer: item[1],
roof_material: item[2],
shape: item[3],
support_roof_tile: item[4],
support_roof_tile_memo: item[5],
support_roof_bracket: item[6],
support_roof_bracket_memo: item[7],
yg_anchor: item[8],
yg_anchor_memo: item[9],
rg_roof_tile_part: item[10],
rg_roof_tile_part_memo: item[11],
dido_hunt_support_tile_2: item[12],
dido_hunt_support_tile_2_memo: item[13],
takashima_power_base: item[14],
takashima_power_base_memo: item[15],
takashima_tile_bracket: item[16],
takashima_tile_bracket_memo: item[17],
slate_bracket_4: item[18],
slate_bracket_4_memo: item[19],
slate_single_metal_bracket: item[20],
slate_single_metal_bracket_memo: item[21],
dido_hunt_short_rack_4: item[22],
dido_hunt_short_rack_4_memo: item[23],
takashima_slate_bracket_slate_single: item[24],
takashima_slate_bracket_slate_single_memo: item[25],
df_metal_bracket: item[26],
df_metal_bracket_memo: item[27],
slate_metal_bracket: item[28],
slate_metal_bracket_memo: item[29],
takashima_slate_bracket_metal_roof: item[30],
takashima_slate_bracket_metal_roof_memo: item[31],
})
})
const response = await axiosInstance.post<Suitable[]>('/api/suitable', suitableData)
return response.data
},
// getList: async (category?: string, keyword?: string): Promise<Suitable[]> => {
// let condition: any = {}
// if (category) {
// condition['category'] = category
// }
// if (keyword) {
// condition['keyword'] = {
// contains: keyword,
// }
// }
// console.log('🚀 ~ getList: ~ condition:', condition)
// const response = await axiosInstance(null).get<Suitable[]>('/api/suitable/list', { params: condition })
// console.log('🚀 ~ getList: ~ response:', response)
// return response.data
// },
// getCategory: async (): Promise<Suitable[]> => {
// const response = await axiosInstance(null).get<Suitable[]>('/api/suitable/category')
// console.log('🚀 ~ getCategory: ~ response:', response)
// return response.data
// },
// getDetails: async (roofMaterial: string): Promise<Suitable[]> => {
// const response = await axiosInstance(null).get<Suitable[]>(`/api/suitable/details?roof-material=${roofMaterial}`)
// console.log('🚀 ~ getDetails: ~ response:', response)
// return response.data
// },
// create: async () => {
// const suitableData: Suitable[] = []
// database.forEach((item) => {
// suitableData.push({
// product_name: item[0],
// manufacturer: item[1],
// roof_material: item[2],
// shape: item[3],
// support_roof_tile: item[4],
// support_roof_tile_memo: item[5],
// support_roof_bracket: item[6],
// support_roof_bracket_memo: item[7],
// yg_anchor: item[8],
// yg_anchor_memo: item[9],
// rg_roof_tile_part: item[10],
// rg_roof_tile_part_memo: item[11],
// dido_hunt_support_tile_2: item[12],
// dido_hunt_support_tile_2_memo: item[13],
// takashima_power_base: item[14],
// takashima_power_base_memo: item[15],
// takashima_tile_bracket: item[16],
// takashima_tile_bracket_memo: item[17],
// slate_bracket_4: item[18],
// slate_bracket_4_memo: item[19],
// slate_single_metal_bracket: item[20],
// slate_single_metal_bracket_memo: item[21],
// dido_hunt_short_rack_4: item[22],
// dido_hunt_short_rack_4_memo: item[23],
// takashima_slate_bracket_slate_single: item[24],
// takashima_slate_bracket_slate_single_memo: item[25],
// df_metal_bracket: item[26],
// df_metal_bracket_memo: item[27],
// slate_metal_bracket: item[28],
// slate_metal_bracket_memo: item[29],
// takashima_slate_bracket_metal_roof: item[30],
// takashima_slate_bracket_metal_roof_memo: item[31],
// })
// })
// const response = await axiosInstance(null).post<Suitable[]>('/api/suitable', suitableData)
// return response.data
// },
}

View File

@ -2,66 +2,126 @@ import { axiosInstance } from '@/libs/axios'
export interface SurveySalesBasicInfo {
id?: number
representative: String
store: String | null
construction_point: String | null
investigation_date: String | null
building_name: String | null
customer_name: String | null
post_code: String | null
address: String | null
address_detail: String | null
submission_status: Boolean
submission_date?: String | null
representative: string
store: string | null
construction_point: string | null
investigation_date: string | null
building_name: string | null
customer_name: string | null
post_code: string | null
address: string | null
address_detail: string | null
submission_status: boolean
submission_date?: string | null
detail_info?: SurveySalesDetailInfo | null
}
export interface SurveySalesDetailInfo {
id?: number
contract_capacity: String | null
retail_company: String | null
supplementary_facilities: Number | null
supplementary_facilities_etc: String | null
installation_system: Number | null
installation_system_etc: String | null
construction_year: Number | null
construction_year_etc: String | null
roof_material: Number | null
roof_material_etc: String | null
roof_shape: Number | null
roof_shape_etc: String | null
roof_slope: String | null
house_structure: Number | null
house_structure_etc: String | null
rafter_material: Number | null
rafter_material_etc: String | null
rafter_size: Number | null
rafter_size_etc: String | null
rafter_pitch: Number | null
rafter_pitch_etc: String | null
rafter_direction: Number | null
open_field_plate_kind: Number | null
open_field_plate_kind_etc: String | null
open_field_plate_thickness: String | null
leak_trace: Boolean | null
waterproof_material: Number | null
waterproof_material_etc: String | null
insulation_presence: Number | null
insulation_presence_etc: String | null
structure_order: Number | null
structure_order_etc: String | null
installation_availability: Number | null
installation_availability_etc: String | null
memo: String | null
contract_capacity: string | null
retail_company: string | null
supplementary_facilities: number | null
supplementary_facilities_etc: string | null
installation_system: number | null
installation_system_etc: string | null
construction_year: number | null
construction_year_etc: string | null
roof_material: number | null
roof_material_etc: string | null
roof_shape: number | null
roof_shape_etc: string | null
roof_slope: string | null
house_structure: number | null
house_structure_etc: string | null
rafter_material: number | null
rafter_material_etc: string | null
rafter_size: number | null
rafter_size_etc: string | null
rafter_pitch: number | null
rafter_pitch_etc: string | null
rafter_direction: number | null
open_field_plate_kind: number | null
open_field_plate_kind_etc: string | null
open_field_plate_thickness: string | null
leak_trace: boolean | null
waterproof_material: number | null
waterproof_material_etc: string | null
insulation_presence: number | null
insulation_presence_etc: string | null
structure_order: number | null
structure_order_etc: string | null
installation_availability: number | null
installation_availability_etc: string | null
memo: string | null
}
export const surveySalesApi = {
create: async (data: SurveySalesBasicInfo): Promise<SurveySalesBasicInfo> => {
const response = await axiosInstance.post<SurveySalesBasicInfo>('/api/survey-sales', data)
return response.data
},
getList: async (): Promise<SurveySalesBasicInfo[]> => {
const response = await axiosInstance.get<SurveySalesBasicInfo[]>('/api/survey-sales')
return response.data
},
create: async (data: SurveySalesBasicInfo): Promise<number> => {
try {
const response = await axiosInstance(null).post<SurveySalesBasicInfo>('/api/survey-sales', data)
return response.data.id ?? 0
} catch (error) {
console.error(error)
return 0
}
},
getList: async (): Promise<SurveySalesBasicInfo[] | []> => {
try {
const response = await axiosInstance(null).get<SurveySalesBasicInfo[]>('/api/survey-sales')
return response.data
} catch (error) {
console.error(error)
return []
}
},
getDetail: async (id: number): Promise<SurveySalesBasicInfo | null> => {
try {
const response = await axiosInstance(null).get<SurveySalesBasicInfo>(`/api/survey-sales/${id}`)
return response.data
} catch (error) {
console.error(error)
return null
}
},
update: async (id: number, data: SurveySalesBasicInfo): Promise<SurveySalesBasicInfo | null> => {
try {
const response = await axiosInstance(null).put<SurveySalesBasicInfo>(`/api/survey-sales/${id}`, data)
return response.data
} catch (error) {
console.error(error)
return null
}
},
delete: async (id: number, isDetail: boolean = false): Promise<boolean> => {
try {
await axiosInstance(null).delete(`/api/survey-sales/${id}`, {
params: {
detail_id: isDetail ? id : undefined,
},
})
return true
} catch (error) {
throw error
}
},
createDetail: async (surveyId: number, data: SurveySalesDetailInfo): Promise<boolean> => {
try {
await axiosInstance(null).post<SurveySalesDetailInfo>(`/api/survey-sales/${surveyId}`, data)
return true
} catch (error) {
throw error
}
},
confirm: async (id: number): Promise<boolean> => {
try {
await axiosInstance(null).patch<SurveySalesBasicInfo>(`/api/survey-sales/${id}`)
return true
} catch (error) {
throw error
}
},
// update: async (data: SurveySalesBasicInfo): Promise<SurveySalesBasicInfo> => {
// const response = await axiosInstance.put<SurveySalesBasicInfo>(`/api/survey-sales`, data)
// return response.data
// },
}

View File

@ -21,17 +21,17 @@ export interface LoginData {
export const userApi = {
create: async (data: UserData): Promise<User> => {
const response = await axiosInstance.post<User>('/api/user/create', data)
const response = await axiosInstance(null).post<User>('/api/user/create', data)
return response.data
},
getList: async (): Promise<User[]> => {
const response = await axiosInstance.get<User[]>('/api/user/list')
const response = await axiosInstance(null).get<User[]>('/api/user/list')
return response.data
},
getUser: async (data: LoginData): Promise<User> => {
const response = await axiosInstance.post<User>(`/api/user`, data)
const response = await axiosInstance(null).post<User>(`/api/user`, data)
return response.data
},
}

View File

@ -0,0 +1,5 @@
import FloatBtn from '@/components/ui/common/FloatBtn'
export default function page() {
return <FloatBtn />
}

View File

@ -0,0 +1,5 @@
import Footer from '@/components/ui/common/Footer'
export default function page() {
return <Footer />
}

View File

@ -0,0 +1,5 @@
import Header from '@/components/ui/common/Header'
export default async function page() {
return <Header />
}

View File

@ -0,0 +1,22 @@
import { NextResponse } from 'next/server'
import { axiosInstance } from '@/libs/axios'
export async function POST(req: Request) {
const { loginId, email, pwd, chgPwd } = await req.json()
console.log('🚀 ~ POST ~ loginId:', loginId)
console.log('🚀 ~ POST ~ email:', email)
console.log('🚀 ~ POST ~ pwd:', pwd)
console.log('🚀 ~ POST ~ chgPwd:', chgPwd)
const result = await axiosInstance(`${process.env.NEXT_PUBLIC_QSP_API_URL}`).post(`/api/user/userPwdChg`, {
loginId,
chgType: 'C',
email,
pwd,
chgPwd,
})
console.log('🚀 ~ result ~ result:', result)
return NextResponse.json({ code: 200, data: result.data })
}

View File

@ -0,0 +1,15 @@
import { sessionOptions } from '@/libs/session'
import { SessionData } from '@/types/Auth'
import { getIronSession } from 'iron-session'
import { cookies } from 'next/headers'
import { NextResponse } from 'next/server'
export async function GET(request: Request) {
const cookieStore = await cookies()
const session = await getIronSession<SessionData>(cookieStore, sessionOptions)
session.destroy()
// return redirect('/login')
return NextResponse.json({ code: 200, message: 'Logout successful' })
}

74
src/app/api/auth/route.ts Normal file
View File

@ -0,0 +1,74 @@
import { cookies } from 'next/headers'
import { NextResponse } from 'next/server'
import { getIronSession } from 'iron-session'
import { axiosInstance } from '@/libs/axios'
import { sessionOptions } from '@/libs/session'
import type { SessionData } from '@/types/Auth'
export async function POST(request: Request) {
const { loginId, pwd } = await request.json()
const result = await axiosInstance(`${process.env.NEXT_PUBLIC_QSP_API_URL}`).post(`/api/user/login`, {
loginId,
pwd,
})
// console.log('🚀 ~ result ~ result:', result)
if (result.data.result.code === 200) {
const cookieStore = await cookies()
const session = await getIronSession<SessionData>(cookieStore, sessionOptions)
console.log('start session edit!')
session.langCd = result.data.data.langCd
session.currPage = result.data.data.currPage
session.rowCount = result.data.data.rowCount
session.startRow = result.data.data.startRow
session.endRow = result.data.data.endRow
session.compCd = result.data.data.compCd
session.agencyStoreId = result.data.data.agencyStoreId
session.storeId = result.data.data.storeId
session.storeNm = result.data.data.storeNm
session.userId = result.data.data.userId
session.category = result.data.data.category
session.userNm = result.data.data.userNm
session.userNmKana = result.data.data.userNmKana
session.telNo = result.data.data.telNo
session.fax = result.data.data.fax
session.email = result.data.data.email
session.lastEditUser = result.data.data.lastEditUser
session.storeGubun = result.data.data.storeGubun
session.pwCurr = result.data.data.pwCurr
session.pwdInitYn = result.data.data.pwdInitYn
session.apprStatCd = result.data.data.apprStatCd
session.loginFailCnt = result.data.data.loginFailCnt
session.loginFailMinYn = result.data.data.loginFailMinYn
session.priceViewStatCd = result.data.data.priceViewStatCd
session.groupId = result.data.data.groupId
session.storeLvl = result.data.data.storeLvl
session.custCd = result.data.data.custCd
session.builderNo = result.data.data.builderNo
session.isLoggedIn = true
if (result.data.data.userId === 'T01') {
session.role = 'T01'
} else if (result.data.data.groupId === '60000') {
session.role = 'Admin'
} else if (result.data.data.groupId === '70000' && result.data.data.builderNo === null) {
session.role = 'Admin_Sub'
} else if (result.data.data.groupId === '70000' && result.data.data.builderNo !== null) {
session.role = 'Builder'
} else if (result.data.data.groupId === '90000' && result.data.data.builderNo !== null) {
session.role = 'Partner'
} else {
session.role = 'User'
}
console.log('end session edit!')
await session.save()
}
return NextResponse.json({ code: 200, message: 'Login is Succecss!!', result: result.data.data })
}

View File

@ -0,0 +1,16 @@
import { NextResponse } from 'next/server'
import { prisma } from '@/libs/prisma'
export async function GET() {
// @ts-ignore
const roofMaterialCategory = await prisma.MS_SUITABLE.findMany({
select: {
roof_material: true,
},
distinct: ['roof_material'],
orderBy: {
roof_material: 'asc',
},
})
return NextResponse.json(roofMaterialCategory)
}

View File

@ -1,4 +1,5 @@
import { NextResponse } from 'next/server'
import { prisma } from '@/libs/prisma'
export async function GET(request: Request) {
const { searchParams } = new URL(request.url)

View File

@ -1,8 +1,34 @@
import { NextResponse } from 'next/server'
import { NextRequest, NextResponse } from 'next/server'
import { prisma } from '@/libs/prisma'
export async function GET() {
// @ts-ignore
const suitables = await prisma.MS_SUITABLE.findMany()
return NextResponse.json(suitables)
export async function GET(request: NextRequest) {
try {
const searchParams = request.nextUrl.searchParams
const category = searchParams.get('category')
const keyword = searchParams.get('keyword')
let whereCondition: any = {}
if (category) {
whereCondition['roof_material'] = category
}
if (keyword) {
whereCondition['product_name'] = {
contains: keyword,
}
}
console.log('🚀 ~ /api/suitable/list: ~ prisma where condition:', whereCondition)
// @ts-ignore
const suitables = await prisma.MS_SUITABLE.findMany({
where: whereCondition,
orderBy: {
product_name: 'asc',
},
})
return NextResponse.json(suitables)
} catch (error) {
console.error('❌ 데이터 조회 중 오류가 발생했습니다:', error)
return NextResponse.json({ error: '데이터 조회 중 오류가 발생했습니다' }, { status: 500 })
}
}

View File

@ -0,0 +1,73 @@
import { NextResponse } from 'next/server'
// export async function POST(request: Request, { params }: { params: { id: string } }) {
// const body = await request.json()
// const { id } = params
// // @ts-ignore
// const survey = await prisma.SD_SERVEY_SALES_BASIC_INFO.update({
// where: { id: Number(id) },
// data: {
// detail_info: {
// create: body,
// },
// },
// })
// return NextResponse.json({ message: 'Survey detail created successfully' })
// }
// export async function GET(request: Request, { params }: { params: { id: string } }) {
// const { id } = params
// // @ts-ignore
// const survey = await prisma.SD_SERVEY_SALES_BASIC_INFO.findUnique({
// where: { id: Number(id) },
// include: {
// detail_info: true,
// },
// })
// return NextResponse.json(survey)
// }
// export async function PUT(request: Request, { params }: { params: { id: string } }) {
// const { id } = params
// const body = await request.json()
// // @ts-ignore
// const survey = await prisma.SD_SERVEY_SALES_BASIC_INFO.update({
// where: { id: Number(id) },
// data: {
// ...body,
// detail_info: {
// update: body.detail_info,
// },
// },
// })
// return NextResponse.json(survey)
// }
// export async function DELETE(request: Request, { params }: { params: { id: string; detail_id: string } }) {
// const { id, detail_id } = params
// if (detail_id) {
// // @ts-ignore
// const survey = await prisma.SD_SERVEY_SALES_DETAIL_INFO.delete({
// where: { id: Number(detail_id) },
// })
// } else {
// // @ts-ignore
// const survey = await prisma.SD_SERVEY_SALES_BASIC_INFO.delete({
// where: { id: Number(id) },
// })
// }
// return NextResponse.json({ message: 'Survey deleted successfully' })
// }
// export async function PATCH(request: Request, { params }: { params: { id: string } }) {
// const { id } = params
// // @ts-ignore
// const survey = await prisma.SD_SERVEY_SALES_BASIC_INFO.update({
// where: { id: Number(id) },
// data: {
// submission_status: true,
// },
// })
// return NextResponse.json({ message: 'Survey confirmed successfully' })
// }

Some files were not shown because too many files have changed in this diff Show More